Я пытаюсь вызвать хранимую процедуру при создании задач снежинки после КОГДА
CREATE OR REPLACE TASK SCHEMA.TASK1
warehouse = '..'
schedule = '5 minute'
WHEN
CALL DB.SCHEMA.CHECK_STATUS('arg1');
as
CALL DB.SCHEMA.ETL('arg1');
Действительно,
WHEN
CALL DB.SCHEMA.CHECK_STATUS('arg1');
если да, как нам добиться возврата true или false в задаче. Ссылка на документацию по Snowflake — https://docs.snowflake.com/en/sql-reference/sql/create-task.html#examples
Я получаю следующую ошибку
Ошибка компиляции SQL: непредвиденная синтаксическая ошибка, строка 5 в позиции 9 'БД'.
Я бы рассмотрел возможность объединения хранимых процедур CHECK_STATUS и ETL в один SP. Если условие CHECK_STATUS не выполняется, выходим из SP. Если он выполнен, продолжите часть ETL. Хотя вы можете использовать SYSTEM$STREAM_HAS_DATA, чтобы избежать запуска ETL, просто для запуска CHECK_STATUS потребуется работающее хранилище. Другими словами, он ничего не сэкономит, разделив проверку и действие ETL.