Цитата:
Изначально опубликовано EVGL
Можно. Только в вашем случае это излишне. Для создания функций с подобными динамическими диалогами предназначен класс RunBase, сотни наследников которого дают примеры использования (методы dialog() и getFromDialog() ).
Если все-таки интересует исполнение динамически созданного кода, то вот пища для размышлений: \Classes\ReleaseUpdateDB\run().
Спасибо за направление:
Вот что получилось (может кому-то понадобится) :
PHP код:
static void Job5(Args _args)
{
xppcompiler compiler = new xppcompiler();
str buf;
;
buf = @'
date some_method()
{
return %1;
}';
buf = strfmt(buf, 'str2date("31-01-2003", 123)');
if (compiler.compile(buf))
{
info(date2str(runbuf(buf),123,2,2,2,2,4));
}
else
{
info(':-(');
}
//
buf = @'
date some_method()
{
return %1;
}';
buf = strfmt(buf, 'today() - 7');
if (compiler.compile(buf))
{
info(date2str(runbuf(buf),123,2,2,2,2,4));
}
else
{
info(':-(');
}
}