From 9514604fe0636bb953071a8ac52ae79ed3d8f17c Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Mon, 28 Jul 2025 16:44:01 +0700 Subject: add calculate leadtime po to mr --- calculate_leadtime_so_to_delivered.ktr | 1317 ++++++++++++++++++++++++++++++++ 1 file changed, 1317 insertions(+) create mode 100644 calculate_leadtime_so_to_delivered.ktr (limited to 'calculate_leadtime_so_to_delivered.ktr') diff --git a/calculate_leadtime_so_to_delivered.ktr b/calculate_leadtime_so_to_delivered.ktr new file mode 100644 index 0000000..c48f413 --- /dev/null +++ b/calculate_leadtime_so_to_delivered.ktr @@ -0,0 +1,1317 @@ + + + + calculate_leadtime_so_to_delivered + + + + 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/14 14:00:11.471 + - + 2025/07/14 14:00:11.471 + H4sIAAAAAAAAAAMAAAAAAAAAAAA= + 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 + Select values + Y + + + Table input + Select values 2 + Y + + + Select values + Table input 2 + Y + + + Table input 2 + Sort rows 2 + Y + + + Select values 2 + Sort rows + Y + + + Sort rows + Merge join + Y + + + Sort rows 2 + Merge join + Y + + + Merge join + Select values 3 + Y + + + Select values 3 + Sort rows 3 + Y + + + Sort rows 3 + Unique rows + Y + + + Unique rows + Modified JavaScript value + Y + + + Modified JavaScript value + Select values 4 + Y + + + Select values 4 + Insert / update + Y + + + + Insert / update + InsertUpdate + + Y + + 1 + + none + + + dw bi indoteknik (localhost) + 100 + N + + public +
leadtime_so_to_po_working_hour
+ + sale_order_line_id + sale_order_line_id + = + + + + so_confirm_date + so_confirm_date + Y + + + po_confirm_date + po_confirm_date + Y + + + sale_order_line_id + sale_order_line_id + N + + + sale_order_id + sale_order_id + Y + + + working_hours + working_hours + Y + + + so_to_po_status + so_to_po_status + Y + + + + + + + + + + + + 816 + 144 + Y + + + + Merge join + MergeJoin + + Y + + 1 + + none + + + LEFT OUTER + Sort rows + Sort rows 2 + + sale_order_line_id + + + sale_order_line_id + + + + + + + + + + + 384 + 240 + Y + + + + Modified JavaScript value + ScriptValueMod + + Y + + 1 + + none + + + N + 9 + + + 0 + Script 1 + //Script here +var so_to_po_status = 'not achieve'; +if (working_hours <= 3) +{ + so_to_po_status = 'achieve' +} +else{ + so_to_po_status = 'not achieve' +} + + + + + + so_to_po_status + so_to_po_status + String + -1 + -1 + N + + + + + + + + + + + + 656 + 48 + Y + + + + Select values + SelectValues + + Y + + 1 + + none + + + + + so_confirm_date + + + po_confirm_date + + + sale_order_line_id + + + sale_order_id + + N + + + + + + + + + + + 240 + 48 + Y + + + + Select values 2 + SelectValues + + Y + + 1 + + none + + + + + so_confirm_date + + + po_confirm_date + + + sale_order_line_id + + + sale_order_id + + N + + + + + + + + + + + 96 + 144 + Y + + + + Select values 3 + SelectValues + + Y + + 1 + + none + + + + + so_confirm_date + + + po_confirm_date + + + sale_order_line_id + + + sale_order_id + + + working_hours + + N + + + + + + + + + + + 496 + 240 + Y + + + + Select values 4 + SelectValues + + Y + + 1 + + none + + + + + so_confirm_date + + + po_confirm_date + + + sale_order_line_id + + + sale_order_id + + + working_hours + + + so_to_po_status + + N + + + + + + + + + + + 816 + 48 + Y + + + + Sort rows + SortRows + + Y + + 1 + + none + + + %%java.io.tmpdir%% + out + 1000000 + + N + + N + + + sale_order_line_id + Y + N + N + 0 + N + + + + + + + + + + + + 96 + 240 + Y + + + + Sort rows 2 + SortRows + + Y + + 1 + + none + + + %%java.io.tmpdir%% + out + 1000000 + + N + + N + + + sale_order_line_id + Y + N + N + 0 + N + + + + + + + + + + + + 384 + 144 + Y + + + + Sort rows 3 + SortRows + + Y + + 1 + + none + + + %%java.io.tmpdir%% + out + 1000000 + + N + + N + + + sale_order_line_id + Y + N + N + 0 + N + + + sale_order_id + Y + N + N + 0 + N + + + + + + + + + + + + 496 + 144 + Y + + + + Table input + TableInput + + N + + 1 + + none + + + dw bi indoteknik (localhost) + select so_confirm_date, po_confirm_date, sale_order_line_id, sale_order_id +from mv_leadtime_so_to_delivered +where 1=1 +and so_to_po >= 0 + 0 + + N + N + N + N + + + Timestamp + normal + so_confirm_date + 6 + -1 + Table input + so_confirm_date + + . + , + + none + N + Y + 0 + N + N + N + en_US + Asia/Bangkok + N + + + Timestamp + normal + po_confirm_date + 6 + -1 + Table input + po_confirm_date + + . + , + + none + N + Y + 0 + N + N + N + en_US + Asia/Bangkok + N + + + Integer + normal + sale_order_line_id + 9 + 0 + Table input + sale_order_line_id + ####0;-####0 + . + , + + none + N + Y + 0 + N + N + N + en_US + Asia/Bangkok + N + + + Integer + normal + sale_order_id + 9 + 0 + Table input + sale_order_id + ####0;-####0 + . + , + + none + N + Y + 0 + N + N + N + en_US + Asia/Bangkok + N + + + + + + + + + + + + 96 + 48 + Y + + + + Table input 2 + TableInput + + Y + + 1 + + none + + + dw bi indoteknik (localhost) + WITH params AS ( + SELECT + ?::timestamp AS start_time, + ?::timestamp AS end_time +), +hours AS ( + SELECT generate_series( + (SELECT start_time FROM params), + (SELECT end_time FROM params), + interval '1 hour' + ) AS ts +), +filtered_hours AS ( + SELECT ts + FROM hours + WHERE + EXTRACT(HOUR FROM ts) BETWEEN 8 AND 16 + AND ( + EXTRACT(HOUR FROM ts) > 8 OR EXTRACT(MINUTE FROM ts) >= 30 + ) + AND EXTRACT(DOW FROM ts) NOT IN (0) + AND DATE(ts) NOT IN (SELECT holiday_date FROM holidays) +) +SELECT COUNT(*) AS working_hours, ? as sale_order_line_id, ? as sale_order_id +FROM filtered_hours; + 0 + Select values + Y + Y + N + N + + + Integer + normal + working_hours + 15 + 0 + Table input 2 + working_hours + ####0;-####0 + . + , + + none + N + Y + 0 + N + N + N + en_US + Asia/Bangkok + N + + + String + normal + sale_order_line_id + 2147483647 + -1 + Table input 2 + sale_order_line_id + + . + , + + none + N + Y + 0 + N + N + N + en_US + Asia/Bangkok + N + + + String + normal + sale_order_id + 2147483647 + -1 + Table input 2 + sale_order_id + + . + , + + none + N + Y + 0 + N + N + N + en_US + Asia/Bangkok + N + + + + + + + + + + + + 384 + 48 + Y + + + + Unique rows + Unique + + Y + + 1 + + none + + + N + + N + + + + sale_order_line_id + N + + + sale_order_id + N + + + + + + + + + + + + 496 + 48 + Y + + + + + + + N + +
-- cgit v1.2.3