96 lines
3.3 KiB
Plaintext
96 lines
3.3 KiB
Plaintext
create or replace PACKAGE BODY ODS.FILE_MANAGER_ODS
|
|
AS
|
|
|
|
/**
|
|
* CREATE_EXTERNAL_TABLE - Wrapper for CT_MRDS.FILE_MANAGER.CREATE_EXTERNAL_TABLE
|
|
*/
|
|
PROCEDURE CREATE_EXTERNAL_TABLE (
|
|
pTableName IN VARCHAR2,
|
|
pTemplateTableName IN VARCHAR2,
|
|
pPrefix IN VARCHAR2,
|
|
pBucketUri IN VARCHAR2 DEFAULT CT_MRDS.ENV_MANAGER.gvInboxBucketUri,
|
|
pFileName IN VARCHAR2 DEFAULT NULL,
|
|
pDelimiter IN VARCHAR2 DEFAULT ','
|
|
)
|
|
IS
|
|
vParameters CT_MRDS.A_PROCESS_LOG.PROCEDURE_PARAMETERS%TYPE;
|
|
BEGIN
|
|
-- Log the start of the procedure
|
|
vParameters := CT_MRDS.ENV_MANAGER.FORMAT_PARAMETERS(
|
|
SYS.ODCIVARCHAR2LIST(
|
|
'pTableName => ''' || pTableName || '''',
|
|
'pTemplateTableName => ''' || pTemplateTableName || '''',
|
|
'pPrefix => ''' || pPrefix || '''',
|
|
'pBucketUri => ''' || pBucketUri || '''',
|
|
'pFileName => ''' || NVL(pFileName, 'NULL') || '''',
|
|
'pDelimiter => ''' || pDelimiter || ''''
|
|
)
|
|
);
|
|
|
|
CT_MRDS.ENV_MANAGER.LOG_PROCESS_EVENT('Start FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE', 'INFO', vParameters);
|
|
|
|
-- Call the original CT_MRDS.FILE_MANAGER.CREATE_EXTERNAL_TABLE procedure
|
|
-- This ensures all logic remains centralized in the original package
|
|
-- and ODS wrapper simply delegates execution with DEFINER rights
|
|
CT_MRDS.FILE_MANAGER.CREATE_EXTERNAL_TABLE(
|
|
pTableName => pTableName,
|
|
pTemplateTableName => pTemplateTableName,
|
|
pPrefix => pPrefix,
|
|
pBucketUri => pBucketUri,
|
|
pFileName => pFileName,
|
|
pDelimiter => pDelimiter
|
|
);
|
|
|
|
CT_MRDS.ENV_MANAGER.LOG_PROCESS_EVENT('End FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE', 'INFO', vParameters);
|
|
|
|
EXCEPTION
|
|
WHEN OTHERS THEN
|
|
CT_MRDS.ENV_MANAGER.LOG_PROCESS_EVENT(
|
|
'Error in ODS.FILE_MANAGER_ODS.CREATE_EXTERNAL_TABLE: ' || SQLERRM,
|
|
'ERROR',
|
|
vParameters
|
|
);
|
|
RAISE;
|
|
END CREATE_EXTERNAL_TABLE;
|
|
|
|
----------------------------------------------------------------------------------------------------
|
|
-- PACKAGE VERSION MANAGEMENT FUNCTIONS IMPLEMENTATION
|
|
----------------------------------------------------------------------------------------------------
|
|
|
|
FUNCTION GET_VERSION
|
|
RETURN VARCHAR2
|
|
IS
|
|
BEGIN
|
|
RETURN PACKAGE_VERSION;
|
|
END GET_VERSION;
|
|
|
|
----------------------------------------------------------------------------------------------------
|
|
|
|
FUNCTION GET_BUILD_INFO
|
|
RETURN VARCHAR2
|
|
IS
|
|
BEGIN
|
|
RETURN CT_MRDS.ENV_MANAGER.GET_PACKAGE_VERSION_INFO(
|
|
pPackageName => 'FILE_MANAGER_ODS',
|
|
pVersion => PACKAGE_VERSION,
|
|
pBuildDate => PACKAGE_BUILD_DATE,
|
|
pAuthor => PACKAGE_AUTHOR
|
|
);
|
|
END GET_BUILD_INFO;
|
|
|
|
----------------------------------------------------------------------------------------------------
|
|
|
|
FUNCTION GET_VERSION_HISTORY
|
|
RETURN VARCHAR2
|
|
IS
|
|
BEGIN
|
|
RETURN CT_MRDS.ENV_MANAGER.FORMAT_VERSION_HISTORY(
|
|
pPackageName => 'FILE_MANAGER_ODS',
|
|
pVersionHistory => VERSION_HISTORY
|
|
);
|
|
END GET_VERSION_HISTORY;
|
|
|
|
----------------------------------------------------------------------------------------------------
|
|
|
|
END FILE_MANAGER_ODS;
|