Lotusscript -> значение в Field

Тема в разделе "Lotus - Программирование", создана пользователем SOFTOBZOR.ru, 11 сен 2006.

Статус темы:
Закрыта.
  1. SOFTOBZOR.ru

    SOFTOBZOR.ru Гость

    Люди добрые есть код, примено такой:

    Код (Text):
    Sub Click(Source As Button)
    Set xml = CreateObject("Microsoft.XMLHTTP")
    Call xml.open("GET", "http://www.cbr.ru/scripts/XML_daily.asp",False)
    Call xml.send()

    st$ = xml.responseText
    st$ = Strright(st$,"<CharCode>USD")
    st$ = Strright( st$, "<Value>" )
    st$ = Strleft( st$, "</Value>" )

    st1$ = xml.responseText
    st1$ = Strright(st1$,"<CharCode>USD")
    st1$ = Strright( st1$, "<Nominal>" )
    st1$ = Strleft( st1$, "</Nominal>" )

    Messagebox st1$ &" USD = " & st$ & " руб."

    End Sub
    Выдет сообщение: Messagebox st1$ &" USD = " & st$ & " руб."
    Как мне из LotusScript сделать так FIELD name:= "st1$"
    То есть что бы что бы при обработке выводилось не окно, а значение выводилось в поле.
     
  2. Elena Nefedova

    Elena Nefedova Гость

    Код (Text):
    Call doc.ReplaceItemValue(itemName$, Value) ' где Value - строка или массив скаляров (строк, чисел, дат)
     
  3. Del

    Del Гость

    Подскажите и мне пожалуйста. Задача примерно такая же, но предложенный вариант не получается, в чем проблема понять не могу.

    Код (Text):
    Sub Click(Source As Button)

    Dim fileNum As Integer

    fileNum% = Freefile     ' Get a file number to open a file.

    Open "Count.h" For Input As fileNum%
    Do While Not Eof(fileNum%)
    Line Input #fileNum%, InputData  ' Read each line of the file.
    If Left$(InputData, 17) = "#define BUILD_NO" + Chr$(9) Then
    strBuild = strBuild & " " & _
    "build " & Mid$(InputData, 18, 255)
    End If
    Loop
    Close fileNum% 
    strBuild = "// " & strBuild & Chr$(13)
    Msgbox strBuild


    End Sub
    т.е так же как у SOFTOBZOR.ru в сообщение значение приходит, а в поле его отправить никак не удается.

    Not a sub or function name: doc - выдает такое сообщение, если использовать вышепредложенный вариант.

    Подскажите, объясните пожалуйста.
     
  4. Elena Nefedova

    Elena Nefedova Гость

    Для: Del
    Я что-то не вижу вызова doc.ReplaceItemValue в приведенном коде. Нужно поместить именно тот код, который вызывает эту ошибку.
     
  5. Del

    Del Гость

    Для: Elena Nefedova вышеприведенный имелось в виду, совсем выше, который был ответом на проблему.
     
  6. Elena Nefedova

    Elena Nefedova Гость

    Для: Del
    Я-то думала, что вы еще что-нибудь в код поместили, кроме этой строчки.
    Например, объявили переменные и установили ссылки на объекты...
    А изолированно она, ясно, пользы не приносит.

    Предлагаю поместить ее после Msgbox и затем записать документ.

    PS. И установить ссылку на конкретный документ не забудьте
     
  7. Del

    Del Гость

    Для: Elena Nefedova Спасибо за совет, но что-то не поучается.
    Что я не так делаю?

    Код (Text):
    Sub Click(Source As Button)

    Dim fileNum As Integer

    fileNum% = Freefile     ' Get a file number to open a file.

    Open "\\AM\vt5\Archive\BuildCount.h" For Input As fileNum%
    Do While Not Eof(fileNum%)
    Line Input #fileNum%, InputData  ' Read each line of the file.
    If Left$(InputData, 17) = "#define BUILD_NO" + Chr$(9) Then
    strBuild = strBuild & " " & _
    "build " & Mid$(InputData, 18, 255)
    End If
    Loop
    Close fileNum% 
    strBuild = "// " & strBuild & Chr$(13)
    Msgbox strBuild


    Dim doc As NotesDocument
    Dim item As NotesItem
    Set item = doc.ReplaceItemValue _
    ( "str_build_num", strBuild )
    Call doc.Save( False, True )


    End Sub

    т.е сейчас я пытаюсь это action`ом сделать, но хотелось бы чтобы все это происходило при создании документа(формы). Куда лучше поместить это?
     
  8. Elena Nefedova

    Elena Nefedova Гость

    Начиная с Set item = ..., все не так :)
    Совет установить ссылку на конкретный документ был, увы, проигнорирован.
    Предлагаю вот что:
    Код (Text):
        Dim doc As NotesDocument
    Dim ws As New NotesUIWorkspace  ' одновременно объявляется и задается рабочее пространство
    Dim uidoc As NotesUIDocument
    Set uidoc = ws.CurrentDocument
    Set doc = uidoc.Document   
    Call doc.ReplaceItemValue( "str_build_num", strBuild )
    Call doc.Save( False, True )
     
  9. Del

    Del Гость

    Для: Elena Nefedova
    ой спасибо-преспасибо, вы не представляете как долго я с этим бьюсь.
    Спасибо, все получилось.
     
Загрузка...
Похожие Темы - Lotusscript значение Field
  1. seoman2
    Ответов:
    9
    Просмотров:
    354
  2. stranik
    Ответов:
    8
    Просмотров:
    838
  3. erhe
    Ответов:
    22
    Просмотров:
    1.268
  4. lmike
    Ответов:
    4
    Просмотров:
    757
  5. JohnLemon
    Ответов:
    1
    Просмотров:
    831
Статус темы:
Закрыта.

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