Версия для печати темы (https://pro1c.org.ua/index.php?s=706e8d829ba147747d16701d1418e44c&showtopic=45276)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 8.3 _ Вывести параметры области макета после вывода области

Автор: sanytch 16.04.18, 15:04

Здравствуйте форумчане. Прошу подсказки. Суть проблемы такова:
Формирую отчет. Есть Макет. Макет состоит из нескольких областей. На первом этапе запросом получаю параметры области Заголовка макета, но этот запрос не все параметры заполняет. Далее поэтапно разными запросами формирую таблицу и подвал. Запрос формирующий таблицу находится в цикле и только по завершению цикла получаю значения, которые и нужно добавить в Заголовок.
Такой вариант после выхода из цикла

ОбластьЗаголовок.Параметры.Установить(3, Формат(КрайняяДата, "ДФ=dd.MM.yy"));
заполняет мне нужный параметр, но как его вывести в уже выведенную область?
Может есть какой то способ обновить программно уже выведенную область макета или другие способы. Обращаюсь за помощью т.к. уже сломал голову.
П.С. думал построить первый запрос так, чтобы уже в нём получать все параметры но ничего не смог сделать, т.к. в нем формирую данные из реквизитов документов за определенный период, а недостающие параметры Заголовка получаю из реквизитов табличной части этих же документов.

Автор: logist 16.04.18, 15:15

У вас подход не правильный, сначала надо сформировать все необходимые данные, а потом выводить области, либо строить вывод областей таким образом что бы данные области получались до её вывода.
Изменить значение в уже выведенной области конечно можно, для этого в момент вывода области надо запомнить где она вывелась и затем получить её, но это решение "через ж".

Автор: sanytch 16.04.18, 15:25

logist @ Сегодня, 15:15 * ,
Понимаю что по классике сначала получил все данные - потом позаполнял параметры и вывел, но загвоздка именно в выводе таблицы - получить сразу все данные не могу, так как там идет вывод в цикле. цикл идет по значениям из ТЗ, которая получена из предыдущего запроса, по ходу вывода строк еще и итоги считаются для каждого прохода цикла, в конце цикла еще и общие итоги, и уже когда из цикла вышел высчитываю эти самые параметры Заголовка. От безисходности готов рассмотреть и вариант через Ж...

Автор: sava1 16.04.18, 16:04

Вписываем в ячейку какую либо фигню типа "ААААА". Потом после заполнения Табл. документа ищем эту ячейку и меняем на нужное значение.

Автор: logist 16.04.18, 16:18

Цитата(sanytch @ 16.04.18, 16:25) *
получить сразу все данные не могу,

Не могу и не знаю как сделать это разные вещи... Можно выполнять расчеты без вывода областей, заполняя структуры параметров, а потом из них уже заполнять и выводить сам табдок.

Автор: sanytch 17.04.18, 14:38

sava1 @ Вчера, 17:04 * ,
подскажите как потом искать? а если это ячейка не просто с Заполнением: Параметр, а Шаблон с кучей текста и параметров...

logist @ Вчера, 17:18 * ,
Да можно то можно... Но я как прикинул сколько кода мне переписывать, а писалось это давно и не мной и разобраться в нём это будет сложно, то может всё таки подскажите вариант "через ж"? Или предложение от sava1 это и есть тот самый вариант?

Автор: sava1 17.04.18, 14:43

ИскомаяОбласть = ТабДок.НайтиТекст(....) параметры смотрите по Ф1
Зачем Вам там шаблон - формируете значение/текст ячейки и присваиваете

Цитата(sanytch @ 17.04.18, 15:38) *
предложение от sava1 это и есть тот самый вариант?


не самый "ректальный" (имхо)

Автор: andr_andrey 17.04.18, 16:10

sanytch @ Сегодня, 15:38 * ,
Можно заголовок вывести в один ТабДокумент, а табличную часть в другой ТабДокумент, по окончанию - склеить

Автор: sanytch 18.04.18, 10:36

Всем спасибо за помощь. Решил по примеру http://pro1c.org.ua/redirect.php?http://j008.ru/ps/028_TableDocument. Прям мой вариант с 100% совпадением

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua