Ged
Как написал Vik cfsSetCurrentContainer в моем случае вызывать не обязательно
В обработчике handleEvent интерфейса VIP автоматически устанавливается текущий корневой контейнер, равный интерфейсу, чей handleEvent выполняется в данный момент.
За код спасибо, но в моем случае не чек бокс, а колонка, возможно и поведение несколько иное.
Кстати увидел, что в секции макроопределения вызывается другое макроопределение, раньше такое компилятор не пропускал (был даже ПИР), круто что доработали.
Ну а вообще что-то странное творится - поведение разное если функции вызвать так cfsSetProp(columnId, cfpIndex, integer(4)) и вот так cfsSetProp(columnId, cfpIndex, 4). Hz с чем это связано, но добиться нормального отображения колонок так и не смог. Код урезал до такого
Код: Выделить всё
#component "L_Dogovor"
alter interface CalPlan;
handleEvent
cmInit:
{
inherited::handleEvent(cmInit);
cfsSetProp('c_BRCALPLAN1_HOZOPERVIEWNAME_Наименование_ТХО', 'Hidden', true);
cfsSetProp('c_BRCALPLAN1_SMARKER', 'Hidden', true);
var columnId : longint;
if (cfsCreateObject('TreeColumn', 'BRCALPLAN1', 'CalPlan1.Cont_Fio', false, columnId) = cfOk)
{
cfsSetProp(columnId, cfpTitle, 'Вид платежа');
cfsSetProp(columnId, cfpTextAlign, taCenter);
cfsSetProp(columnId, cfpSize_X, 10);
cfsSetProp(columnId, cfpProtect, true);
cfsSetProp(columnId, cfpIndex, integer(4));
}
if (cfsCreateObject('TreeColumn', 'BRCALPLAN1', 'CalPlan1.CondStatus', false, columnId) = cfOk)
{
cfsSetProp(columnId, cfpTitle, 'Объект строительства');
cfsSetProp(columnId, cfpPickButton, true);
cfsSetProp(columnId, cfpStatusCtx, sci1378Esc);
cfsSetProp(columnId, cfpProtect, true);
cfsSetProp(columnId, cfpIndex, integer(5));
}
}
end;
end.
Может кто посмотрит, кому не влом. Вызывается через кнопку план для договора.