|   |   | 
| 
 | Вывод информации в определенном месте табличного документа | ☑ | ||
|---|---|---|---|---|
| 0
    
        Aleksey1989 02.06.16✎ 12:48 | 
        Добрый день. Никак не могу сообразить, как можно вывести нужную информацию в определенном месте в табличном документе? Например, есть печатная форма счета на оплату, мне необходимо вывести информацию практически в самом конце счета на оплату, например, за 5 см до окончания листа. Как это сделать?
 Если создавать области, а потом их выводить, они будут идти по порядку, если обращаться напрямую к области, то нужно знать "координаты". | |||
| 1
    
        Рэйв 02.06.16✎ 12:58 | 
        попробуй в нижний колонтитул писать     | |||
| 2
    
        Aleksey1989 02.06.16✎ 12:59 | 
        (1) Ну как вариант да, можно колонтитул использовать. Но все равно интересно, как без них обойтись можно?     | |||
| 3
    
        lodger 02.06.16✎ 12:59 | 
        если мне не изменяет память. то при работе с табдоком можно выводить данные только подряд сверху вниз, слева направо.
 т.е. при работе с данными уже в самом конце вывода надо узнать сколько до конца страницы дополнить до нужной высоты и вывести. но вообще есть фича НижнийКолонтитул (Footer), может подойдет. правда с регулировками там туго. где встанет, там встанет ) 5 см. не отмеришь. | |||
| 4
    
        Nuobu 02.06.16✎ 13:00 | 
        (0) А какая задача вообще?     | |||
| 5
    
        Aleksey1989 02.06.16✎ 13:06 | 
        (4) В конце счета нужно надпись вставить     | |||
| 6
    
        Nuobu 02.06.16✎ 13:16 | 
        (5) А в макете нельзя эту надпись вставить? Или эта надпись должна быть на 5 см от низа страницы?     | |||
| 7
    
        Мимохожий Однако 02.06.16✎ 13:21 | 
        (0)Стесняюсь спросить. Зачем?     | |||
| 8
    
        Aleksey1989 02.06.16✎ 13:22 | 
        (6) Нет, нельзя - надпись будет меняться в зависимости от контрагента     | |||
| 9
    
        birkoFFFF 02.06.16✎ 13:23 | 
        Чем нижний колонтитул не устраивает? Он для этого и задуман...     | |||
| 10
    
        Nuobu 02.06.16✎ 13:26 | 
        (8) Как сильно будет меняться? Можно, например, вместо текста использовать параметры.     | |||
| 11
    
        Aleksey1989 02.06.16✎ 13:26 | 
        (9) В нем надпись расползается слишком     | |||
| 12
    
        Aleksey1989 02.06.16✎ 13:27 | 
        (10) ок, использование параметров не проблема, но как сделать так, чтобы эта область, которая содержит параметры, выводилась в конце страницы?     | |||
| 13
    
        Nuobu 02.06.16✎ 13:27 | 
        (12) В самом низу?     | |||
| 14
    
        Nuobu 02.06.16✎ 13:28 | 
        (13) + была последней строкой на каждой странице?     | |||
| 15
    
        birkoFFFF 02.06.16✎ 13:28 | 
        (11) А если по русски? Что значит расползается?     | |||
| 16
    
        Aleksey1989 02.06.16✎ 13:33 | 
        (13) Не совсем в самом низу, ориентировочно за 5 см до самого низа.
 (15) Мне нужно, чтобы надпись была в несколько строчек, а, если поместить ее в колонтитулы, то она на всю длину страницы печатается. Если говорить о помещение текста в ячейку, то для ячейки можно настроить перенос текста, для колонтитула, возможно, будут работать символы перевода строки, но проблема в том, что текст заранее не известной длины, он зависит от каждого контрагента. | |||
| 17
    
        birkoFFFF 02.06.16✎ 13:34 | 
        Ну если совсем не устраивает колонтитул, то использовать:
 ТабличныйДокумент.ПроверитьВывод (SpreadsheetDocument.CheckPut) ТабличныйДокумент (SpreadsheetDocument) ПроверитьВывод (CheckPut) Синтаксис: ПроверитьВывод(<Таблицы>) Параметры: <Таблицы> (обязательный) Тип: Массив; ТабличныйДокумент. Массив из проверяемых таблиц или табличный документ. Возвращаемое значение: Тип: Булево. Истина - умещаются; Ложь - в противном случае. Описание: Проверяет, умещаются ли переданные табличные документы на страницу при печати. Доступность: Сервер, толстый клиент, внешнее соединение. Примечание: При возникновении проблем с получением информации о текущем принтере (например, в системе не установлено ни одного принтера), будет вызвано исключение. Пример: Т.Добавить(ШапкаДокумента); Т.Добавить(СтрокаДокумента); Т.Добавить(ПодвалДокумента); Если Не ТабДок.ПроверитьВывод(Т) Тогда Сообщить("Документ не умещается на страницу!"); КонецЕсли; | |||
| 18
    
        birkoFFFF 02.06.16✎ 13:36 | 
        (16)  Передавай в текст колонтитула строку с использованием "РазделительСтрок"     | |||
| 19
    
        birkoFFFF 02.06.16✎ 13:37 | 
        (+18) и выравнивание по нужному краю, не по центру     | |||
| 20
    
        mistеr 02.06.16✎ 13:38 | 
        (0) Рисунок. Что-то все забыли про него.     | |||
| 21
    
        Nuobu 02.06.16✎ 13:39 | 
        (16) В таких случаях - сделай две области: пробел (довольно не высокая строка) и твой подвальчик.
 План действий: 1. Перед добавлением области на документ создаешь таб док с нужной строчкой и подвалом. 2. Проверяешь вывод. 3. Если не выводится - добавляешь только подвал и ГоризонтальныйРазделительСтраниц. 4. Если выводится - выводишь только строчку с данными, без подвала. 5. Если это была последняя строка с данными, то добавляешь пробел до тех пор, пока на страницу помещается пробел и подвал. Как только перестаёт помещаться - выводи подвал. | |||
| 22
    
        Aleksey1989 13.06.16✎ 18:19 | 
        (1) Каким образом использовать рисунок для вывода текста в нужное место?     | |||
| 23
    
        mistеr 13.06.16✎ 19:02 | 
        (22) Выводишь из макета как обычно, вместе с ячейкой, к которой он привязан (куда попадает левый верхний угол). Затем устанавливаешь Лево, Верх в миллиметрах. Либо опять же привязываешь к ячейке через Расположить().     | |||
| 24
    
        Aleksey1989 14.06.16✎ 13:29 | 
        (23) Только вот как понять, где находится нужная ячейка... Ведь текст в верхних ячейках может быть записан в одной ячейке, при этом высота ячейки может увеличиться (для ячейки будет установлено свойство "Переносить".     | |||
| 25
    
        Aleksey1989 14.06.16✎ 13:29 | 
        Все таки использование колонтитулов самый правильный вариант, думаю.     | |||
| 26
    
        mistеr 14.06.16✎ 16:13 | 
        (24) Ну прицепи к следующей ячейке, в чем проблема.     | |||
| 27
    
        Aleksey1989 14.06.16✎ 16:33 | 
        Возникла следующая проблема при использовании колонтитулов для варианта, когда будут сформированы печатные формы сразу по нескольким документам - по моему сценарию для каждого счета на оплату в самом низу, в определенном месте, должна выводиться информации из справочника "Контрагенты", т.к. в разных счетах на оплату контрагенты разные, то и информация д.б. разная, но так не получится - т.е. нельзя для каждой страницы сделать свой колонтитул. Или можно?     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |