1С неправильно проверяет размещение части табличного документа на странице.

1. fixin 4280 08.02.25 14:56 Сейчас в теме
Цель - проверить размещается ли часть табличного документа на странице.
Написал функцию.
У меня работает, у клиента нет (возможно на другом принтере).
Куда можно порыться?

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

	
	//Если Режим = "Вывод" Тогда //Удаляем строки
	//	//Проверятор.УдалитьОбласть(Проверятор.Область(1, ,1), ТипСмещенияТабличногоДокумента.ПоВертикали); 
	//	Проверятор.УдалитьОбласть(Проверятор.Область("R1"), ТипСмещенияТабличногоДокумента.ПоВертикали); 
	//КонецЕсли;                            
	//
	//Если Режим = "Присоединение" Тогда //Удаляем колонки
	//	Проверятор.УдалитьОбласть(Проверятор.Область(,1,,Проверятор.ШиринаТаблицы), ТипСмещенияТабличногоДокумента.ПоГоризонтали);
	//КонецЕсли;
		
	
	
	Если Режим = "Вывод" Тогда
		Если НЕ Проверятор.ПроверитьВывод(ТабличныйДокументОбласть) Тогда
			Возврат ложь;
		КонецЕсли;
	КонецЕсли;
	
	Если Режим = "Присоединение"  Тогда
		Если НЕ Проверятор.ПроверитьПрисоединение(ТабличныйДокументОбласть) Тогда
			Возврат ложь;
		КонецЕсли;
	КонецЕсли;                   
	
	Возврат истина;
	
КонецФункции   
Показать


Принтер там проброшен через RDP, может быть из-за этого как-то некорректно считает.
Прикрепленные файлы:
ПроверкаРазмещенияНаЛисте.epf
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
2. fixin 4280 11.02.25 10:36 Сейчас в теме +1 $m
Был какой-то временный сбой. Потом заработало. Странно.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. fixin 4280 11.02.25 10:36 Сейчас в теме +1 $m
Был какой-то временный сбой. Потом заработало. Странно.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот