Показать сообщение отдельно
Старый 02.11.2012, 14:51   #15  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,443 / 1777 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
В вашей ситуации я вижу следующий порядок действий:

1) Сделать наследник класса InventPrintLabel2, который вместо того чтобы самостоятельно заполнять данными временную таблицу, будет содержать метод для передачи ему уже готовой таблицы. Метод initTmpInventPrintLabel() наследника должен просто возвращать уже готовую таблицу.

2) Запускать отчёт напрямую без класса, а класс передавать в качестве параметра args.caller().

X++:
Args args; 
SysReportRun reportRun; 
InventPrintLabel2_Child InventPrintLabel2;
; 

InventPrintLabel2 = new InventPrintLabel2_Child();
InventPrintLabel2.parmTable(InventPrintLabel);
args.name(reportstr(MyReport)); 
args.caller(InventPrintLabel2)
reportRun = ClassFactory.ReportRunClass(args);
reportRun.query().interactive(false); 
reportRun.report().interactive(false); 
reportRun.setTarget(PrintMedium::Printer); 
reportRun.run();