При создании нового дока

Тема в разделе "Lotus - Программирование", создана пользователем wowa, 18 июн 2007.

  1. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Подскажите, вот мой код(в кратце)

    Set doc = db.GetDocumentByID("1096")

    ' получаю текущий список формул
    Forall formula In doc.GetItemValue("GXE_ListF_CandidListFormul_TX")
    stListFormul=stListFormul & Chr(10) & formula
    End Forall

    Call uidoc.FieldSetText("поле№1", stListFormul)
    Call uidoc.Refresh()

    Мне, нужно, чтобы при создании нового документа в поле№1 было записано,сразу, stListFormul
    Я этот код засунул в Initialize (правильно???????)
    поле№1 - скрыто
    ошибка на предпоследней строке "Cannot locate field"
    Методом тыка запихнул в Postopen, - нормально работает, но возникают другие проблемы с работой в базе
    Подскажите, плз, что я не так сделал?, кто знает...
     
  2. velitchestvo

    velitchestvo Гость

    На PostOpen рефрешь дока делаешь?
     
  3. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Для: velitchestvo
    да!!!
    Я понял в чем у меня ошибка в initialize , оно не работает когда поля скрыто!!
     
  4. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Хотя все равно не работает... где-то сильно торможу(((((

    вот почему на этой строке
    Call uidoc.FieldSetText("поле№1", stListFormul)
    cannot locate field??
     
  5. Domino6

    Domino6 Гость

    <!--QuoteBegin-wowa+19:06:2007, 09:52 -->
    <span class="vbquote">(wowa @ 19:06:2007, 09:52 )</span><!--QuoteEBegin-->Call uidoc.FieldSetText("поле№1", stListFormul)
    cannot locate field??
    [snapback]69849" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    уйди от UI
    Код (Text):
    call doc.поле№1=stListFormul
    где doc Notesdocument
     
  6. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Для: Domino6
    И что получается, я из doc беру stListFormul ,и в него же потом это же записываю?
    Вот полностью мой код


    Dim s As New NotesSession
    Dim wks As New NotesUIWorkspace
    Dim db As NotesDatabase
    Dim doc As NotesDocument
    Dim uidoc As NotesUIDocument
    Dim stListFormul As Variant

    Set s = New NotesSession
    Set db = s.CurrentDatabase
    Set uidoc = wks.CurrentDocument
    Set doc = db.GetDocumentByID("1096")

    ' получаю текущий список формул
    Forall formula In doc.GetItemValue("поле№1")
    stListFormul=stListFormul & Chr(10) & formula
    End Forall


    Call uidoc.FieldSetText("поле№1", stListFormul)
    Call uidoc.Refresh()
     
  7. Domino6

    Domino6 Гость

    <!--QuoteBegin-wowa+20:06:2007, 08:57 -->
    <span class="vbquote">(wowa @ 20:06:2007, 08:57 )</span><!--QuoteEBegin-->Call uidoc.FieldSetText("поле№1", stListFormul)
    [snapback]69994" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    заменить на
    Код (Text):
    uidoc.Document.поле№1=stListFormul
     
  8. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Для: Domino6
    Пасиб, но все равно чего-то не работает, выводит ошибку:
    Object variable not set
     
  9. Elena Nefedova

    Elena Nefedova Гость

    <!--QuoteBegin-wowa+25:06:2007, 11:28 -->
    <span class="vbquote">(wowa @ 25:06:2007, 11:28 )</span><!--QuoteEBegin-->Object variable not set
    [snapback]70470" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    1. в какой строке ошибка? дебаггером следил?
    2. скорее всего, еще не существует текущего дока в рабочем пространстве в момент инициализации
    3. Я бы повесила на Queryopen, раз уж на onLoad=PostOpen нельзя; а что за проблемы-то возникали в этом случае?
     
  10. Ronchik

    Ronchik Гость

    Для: wowa
    зачем работаешь с текушим документом??...не проще было-бы создать документ програмно с заполнением нужных полей , а уже потом открыть на редактирование
     
  11. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Для: Elena Nefedova
    Спасибо, за то что навела меня на мысль... .Все сработало в Postopen, просто из-за невнимательности оно у меня не работало.... Я думал оно не работает из-за того что документ якобы еще не создался, а оказалось что я указал неправильное имя поля... Блин, так облажаться )))))
    Для: Ronchik
    Спасиб, попробую как-н
     
Загрузка...

Поделиться этой страницей