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

dimat

Lotus team
31.07.2008
516
0
#1
Есть простая таблица на форме(2 строки 2 столбца, к примеру).
Меня интересуют 2 вопроса:
1. Возможно ли программно на LS добавить к этой таблице строку/столбец?
2. Возможно ли, опять же программно на LS, добавить текст на форму в указанную ячейку?
 

ToxaRat

Чёрный маг
Lotus team
06.11.2007
3 231
17
#2
dimat
на оба вопроса скажу ВОЗМОЖНО :)
сильно вам это помогло? :)
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#4
dimat
а тебе что нужно, чтобы на всех документах, которые по форме отображаются, отображалась одинаковая таблица?
 

dimat

Lotus team
31.07.2008
516
0
#5
Простите, не правильно сформулировал.
Вобщем задача у меня такая: нужно на форме документа формировать таблицу с н-ым количеством строк. С помощью чего это можно реализовать?
П.С.: Внедренное представление не подходит
 

dimat

Lotus team
31.07.2008
516
0
#7
может, все-таки, в документе?
именно так :)
самое простое - отрисовать таблицу в RT-поле с пом класса NotesRichTextTable
Т.е. сначала нужно сформировать таблицу в переменной(var) типа NotesRichTextTable, затем RT полю каким то образом присвоить(doc.ReplaseItemValue("FieldName",var) ?) значение этой переменной?
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#8
а если не угадывать, а почитать сначала в справке? :) а еще там есть примеры.
работать с таблицами в РТ глючно, но можно.
сначала добавляется таблица, потом с пом навигатора NotesRichTextNavigator ее можно заполнить
 

dimat

Lotus team
31.07.2008
516
0
#11
Akupka, что то плохо у меня получается с этим :) , если не сложно, можешь какойнить примерчик небольшой написать?
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#12
можешь какойнить примерчик небольшой написать?
ну дык есть в хелпе, вот, к примеру:

Код:
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
а что именно не получается?
 
K

Klido

#13
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.
 

dimat

Lotus team
31.07.2008
516
0
#14
это не трудно, но я ж сказал плохо получается разобратся, LS плохо знаю
 

nvyush

Lotus team
22.04.2009
2 317
0
#17
Вобщем задача у меня такая: нужно на форме документа формировать таблицу с н-ым количеством строк. С помощью чего это можно реализовать?
П.С.: Внедренное представление не подходит
Java-апплет: альтернатива встроенному представлению:
http://www.notesnet.ru/nn/notesnet.nsf/0/f...&forprinter
 

dimat

Lotus team
31.07.2008
516
0
#18
Код:
	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 остается пустым, что не так делаю?
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#19
Код выполняется по нажатию на кнопку, после выполнения поле b1 остается пустым, что не так делаю?
"мама, вроди меня обратно"
изменения в RT-полях не происходят на UI, документ надо перегружать/переоткрывать.
вот пример http://codeby.net/forum/threads/29669.html
 

dimat

Lotus team
31.07.2008
516
0
#20
Akupaka, Спасибо, все получилось...
Еще вопрос: как програмно создать ссылку на документ?