|
![]() |
#1 |
Участник
|
форма Б, которая открывается по кнопке, должна показывать историю изменения для выбранного поля на форме А
|
|
![]() |
#2 |
Участник
|
Цитата:
X++: client static container getCallerControlProperty(Args args, container _propertyCon) { container res; Object callerControl; FormRun caller; SysDictClass dictClass; ContainerEnumerator ce; IdentifierName methodName; #Properties ; if (args && args.caller()) { if (SysDictClass::isEqualOrSuperclass(args.caller().handle(), classnum(FormRun))) { caller = args.caller(); callerControl = caller.selectedControl(); dictClass = new SysDictClass(classidget(callerControl)); ce = new ContainerEnumerator(_propertyCon); while (ce.moveNext()) { methodName = ce.current(); if (dictClass.hasObjectMethod(methodName)) res += dictClass.callObject(methodName, callerControl); else res += ""; } } } return res; } на вызываемой форме вызовите следующий код: X++: c = getCallerControlProperty(element.args(), [#PropertyDatasource, #PropertyDataField]); |
|
![]() |
#3 |
северный Будда
|
Цитата:
Такого рода кунштюки обычно нужны для разборок типа "кто накосячил". Если в каком-то поле кто-то регулярно косячит с данными, то это говорит о наличии трёх возможных проблем: 1) кривое разграничение прав доступа (не те люди имеют разрешение на правку) 2) ошибка программирования (не сделаны нужные проверки для ввода данных в поле) 3) ошибочная реализация бизнес-процессов (данные вводят не те, кто должен это делать) вот с этим и надо разобраться в первую очередь.
__________________
С уважением, Вячеслав |
|