Показать сообщение отдельно
Старый 26.01.2017, 14:03   #1  
Kadawrik is offline
Kadawrik
Участник
 
279 / 11 (1) +
Регистрация: 04.11.2010
Что лучше: переменная ил Flowfield?
Коллеги, нужен совет бывалых (вроде мелочь, но хотелось бы сделать правильнее)
Имеем таблицу 37. В ней есть доп. поле "Cites_OK" (тип boolean)
Имеется тж таблица 92210, куда по отределенным правилам копируется инфа из Т37 + есть доп. поля для доп. служебной информации.
К этой таблице имеется форма 92216, отображающая ее строки в форме списка.
Нужно, чтобы в форме было видно значение поля CITES_OK (из Т37).
Колонку я в форму добавила. Вопрос мой касается того, какое выражение этой колонке назначить (т.е. что указать в SourceExpr этой колонки)?
Я вижу 3 возможных варианта решения:
1) в таблице 92210 создать новое поле Flowfield с формулой
Lookup(T37.CITES_OK WHERE (фильтр)) и потом это поле отображать в нужной колонке
2) Никаких доп.полей в Т92210 не заводить. Вместо этого в форме завести переменную CitesOK, которой в триггере OnAfterGetRecord нашей формы присваивать значение:

IF SalesLine.GET(SalesLine."Document Type"::Order, Ordernr, OrderLineNr) THEN
CITESOK := SalesLine.CITES_OK;
И эту переменную прописать в SourceExpr нужной колонки.

3) Обойтись без переменной и напрямую показывать SalesLine.CITES_OK в колонке

Какой вариант предпочтительнее с т.зр. оптимальности и правильности/удобства? или в данном случае без разницы?

Последний раз редактировалось Kadawrik; 26.01.2017 в 14:07.