Добрый день
У меня есть задание, задать печать двух актов на одном А4. То есть что бы два одинаковых акта печатались на одном листе. Делается с целью удобства пропечатывания актов, так как их огромное количество.
Пробивал задать данные параметры в свойствах самой печати, уменьшивал размер листа и задавал печать двух экземпляров на страницу, но ничего так и не помогло, либо при печати разрывает сам акт на два А4 либо печатает два экземпляра на двух листах.
Второй подход к снаряду открыл для меня табличную часть документа и модуль печати в конфигураторе но там я так же не нашел параметр - "печать двух экземпляров на одной странице" или что то в этом роде.
Уважаемые знатоки. Подскажите пожалуйста куда еще следует копнуть?
Заранее спасибо.
Нужно ковырять саму процедуру печати.
В цикле вывести два раза печать и после чего выполнить команду печати/просмотра сформированного листа,т.е.
если раньше было
таб.ВывестиСекцию("Шапка");
таб.ВывестиСекцию("Строка");
таб.ВывестиСекцию("Подвал");
таб.Показать();
Для Инд = 1 По 2 Цикл
таб.ВывестиСекцию("Шапка");
таб.ВывестиСекцию("Строка");
таб.ВывестиСекцию("Подвал");
КонецЦикла;
таб.Показать();
Сделал следующие
Для Инд = 1 По 2 Цикл
Таб.ВывестиСекцию("Шапка|Исполнитель");
Таб.ПрисоединитьСекцию("Шапка|"+СекцияКонтрагента);
Таб.ВывестиСекцию("Заголовок|Все");
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
Если (ВидНДС.Код = "БезНДС") Тогда
Таб.ВывестиСекцию("СтрокаБезНДС|Все");
Иначе
Таб.ВывестиСекцию("Строка|Все");
КонецЕсли;
КонецЦикла;
Если (ВидНДС.Код = "БезНДС") Тогда
Таб.ВывестиСекцию("БезНДС|Все");
Иначе
Таб.ВывестиСекцию("Итог|Все");
КонецЕсли;
Таб.ВывестиСекцию("Дно|Исполнитель");
Таб.ПрисоединитьСекцию("Дно|"+СекцияКонтрагента);
КонецЦикла;
Покажите всю процедуру печати
На печать выводится - "Стандартная форма"
// ===============================
Процедура Печать(Реж, АвтоВыбор)
// БиТ 20.08.2009
Перем ВыбЗначение;
Если АвтоВыбор = 0 Тогда
ВариантыПечати = СоздатьОбъект("СписокЗначений");
ВариантыПечати.ДобавитьЗначение(1,"Стандартная форма");
ВариантыПечати.ДобавитьЗначение(2,"С факсимильной печатью");
Если ВариантыПечати.ВыбратьЗначение(выбЗначение,"",,,1) <> 1 Тогда
Возврат;
КонецЕсли;
Иначе
ВыбЗначение = АвтоВыбор;
КонецЕсли;
// БиТ 20.08.2009
Таб = СоздатьОбъект("Таблица");
фУкр = ?(Константа.ФормыНаУкраинском = Да, 1, 0);
СуффиксТаблицы = ?(фУкр = 1, "_Укр", "");
СуффиксФайла = ?(фУкр = 1, "_ukr", "");
ПрефиксФайла = "RNAk";
// БиТ 20.08.2009
Если ВыбЗначение = 1 Тогда
ИмяФайлаПечатнойФормы = КаталогИБ()+"ExtForms\PrnForms\"+ПрефиксФайла+СуффиксФайла+".mxl";
Если ФС.СуществуетФайл(ИмяФайлаПечатнойФормы) = 1 Тогда
Таб.ИсходнаяТаблица(ИмяФайлаПечатнойФормы);
Иначе
Таб.ИсходнаяТаблица("Таблица"+СуффиксТаблицы);
КонецЕсли;
Иначе
ИмяФайлаПечатнойФормы = КаталогИБ()+"ExtForms\PrnForms\"+ПрефиксФайла+"Fax"+СуффиксФайла+".mxl";
Если ФС.СуществуетФайл(ИмяФайлаПечатнойФормы) = 1 Тогда
Таб.ИсходнаяТаблица(ИмяФайлаПечатнойФормы);
Иначе
Таб.ИсходнаяТаблица("ТаблицаФакс"+СуффиксТаблицы);
КонецЕсли;
КонецЕсли;
// БиТ 20.08.2009
глУстПропись(Гривня);
РС = ?(ВидТорговли = Перечисление.ВидыТорговли.Нал, глПолучитьРСчет(Фирма, Гривня), Касса);
ЗаказИнфо = "";
Если Заказ.Выбран() = 1 Тогда
Если Заказ.Вид() = "Счет" Тогда
ЗаказИнфо = ?(фУкр = 1, " по рахунку № "," по счету № ") +
СокрЛП(Заказ.НомерДок) + ?(фУкр = 1, " від "," от ") + Заказ.ДатаДок;
ИначеЕсли Заказ.Вид() = "Договор" Тогда
ЗаказИнфо = " по договору № " + СокрЛП(Заказ.НомерДоговора) + ?(фУкр = 1, " від "," от ") + Заказ.ДатаДок;
КонецЕсли;
КонецЕсли;
НДССтр = "0.00 грн";
Если ВидНДС.Ставка.Получить(ДатаДок) <> 0 Тогда
НДССтр = "20% - " + глФРМВал(Итог("НДС"), Гривня, 1);
КонецЕсли;
СекцияКонтрагента = ?(Контрагент.ВидКонтрагента = Перечисление.ВидыКонтрагентов.ЧастноеЛицо,
"ЧастноеЛицо", "Организация");
Для Инд = 1 По 2 Цикл
Таб.ВывестиСекцию("Шапка|Исполнитель");
Таб.ПрисоединитьСекцию("Шапка|"+СекцияКонтрагента);
Таб.ВывестиСекцию("Заголовок|Все");
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
Если (ВидНДС.Код = "БезНДС") Тогда
Таб.ВывестиСекцию("СтрокаБезНДС|Все");
Иначе
Таб.ВывестиСекцию("Строка|Все");
КонецЕсли;
КонецЦикла;
Если (ВидНДС.Код = "БезНДС") Тогда
Таб.ВывестиСекцию("БезНДС|Все");
Иначе
Таб.ВывестиСекцию("Итог|Все");
КонецЕсли;
Таб.ВывестиСекцию("Дно|Исполнитель");
Таб.ПрисоединитьСекцию("Дно|"+СекцияКонтрагента);
КонецЦикла;
// БиТ 20.08.2009
Если Реж = 0 Тогда
Таб.Защита(Константа.ФлагЗащитыТаблиц);
Таб.ТолькоПросмотр(1);
Таб.Опции(0,0,,);
Таб.Показать("ПЕЧАТЬ: Акт сдачи-приемки работ","");
Иначе
ИмяКаталога = СокрЛП(КаталогПользователя());
Если ПустоеЗначение(ИмяКаталога) = 1 Тогда
ИмяКаталога = КаталогИБ();
КонецЕсли;
ИмяФайла = СокрЛП(НомерДок)+"_"+Прав(Строка(ДатаГод(ДатаДок)),2)+?(ДатаМесяц(ДатаДок)<10,"0","")+Строка(ДатаМесяц(ДатаДок))+?(ДатаЧисло(ДатаДок)<10,"0","")+Строка(ДатаЧисло(ДатаДок));
Если ФС.СуществуетФайл(ИмяФайла+".xls") = 1 Тогда ФС.УдалитьФайл(ИмяФайла) КонецЕсли;
ИмяФайла = ИмяКаталога +"\"+ ИмяФайла;
Попытка
Таб.Записать(ИмяФайла,"XLS");
глКомментарий("Сохранен файл: "+ ИмяФайла +".xls",2,Контекст,"!");
Исключение
Сообщить("Не удалось сохранить файл: " + ИмяФайла +".xls");
КонецПопытки;
ЗагрузитьВнешнююКомпоненту(КаталогИБ()+"\Rom-Mail.dll");
_SMTP(ТекущийДокумент(), Контрагент, ЗаголовокПисьма, ТелоПисьма, ИмяФайла+".xls");
КонецЕсли;
// БиТ 20.08.2009
глУстПропись(Гривня);
КонецПроцедуры
Я пытался еще раз сделать все то что вы мне советовали, но у меня так и нечего не получилось.
Подскажите еще какой то метод
Спасибо.
ХЗ, как по коду, так должны печататься два акта сразу. Разделителей страниц нет. Больше похоже на мистику.
Кажется что то похожие выдало.
Результат следующий:
напечатало два А4, но на первом поместилась еще треть второго акта, а на втором листе уже остальная часть.
Подскажите пожалуйста, название процедуры или функции для сдвига/уменьшения отступа или самого размера страницы, чтоб в итоге поместилось два акта на один А4
Заранее спасибо.
В принципе разобрался, поигрался с полями и все получилось.
Остался один вопрос, как уменьшить шрифт в самом акте?
Batchir and Vofka большое спасибо!
Все получилось!
Пожалуйста
а для податкових накладних також треба в конфігураторі правити чи є інші можливості?
Немає інших можливостей, для будь якої форми друку треба правити конфігурацію.
от так виглядає 2 екземпляри на 1стр.
[удалено т.к. пользователю лень читать правила форума]
ну і саме фото
Прекращаем офтоп.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua