я нашел решение:
оператор DO изолирует внутренний код от внешнего кода.
, чтобы передать информацию, которая нам нужна, чтобы сохранить ее как переменную psql, как следует
select set_config('psql.param_date', :param_date, false);
BEGIN; -- DEBUT DE TRANSACTION
DO
$$
DECLARE
limit_date varchar = current_setting('psql.param_date');