![]() |
#13 |
Administrator
|
Цитата:
Нашел для себя 2 "обходных" пути. 1. Для диалогов - наследников RunBase есть класс DialogAddDimensionType_CheckButton_RU. Он добавляет в диалог флажки, по количеству элементов в массиве в типе Dimension. По сути здесь простой цикл и все. Но это решает задачу добавления именно "отвязанных" контролов. Важно! Здесь список контролов подготавливается ДО init формы. Т.к. после - уже не получается (ну у меня тогда не получилось). При этом лукапы для каждого элемента массива тут работать не будут (если пытаться заменить галки на строковые поля). Т.е. если хочется добавить контрол с лукапом в случае массива - он должен быть "связанным" 2. Если нужно сделать лукап со списком полей (а может и лукап со списком значений) аналогично форме расширенного запроса (SysQueryForm) - то нужно использовать класс SysQueryForm (его можно использовать, предварительно подготовив всякие таблички и Query). При этом, обращаю внимание - там используется табличка TmpSysQuery и у контрола типа Dimension проставлен не EDT, а FieldId, причем свойство ArraySize не используется (оно не работает), а в FieldId подставлено значение fieldId2Ext(fieldnum(Dimension), i), где i - индекс массива. Здесь видно, что лукап у поля "Значения" строится в зависимости от выбранного элемента массива.
__________________
Возможно сделать все. Вопрос времени Последний раз редактировалось sukhanchik; 14.07.2011 в 08:46. |
|
|
За это сообщение автора поблагодарили: Sergey Petrov (1). |