1С неправильно проверяет размещение части табличного документа на странице.
Цель - проверить размещается ли часть табличного документа на странице.
Написал функцию.
У меня работает, у клиента нет (возможно на другом принтере).
Куда можно порыться?
Принтер там проброшен через RDP, может быть из-за этого как-то некорректно считает.
Написал функцию.
У меня работает, у клиента нет (возможно на другом принтере).
Куда можно порыться?
Функция ПроверитьПомещаетсяЛиТабличныйДокументНаСтраницу(ТабличныйДокумент, ТабличныйДокументОбласть, Режим = "Вывод") Экспорт
Если Режим = "ВыводПрисоединение" Тогда
Возврат
ПроверитьПомещаетсяЛиТабличныйДокументНаСтраницу(ТабличныйДокумент, ТабличныйДокументОбласть, "Вывод") И
ПроверитьПомещаетсяЛиТабличныйДокументНаСтраницу(ТабличныйДокумент, ТабличныйДокументОбласть, "Присоединение");
КонецЕсли;
//Проверятор = ТабличныйДокумент.ПолучитьОбласть(1, , 1);
//Проверятор = ТабличныйДокумент.ПолучитьОбласть("R1");
Проверятор = Новый ТабличныйДокумент(); //Берем пустой
ЗаполнитьЗначенияСвойств(Проверятор, ТабличныйДокумент,
"АвтоМасштаб,ВысотаСтраницы,ДвусторонняяПечать,ИмяПараметровПечати,ИмяПринтера,ИтогиСнизу,ИтогиСправа,"
"КлючПараметровПечати,КлючСохраненияПоложенияОкна,КоличествоЭкземпляров,Макет,МасштабПечати,НаправлениеПерехода,НаправлениеТекста,"
"НомерПервойСтраницы,ОриентацияСтраницы,ПлотностьСохраняемыхКартинок,ПолеСверху,ПолеСлева,ПолеСнизу,ПолеСправа,"
"РазборПоКопиям,РазмерКолонтитулаСверху,РазмерКолонтитулаСнизу,РазмерСтраницы,ТочностьПечати,"
"ЧередованиеРасположенияСтраниц,ЧерноБелаяПечать,ШиринаСтраницы,ЭкземпляровНаСтранице");
ЗаполнитьЗначенияСвойств(Проверятор.ВерхнийКолонтитул, ТабличныйДокумент.ВерхнийКолонтитул,
"ВертикальноеПоложение,Выводить,НачальнаяСтраница,ТекстВЦентре,ТекстСлева,ТекстСправа,Шрифт");
ЗаполнитьЗначенияСвойств(Проверятор.НижнийКолонтитул, ТабличныйДокумент.НижнийКолонтитул,
"ВертикальноеПоложение,Выводить,НачальнаяСтраница,ТекстВЦентре,ТекстСлева,ТекстСправа,Шрифт");
//Если Режим = "Вывод" Тогда //Удаляем строки
// //Проверятор.УдалитьОбласть(Проверятор.Область(1, ,1), ТипСмещенияТабличногоДокумента.ПоВертикали);
// Проверятор.УдалитьОбласть(Проверятор.Область("R1"), ТипСмещенияТабличногоДокумента.ПоВертикали);
//КонецЕсли;
//
//Если Режим = "Присоединение" Тогда //Удаляем колонки
// Проверятор.УдалитьОбласть(Проверятор.Область(,1,,Проверятор.ШиринаТаблицы), ТипСмещенияТабличногоДокумента.ПоГоризонтали);
//КонецЕсли;
Если Режим = "Вывод" Тогда
Если НЕ Проверятор.ПроверитьВывод(ТабличныйДокументОбласть) Тогда
Возврат ложь;
КонецЕсли;
КонецЕсли;
Если Режим = "Присоединение" Тогда
Если НЕ Проверятор.ПроверитьПрисоединение(ТабличныйДокументОбласть) Тогда
Возврат ложь;
КонецЕсли;
КонецЕсли;
Возврат истина;
КонецФункции
ПоказатьПринтер там проброшен через RDP, может быть из-за этого как-то некорректно считает.
Прикрепленные файлы:
ПроверкаРазмещенияНаЛисте.epf
По теме из базы знаний
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот