69 lines
1.8 KiB
Python
69 lines
1.8 KiB
Python
sql_statements = {}
|
|
|
|
#
|
|
# Workflows
|
|
#
|
|
|
|
# register_workflow: Register new DW load
|
|
|
|
sql_statements[
|
|
"register_workflow"
|
|
] = """INSERT INTO CT_MRDS.A_WORKFLOW_HISTORY
|
|
(A_WORKFLOW_HISTORY_KEY, WORKFLOW_RUN_ID,
|
|
WORKFLOW_NAME, WORKFLOW_START, WORKFLOW_SSUCCESSFUL)
|
|
VALUES (:a_workflow_history_key, :workflow_run_id, :workflow_name, SYSTIMESTAMP, :running_status)
|
|
"""
|
|
|
|
# get_a_workflow_history_key: get new key from sequence
|
|
sql_statements["get_a_workflow_history_key"] = (
|
|
"SELECT CT_MRDS.A_WORKFLOW_HISTORY_KEY_SEQ.NEXTVAL FROM DUAL"
|
|
)
|
|
|
|
# finalise: Update load record in A_LOAD_HISTORY after workflow completion
|
|
sql_statements[
|
|
"finalise_workflow"
|
|
] = """UPDATE CT_MRDS.A_WORKFLOW_HISTORY
|
|
SET WORKFLOW_END = SYSTIMESTAMP, WORKFLOW_SUCCESSFUL = :workflow_status
|
|
WHERE A_WORKFLOW_HISTORY_KEY = :a_workflow_history_key
|
|
"""
|
|
#
|
|
# Tasks
|
|
#
|
|
|
|
# register_task
|
|
|
|
sql_statements[
|
|
"register_task"
|
|
] = """INSERT INTO CT_MRDS.A_TASK_HISTORY (A_TASK_HISTORY_KEY,
|
|
A_WORKFLOW_HISTORY_KEY, TASK_RUN_ID,
|
|
TASK_NAME, TASK_START, TASK_SUCCESSFUL)
|
|
VALUES (:a_workflow_history_key, :workflow_run_id, :workflow_name, SYSTIMESTAMP, :running_status)
|
|
"""
|
|
|
|
# get_a_task_history_key: get new key from sequence
|
|
sql_statements["get_a_task_history_key"] = (
|
|
"SELECT CT_MRDS.A_TASK_HISTORY_KEY_SEQ.NEXTVAL FROM DUAL"
|
|
)
|
|
|
|
# finalise: Update load record in A_LOAD_HISTORY after workflow completion
|
|
sql_statements[
|
|
"finalise_task"
|
|
] = """UPDATE CT_MRDS.A_TASK_HISTORY
|
|
SET TASK_END = SYSTIMESTAMP, TASK_SUCCESSFUL = :workflow_status
|
|
WHERE A_TASK_HISTORY_KEY = :a_workflow_history_key
|
|
"""
|
|
|
|
#
|
|
# Files
|
|
#
|
|
sql_statements["get_file_prefix"] = (
|
|
"SELECT CT_MRDS.FILE_MANAGER.GET_BUCKET_PATH(:source_key, :source_file_id, :table_id) FROM DUAL"
|
|
)
|
|
|
|
|
|
def get_sql(stmt_id: str):
|
|
if stmt_id in sql_statements:
|
|
return sql_statements[stmt_id]
|
|
else:
|
|
return
|