![]() |
#9 |
Участник
|
ena_ax, не ищите здесь готовых решений. По правилам этот форум не для рекламы, раздач и продаж готовых модификаций. Начните с простого:
1. Если под экспортом стандартных отчетов Вы подразумеваете вывод уже построенных отчетов во внутреннем формате: На форме SysPrintForm повесить опцию для вывода (\Forms\SysPrintForm\Designs\Design\[Group:MainGroup]\[Tab:MainTab]\[TabPage:General]\[Group:TargetSpecificationGroup]\[Tab:TargetTab]\[TabPage:ExcelTab]). В \Forms\SysPrintForm\Methods\ClassDeclaration прописать макрос #DEFINE.TAB_EXCEL(5) В \Forms\SysPrintForm\Methods\buildFormRun прописать: if (! clientSysPrintOptions.showOutputScreen()) { formListItem = new FormListItem("Excel", imageListAppl_Print.image(#ImageClass), PrintMedium::ViewerClass); sendTo.addItem(formListItem); В \Forms\SysPrintForm\Methods\closeOk прописать: if (clientSysPrintOptions.parmTarget() == PrintMedium::ViewerClass) { clientSysPrintOptions.parmViewerType(ReportOutputUserType::Viewer4); }В \Forms\SysPrintForm\Methods\changeTarget прописать: case PrintMedium::File: //,PrintMedium::ViewerClass: element.setTargetSettings(#TAB_FILE, "@SYS53220", PrintMedium::File, true, false); //AX4 2. Если Вы хотите создать отчеты с нуля с выводом в Excel: Определитесь, на основе какой технологии Вы собираетесь выполнять экспорт отчетов в Excel. Если на основе COM - технологии, то Вам необходимо: 1. Если при выводе необходимо создавать файл Excel и произвольным образом выводить в файл данные: На основе классов ComOfficeDocument_RU и ComExcelDocument_RU, предварительно их доработав, создать классы потомки которые и будут выполнять пересчет и вывод данных в Excel. 2. Если при выводе необходимо воспользоваться заранее заготовленным шаблоном то Вам необходимо создать для этого потомок RunBaseBatch. Обеспечить интерфейс ввода начальных данных перекрытием методов dialog(), init(), queryRun(), run() Далее в созданном методе, например setInitialParameters() определяем наличие в указанном месте файла шаблона при помощи winapi инициализируем введенные параметры и выводим отчет при помощи созданного для этих целей метода\методов. Для пересчета и вывода данных необходимо создать класс потомок. |
|