Difference between revisions of "Table.Print"
(Created page with "{{infobox function |name=Print |object=Электронная таблица |caption=Работа с печатью |type=1 |sta...") |
m (1 revision imported) |
(No difference)
| |
Latest revision as of 07:54, 7 February 2021
| Print (Работа с печатью) | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||
Функция производит печать на принтер, с выводом стандартного диалога печати, если это необходимо. После деления данных на страницы при печати, функция изменяет текст колонтитулов созданных страниц, подставляя вместо выражения #P номер соответствующей страницы, а вместо #Q общее количество страниц при печати.
Синтаксис
Table.Print(<Показать стандартный диалог печати до ее осуществления (INT)>=0,<Наименование задания на принтере (STRING)>,<Режим диалога отмены печати (INT)>=0)
Аргументы
<Показать стандартный диалог печати до ее осуществления (INT)>- (необязательный аргумент) Выводить диалог операционной системы для выбора принтера и простых настроек до выполнения печати -- 1, по умолчанию -- 0 (не выводить).<Наименование задания на принтере (STRING)>- (необязательный аргумент) При помещении в очередь принтера задания на печать, будет использовано указанное наименование. Если наименование не указано, будет использовано стандартное наименование ("SunFlurry document").<Режим диалога отмены печати (INT)>- (необязательный аргумент) Задает режим показа диалога отмены печати во время печати. Доступны следующие значения аргумента:- 0 (по умолчанию) -- использовать немодальный диалог сверху других окон. Такой диалог не активируется во время появления на экран, чтобы не мешать работать пользователю с текущей активной формой.
- 1 -- использовать модальный диалог. Такой диалог получает фокус (активируется), продолжать работу при показе такого диалога невозможно.
- 2 -- не использовать диалог отмены печати вообще.
Примеры
//Функция подготовлена для вывода на экран или печати стандратной печатной формы проекта
//Т -- таблица печатной формы
//Сп -- дополнительные свойства, переданные из модуля печатной формы
//Загол -- заголовок окна
//флАльбомнаяОриентация -- изменить ориентацию, если параметр 0 или 1
Function ПечатнаяФорма(Т,Сп,Загол,флАльбомнаяОриентация=-1)
Фл:=Т.Printing.ScaleMode;
If TypeStr(Сп)="LIST" Then
Копий:=Number(Сп.GetByName("КоличествоКопий"));
If Копий>0 Then
Т.Printing.Copies:=Max(Копий,1);
EndIf;
If флАльбомнаяОриентация>=0 Then
Т.Printing.Orientation:=флАльбомнаяОриентация;
Т.Printing.ScaleMode:=1;
EndIf;
Else
Т.Printing.Orientation:=0;
If флАльбомнаяОриентация>=0 Then
Т.Printing.Orientation:=флАльбомнаяОриентация;
EndIf;
Т.Printing.ScaleMode:=1;
EndIf;
If Фл>0 Then
Т.Printing.ScaleMode:=Фл;
EndIf;
//Запретить изменения, если у пользователя нет прав
Т.EditorMode:=глПользователь.общиеИзменениеПечатныхФорм;
If глПользователь.общиеИзменениеПечатныхФорм=0 Then
Т.Restrict:=2;
EndIf;
//Если принтер не задан в параметрах, возможно, он выбран в свойствах пользователя
Принтер:=глПользователь.ПринтерПоУмолчанию;
If _And(TypeStr(Сп)="LIST",not isEmpty(Сп.GetByName("Принтер"))) Then
Т.Printing.Printer:=Сп.GetByName("Принтер");
ElseIf (Trim(Принтер)<>"Не выбран")And(Trim(Принтер)<>"") Then
Т.Printing.Printer:=Принтер;
EndIf;
ФлБезДиалогаПечати:=0;
If TypeStr(Сп)="LIST" Then
ФлБезДиалогаПечати:=Number(Сп.GetByName("БезДиалогаПечати"))*2;
EndIf;
Т.SelfReferenceCount:=глНайтиЧислоСсылокВТаблице(Т);
If _Or(TypeStr(Сп)<>"LIST",isEmpty(Сп.GetByName("ПечататьБезВывода"))) Then
Т.Show(Загол);
Else
Т.Print(0,,ФлБезДиалогаПечати);
EndIf;
EndFunction