![]() |
#1 |
Участник
|
Печать на А3 в DAX 4.0
Доброго времени суток. Возникла необходимость печати отчета на А3. Но не получается ее настроить. Пробовал через printJobSettings както выйти на настройки размера листа и не нашел в свойтвах дизайна. Ну и собственнно вопрос как задать размер А3.
![]() |
|
![]() |
#2 |
Боец
|
Нужно именно программно задать? В диалоге печати: параметры->принтер->свойства->дополнительно... - это не работает?
|
|
![]() |
#3 |
Участник
|
В томто и прикол что нет. Устанавливал параметры изменения формата не помогло. Может както програмно все это задать можно.
![]() |
|
![]() |
#4 |
Участник
|
Программно можно. Сталкивался с подобной проблемой когда нужно было организовать во время печати выбор подающего лотка принтера. В общих чертах:
создаем объект типа PrintJobSettings. Затем с помощью класса sysPrintOptions добираемся до диалога настроек принтера. Устанавливаем в диалоге все нужные нам параметры, сохраняем изменения в наши printjobSettings. После чего сохраняем сами настройки как контейнер. Во время печати подсовываем свои настройки. |
|
![]() |
#5 |
Участник
|
Цитата:
Сообщение от Shirmin Oleg
![]() Программно можно. Сталкивался с подобной проблемой когда нужно было организовать во время печати выбор подающего лотка принтера. В общих чертах:
создаем объект типа PrintJobSettings. Затем с помощью класса sysPrintOptions добираемся до диалога настроек принтера. Устанавливаем в диалоге все нужные нам параметры, сохраняем изменения в наши printjobSettings. После чего сохраняем сами настройки как контейнер. Во время печати подсовываем свои настройки. ![]() |
|
![]() |
#6 |
Участник
|
В самих printJobSettings размера листа нет, смысл этого метода - прграммно получить доступ к настройкам принтера через его стандартный диалог (настройки печати) и потом сохранить их где нам удобно, а непосредственно перед печатью подменить эти настройки сохраненными.
X++: container params; SysPrintOptions sysPrintOptions; SysPrintOptions clientSysPrintOptions; PrintJobSettings pjs; pjs = new PrintJobSettings(); sysPrintOptions = SysPrintOptions::construct(pjs, 63); clientSysPrintOptions = SysPrintOptions::create(sysPrintOptions.pack()); sysPrintOptions.updatePrintJobSettings(clientSysPrintOptions.pack()); if(sysPrintOptions.openPrinterPropertiesDialog()) { sysPrintOptions.updatePrintJobSettings(clientSysPrintOptions.pack()); params = pjs.packPrintJobSettings(); } При печати отчета сохраненные настройки и заменяем ими "родные" X++: PrintJobSettings pjs = new PrintJobSettings(params);
element.printJobSettings(pjs.packPrintJobSettings()); |
|
|
За это сообщение автора поблагодарили: Ace of Database (4), S.Kuskov (1), ALMO (1). |