Здравствуйте!
Мне нужно получить значение из одного из полей диалога после окончания его работы. Перебором всех полей диалога я нахожу это поле, но значение его всегда равно NULL. Для ясности ситуации привожу джоб.
PHP код:
static void testDialog(Args _args)
{
Dialog cDialog;
DialogField _dialogField;
void showFields(object o,str name)
{
formBuildControl formBuildControl;
int i;
;
for (i=1;i<=o.controlCount(); i++)
{
formBuildControl = o.controlNum(i);
name = cDialog.formBuildDesign().control(formBuildControl.id()).name();
if (cDialog.formBuildDesign().control(formBuildControl.id()).helpText() == 'tst')
info( int2str(cDialog.formBuildDesign().control(formBuildControl.id()).value()));
if (formBuildControl.isContainer())
showFields(formBuildControl,name);
}
}
;
cDialog = new Dialog ('тестовый диалог');
_dialogField = cDialog.addField(typeId(NoYes), 'тестовое поле диалога');
_dialogField.helpText('tst');
cDialog.run();
showFields(cDialog.formBuildDesign(), 'Test');
if (!cDialog.closedOk())
return;
cDialog.finalize();
}
Независимо от того, поставить в диалоге галку или нет, он показывает значение 0.