Compare commits
2 Commits
096994d514
...
aa03dd1616
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aa03dd1616 | ||
|
|
9190681051 |
@@ -1360,8 +1360,19 @@ AS
|
|||||||
rec.quoted_column_name || ' VARCHAR2(' || rec.data_length || ')'
|
rec.quoted_column_name || ' VARCHAR2(' || rec.data_length || ')'
|
||||||
END
|
END
|
||||||
-- Other character types (preserve original logic)
|
-- Other character types (preserve original logic)
|
||||||
WHEN rec.data_type IN ('CHAR', 'NCHAR', 'NVARCHAR2') THEN
|
-- MARS-1468: Fixed CHAR to use char_used/char_length (same as VARCHAR2 fix in MARS-1056)
|
||||||
rec.quoted_column_name || ' ' || rec.data_type || '(' || rec.data_length || ')'
|
WHEN rec.data_type = 'CHAR' THEN
|
||||||
|
CASE
|
||||||
|
WHEN rec.char_used = 'C' THEN
|
||||||
|
rec.quoted_column_name || ' CHAR(' || rec.char_length || ' CHAR)'
|
||||||
|
WHEN rec.char_used = 'B' THEN
|
||||||
|
rec.quoted_column_name || ' CHAR(' || rec.data_length || ' BYTE)'
|
||||||
|
ELSE
|
||||||
|
rec.quoted_column_name || ' CHAR(' || rec.data_length || ')'
|
||||||
|
END
|
||||||
|
-- MARS-1468: NCHAR/NVARCHAR2 - use char_length (data_length stores bytes in AL16UTF16, e.g. NCHAR(1) => data_length=2 but char_length=1)
|
||||||
|
WHEN rec.data_type IN ('NCHAR', 'NVARCHAR2') THEN
|
||||||
|
rec.quoted_column_name || ' ' || rec.data_type || '(' || rec.char_length || ')'
|
||||||
WHEN rec.data_type = 'NUMBER' THEN
|
WHEN rec.data_type = 'NUMBER' THEN
|
||||||
rec.quoted_column_name || ' ' || rec.data_type ||
|
rec.quoted_column_name || ' ' || rec.data_type ||
|
||||||
CASE
|
CASE
|
||||||
@@ -1396,8 +1407,13 @@ AS
|
|||||||
-- Other TIMESTAMP types (without timezone)
|
-- Other TIMESTAMP types (without timezone)
|
||||||
-- SQL*Loader syntax: CHAR(length) DATE_FORMAT TIMESTAMP MASK "format" (not: TIMESTAMP 'format')
|
-- SQL*Loader syntax: CHAR(length) DATE_FORMAT TIMESTAMP MASK "format" (not: TIMESTAMP 'format')
|
||||||
rec.quoted_column_name || ' CHAR(35) DATE_FORMAT TIMESTAMP MASK ' || CHR(39) || NORMALIZE_DATE_FORMAT(GET_DATE_FORMAT(pTemplateTableName => pTemplateTableName, pColumnName => rec.column_name)) || CHR(39)
|
rec.quoted_column_name || ' CHAR(35) DATE_FORMAT TIMESTAMP MASK ' || CHR(39) || NORMALIZE_DATE_FORMAT(GET_DATE_FORMAT(pTemplateTableName => pTemplateTableName, pColumnName => rec.column_name)) || CHR(39)
|
||||||
WHEN rec.data_type IN ('CHAR', 'NCHAR', 'VARCHAR2', 'NVARCHAR2') THEN
|
WHEN rec.data_type IN ('VARCHAR2', 'CHAR') THEN
|
||||||
-- For CSV field definitions, use data_length for CHAR() specification
|
-- MARS-1468: For CHAR use char_length when char semantics (C), otherwise data_length
|
||||||
|
rec.quoted_column_name || ' CHAR(' ||
|
||||||
|
CASE WHEN rec.char_used = 'C' THEN rec.char_length ELSE rec.data_length END
|
||||||
|
|| ')'
|
||||||
|
WHEN rec.data_type IN ('NCHAR', 'NVARCHAR2') THEN
|
||||||
|
-- For CSV field definitions, use data_length for NCHAR/NVARCHAR2
|
||||||
rec.quoted_column_name || ' CHAR(' || rec.data_length || ')'
|
rec.quoted_column_name || ' CHAR(' || rec.data_length || ')'
|
||||||
ELSE
|
ELSE
|
||||||
rec.quoted_column_name
|
rec.quoted_column_name
|
||||||
|
|||||||
@@ -17,12 +17,13 @@ AS
|
|||||||
**/
|
**/
|
||||||
|
|
||||||
-- Package Version Information (Semantic Versioning: MAJOR.MINOR.PATCH)
|
-- Package Version Information (Semantic Versioning: MAJOR.MINOR.PATCH)
|
||||||
PACKAGE_VERSION CONSTANT VARCHAR2(10) := '3.6.0';
|
PACKAGE_VERSION CONSTANT VARCHAR2(10) := '3.6.1';
|
||||||
PACKAGE_BUILD_DATE CONSTANT VARCHAR2(20) := '2026-02-27 09:00:00';
|
PACKAGE_BUILD_DATE CONSTANT VARCHAR2(20) := '2026-03-13 09:00:00';
|
||||||
PACKAGE_AUTHOR CONSTANT VARCHAR2(100) := 'Grzegorz Michalski';
|
PACKAGE_AUTHOR CONSTANT VARCHAR2(100) := 'Grzegorz Michalski';
|
||||||
|
|
||||||
-- Version History (Latest changes first)
|
-- Version History (Latest changes first)
|
||||||
VERSION_HISTORY CONSTANT VARCHAR2(4000) :=
|
VERSION_HISTORY CONSTANT VARCHAR2(4000) :=
|
||||||
|
'3.6.1 (2026-03-13): MARS-1468 - Fixed CHAR/NCHAR/NVARCHAR2 column definitions in GENERATE_EXTERNAL_TABLE_PARAMS: CHAR now uses char_used/char_length semantics; NCHAR/NVARCHAR2 use char_length (data_length stores bytes in AL16UTF16)' || CHR(13)||CHR(10) ||
|
||||||
'3.6.0 (2026-02-27): MARS-1409 - Added A_WORKFLOW_HISTORY_KEY tracking in A_SOURCE_FILE_RECEIVED. Each file now stores its workflow execution key extracted during VALIDATE_SOURCE_FILE_RECEIVED' || CHR(13)||CHR(10) ||
|
'3.6.0 (2026-02-27): MARS-1409 - Added A_WORKFLOW_HISTORY_KEY tracking in A_SOURCE_FILE_RECEIVED. Each file now stores its workflow execution key extracted during VALIDATE_SOURCE_FILE_RECEIVED' || CHR(13)||CHR(10) ||
|
||||||
'3.5.1 (2026-02-24): Fixed TIMESTAMP field syntax in GENERATE_EXTERNAL_TABLE_PARAMS for SQL*Loader compatibility (CHAR(35) DATE_FORMAT TIMESTAMP MASK format)' || CHR(13)||CHR(10) ||
|
'3.5.1 (2026-02-24): Fixed TIMESTAMP field syntax in GENERATE_EXTERNAL_TABLE_PARAMS for SQL*Loader compatibility (CHAR(35) DATE_FORMAT TIMESTAMP MASK format)' || CHR(13)||CHR(10) ||
|
||||||
'3.3.2 (2026-02-20): MARS-828 - Fixed threshold column names in GET_DET_SOURCE_FILE_CONFIG_INFO for MARS-828 compatibility' || CHR(13)||CHR(10) ||
|
'3.3.2 (2026-02-20): MARS-828 - Fixed threshold column names in GET_DET_SOURCE_FILE_CONFIG_INFO for MARS-828 compatibility' || CHR(13)||CHR(10) ||
|
||||||
|
|||||||
@@ -93,6 +93,12 @@ echo 'yes' | sql "ADMIN/Cloudpass#34@ggmichalski_high" "@install_mars1409.sql"
|
|||||||
echo 'yes' | sql "ADMIN/Cloudpass#34@ggmichalski_high" "@rollback_mars1409.sql"
|
echo 'yes' | sql "ADMIN/Cloudpass#34@ggmichalski_high" "@rollback_mars1409.sql"
|
||||||
7z a -pMojeSuperHaslo#123 -mhe=on M1409_arch.7z MARS-1409
|
7z a -pMojeSuperHaslo#123 -mhe=on M1409_arch.7z MARS-1409
|
||||||
|
|
||||||
|
cd MARS_Packages\REL02_POST\MARS-1409-POSTHOOK
|
||||||
|
echo 'yes' | sql "ADMIN/Cloudpass#34@ggmichalski_high" "@install_mars1409_posthook.sql"
|
||||||
|
echo 'yes' | sql "ADMIN/Cloudpass#34@ggmichalski_high" "@rollback_mars1409_posthook.sql"
|
||||||
|
7z a -pMojeSuperHaslo#123 -mhe=on M1409PH_arch.7z MARS-1409-POSTHOOK
|
||||||
|
|
||||||
|
|
||||||
cd .\MARS_Packages\REL03\MARS-1005
|
cd .\MARS_Packages\REL03\MARS-1005
|
||||||
echo 'yes' | sql "ADMIN/Cloudpass#34@ggmichalski_high" "@install_mars1005.sql"
|
echo 'yes' | sql "ADMIN/Cloudpass#34@ggmichalski_high" "@install_mars1005.sql"
|
||||||
echo 'yes' | sql "ADMIN/Cloudpass#34@ggmichalski_high" "@rollback_mars1005.sql"
|
echo 'yes' | sql "ADMIN/Cloudpass#34@ggmichalski_high" "@rollback_mars1005.sql"
|
||||||
|
|||||||
Reference in New Issue
Block a user