• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Combobox

makaset

Well-known member
14.03.2007
126
0
BIT
0
привет Всем. мне требуется Ваш помошь
есть
Combobox
со значением (enter choices)
данные | 1
фио | 2
год р | 3

мне надо при выборе например фио покозали соответсвующие данные типа с переходом в закладку в таблице
Call doc.replaceItemValue("$MainTable", "Content"). кто подскажеть.
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Лучше синонимы задай нормальные, а не 1, 2 и 3. Или строки в таблице назови 1, 2 и 3.
Потом создаешь CFD-поле $MainTable с именем комбобокс-поля в качестве формулы. У комбобокса ставишь галку refresh fields on keyword change.
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Если делать через вычисляемое поле, то событие не надо использовать.
 
D

Darker

Поставь галку в свойствах формы, "Automaticaly refresh fields".
Если не поможет, поставь галку на третей вкладке свойства твоего поля(Combobox) "Run Exiting/OnChange events after value change", и на событие On Change выбери тип Client, LotusScript
и пропиши
Код:
Dim ws as new NotesUIWorkspace
Dim doc as NotesDocument
set doc = ws.CurrentDocument.Document
Call doc.replaceItemValue("$MainTable", doc.GetItemValue("Название_поля_Conbobox")(0))
call ws.CurrentDocument.Refresh()
 

makaset

Well-known member
14.03.2007
126
0
BIT
0
Спосибо за ответ! сделал как вы писали но не получается
 
H

hosm

А для таблицы правильно имя Name/ID tag и Row Tags Name указали? Т.е. если у строк таблицы задали алиас 1,2,3, то можно Call doc.replaceItemValue("$имятаблицы", имя_поля_комбо)
Если не получится, то только переоткрывать документ. Странно, вообще-то, мож, какие-то свойсва у таблицы не указали? вроде там четко написано...
 

makaset

Well-known member
14.03.2007
126
0
BIT
0
у меня Name table (Maintable), а row Tag($Maintable)
а код такой

Dim ws As New NotesUIWorkspace
Dim doc As NotesDocument
Set doc = ws.CurrentDocument.Document
Call doc.replaceItemValue("$maintable", doc.GetItemValue("Pole2")(0))
'Call doc.replaceItemValue("$MainTable", "$maintable")
Call ws.CurrentDocument.Refresh()

а Pole2 -это имя поле комбобох
 
H

hosm

Pole2:
данные | 1
фио | 2
год р | 3

мне надо при выборе например фио покозали соответсвующие данные типа с переходом в закладку в таблице
row Tag не так:
на закладке с ФИО ставится row Tag: 2
на закладке данные ставится row Tag: 1
на закладке г.р. ставится row Tag: 3
и дальше в коде, который указан выше Вами, используется
Код:
Call doc.replaceItemValue("$maintable", doc.GetItemValue("Pole2")(0))

Добавлено: или я неправильно поняла, какие закладки надо показывать?
 

makaset

Well-known member
14.03.2007
126
0
BIT
0
здесь

Call doc.replaceItemValue("$Maintable", doc.GetItemValue("2")(0))
если
"$Maintable" - имя таблицы
doc.GetItemValue("2")(0))- имя поле в комбо
а Row tag - куда прописать не вижу.
 
H

hosm

rows.JPG
находите на форме таблу вашу
Там, где квадрат - пишете maintable
потом переключаетесь на закладку с данными и пишете там, где овал - 1
потом переключаетесь на закладку с ФИО и пишете там, где овал - 2
и т.д.
У вас поле-комбобокс - это "Pole2" или "2"?
посчитала, что Pole2 =) а "2" - это просто один из алиасов значений этого поля.
тогда doc.GetItemValue("Pole2")(0) считывает значение поля.



Добавлено: nvy може, в хелп послать? если меня уже скрин заставили сделать :)
кстати, по ходу вопросик от коллеги, что-то она постеснялась ;) :
можно ли определить текущую вкладку в _рид-моде_, если разрешено переключение вкладок и пользователем? с Editable-полем $имятаблы в ридмоде вроде не работает.
 

makaset

Well-known member
14.03.2007
126
0
BIT
0
Спосибо за помошь? замучил новерное я Вас.
у меня так и настроен в таблице имя имя Row tag прописано
но
doc.GetItemValue("Pole2")(0) возвращает пустое значение. т.е он не присваевает занчение поле2 из комбобох, и соответсвенно не знает какую закладку открыть
 
O

Omh

Можно само поле сделать с резервированным именем для таблицы, например:

проперти поля:
* имя - $UserIDType
* тип - radiobutton
* refresh fields on keyword changes - on
* значения:
- Attachment|1
- Path to ID|2

проперти таблицы:
* Name/ID - UserIDType
* RowTags - 1/2

Переключаю поле - переключаются закладки
Переключаю закладки - меняется значение поля (только в EditMode)

Воркс лайк а чарм.
 
H

hosm

doc.GetItemValue("Pole2")(0) возвращает пустое значение. т.е он не присваевает занчение поле2 из комбобох, и соответсвенно не знает какую закладку открыть
Тогда проблема с комбобоксом. поле комбо Editable? если формулы какие-то, преобразующие или задающие его значение?
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!