From 99e091580ddeb927685b0b9b9b80bfbdd54a45f8 Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Tue, 7 May 2024 17:38:31 +0700 Subject: add calculate growth customer --- calculate_growth_customer.ktr | 1176 +++++++++++++++++++++++++++++++++++++++++ refresh_materialized_view.ktr | 83 ++- 2 files changed, 1239 insertions(+), 20 deletions(-) create mode 100644 calculate_growth_customer.ktr diff --git a/calculate_growth_customer.ktr b/calculate_growth_customer.ktr new file mode 100644 index 0000000..dfe7a10 --- /dev/null +++ b/calculate_growth_customer.ktr @@ -0,0 +1,1176 @@ + + + + calculate_growth_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 + + + + + + + + + - + 2024/05/07 16:27:13.495 + - + 2024/05/07 16:27:13.495 + + 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 + + + + + + partner + partner and last year + Y + + + last year + partner and last year + Y + + + partner and last year + partner last year and this year + Y + + + this year + partner last year and this year + Y + + + partner last year and this year + Filter rows + Y + + + Filter rows + Write to log + Y + + + Filter rows + Modified JavaScript value + Y + + + Modified JavaScript value + Select values + Y + + + Select values + Insert / update + Y + + + + last year + TableInput + + Y + + 1 + + none + + + dw bi indoteknik (localhost) + select vich.partner_id, count(vich.id) as trx_last_year, sum(amount_untaxed_signed) as subtotal_last_year +from v_invoice_customer_header vich +where vich.year = get_last_year() +group by vich.partner_id +order by vich.partner_id + 0 + + N + N + N + N + + + Integer + normal + partner_id + 9 + 0 + last year + partner_id + ####0;-####0 + . + , + + none + N + Y + 0 + N + N + N + en_ID + Asia/Bangkok + N + + + Integer + normal + trx_last_year + 15 + 0 + last year + trx_last_year + ####0;-####0 + . + , + + none + N + Y + 0 + N + N + N + en_ID + Asia/Bangkok + N + + + BigNumber + normal + subtotal_last_year + -1 + -1 + last year + subtotal_last_year + ######0.0###################;-######0.0################### + . + + + none + N + Y + 0 + N + N + N + en_ID + Asia/Bangkok + N + + + + + + + + + + + + 304 + 112 + Y + + + + partner + TableInput + + Y + + 1 + + none + + + dw bi indoteknik (localhost) + select id from res_partner order by id + 0 + + N + N + N + N + + + Integer + normal + id + 9 + 0 + partner + id + ####0;-####0 + . + , + + none + N + Y + 0 + N + N + N + en_ID + Asia/Bangkok + N + + + + + + + + + + + + 176 + 112 + Y + + + + this year + TableInput + + Y + + 1 + + none + + + dw bi indoteknik (localhost) + select vich.partner_id, count(vich.id) as trx_this_year, sum(amount_untaxed_signed) as subtotal_this_year +from v_invoice_customer_header vich +where vich.year = get_now_year() +group by vich.partner_id +order by vich.partner_id + 0 + + N + N + N + N + + + Integer + normal + partner_id + 9 + 0 + Table input + partner_id + ####0;-####0 + . + , + + none + N + Y + 0 + N + N + N + en_ID + Asia/Bangkok + N + + + Integer + normal + trx_this_year + 15 + 0 + Table input + trx_this_year + ####0;-####0 + . + , + + none + N + Y + 0 + N + N + N + en_ID + Asia/Bangkok + N + + + BigNumber + normal + subtotal_this_year + -1 + -1 + Table input + subtotal_this_year + ######0.0###################;-######0.0################### + . + + + none + N + Y + 0 + N + N + N + en_ID + Asia/Bangkok + N + + + + + + + + + + + + 544 + 112 + Y + + + + partner and last year + MergeJoin + + Y + + 1 + + none + + + LEFT OUTER + partner + last year + + id + + + partner_id + + + + + + + + + + + 304 + 240 + Y + + + + partner last year and this year + MergeJoin + + Y + + 1 + + none + + + LEFT OUTER + partner and last year + this year + + id + + + partner_id + + + + + + + + + + + 544 + 240 + Y + + + + Filter rows + FilterRows + + Y + + 1 + + none + + + Modified JavaScript value + Write to log + + + N + + + N + subtotal_last_year + > + + + constant + BigNumber + 0.0 + -1 + -1 + N + ######0.0###################;-######0.0################### + + + + N + OR + subtotal_this_year + > + + + constant + BigNumber + 0.0 + -1 + -1 + N + ######0.0###################;-######0.0################### + + + + + + + + + + + + + + + 720 + 240 + Y + + + + Write to log + WriteToLog + + Y + + 1 + + none + + + log_level_basic + Y + N + 0 + + + + + + + + + + + + + 720 + 352 + Y + + + + Modified JavaScript value + ScriptValueMod + + Y + + 1 + + none + + + N + 9 + + + 0 + Script 1 + //Script here +var trx_ly = trx_last_year +var trx_fy = trx_this_year +var subtotal_ly = subtotal_last_year +var subtotal_fy = subtotal_this_year +if (trx_ly == null){ + trx_ly = 0 +} +if (trx_fy == null){ + trx_fy = 0 +} +if (subtotal_ly == null){ + subtotal_ly = 0 +} +if (subtotal_fy == null){ + subtotal_fy = 0 +} + + + + + trx_ly + trx_ly + BigNumber + -1 + -1 + N + + + trx_fy + trx_fy + BigNumber + -1 + -1 + N + + + subtotal_ly + subtotal_ly + BigNumber + -1 + -1 + N + + + subtotal_fy + subtotal_fy + BigNumber + -1 + -1 + N + + + + + + + + + + + + 896 + 240 + Y + + + + Select values + SelectValues + + Y + + 1 + + none + + + + + id + + + + trx_ly + + + + trx_fy + + + + subtotal_ly + + + + subtotal_fy + + + N + + + + + + + + + + + 1072 + 240 + Y + + + + Insert / update + InsertUpdate + + Y + + 1 + + none + + + dw bi indoteknik (localhost) + 100 + N + + public +
growth_customer
+ + id + id + = + + + + id + id + N + + + trx_ly + trx_ly + Y + + + trx_fy + trx_fy + Y + + + subtotal_ly + subtotal_ly + Y + + + subtotal_fy + subtotal_fy + Y + + + + + + + + + + + + 1216 + 240 + Y + + + + + + + N + +
diff --git a/refresh_materialized_view.ktr b/refresh_materialized_view.ktr index ffa216f..6103db7 100644 --- a/refresh_materialized_view.ktr +++ b/refresh_materialized_view.ktr @@ -552,6 +552,11 @@ sale order group Y + + compare conversion rate brand + sale order group lob + Y + accurate @@ -667,6 +672,44 @@ Y + + compare conversion rate brand + ExecSQL + + Y + + 1 + + none + + + dw bi indoteknik (localhost) + N + N + N + N + refresh materialized view mv_compare_conversion_rate_brand + N + + + + + + + + + + + + + + + + 240 + 432 + Y + + customer_current_year ExecSQL @@ -896,7 +939,7 @@ - salesperson + sale order ExecSQL Y @@ -911,7 +954,7 @@ N N N - refresh materialized view dw_salesperson + refresh materialized view mv_sale_order N @@ -928,13 +971,13 @@ - 720 - 160 + 400 + 304 Y - update quarter + sale order group ExecSQL Y @@ -949,7 +992,7 @@ N N N - select update_running_quarter() + refresh materialized view mv_sale_order_group N @@ -966,13 +1009,13 @@ - 1024 - 160 + 240 + 304 Y - sale order + salesperson ExecSQL Y @@ -987,7 +1030,7 @@ N N N - refresh materialized view mv_sale_order + refresh materialized view dw_salesperson N @@ -1004,13 +1047,13 @@ - 400 - 304 + 720 + 160 Y - compare conversion rate brand + update quarter ExecSQL Y @@ -1025,7 +1068,7 @@ N N N - refresh materialized view mv_compare_conversion_rate_brand + select update_running_quarter() N @@ -1042,13 +1085,13 @@ - 240 - 432 + 1024 + 160 Y - sale order group + sale order group lob ExecSQL Y @@ -1063,7 +1106,7 @@ N N N - refresh materialized view mv_sale_order_group + refresh materialized view mv_sale_order_group_lob N @@ -1080,8 +1123,8 @@ - 240 - 304 + 432 + 432 Y -- cgit v1.2.3