From 4a30670b33971a5c90aa371073944007c42abb81 Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Thu, 10 Jul 2025 20:25:02 +0700 Subject: change dw current customer to v2 --- calculate_new_current_customer.ktr | 1022 ++++++++++++++++++++++++++++++++++++ import_all_data_bi_indoteknik.kjb | 54 +- refresh_materialized_view.ktr | 2 +- 3 files changed, 1074 insertions(+), 4 deletions(-) create mode 100644 calculate_new_current_customer.ktr diff --git a/calculate_new_current_customer.ktr b/calculate_new_current_customer.ktr new file mode 100644 index 0000000..d64b122 --- /dev/null +++ b/calculate_new_current_customer.ktr @@ -0,0 +1,1022 @@ + + + + calculate_new_current_customer + + + + Normal + / + + + + + + + + + + + + ID_BATCH + Y + ID_BATCH + + + CHANNEL_ID + Y + CHANNEL_ID + + + TRANSNAME + Y + TRANSNAME + + + STATUS + Y + STATUS + + + LINES_READ + Y + LINES_READ + + + + LINES_WRITTEN + Y + LINES_WRITTEN + + + + LINES_UPDATED + Y + LINES_UPDATED + + + + LINES_INPUT + Y + LINES_INPUT + + + + LINES_OUTPUT + Y + LINES_OUTPUT + + + + LINES_REJECTED + Y + LINES_REJECTED + + + + ERRORS + Y + ERRORS + + + STARTDATE + Y + STARTDATE + + + ENDDATE + Y + ENDDATE + + + LOGDATE + Y + LOGDATE + + + DEPDATE + Y + DEPDATE + + + REPLAYDATE + Y + REPLAYDATE + + + LOG_FIELD + Y + LOG_FIELD + + + EXECUTING_SERVER + N + EXECUTING_SERVER + + + EXECUTING_USER + N + EXECUTING_USER + + + CLIENT + N + CLIENT + + + + + +
+ + + + ID_BATCH + Y + ID_BATCH + + + SEQ_NR + Y + SEQ_NR + + + LOGDATE + Y + LOGDATE + + + TRANSNAME + Y + TRANSNAME + + + STEPNAME + Y + STEPNAME + + + STEP_COPY + Y + STEP_COPY + + + LINES_READ + Y + LINES_READ + + + LINES_WRITTEN + Y + LINES_WRITTEN + + + LINES_UPDATED + Y + LINES_UPDATED + + + LINES_INPUT + Y + LINES_INPUT + + + LINES_OUTPUT + Y + LINES_OUTPUT + + + LINES_REJECTED + Y + LINES_REJECTED + + + ERRORS + Y + ERRORS + + + INPUT_BUFFER_ROWS + Y + INPUT_BUFFER_ROWS + + + OUTPUT_BUFFER_ROWS + Y + OUTPUT_BUFFER_ROWS + + + + + +
+ + + ID_BATCH + Y + ID_BATCH + + + CHANNEL_ID + Y + CHANNEL_ID + + + LOG_DATE + Y + LOG_DATE + + + LOGGING_OBJECT_TYPE + Y + LOGGING_OBJECT_TYPE + + + OBJECT_NAME + Y + OBJECT_NAME + + + OBJECT_COPY + Y + OBJECT_COPY + + + REPOSITORY_DIRECTORY + Y + REPOSITORY_DIRECTORY + + + FILENAME + Y + FILENAME + + + OBJECT_ID + Y + OBJECT_ID + + + OBJECT_REVISION + Y + OBJECT_REVISION + + + PARENT_CHANNEL_ID + Y + PARENT_CHANNEL_ID + + + ROOT_CHANNEL_ID + Y + ROOT_CHANNEL_ID + + + + + +
+ + + ID_BATCH + Y + ID_BATCH + + + CHANNEL_ID + Y + CHANNEL_ID + + + LOG_DATE + Y + LOG_DATE + + + TRANSNAME + Y + TRANSNAME + + + STEPNAME + Y + STEPNAME + + + STEP_COPY + Y + STEP_COPY + + + LINES_READ + Y + LINES_READ + + + LINES_WRITTEN + Y + LINES_WRITTEN + + + LINES_UPDATED + Y + LINES_UPDATED + + + LINES_INPUT + Y + LINES_INPUT + + + LINES_OUTPUT + Y + LINES_OUTPUT + + + LINES_REJECTED + Y + LINES_REJECTED + + + ERRORS + Y + ERRORS + + + LOG_FIELD + N + LOG_FIELD + + + + + +
+ + + ID_BATCH + Y + ID_BATCH + + + CHANNEL_ID + Y + CHANNEL_ID + + + LOG_DATE + Y + LOG_DATE + + + METRICS_DATE + Y + METRICS_DATE + + + METRICS_CODE + Y + METRICS_CODE + + + METRICS_DESCRIPTION + Y + METRICS_DESCRIPTION + + + METRICS_SUBJECT + Y + METRICS_SUBJECT + + + METRICS_TYPE + Y + METRICS_TYPE + + + METRICS_VALUE + Y + METRICS_VALUE + + + + + +
+ + 0.0 + 0.0 + + 10000 + 50 + 50 + N + Y + 50000 + Y + + N + 1000 + 100 + + + + + + + + + - + 2025/07/10 19:25:32.760 + - + 2025/07/10 19:25:32.760 + + N + + + + + dw bi indoteknik (localhost) + localhost + POSTGRESQL + Native + dw_bi_indoteknik + 5432 + odoo + Encrypted 2be98afc82bdfd8dd9a2ca45acc83f6c3 + + + + + + FORCE_IDENTIFIERS_TO_LOWERCASE + N + + + FORCE_IDENTIFIERS_TO_UPPERCASE + N + + + IS_CLUSTERED + N + + + PORT_NUMBER + 5432 + + + PRESERVE_RESERVED_WORD_CASE + Y + + + QUOTE_ALL_FIELDS + N + + + SUPPORTS_BOOLEAN_DATA_TYPE + Y + + + SUPPORTS_TIMESTAMP_DATA_TYPE + N + + + USE_POOLING + N + + + + + + Table input + Table input 2 + Y + + + Table input + Select values + Y + + + Select values + Sort rows + Y + + + Table input 2 + Sort rows 2 + Y + + + Sort rows + Merge join + Y + + + Sort rows 2 + Merge join + Y + + + Merge join + If field value is null + Y + + + If field value is null + Modified JavaScript value + Y + + + Modified JavaScript value + Select values 2 + Y + + + Select values 2 + Insert / update + Y + + + + Table input + TableInput + + N + + 1 + + none + + + dw bi indoteknik (localhost) + SELECT DISTINCT tobi.customer +FROM mv_omzet_by_invoice_combine tobi +WHERE tobi.year::text = get_now_year()::text OR tobi.year::text = get_last_year()::text + 0 + + N + N + N + N + + + String + normal + customer + 2147483647 + -1 + Table input + customer + + . + , + + none + N + Y + 0 + N + N + N + en_US + Asia/Bangkok + N + + + + + + + + + + + + 144 + 64 + Y + + + + Table input 2 + TableInput + + Y + + 1 + + none + + + dw bi indoteknik (localhost) + select customer, count(customer) +from mv_omzet_by_invoice_combine +where customer = ? and cast(year as int) = get_now_year()::integer-1 +group by customer + 0 + Table input + Y + Y + N + N + + + String + normal + customer + 2147483647 + -1 + Table input 2 + customer + + . + , + + none + N + Y + 0 + N + N + N + en_US + Asia/Bangkok + N + + + Integer + normal + count + 15 + 0 + Table input 2 + count + ####0;-####0 + . + , + + none + N + Y + 0 + N + N + N + en_US + Asia/Bangkok + N + + + + + + + + + + + + 320 + 64 + Y + + + + Select values + SelectValues + + Y + + 1 + + none + + + + + customer + + + N + + + + + + + + + + + 144 + 192 + Y + + + + Sort rows + SortRows + + Y + + 1 + + none + + + %%java.io.tmpdir%% + out + 1000000 + + N + + N + + + customer + Y + N + N + 0 + N + + + + + + + + + + + + 144 + 288 + Y + + + + Sort rows 2 + SortRows + + Y + + 1 + + none + + + %%java.io.tmpdir%% + out + 1000000 + + N + + N + + + customer + Y + N + N + 0 + N + + + + + + + + + + + + 320 + 192 + Y + + + + Merge join + MergeJoin + + Y + + 1 + + none + + + LEFT OUTER + Sort rows + Sort rows 2 + + customer + + + customer + + + + + + + + + + + 320 + 288 + Y + + + + If field value is null + IfNull + + Y + + 1 + + none + + + 0 + + Y + N + N + + + + + count + 0 + + N + + + + + + + + + + + + 464 + 288 + Y + + + + Modified JavaScript value + ScriptValueMod + + Y + + 1 + + none + + + N + 9 + + + 0 + Script 1 + //Script here +var check_customer = 'NEW'; +if (count >= 1) +{ + check_customer = 'EXISTING' +} +else{ + check_customer = 'NEW' +} + + + + + + check_customer + check_customer + String + -1 + -1 + N + + + + + + + + + + + + 640 + 288 + Y + + + + Select values 2 + SelectValues + + Y + + 1 + + none + + + + + customer + + + + count + + + + check_customer + + + N + + + + + + + + + + + 832 + 288 + Y + + + + Insert / update + InsertUpdate + + Y + + 1 + + none + + + dw bi indoteknik (localhost) + 100 + N + + public +
dw_customer_current_year_v2
+ + customer + customer + = + + + + customer + + N + + + check_customer + + Y + + + + + + + + + + + + 992 + 288 + Y + + + + + + + N + +
diff --git a/import_all_data_bi_indoteknik.kjb b/import_all_data_bi_indoteknik.kjb index 9536ee3..61bd530 100644 --- a/import_all_data_bi_indoteknik.kjb +++ b/import_all_data_bi_indoteknik.kjb @@ -1744,6 +1744,45 @@ N Y 0 + 400 + 640 + + + + new current customer + + TRANS + + filename + + /home/stephan/transformation-job-bi/calculate_new_current_customer.ktr + + N + N + N + N + N + N + + + N + N + Basic + N + + N + Y + N + N + N + Pentaho local + N + + Y + + N + Y + 0 528 640 @@ -2074,9 +2113,18 @@ Y N + + delivery carrier + calculate_lob_category + 0 + 0 + Y + Y + N + calculate margin v2 - Success + new current customer 0 0 Y @@ -2084,8 +2132,8 @@ N - delivery carrier - calculate_lob_category + new current customer + Success 0 0 Y diff --git a/refresh_materialized_view.ktr b/refresh_materialized_view.ktr index ce52c23..8add850 100644 --- a/refresh_materialized_view.ktr +++ b/refresh_materialized_view.ktr @@ -779,7 +779,7 @@ N N N - refresh materialized view dw_customer_current_year + --refresh materialized view dw_customer_current_year N -- cgit v1.2.3