Имя: Пароль:
1C
1С v8
Метод ПроверитьВывод() - непредсказуемая работа.
0 Name2006
 
26.06.14
13:22
8.2.19.68, толстый клиент.
Метод табличного документа ПроверитьВывод() стал выдавать Ложь слишком рано. Т.е. явно видно, что выводимая строка поместится в страницу (и не один раз поместится), но вышеуказанный метод говорит, что нет - не поместится.
Поиск в яндексе показал, что проблема такая не только у меня.
Те советы, которые удалось найти - проверить параметры страницы, имя параметров печати - не помогают. Что еще сделать?
1 acsent
 
26.06.14
13:25
устанавливай поля вручную
2 butterbean
 
26.06.14
13:26
вот у меня оно всегда правильно работает...
проверить что:
1. все параметры страницы устанавливаются ДО вывода областей в таб документ
2. в метод ПроверитьВывод() передается именно то, что ты думаешь, а не что-то еще
3 RomaH
 
naïve
26.06.14
13:27
забить
что тут еще сделаешь
у меня было наоборот - выдавала истину, хотя страница заканчивалась
4 Godofsin
 
26.06.14
13:27
(2) +1. С долгой работой этого метода сталкивался, но чтоб неправильно определял...
5 RomaH
 
naïve
26.06.14
13:30
6 RomaH
 
naïve
26.06.14
13:37
но то что не работало нормально это точно:
    ТабличныйДокумент.Вывести(Страница1Подвал);
    
    ВыводимыеОбласти = Новый Массив;
    
    Пока ТабличныйДокумент.ПроверитьВывод(ВыводимыеОбласти) Цикл
        
        Если ВыводимыеОбласти.Количество() < 3 Тогда
            ВыводимыеОбласти.Вставить(0,ОтрывнойТалон);
        Иначе
            ВыводимыеОбласти.Вставить(0,ПустаяСтрока);
        КонецЕсли;
        
    КонецЦикла;
    
    Для Ш = 4 По ВыводимыеОбласти.Количество()-1 Цикл
        ТабличныйДокумент.Вывести(ПустаяСтрока);
    КонецЦикла;
    
    Для Ш = 1 По Мин(3,ВыводимыеОбласти.Количество()-1) Цикл
        ТабличныйДокумент.Вывести(ОтрывнойТалон);
    КонецЦикла;

вывожу на одну строку меньше
7 Леха Дум
 
26.06.14
13:57
В (1) правильно сказал
1) Крайне желательно указать значение для свойства КлючПараметровПечати
2) Установите все параметры страницы
3) выводить данные и проверять возможность вывода

ну и самое главное, чтобы в системе был установлен принтер! :)
кстати медленная работа метода может быть обусловлена тормозами по сети, если принтер сетевой
8 Name2006
 
26.06.14
14:15
Кажется, нашел причину.
Этот метод работает правильно только в простейшей ситуации - а именно при выводе простой таблицы.
Если же при выводе идет программное объединение некоторых ячеек (с неизбежным изменением высоты документа) - этот метод показывает полную ерунду.
И похоже, самым правильным будет ответ (3).
9 Name2006
 
26.06.14
14:16
Вот убрал я все свои объединения ячеек - и оно заработало как надо. Вернул обратно - снова ж0па. Печаль.
10 acsent
 
26.06.14
14:23
(8) зачем тебе ПРОГРАММНОЕ объединение ячеейк,
11 Леха Дум
 
26.06.14
14:27
(9) покажи код
12 Леха Дум
 
26.06.14
14:27
+ (11) с объединением
13 Name2006
 
26.06.14
14:39
(10)  Есть справочник номенклатуры, у каждого элемента указан ГОСТ. Надо вывести список товаров с ГОСТом:

Наименование товара          ГОСТ

Товар группируются по ГОСТу.

Важно: ячейки с однаковым ГОСТом надо объединять в одну по вертикали.
ЕЩЕ ВАЖНЕЕ: поскольку объединенные по вертикали колонки могут получиться длинными, и могут попасть в разрывы страницы - могут получаться пустые колонки, и заказчик просит, чтобы этого не было.
14 Name2006
 
26.06.14
14:40
(13) Плюс еще: ГОСТ выводится с ориентацией 90, т.е. вертикально.
15 MM
 
26.06.14
14:43
Этот метод обращается к принтеру, если его нет или чудит драйвер, то с ним будут проблемы.
(13) Возможно, стоит добавить ручные разрывы страниц, а потом объединить ячейки уже без вызова этого метода.
16 ИС-2
 
naïve
26.06.14
14:45
(13) у меня тоже метод, что-то чудил при объединении ячеек.
17 Name2006
 
26.06.14
14:45
(15) Не получится. При объединении меняется высота таблицы.
18 ИС-2
 
naïve
26.06.14
14:46
19 Леха Дум
 
26.06.14
15:10
а перед объединением сложить все высоты строк, посчитать количество объединяемых строк, получить среднюю высоту строки и применить эту высоту к объединенной области пробовали?
20 AndyD
 
26.06.14
15:23
проверь масштаб. функция работает для 100% масштаба.
21 kosts
 
26.06.14
15:27
(0) Попробуй переставить драйвера на PS или наоборот PCL.
Была фигня с выводом, побороть не удалось. Но другая проблема с печатью успешно заменой драйвером вылечилась (были пустые области в символах как-то).
22 kosts
 
26.06.14
15:27
(20) + Отключить автомасштабирование
23 kosts
 
26.06.14
15:31
В то время, когда Формы в очередной раз бороздят космические дали, табличный документ остается глючным с прошлого века.
24 Леха Дум
 
26.06.14
15:57
(23) обычно сначала глючит драйвер руки.сис
25 kosts
 
26.06.14
16:46
(24) И так и так. Но вот на что грешить, когда табличный документ в режиме просмотра перед печатью не соответствует напечатанному?...