Use Formula For Choices

wowa

Well-Known Member
01.02.2007
845
0
#1
Добрый день,

Подскажите, плз, такой вопрос...

На форме есть поле типа Dialog List.
В поле я использую "Use formula for choices"
Краткий Код:

Код:
CountryName + "|" + CountryNumber
Т.е. пользователь выбирает страну, сохраняет документ, а в поле хранится ее номер.
Но у меня что-то не получается создать документ программно(агент). Я хочу чтобы отображалась страна, а хранилось ее номер. Подскажите как решить это? Не хочется создавать дополнительно никаких полей для отображения и редактирования.
Проблема в том, что существует много старых документов, где еще небыло этого диалог листа и хранилось-отображалось всегда код страны. Теперь я хочу сделать миграционного агента, дабы это исправить.

Хочется сделать что-то типа:
Код:
Call docNext.Replaceitemvalue("Country", "Малазия" & "|" & "778" )
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
#2
Я хочу чтобы отображалась страна, а хранилось ее номер.
Включите у Dialog List'а галку "Allow keyword synonyms" (вторая закладка свойств поля).
Хочется сделать что-то типа:
Код:
Call docNext.Replaceitemvalue("Country", "Малазия" & "|" & "778" )
Тогда уж
Код:
Call docNext.Replaceitemvalue("Country", "778" )
В поле сохраняется только код без названия страны. Если нужно отображать название страны в представлениях, сохраняйте его в другом поле.
 

wowa

Well-Known Member
01.02.2007
845
0
#3
Галочка стояла.

Если делаю код:

Код:
Call docNext.Replaceitemvalue("Country", "778" )
То при открытии документа отображается "778", а хотелось бы чтобы отображалась Малайзия
 

susinmn

Well-Known Member
16.10.2007
529
8
#4
Галочка стояла.

Если делаю код:

Код:
Call docNext.Replaceitemvalue("Country", "778" )
То при открытии документа отображается "778", а хотелось бы чтобы отображалась Малайзия
А CountryName от куда тянешь в Use formula for choices из текущего документа или из справочника?
Если из тек документа, может, в новом, программно созданном, документе нет этого поля?
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
#6
Создай на форме cfd-поле с формулой, которая возвращала бы список вида [CountryName|CountryNumber], укажи его в диалог-листе как источник выбора. Поле списка стран пока не скрывай, чтобы контролировать его значения.
 

wowa

Well-Known Member
01.02.2007
845
0
#7
nvy , да я вот так и сделал, просто не хотелось создавать поле, думал все это можно сделать кодом.
 

Anatoly

Well-Known Member
Lotus team
30.03.2007
222
0
#8
Если я правильно понял, нужно при создании нового документа, еще до вывода его на экран для редактирования, выбрать страну и внести в ее код в поле, а наименование в документе хранить не требуется?
Или выбирать страну нужно уже в режиме редактирования документа?