|
19.12.2002, 07:27 | #1 |
Участник
|
Проблемы в dialog
Имеется контрол в диалоге типа Dimension, надо по какому-то условию делать эти контролы недоступны.
метод: PHP код:
Есть у кого-нибудь какие мысли? |
|
11.10.2007, 17:37 | #2 |
MCTS
|
Ну не знаю...
Одно из решений: допиливание классов DialogField и Dialog Идея: при добавлении поля в диалоге указывать индекс поля (то бишь аналитику) В классе Dialog метод addField() X++: DialogField addField( int type, FieldLabel label = '', FieldHelp help = '', ArrayIdx idx = 0 //modified for ArrayFields ) { DialogField DialogField; fields += 1; DialogField = new DialogField(this,type,fields); this.addCtrlDialogField(dialogField.name()); // dialogField.init(this); //standard dialogField.init(this, idx);//modified for ArrayFields if (label) dialogField.label(label); if (help) dialogField.helpText(help); this.addDialogClass(dialogField); return dialogField; } X++: //void init(Dialog dialog)//standard void init(Dialog dialog, ArrayIdx idx=0)//Modified for ArrayFields { .... //Added for ArrayFields --> if((idx)&&(idx<=arraysize)) { f = idx; arraysize = idx; } //Added for ArrayFields <-- while (f <= arraysize) { .... } X++: d.addField(TypeId(Dimension), '', '', 1);
__________________
В глухомани, в лесу Несмотря на красу Дни проводит Лиса Патрикевна. Я никак не пойму Отчего, почему Не пускают куму На деревню |
|
12.10.2007, 14:37 | #3 |
Moderator
|
Если все делаете правильно (как советовал Peter Savintsev), то нормально создается и работает EDT для любой аналитики.
MyDimensionPurpose == Dimensions.Num 2 == Dimensions.DimensionCode Единственное, я не наследовал от SysDim.
__________________
Андрей. |
|
|
За это сообщение автора поблагодарили: Qaz Qwerty (1). |
12.10.2007, 14:46 | #4 |
Участник
|
Сорри, ошибся. Действительно, надо наследовать не от SysDim, а от SysGroup. Для SysDim используется своя lookup-форма, которая не очень корректно работает в данном случае.
|
|
|
За это сообщение автора поблагодарили: Qaz Qwerty (1). |
12.10.2007, 16:54 | #5 |
Участник
|
Спасибо!!! Всё получилось
|
|