8: --depending on the action_code passed
9:
10: IF action_code = 'ALL' THEN
11:
12: UPDATE so_picking_line_details
13: SET shipped_quantity = requested_quantity
14: WHERE shipped_quantity IS NULL
15: AND picking_line_detail_id IN
16: ( SELECT pld.picking_line_detail_id
13: SET shipped_quantity = requested_quantity
14: WHERE shipped_quantity IS NULL
15: AND picking_line_detail_id IN
16: ( SELECT pld.picking_line_detail_id
17: FROM so_picking_lines_all pl, so_picking_line_details pld
18: WHERE pl.picking_header_id+0 > 0
19: AND pl.picking_line_id = pld.picking_line_id
20: AND pld.delivery_id = del_id );
21:
20: AND pld.delivery_id = del_id );
21:
22: ELSIF action_code = 'ENTERED' THEN
23:
24: UPDATE so_picking_line_details
25: SET shipped_quantity = 0
26: WHERE shipped_quantity IS NULL
27: AND picking_line_detail_id IN
28: ( SELECT pld.picking_line_detail_id
25: SET shipped_quantity = 0
26: WHERE shipped_quantity IS NULL
27: AND picking_line_detail_id IN
28: ( SELECT pld.picking_line_detail_id
29: FROM so_picking_lines_all pl, so_picking_line_details pld
30: WHERE pl.picking_header_id+0 > 0
31: AND pl.picking_line_id = pld.picking_line_id
32: AND pld.delivery_id = del_id );
33:
32: AND pld.delivery_id = del_id );
33:
34: ELSIF action_code = 'BACKORDER_ALL' THEN
35:
36: UPDATE so_picking_line_details
37: SET shipped_quantity = 0
38: WHERE picking_line_detail_id IN
39: ( SELECT pld.picking_line_detail_id
40: FROM so_picking_lines_all pl, so_picking_line_details pld
36: UPDATE so_picking_line_details
37: SET shipped_quantity = 0
38: WHERE picking_line_detail_id IN
39: ( SELECT pld.picking_line_detail_id
40: FROM so_picking_lines_all pl, so_picking_line_details pld
41: WHERE pl.picking_header_id + 0 > 0
42: AND pl.picking_line_id = pld.picking_line_id
43: AND pld.delivery_id = del_id );
44:
50:
51: UPDATE so_picking_lines_all pl
52: SET pl.shipped_quantity =
53: (select sum (pld.shipped_quantity)
54: from so_picking_lines_all pl1, so_picking_line_details pld
55: where pld.delivery_id = del_id
56: and pld.picking_line_id = pl1.picking_line_id
57: and pl.picking_line_id = pl1.picking_line_id
58: and pl.picking_header_id+0 > 0)
57: and pl.picking_line_id = pl1.picking_line_id
58: and pl.picking_header_id+0 > 0)
59: WHERE pl.picking_line_id in
60: (select picking_line_id
61: from so_picking_line_details
62: where delivery_id = del_id ) ;
63:
64:
65: end;
91: WHERE ld.delivery_id = del_id
92: AND ld.released_flag = 'N'
93: AND l.line_id = ld.line_id);
94:
95: UPDATE so_picking_line_details
96: SET delivery_id = NULL,
97: departure_id = NULL,
98: dpw_assigned_flag = 'N'
99: WHERE picking_line_detail_id IN
97: departure_id = NULL,
98: dpw_assigned_flag = 'N'
99: WHERE picking_line_detail_id IN
100: ( SELECT pld.picking_line_detail_id
101: FROM so_picking_lines_all pl, so_picking_line_details pld
102: WHERE pld.delivery_id = del_id
103: AND pld.picking_line_id = pl.picking_line_id
104: AND pl.picking_header_id = 0 ) ;
105: