From b908ee822a511d23c658e3cee24622dee545284a Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Thu, 21 Nov 2024 15:32:05 +0700 Subject: fix date reserved --- update_reserved_status.ktr | 291 +++++++++++++++++++++++---------------------- 1 file changed, 148 insertions(+), 143 deletions(-) diff --git a/update_reserved_status.ktr b/update_reserved_status.ktr index 6cfa81a..76c3aa3 100644 --- a/update_reserved_status.ktr +++ b/update_reserved_status.ktr @@ -509,7 +509,106 @@ - javascript reserve state + Update + Update + + Y + + 1 + + none + + + erp indoteknik production (localhost) + N + 100 + N + N + + + public + stock_picking
+ + picking_id + id + = + + + + state_reserve + reserve_state + + + date_reserved + new_date_reserved + +
+ + + + + + + + + + 704 + 80 + Y + +
+ + Write to log + WriteToLog + + Y + + 1 + + none + + + log_level_basic + Y + N + 0 + + + + picking_id + + + state + + + qty_need + + + qty_reserved + + + qty_done + + + reserve_state + + + + + + + + + + + + 848 + 80 + Y + + + + javascript reserve date ScriptValueMod Y @@ -525,26 +624,24 @@ 0 Script 1 - var reserve_state = "waiting" -if(state == "done"){ - reserve_state = "done" -} -else if(state == "cancel"){ - reserve_state = "cancel" -} -else if(qty_reserved-qty_need==0 && qty_reserved > 0){ - reserve_state = "ready" + var new_date_reserved = null +if (reserve_state == "ready" || reserve_state == "done"){ + if (!date_reserved){ + new_date_reserved = current_date + }else{ + new_date_reserved = date_reserved + } } else{ - reserve_state = "waiting" + new_date_reserved = null } - reserve_state - reserve_state - String + new_date_reserved + new_date_reserved + Timestamp -1 -1 N @@ -559,14 +656,14 @@ else{ - 320 + 528 80 Y - Update - Update + javascript reserve state + ScriptValueMod Y @@ -575,30 +672,37 @@ else{ none - erp indoteknik production (localhost) - N - 100 - N - N - - - public - stock_picking
- - picking_id - id - = - - - - state_reserve + N + 9 + + + 0 + Script 1 + var reserve_state = "waiting" +if(state == "done" && qty_done > 0){ + reserve_state = "done" +} +else if(state == "cancel"){ + reserve_state = "cancel" +} +else if(qty_reserved-qty_need==0 && qty_reserved > 0){ + reserve_state = "ready" +} +else{ + reserve_state = "waiting" +} + + + + + reserve_state reserve_state - - - date_reserved - new_date_reserved - -
+ String + -1 + -1 + N + + @@ -608,7 +712,7 @@ else{ - 704 + 320 80 Y @@ -627,13 +731,14 @@ else{ erp indoteknik production (localhost) select sp.id as picking_id, sp.state, sum(coalesce(sm.product_uom_qty,0)) as qty_need, sum(coalesce(sml.product_uom_qty,0)) as qty_reserved, sum(coalesce(sml.qty_done,0)) as qty_done, -sp.date_reserved, now()::timestamp as current_date +sp.date_reserved, now()::timestamp-'7 hours'::interval as current_date from stock_picking sp join stock_move sm on sm.picking_id = sp.id left join stock_move_line sml on sml.move_id = sm.id join procurement_group pg on pg.id = sp.group_id where 1=1 -and pg.sale_id > 0 +--and pg.sale_id > 0 +and sp.picking_type_id = 29 and (sp.state_reserve not in ('done', 'cancel') or sp.state_reserve is null) and sp.write_date >= (now() - '180 days'::interval) --and sp.state in ('assigned', 'confirmed', 'draft') @@ -821,106 +926,6 @@ group by sp.id Y
- - Write to log - WriteToLog - - Y - - 1 - - none - - - log_level_basic - Y - N - 0 - - - - picking_id - - - state - - - qty_need - - - qty_reserved - - - qty_done - - - reserve_state - - - - - - - - - - - - 848 - 80 - Y - - - - javascript reserve date - ScriptValueMod - - Y - - 1 - - none - - - N - 9 - - - 0 - Script 1 - var new_date_reserved = date_reserved -if (!date_reserved){ - new_date_reserved = current_date -} -else{ - new_date_reserved = date_reserved -} - - - - - new_date_reserved - new_date_reserved - Timestamp - -1 - -1 - N - - - - - - - - - - - - 528 - 80 - Y - - -- cgit v1.2.3