Считать текст с поля

Тема в разделе "Lotus - Программирование", создана пользователем romanko, 2 сен 2011.

  1. romanko

    romanko Гость

    Репутация:
    0
    Подскажите пожайлуста, как по нажатию кнопки считать с поля текст загнать его в переменную?
     
  2. Omh

    Omh Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    В простейшем случае как-то так
    Код:
    Dim ws As New NotesUIWorkspace
    Dim uiDoc As NotesUiDocument
    Dim Doc As NotesDocument
    Set uiDoc = ws.CurrentDocument
    Set Doc = uiDoc.Document
    
    Dim Tmp As String
    Tmp = Cstr(Doc.GetItemValue("FLD")(0))
     
  3. romanko

    romanko Гость

    Репутация:
    0
    Спасибо!!
    А как теперь то что хранится в переменной вывести в поле ??
     
  4. nvyush

    nvyush Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Почитать в справке дизайнера про метод NotesDocument.ReplaceItemValue(ItemName, Value)
     
  5. Kizarek86

    Kizarek86 Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    20 июл 2007
    Сообщения:
    860
    Симпатии:
    6
    Читайте хелп.
    NotesDocument class вам подскажет много интересного и полезного.
     
  6. romanko

    romanko Гость

    Репутация:
    0
    Делю вот так
    Dim doc As NotesDocument
    Dim item As NotesItem

    Set item = doc.ReplaceItemValue( Subject, Tmp1 )
    Call doc.Save( True, True )

    но в поле не выводится значение переменной Tmp1
     
  7. Cleric-Lviv

    Cleric-Lviv Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    3 янв 2008
    Сообщения:
    600
    Симпатии:
    0
    romanko

    Код:
    dim ws as new notesuiworkspace
    dim uidoc as notesuidocument
    dim doc as notesdocument
    dim item as notesitem
    
    set uidoc = ws.currentdocument
    set doc = uidoc.document
    
    Set item = doc.ReplaceItemValue( Subject, Tmp1 )
    Call doc.Save( True, True )
    call uidoc.refresh
     
  8. nvyush

    nvyush Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    А где Tmp1 инициализируется? Кстати, и doc тоже.
     
  9. Medevic

    Medevic Что это ? :)
    Lotus team

    Репутация:
    0
    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    "Subject" а не Subject
     
  10. Omh

    Omh Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    romanko
    Код:
    Option Declare
    и куча глупых вопросов отпадут сами собой.
     
  11. romanko

    romanko Гость

    Репутация:
    0
    Sub Click(Source As Button)

    Dim ws As New NotesUIWorkspace
    Dim uiDoc As NotesUiDocument
    Dim Doc As NotesDocument
    Dim Tmp As String
    Dim Tmp1 As String

    Set uiDoc = ws.CurrentDocument
    Set Doc = uiDoc.Document

    Tmp = Cstr(Doc.GetItemValue("Subject")(0))
    Tmp1 = Dos2Win(Tmp)

    Dim item As notesitem

    Set uidoc = ws.currentdocument
    Set doc = uidoc.document

    Set item = doc.ReplaceItemValue( , Tmp1 )
    Call doc.Save( True, True )
    Call uidoc.refresh

    End Sub

    ничего не выводит.


    Добавлено:
    ООО!Все работает!Спасибо всем за помощь!)))
     
  12. Xalet

    Xalet Well-Known Member

    Репутация:
    0
    Регистрация:
    8 авг 2008
    Сообщения:
    410
    Симпатии:
    0
    А почему все через документ? Почему через уидок нельзя?

    Например:

    Код:
     Dim workspace As New NotesUIWorkspace
    Dim uidoc As NotesUIDocument
    Dim composed As String
    Set uidoc = workspace.CurrentDocument
    composed = uidoc.FieldGetText( "DateComposed" )
    ...
    call uidoc.FieldSetText("SomeFiled2", composed)
     
  13. romanko

    romanko Гость

    Репутация:
    0
    А можно ли этот код вставить в агент чтобы при получении письма от определенного пользователя он отрабатывался. Если возможно то как это реализовать?
    Поидеи можно жеш агенту поставить условие чтобы он срабатывал перед поступлением нового сообщения, тогда как указать внутри скрипта что сообщение должно прийти от определенного пользователя?
     
  14. Cleric-Lviv

    Cleric-Lviv Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    3 янв 2008
    Сообщения:
    600
    Симпатии:
    0
    romanko

    ви ведь знаете кто должен прислать письмо. в коде ставите проверку и все))) если "тру" агент отрабативает если "фалс" тогда exit sub
     
  15. romanko

    romanko Гость

    Репутация:
    0
    А как это проверка в коде должна выгледеть?В языке скрипта??
     
  16. nvyush

    nvyush Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Код:
    If doc.GetItemValue("From")(0) <> "CN=Vasya V Pupkin/O=Roga And Copyta" Then Exit Sub
     
Загрузка...

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