Как программно в ячейку таблицы записать выражение? #82233


#0 by Grafr
Доброго времени суток.я делал так:Табл.ВывестиСекцию(сек);А как сделать чтобы в этой ячейке(строке(области)) вычислялось выражение а не выводился текст. В конфигураторе можно это определить, а как сделать это программно?
#1 by SnarkHunter
Сек.Область("R1C1").текст = Запрос.Поле
#2 by Grafr
Таким образом можно записать значение поля запроса после его выполнения.А мне нужно сделать шаблон - секцию до выполнения запроса, а потом выполнить запрос и пробежаться по строкам, с командой ВывестиСекцию, чтобы в этой секции выражения вычислились сами.
#3 by дущ
Шаблон говоришь? Оригинально. Так если ты вызываешь метод Табл.ПолучитьСекцию("Строка");, то это означает что ты уже ВЫВЕЛ в готовую таблицу эту самую строку и все значения в ней рассчитаются на момент вывода. При помощи области ты можешь после этого лишь изменять атрибуты ячеек, такие как: рекст, рамки, шрифт и т.д. Хотя это только ИМХО :)
#4 by Grafr
я не проф, но мне кажется, что ПолучитьСекцию и ВывестиСекцию разные действия и первое делается до второго. Хотя спорить не буду.Ну хорошо. а как же мне тогда программно подготовить выражения в секциях таблицы еще до того как сформирован запрос? Пытаюсь сделать что-то наподобе мастера запросов. Текст запроса-то я формирую, а вот с таблицей - проблема. И заранее не известно, какие поля и в каком порядке должны выводиться в столбцы таблицы. Неужели это нереализуемо? или 1С недостаточно для этого умная? хотя я подозреваю что я...
#5 by дущ
Насчёт ПолучитьСекцию и ВывестиСекцию, да ты прав, действия разные, принцып один, ПолучитьСекцию - означает (как бы) вывести секцию в некий (назовём его так) буфер, из которого её уже потом можно будет вывести в таблицу, а ВывестиСекцию это сразу вывести секцию (минуя буфер) в таблицу.И всё таки очень боюсь я что шаблона у тебя не получится, я бы на твоём месте определял какого вида таблица мне нужна уже после выполнения запроса (что до, что после, какая разница?) и сразу же выводил бы в них готовые значения.
#6 by Grafr
Да, наверное вы правы... да и более быстрый способ - вычислять значения в модуле...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С