Всем привет!
Возникла проблема с использованием запросов в TFDQuery.
Когда имя таблицы содержит два символа '$', то TFDQuery не отображает список параметров в запросе. Вот пример (таблица vdata."wares$rules$link"). Если использовать макросы по подмене текста, то работает. Но не хочется такие элементарные вещи оборачивать через макросы.
Код:
with tjWLL as (select
wrl.fldidxwarerule as fldidxwarerule,
json_agg(wll.*) as "WARESRULESLINKS"
from
vdata."wares$rules" wrl
inner join vdata."wares$rules$link" wll on (wrl.fldidxwarerule = wll.fldidxwarerule)
where
(wll.fldidxwarerule = any(:fldidxwarerule) or (case when :fldidxwarerule = '{}' then True else False end))
and :IsWLL
group by
wrl.fldidxwarerule
),
tjWRL as (select
wrl.*,
wll."WARESRULESLINKS"
from
vdata."wares$rules" wrl
left join tjWLL wll on (wrl.fldidxwarerule = wll.fldidxwarerule)
where
wrl.fldidxwarerule = any(:fldidxwarerule)
or case when :fldidxwarerule = '{}' then True else False end
)
select
json_build_object('WARESRULES', to_json(tjWRL)) as "WARESRULES"
from
tjWRL
P.S. Переименовывать таблицы - уже поздно, живой проект.