вторник, 18 февраля 2014 г.

tvatv constat's

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

Выход был найден в использовании инфо-объект ZCONST.
Получилось даже гибче, ибо:

  • ведение констант идет через стандартное ведение мастер-данных, и не надо никаких отдельных прав на таблицу\транзакцию (короче базису спокойней)
  • у переменных теперь есть тексты - можно добавить короткое описание
  • можно массово загрузить переменные из файла



Пример данных:

Пишем\Читаем из таблицы 

   SELECT SINGLE *
     INTO ls_PZCONST
     FROM /BIC/PZCONST
     WHERE /BIC/ZCONST 'LCM_OFFSET_DATE'
     AND OBJVERS 'A'.

    UPDATE /BIC/PZCONST
         SET TCTHIGH l_date
         WHERE /BIC/ZCONST 'LCM_OFFSET_DATE'
           AND OBJVERS 'A'.


1 комментарий:

Sergey Kostuchenko комментирует...

concatenate `TCTLOW = '` /bic/anoe111400-datefrom `'`
into l_set_expr.

l_param = 'E1701_DATE'.
concatenate `OBJVERS = 'A' and /BIC/NCLPAR = '` l_param `'`
into l_condition.

try.
update (l_tabname)
set (l_set_expr)
where (l_condition).
catch cx_sy_dynamic_osql_error.
message `Error in E1701_DATE!` type 'I'.
exit.
endtry.