Показать сообщение отдельно
Старый 30.12.2010, 15:17   #1  
Pustik is offline
Pustik
Участник
 
807 / 372 (14) ++++++
Регистрация: 04.06.2004
В Стандартной АХ2009 не работает кнопка <Параметры> на диалоге класса унаследованного от RunBaseReport
Создаете класс от RunBaseReport. Временную таблицу. Создайте простенький отчет на базе этой временной таблицы. В методе Run класса заполните эту таблицу. И передайте отчету через queryRun.setRecord(tmpTable); reportRun.queryRun(queryRun);
Запустите класс. В появившемся диалоге есть кнопка <Параметры>. Нажмите ее и в открывшейся форме выберете какие-нибудь все возможные параметры на ней: "Канал вывода", Ориентация и т.д.(запомните их в уме). Нажмите ОК. Посмотрите сработали ли ваши параметры. И Запустите класс снова. Снова зайдите в кнопку <Параметры>. По идее все параметры должны сохраниться. Да, в форме они все те, какие вы установили в первый раз. Теперь поменяйте их на другие и запустите отчет. Отчет выйдет с первоначальными параметрами. И теперь сколько бы вы раз не запускали этот отчет, какие бы вы параметры не выбирали по кнопке <Параметры> у вас навсегда останутся первоначальные.
Кому лень создавать прикрепляю проект. Можете убедиться.

В классе RunBaseReport в методе Unpack() везде после

X++:
if (isSwappedFromServer)
            {
                printJobSettings = SysPrintOptions::newPrintJobSettingsOnServer(packedPrintJobSettings);
            }
            else
            {
                printJobSettings = new PrintJobSettings(packedPrintJobSettings);
            }
надо поставить this.makePrintJobSettings();

и в методе Pack() перед

if (xGlobal::hasClient())

надо поставить this.makePrintJobSettings();

заработает корректно.
AX2009 Roll 6.

Желаю всем удачи в такой Красивой, Удобной, Защищенной, Скоростной системе. И всех с Новым Годом.
Вложения
Тип файла: xpo SharedProject_TestReport.xpo (6.6 Кб, 529 просмотров)