1. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
Скрыть объявление

Уважаемый Гость, в 23:30 по мск форум будет закрыт на профилактику на 1,5 часа до 01:00 24.10.2017

Нужно скопировать и дописать данные в поле

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

  1. LIGHT

    LIGHT Гость

    Репутация:
    0
    Человеки, подскажите как на LS замутить такое:
    Есть поле много значное при определенном условии в это поле нужно засунуть еще одно значением.

    Как можно всять все текущие данные?
    Типа doc.GetItemValue("Pole")(ALL) что бы в дальнейшем сделать

    Код:
    cur = doc.GetItemValue("Pole")([b]ALL[/b])
    add = doc.GetItemValue("PoleAdd")(0)
    Call doc.ReplaceItemValue("Pole"cur & chr(10) & add)
     
  2. Medevic

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

    Репутация:
    0
    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    <!--QuoteBegin-LIGHT+17:12:2007, 10:09 -->
    <span class="vbquote">(LIGHT @ 17:12:2007, 10:09 )</span><!--QuoteEBegin-->Как можно всять все текущие данные?
    [snapback]90149" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    doc.GetItemValue("Pole")
     
  3. morpheus

    morpheus скриптописец

    Репутация:
    0
    Регистрация:
    7 авг 2006
    Сообщения:
    3.915
    Симпатии:
    1
    Для: LIGHT
    Я бы использовал
    AppendToTextList
    Код:
    Dim doc As NotesDocument
    Dim item As NotesItem
    Dim newVals( 1 To 3 ) As String
    '...set value of doc...
    Set item = doc.GetFirstItem( "Categories" )
    newVals( 1 ) = "Girls"
    newVals( 2 ) = "Boys"
    newVals( 3 ) = "Toys"
    Call item.AppendToTextList( newVals )
    Call doc.Save( False, True )
     
  4. LIGHT

    LIGHT Гость

    Репутация:
    0
    Ругается

    Код:
     Dim item as NoteItem
    Set .....
    
    CountElements = Ubound(doc.GetItemValue("Review")
    
    For st = 0 to CountElements 
    
    NewVal (st) = doc.GetItemValue("Reviewers")( st )
    MsgBox NewVal (st) 
    Next
    
    Call item.Appen.....
    Ругается на NewVal (st) = doc.GetItemValue("Reviewers")( st )
     
  5. morpheus

    morpheus скриптописец

    Репутация:
    0
    Регистрация:
    7 авг 2006
    Сообщения:
    3.915
    Симпатии:
    1
    где add - это переменная со значением которое надо добавить в поле

    Код:
    Dim doc As NotesDocument
    Dim item As NotesItem
    add = doc.GetItemValue("PoleAdd")(0)
    Call item.AppendToTextList( add )
     
  6. Sandr

    Sandr Гость

    Репутация:
    0
    doc.ReplaceItemValue("Pole", ArrayAppend(doc.GetItemValue("Pole"), doc.GetItemValue("PoleAdd")(0)))
     
  7. K-Fire

    K-Fire Гость

    Репутация:
    0
    Обобщу что тут понаписали :)

    Если поле текстовое, то:

    Код:
    Dim doc As NotesDocument
    Dim item As NotesItem
    Call item.AppendToTextList("то что надо добавить к списку")
    Если поле нетекстовое, то:

    Код:
    tmp = doc.GetItemValue("поле") ' в тмп получается список
    tmp = arrayappend(tmp, "значение, которое добавить в список")
    doc.поле = tmp или doc.ReplaceItemValue("поле", tmp)
    Естественно надо навесить проверки на то что такое поле уже есть, что значение в поле непустое и т.д.
     
Загрузка...

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