Постановка задачи
Создать действие, по нажатию на которое
Инструмент
Палитра XML
Реализация
Создать схему диалога
Блок кода language xml <?xml version='1.0' encoding='UTF-8'?> <schemas xmlns="http://www.intertrust.ru/schema/palette/tn-schema"> <schema extends="Dialog" name="CustomDialog"> <string name="message" temporal="true"/> <string name="selectIds" temporal="true" array="true"/> <string name="counter" temporal="true"/> <!--Параметры диалога--> </schema> </schemas>
Создать форму диалога
Блок кода language xml <?xml version='1.0' encoding='UTF-8'?> <ui xmlns="http://www.intertrust.ru/schema/palette/tn-ui"> <form schema-ref="CustomDialog" id="CustomDialog" projection="default"> <properties> <hide condition-union="AND"> <negative-condition-ref ref="dialog"/> </hide> </properties> <component> <!--Параметры диалога--> <button name="${ui.form.CustomDialog.button.Ок:Ок}"> <action> <system name="submit"/> </action> </button> <button name="${ui.form.CustomDialog.button.Cancel:Отмена}"> <action> <system name="cancel"/> </action> </button> </component> </form> </ui>
Создать handler (JS-Обработчик операций)
Блок кода language xml <?xml version='1.0' encoding='UTF-8'?> <ui xmlns="http://www.intertrust.ru/schema/palette/tn-ui"> <handler name="Новая кнопка" id="CustomHandlerName"> <meta> <documentation></documentation> </meta> <script lang="JavaScript"><![CDATA[код кнопки]]></script> </handler> </ui>
Блок кода language js title Шаблон кода кнопки linenumbers true collapse true importClass(Packages.ru.intertrust.cmj.af.core.AFSession); importClass(Packages.ru.intertrust.cmj.af.exceptions.AFDaoBadParameterException); importClass(Packages.ru.intertrust.cmj.rest.tunable.object.TunableObjectREST); importClass(Packages.ru.intertrust.cmj.rest.tunable.object.TunableObjectREST.Resource); importClass(Packages.ru.intertrust.cmj.rest.tunable.object.action.TunableOperation); importClass(Packages.ru.intertrust.cmj.tunable.object.TunableObjectApplication); importClass(Packages.ru.intertrust.cmj.tunable.object.TunableObjectApplication.ClientContextKey); importClass(Packages.ru.intertrust.cmj.tunable.object.common.TunableObjectHelper); importClass(Packages.ru.intertrust.cmj.rest.tunable.object.action.OperationJScriptREST); importClass(Packages.ru.intertrust.cmj.rest.tunable.object.action.OperationJScriptREST.ReturnParamsResource); importClass(Packages.ru.intertrust.cmj.dp.DPApplication); importClass(Packages.ru.intertrust.cmj.rest.rkk.RkkResource); importClass(Packages.ru.intertrust.cmj.af.utils.BeansUtils); importClass(Packages.ru.intertrust.cmj.af.misc.AFDateTime); importPackage(Packages.ru.intertrust.cmj.af.utils); importPackage(Packages.ru.intertrust.cmj.af.tuning); importPackage(Packages.ru.intertrust.cmj.rest.tuning); importPackage(Packages.java.util); importPackage(Packages.java.lang);
- В форме создать секцию RootMenu
В RootMenu создать button и подключить к нему handler