|
ПроверитьВывод() очень странное поведение! | ☑ | ||
---|---|---|---|---|
0
DmitryNN
30.01.17
✎
09:51
|
Бьюсь 3 дня, перерыл интернет - ничего похожего не нашел.
Вывожу ТабДок, код простой. //Выводим области ТабДок.Вывести(ОбластьШапкаНаправление); ТабДок.Вывести(ОбластьШапкаКонтрагент); ОбластьАдресДоставки.Параметры.АдресДоставки = СтрокаНа2Строки; //ТУТ БУДЕТ ИСТИНА Проверка1 = ТабДок.ПроверитьВывод(ОбластьАдресДоставки); //КОЛИЧЕСТВО СТРАНИЦ БУДЕТ 1 КоличествоСтраниц1 = ТабДок.КоличествоСтраниц(); ОбластьАдресДоставки.Параметры.АдресДоставки = СтрокаНа3Строки; //ТУТ БУДЕТ ЛОЖЬ Проверка2 = ТабДок.ПроверитьВывод(ОбластьАдресДоставки); //КОЛИЧЕСТВО СТРАНИЦ БУДЕТ СНОВА 1 КоличествоСтраниц1 = ТабДок.КоличествоСтраниц(); ТабДок.Вывести(ОбластьАдресДоставки); ТабДок.Показать(); Функция ПроверитьВывод() упорно возвращает Ложь длиннее 2 строк (автовысота стоит). НО если вывести последний параметр на 3 строки то он прекрасно влазит! Функция ТабДок.КоличествоСтраниц() работает правильно. Все параметры ТабДока по высоте полей и колонтитулам в Предварительном просмотре подхватываются правильно. КлючПараметровПечати не используется. Автомаштаб стоит. |
|||
1
IlyaSR
30.01.17
✎
10:01
|
как вариант попробовать создать другой макет для тестинга с одним параметром "АдресДоставки" и в цикле попробуйте вывести 100 раз
|
|||
2
Defender aka LINN
30.01.17
✎
10:17
|
"КлючПараметровПечати не используется."
Так используй |
|||
3
DmitryNN
30.01.17
✎
10:21
|
Если использовать он подхватывает настройки принтера пользовательские, тогда все начинает искажаться в зависимости от того под кем ты сидишь.
|
|||
4
DmitryNN
30.01.17
✎
10:23
|
ТабДок = Новый ТабличныйДокумент;
ТабДок.АвтоМасштаб = Истина; ТабДок.ОтображатьСетку = Ложь; ТабДок.Защита = Истина; ТабДок.ТолькоПросмотр = Истина; ТабДок.ОтображатьЗаголовки = Ложь; ТабДок.ПолеСверху = 1; ТабДок.ПолеСнизу = 1; ТабДок.ПолеСлева = 1; ТабДок.ПолеСправа = 4; ТабДок.РазмерКолонтитулаСверху = 0; ТабДок.РазмерКолонтитулаСнизу = 0; ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт; ТабДок.ВысотаСтраницы = 49; ТабДок.ШиринаСтраницы = 124; Макет = ПолучитьМакет("Макет"); Область1 = Макет.ПолучитьОбласть("Область1"); СтрокаПараметра = ""; Сч = 0; Пока Сч < 500 Цикл Сч = Сч + 1; Если ТабДок.ПроверитьВывод(Область1) Тогда ТекущийПараметр = "1"; Иначе ТекущийПараметр = "0"; КонецЕсли; СтрокаПараметра = ТекущийПараметр; Область1.Параметры.АдресДоставки = СтрокаПараметра; ТабДок.Вывести(Область1); КонецЦикла; ТабДок.Вывести(Область1); ТабДок.Показать(); Написал вот такой незамысловатый код... и он работает... "0" всегда в начале новой страницы. Может быть проблема именно в автовысоте строки... |
|||
5
DmitryNN
30.01.17
✎
10:37
|
Макет = ПолучитьМакет("Макет");
Область1 = Макет.ПолучитьОбласть("Область1"); СтрокаПараметра = ""; Сч = 0; Пока ТабДок.ПроверитьВывод(Область1) Цикл Сч = Сч + 1; СтрокаПараметра = СтрокаПараметра + "Й"; Область1.Параметры.АдресДоставки = СтрокаПараметра; КонецЦикла; ТабДок.Вывести(Область1); ТабДок.Показать(); Но когда переписал на такой, при определенных размерах шрифтов опять на одну строчку меньше |
|||
6
Mkonst
30.01.17
✎
10:41
|
Если не путаю, то перед формированием макета принтер должен быть уже определен..
|
|||
7
DmitryNN
30.01.17
✎
10:42
|
Тут один принтер и он стоит по умолчанию
|
|||
8
Mkonst
30.01.17
✎
10:47
|
ТабДокумент.ИмяПринтера - может что-то ни то установлено?
|
|||
9
Defender aka LINN
30.01.17
✎
10:49
|
(3) Вообще-то, так и должно быть. проверитьВывод проверяет, поместится ли область на лист ПРИ ПЕЧАТИ.
|
|||
10
DmitryNN
30.01.17
✎
10:51
|
Учитывая (4) и (5) я думаю принтер правильно подхватывается
|
|||
11
IlyaSR
30.01.17
✎
10:51
|
(3) так и надо, пользователь сам выбирает как ему печатать и это сохраняется в КлючПараметровПечати... так сделано во всех типовых
|
|||
12
DmitryNN
30.01.17
✎
10:53
|
(11) согласен что так правильно, но у них уже настроено у всех по разному, а мне нужно чтобы все печатали с моими настройками.
|
|||
13
IlyaSR
30.01.17
✎
10:56
|
ТабДок.ВысотаСтраницы = 49;
ТабДок.ШиринаСтраницы = 124; что это за особый формат бумаги??? |
|||
14
DmitryNN
30.01.17
✎
10:59
|
Наклейки на коробку
|
|||
15
IlyaSR
30.01.17
✎
11:02
|
принтер этикеток?
|
|||
16
DmitryNN
30.01.17
✎
11:02
|
Да
|
|||
17
IlyaSR
30.01.17
✎
11:03
|
ЭЭЭ, тогда в принтере настраивай размер и делай его по умолчанию
|
|||
18
DmitryNN
30.01.17
✎
11:04
|
Он слетает почему то... А если в коде то нормально подхватывается
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |