Простая таблица на форме

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

  1. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    Есть простая таблица на форме(2 строки 2 столбца, к примеру).
    Меня интересуют 2 вопроса:
    1. Возможно ли программно на LS добавить к этой таблице строку/столбец?
    2. Возможно ли, опять же программно на LS, добавить текст на форму в указанную ячейку?
     
  2. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.046
    Симпатии:
    18
    dimat
    на оба вопроса скажу ВОЗМОЖНО :)
    сильно вам это помогло? :)
     
  3. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    ToxaRat, Спасибо за ответ :) .
    тогда как?
     
  4. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    dimat
    а тебе что нужно, чтобы на всех документах, которые по форме отображаются, отображалась одинаковая таблица?
     
  5. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    Простите, не правильно сформулировал.
    Вобщем задача у меня такая: нужно на форме документа формировать таблицу с н-ым количеством строк. С помощью чего это можно реализовать?
    П.С.: Внедренное представление не подходит
     
  6. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    может, все-таки, в документе? :)
    самое простое - отрисовать таблицу в RT-поле с пом класса NotesRichTextTable
     
  7. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    именно так :)
    Т.е. сначала нужно сформировать таблицу в переменной(var) типа NotesRichTextTable, затем RT полю каким то образом присвоить(doc.ReplaseItemValue("FieldName",var) ?) значение этой переменной?
     
  8. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    а если не угадывать, а почитать сначала в справке? :) а еще там есть примеры.
    работать с таблицами в РТ глючно, но можно.
    сначала добавляется таблица, потом с пом навигатора NotesRichTextNavigator ее можно заполнить
     
  9. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    Akupaka, спасибо буду дальше копать.
     
  10. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.046
    Симпатии:
    18
    я бы пересмотрел эту точку зрения, так как для неограниченного кол. строк это именно ТО :)
     
  11. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    Akupka, что то плохо у меня получается с этим :) , если не сложно, можешь какойнить примерчик небольшой написать?
     
  12. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    ну дык есть в хелпе, вот, к примеру:

    Код (Text):
    This view action creates a basic auto-width table of 4 rows and 3 columns, and populates it.
    Sub Click(Source As Button)
    Dim session As New NotesSession
    Dim db As NotesDatabase
    Set db = session.CurrentDatabase
    REM Create document with Body rich text item
    Dim doc As New NotesDocument(db)
    Call doc.ReplaceItemValue("Form", "Main topic")
    Call doc.ReplaceItemValue("Subject", "Table 4 x 3")
    Dim body As New NotesRichTextItem(doc, "Body")
    REM Create table in Body item
    rowCount% = 4
    columnCount% = 3
    Call body.AppendTable(rowCount%, columnCount%)
    REM Populate table
    Dim rtnav As NotesRichTextNavigator
    Set rtnav = body.CreateNavigator
    Call rtnav.FindFirstElement(RTELEM_TYPE_TABLECELL)
    For iRow% = 1 To 4 Step 1
    For iColumn% = 1 To 3 Step 1
    Call body.BeginInsert(rtnav)
    Call body.AppendText("Row " & iRow% & ", Column " & iColumn%)
    Call body.EndInsert
    Call rtnav.FindNextElement(RTELEM_TYPE_TABLECELL)
    Next
    Next
    REM Save document and refresh view
    Call doc.Save(True, False)
    Dim ws As New NotesUIWorkspace
    Call ws.ViewRefresh
    End Sub
    а что именно не получается?
     
  13. Klido

    Klido Гость

    dimat
    предложили же хелп открыть... эт онетрудно :)

    Examples: NotesRichTextTable class
    This agent creates a document, creates a table in a rich text item in the document, saves the document, then gets the table and displays its properties.
     
  14. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    это не трудно, но я ж сказал плохо получается разобратся, LS плохо знаю
     
  15. Sandr

    Sandr Гость

    Зануда ты :)
     
  16. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    "иди отсюдова, мальчик" (с) )))
     
  17. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Java-апплет: альтернатива встроенному представлению:
    http://www.notesnet.ru/nn/notesnet.nsf/0/f...&forprinter
     
  18. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    Код (Text):
        Dim rc As Integer, cc As Integer
    rc=2
    cc=2
    Dim b1 As New NotesRichTextItem(docur, "b1")
    Call b1.AppendTable(rc, cc)
    Dim rtnav As NotesRichTextNavigator
    Set rtnav = b1.CreateNavigator
    Call rtnav.FindFirstElement(RTELEM_TYPE_TABLECELL)
    For iRow% = 1 To rc
    For iColumn% = 1 To cc
    Call b1.BeginInsert(rtnav)
    Call b1.AppendText("Row " & iRow% & ", Column " & iColumn%)
    Call b1.EndInsert
    Call rtnav.FindNextElement(RTELEM_TYPE_TABLECELL)
    Next
    Next

    Код выполняется по нажатию на кнопку, после выполнения поле b1 остается пустым, что не так делаю?
     
  19. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    "мама, вроди меня обратно"
    изменения в RT-полях не происходят на UI, документ надо перегружать/переоткрывать.
    вот пример http://codeby.net/forum/threads/29669.html
     
  20. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    Akupaka, Спасибо, все получилось...
    Еще вопрос: как програмно создать ссылку на документ?
     
Загрузка...

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