![]() |
#5 |
Участник
|
Цитата:
В общем случае, в методе new() не должно быть вообще никакого кода. Перекрытие этого метода - это "заглушка", чтобы не переписывать кучу классов-наследников. При "штатном" проектировании такого быть не должно! Перепишите Ваш класс таким образом, чтобы параметр передавался ПОСЛЕ создания экземпляра класса. Через специально созданный для этого метод Вашего класса. Обычно это делается в методе main() примерно так X++: static void main(Args args) { MyClass myClass; ; myClass = new MyClass(); // Создается метод, для приема параметра и его обработки myClass.initFromArgs(args); if (myClass.prompt()) myClass.run(); } Если опустить некоторые подробности, то при выполнении пакетного задания выполняются следующие методы (запуск пакетного задания - это метод \Classes\BatchRun\runJobStatic()) X++: myClass = new MyClass(); // БЕЗ передачи параметра!!! myClass.parmInBatch(true); // Признак того, что класс выполняется в пакетном режиме myClass.unpack(); // Передаются те значения, которые были указаны при настройке пакетного режима myClass.run(); // Выполнение класса X++: if (this.h()) { // Выполняется пакетная обработка pivotTableType = (...); }
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
|
За это сообщение автора поблагодарили: d_alexe (1). |
Теги |
batch, пакетная обработка |
|
|