[Home] [Help]
PACKAGE BODY: APPS.OE_SO_PLD_TABLE
Source
1 PACKAGE BODY OE_SO_PLD_TABLE AS
2 /* $Header: oespdtbb.pls 115.1 99/07/16 08:28:26 porting shi $ */
3
4 PROCEDURE Insert_Row(X_Rowid IN OUT VARCHAR2,
5 X_ATTRIBUTE1 VARCHAR2,
6 X_ATTRIBUTE10 VARCHAR2,
7 X_ATTRIBUTE11 VARCHAR2,
8 X_ATTRIBUTE12 VARCHAR2,
9 X_ATTRIBUTE13 VARCHAR2,
10 X_ATTRIBUTE14 VARCHAR2,
11 X_ATTRIBUTE15 VARCHAR2,
12 X_ATTRIBUTE2 VARCHAR2,
13 X_ATTRIBUTE3 VARCHAR2,
14 X_ATTRIBUTE4 VARCHAR2,
15 X_ATTRIBUTE5 VARCHAR2,
16 X_ATTRIBUTE6 VARCHAR2,
17 X_ATTRIBUTE7 VARCHAR2,
18 X_ATTRIBUTE8 VARCHAR2,
19 X_ATTRIBUTE9 VARCHAR2,
20 X_AUTOSCHEDULED_FLAG VARCHAR2,
21 X_CONTEXT VARCHAR2,
22 X_CREATED_BY NUMBER,
23 X_CREATION_DATE DATE,
24 X_CUSTOMER_REQUESTED_LOT_FLAG VARCHAR2,
25 X_DELIVERY NUMBER,
26 X_DEMAND_CLASS_CODE VARCHAR2,
27 X_DEMAND_ID NUMBER,
28 X_DETAIL_TYPE_CODE VARCHAR2,
29 X_INVENTORY_LOCATION_ID NUMBER,
30 X_INVENTORY_LOCATION_SEGMENTS VARCHAR2,
31 X_LAST_UPDATED_BY NUMBER,
32 X_LAST_UPDATE_DATE DATE,
33 X_LAST_UPDATE_LOGIN NUMBER,
34 X_LATEST_ACCEPTABLE_DATE DATE,
35 X_LOT_NUMBER VARCHAR2,
36 X_PICKING_LINE_DETAIL_ID NUMBER,
37 X_PICKING_LINE_ID NUMBER,
38 X_PROGRAM_APPLICATION_ID NUMBER,
39 X_PROGRAM_ID NUMBER,
40 X_PROGRAM_UPDATE_DATE DATE,
41 X_RELEASED_FLAG VARCHAR2,
42 X_REQUESTED_QUANTITY NUMBER,
43 X_REQUEST_ID NUMBER,
44 X_RESERVABLE_FLAG VARCHAR2,
45 X_REVISION VARCHAR2,
46 X_SCHEDULE_DATE DATE,
47 X_SCHEDULE_LEVEL NUMBER,
48 X_SCHEDULE_STATUS_CODE VARCHAR2,
49 X_SEGMENT1 VARCHAR2,
50 X_SEGMENT10 VARCHAR2,
51 X_SEGMENT11 VARCHAR2,
52 X_SEGMENT12 VARCHAR2,
53 X_SEGMENT13 VARCHAR2,
54 X_SEGMENT14 VARCHAR2,
55 X_SEGMENT15 VARCHAR2,
56 X_SEGMENT16 VARCHAR2,
57 X_SEGMENT17 VARCHAR2,
58 X_SEGMENT18 VARCHAR2,
59 X_SEGMENT19 VARCHAR2,
60 X_SEGMENT2 VARCHAR2,
61 X_SEGMENT20 VARCHAR2,
62 X_SEGMENT3 VARCHAR2,
63 X_SEGMENT4 VARCHAR2,
64 X_SEGMENT5 VARCHAR2,
65 X_SEGMENT6 VARCHAR2,
66 X_SEGMENT7 VARCHAR2,
67 X_SEGMENT8 VARCHAR2,
68 X_SEGMENT9 VARCHAR2,
69 X_SERIAL_NUMBER VARCHAR2,
70 X_SHIPPED_QUANTITY NUMBER,
71 X_SUBINVENTORY VARCHAR2,
72 X_SUPPLY_SOURCE_HEADER_ID NUMBER,
73 X_SUPPLY_SOURCE_TYPE NUMBER,
74 X_TRANSACTABLE_FLAG VARCHAR2,
75 X_UPDATE_FLAG VARCHAR2,
76 X_WAREHOUSE_ID NUMBER,
77 X_WIP_COMPLETED_QUANTITY NUMBER,
78 X_WIP_RESERVED_QUANTITY NUMBER
79 )IS
80
81 CURSOR C IS SELECT rowid FROM so_picking_line_details
82 WHERE PICKING_LINE_DETAIL_ID = X_PICKING_LINE_DETAIL_ID;
83
84 BEGIN
85 INSERT INTO so_picking_line_details(
86 ATTRIBUTE1,
87 ATTRIBUTE10,
88 ATTRIBUTE11,
89 ATTRIBUTE12,
90 ATTRIBUTE13,
91 ATTRIBUTE14,
92 ATTRIBUTE15,
93 ATTRIBUTE2,
94 ATTRIBUTE3,
95 ATTRIBUTE4,
96 ATTRIBUTE5,
97 ATTRIBUTE6,
98 ATTRIBUTE7,
99 ATTRIBUTE8,
100 ATTRIBUTE9,
101 AUTOSCHEDULED_FLAG,
102 CONTEXT,
103 CREATED_BY,
104 CREATION_DATE,
105 CUSTOMER_REQUESTED_LOT_FLAG,
106 DELIVERY,
107 DEMAND_CLASS_CODE,
108 DEMAND_ID,
109 DETAIL_TYPE_CODE,
110 INVENTORY_LOCATION_ID,
111 INVENTORY_LOCATION_SEGMENTS,
112 LAST_UPDATED_BY,
113 LAST_UPDATE_DATE,
114 LAST_UPDATE_LOGIN,
115 LATEST_ACCEPTABLE_DATE,
116 LOT_NUMBER,
117 PICKING_LINE_DETAIL_ID,
118 PICKING_LINE_ID,
119 PROGRAM_APPLICATION_ID,
120 PROGRAM_ID,
121 PROGRAM_UPDATE_DATE,
122 RELEASED_FLAG,
123 REQUESTED_QUANTITY,
124 REQUEST_ID,
125 RESERVABLE_FLAG,
126 REVISION,
127 SCHEDULE_DATE,
128 SCHEDULE_LEVEL,
129 SCHEDULE_STATUS_CODE,
130 SEGMENT1,
131 SEGMENT10,
132 SEGMENT11,
133 SEGMENT12,
134 SEGMENT13,
135 SEGMENT14,
136 SEGMENT15,
137 SEGMENT16,
138 SEGMENT17,
139 SEGMENT18,
140 SEGMENT19,
141 SEGMENT2,
142 SEGMENT20,
143 SEGMENT3,
144 SEGMENT4,
145 SEGMENT5,
146 SEGMENT6,
147 SEGMENT7,
148 SEGMENT8,
149 SEGMENT9,
150 SERIAL_NUMBER,
151 SHIPPED_QUANTITY,
152 SUBINVENTORY,
153 SUPPLY_SOURCE_HEADER_ID,
154 SUPPLY_SOURCE_TYPE,
155 TRANSACTABLE_FLAG,
156 UPDATE_FLAG,
157 WAREHOUSE_ID,
158 WIP_COMPLETED_QUANTITY,
159 WIP_RESERVED_QUANTITY
160 ) VALUES (
161 X_ATTRIBUTE1,
162 X_ATTRIBUTE10,
163 X_ATTRIBUTE11,
164 X_ATTRIBUTE12,
165 X_ATTRIBUTE13,
166 X_ATTRIBUTE14,
167 X_ATTRIBUTE15,
168 X_ATTRIBUTE2,
169 X_ATTRIBUTE3,
170 X_ATTRIBUTE4,
171 X_ATTRIBUTE5,
172 X_ATTRIBUTE6,
173 X_ATTRIBUTE7,
174 X_ATTRIBUTE8,
175 X_ATTRIBUTE9,
176 X_AUTOSCHEDULED_FLAG,
177 X_CONTEXT,
178 X_CREATED_BY,
179 X_CREATION_DATE,
180 X_CUSTOMER_REQUESTED_LOT_FLAG,
181 X_DELIVERY,
182 X_DEMAND_CLASS_CODE,
183 X_DEMAND_ID,
184 X_DETAIL_TYPE_CODE,
185 X_INVENTORY_LOCATION_ID,
186 X_INVENTORY_LOCATION_SEGMENTS,
187 X_LAST_UPDATED_BY,
188 X_LAST_UPDATE_DATE,
189 X_LAST_UPDATE_LOGIN,
190 X_LATEST_ACCEPTABLE_DATE,
191 X_LOT_NUMBER,
192 X_PICKING_LINE_DETAIL_ID,
193 X_PICKING_LINE_ID,
194 X_PROGRAM_APPLICATION_ID,
195 X_PROGRAM_ID,
196 X_PROGRAM_UPDATE_DATE,
197 X_RELEASED_FLAG,
198 X_REQUESTED_QUANTITY,
199 X_REQUEST_ID,
200 X_RESERVABLE_FLAG,
201 X_REVISION,
202 X_SCHEDULE_DATE,
203 X_SCHEDULE_LEVEL,
204 X_SCHEDULE_STATUS_CODE,
205 X_SEGMENT1,
206 X_SEGMENT10,
207 X_SEGMENT11,
208 X_SEGMENT12,
209 X_SEGMENT13,
210 X_SEGMENT14,
211 X_SEGMENT15,
212 X_SEGMENT16,
213 X_SEGMENT17,
214 X_SEGMENT18,
215 X_SEGMENT19,
216 X_SEGMENT2,
217 X_SEGMENT20,
218 X_SEGMENT3,
219 X_SEGMENT4,
220 X_SEGMENT5,
221 X_SEGMENT6,
222 X_SEGMENT7,
223 X_SEGMENT8,
224 X_SEGMENT9,
225 X_SERIAL_NUMBER,
226 X_SHIPPED_QUANTITY,
227 X_SUBINVENTORY,
228 X_SUPPLY_SOURCE_HEADER_ID,
229 X_SUPPLY_SOURCE_TYPE,
230 X_TRANSACTABLE_FLAG,
231 X_UPDATE_FLAG,
232 X_WAREHOUSE_ID,
233 X_WIP_COMPLETED_QUANTITY,
234 X_WIP_RESERVED_QUANTITY
235 );
236
237 OPEN C;
238 FETCH C INTO X_Rowid;
239 if (C%NOTFOUND) then
240 CLOSE C;
241 Raise NO_DATA_FOUND;
242 end if;
243 CLOSE C;
244 END Insert_Row;
245
246 PROCEDURE Lock_Row(X_Rowid VARCHAR2,
247 X_ATTRIBUTE1 VARCHAR2,
248 X_ATTRIBUTE10 VARCHAR2,
249 X_ATTRIBUTE11 VARCHAR2,
250 X_ATTRIBUTE12 VARCHAR2,
251 X_ATTRIBUTE13 VARCHAR2,
252 X_ATTRIBUTE14 VARCHAR2,
253 X_ATTRIBUTE15 VARCHAR2,
254 X_ATTRIBUTE2 VARCHAR2,
255 X_ATTRIBUTE3 VARCHAR2,
256 X_ATTRIBUTE4 VARCHAR2,
257 X_ATTRIBUTE5 VARCHAR2,
258 X_ATTRIBUTE6 VARCHAR2,
259 X_ATTRIBUTE7 VARCHAR2,
260 X_ATTRIBUTE8 VARCHAR2,
261 X_ATTRIBUTE9 VARCHAR2,
262 X_AUTOSCHEDULED_FLAG VARCHAR2,
263 X_CONTEXT VARCHAR2,
264 X_CREATED_BY NUMBER,
265 X_CREATION_DATE DATE,
266 X_CUSTOMER_REQUESTED_LOT_FLAG VARCHAR2,
267 X_DELIVERY NUMBER,
268 X_DEMAND_CLASS_CODE VARCHAR2,
269 X_DEMAND_ID NUMBER,
270 X_DETAIL_TYPE_CODE VARCHAR2,
271 X_INVENTORY_LOCATION_ID NUMBER,
272 X_INVENTORY_LOCATION_SEGMENTS VARCHAR2,
273 X_LAST_UPDATED_BY NUMBER,
274 X_LAST_UPDATE_DATE DATE,
275 X_LAST_UPDATE_LOGIN NUMBER,
276 X_LATEST_ACCEPTABLE_DATE DATE,
277 X_LOT_NUMBER VARCHAR2,
278 X_PICKING_LINE_DETAIL_ID NUMBER,
279 X_PICKING_LINE_ID NUMBER,
280 X_PROGRAM_APPLICATION_ID NUMBER,
281 X_PROGRAM_ID NUMBER,
282 X_PROGRAM_UPDATE_DATE DATE,
283 X_RELEASED_FLAG VARCHAR2,
284 X_REQUESTED_QUANTITY NUMBER,
285 X_REQUEST_ID NUMBER,
286 X_RESERVABLE_FLAG VARCHAR2,
287 X_REVISION VARCHAR2,
288 X_SCHEDULE_DATE DATE,
289 X_SCHEDULE_LEVEL NUMBER,
290 X_SCHEDULE_STATUS_CODE VARCHAR2,
291 X_SEGMENT1 VARCHAR2,
292 X_SEGMENT10 VARCHAR2,
293 X_SEGMENT11 VARCHAR2,
294 X_SEGMENT12 VARCHAR2,
295 X_SEGMENT13 VARCHAR2,
296 X_SEGMENT14 VARCHAR2,
297 X_SEGMENT15 VARCHAR2,
298 X_SEGMENT16 VARCHAR2,
299 X_SEGMENT17 VARCHAR2,
300 X_SEGMENT18 VARCHAR2,
301 X_SEGMENT19 VARCHAR2,
302 X_SEGMENT2 VARCHAR2,
303 X_SEGMENT20 VARCHAR2,
304 X_SEGMENT3 VARCHAR2,
305 X_SEGMENT4 VARCHAR2,
306 X_SEGMENT5 VARCHAR2,
307 X_SEGMENT6 VARCHAR2,
308 X_SEGMENT7 VARCHAR2,
309 X_SEGMENT8 VARCHAR2,
310 X_SEGMENT9 VARCHAR2,
311 X_SERIAL_NUMBER VARCHAR2,
312 X_SHIPPED_QUANTITY NUMBER,
313 X_SUBINVENTORY VARCHAR2,
314 X_SUPPLY_SOURCE_HEADER_ID NUMBER,
315 X_SUPPLY_SOURCE_TYPE NUMBER,
316 X_TRANSACTABLE_FLAG VARCHAR2,
317 X_UPDATE_FLAG VARCHAR2,
318 X_WAREHOUSE_ID NUMBER,
319 X_WIP_COMPLETED_QUANTITY NUMBER,
320 X_WIP_RESERVED_QUANTITY NUMBER,
321 Result OUT VARCHAR2)IS
322
323 CURSOR C IS SELECT * FROM so_picking_line_details
324 WHERE rowid = X_rowid
325 FOR UPDATE NOWAIT;
326
327 Recinfo C%ROWTYPE;
328 record_changed exception;
329 record_deleted exception;
330 resource_busy exception;
331
332 PRAGMA EXCEPTION_INIT (resource_busy, -54);
333
334 BEGIN
335
336 OPEN C;
337 FETCH C INTO Recinfo;
338 if (C%NOTFOUND) then
339 CLOSE C;
340
341 raise record_deleted;
342 -- APP_EXCEPTION.Raise_Exception;
343 end if;
344 CLOSE C;
345
346 if (
347 ((Recinfo.ATTRIBUTE1 <> X_ATTRIBUTE1)
348 AND NOT (Recinfo.ATTRIBUTE1 is NULL AND X_ATTRIBUTE1 is NULL)) OR
349 ((Recinfo.ATTRIBUTE10 <> X_ATTRIBUTE10)
350 AND NOT (Recinfo.ATTRIBUTE10 is NULL AND X_ATTRIBUTE10 is NULL)) OR
351 ((Recinfo.ATTRIBUTE11 <> X_ATTRIBUTE11)
352 AND NOT (Recinfo.ATTRIBUTE11 is NULL AND X_ATTRIBUTE11 is NULL)) OR
353 ((Recinfo.ATTRIBUTE12 <> X_ATTRIBUTE12)
354 AND NOT (Recinfo.ATTRIBUTE12 is NULL AND X_ATTRIBUTE12 is NULL)) OR
355 ((Recinfo.ATTRIBUTE13 <> X_ATTRIBUTE13)
356 AND NOT (Recinfo.ATTRIBUTE13 is NULL AND X_ATTRIBUTE13 is NULL)) OR
360 AND NOT (Recinfo.ATTRIBUTE15 is NULL AND X_ATTRIBUTE15 is NULL)) OR
357 ((Recinfo.ATTRIBUTE14 <> X_ATTRIBUTE14)
358 AND NOT (Recinfo.ATTRIBUTE14 is NULL AND X_ATTRIBUTE14 is NULL)) OR
359 ((Recinfo.ATTRIBUTE15 <> X_ATTRIBUTE15)
361 ((Recinfo.ATTRIBUTE2 <> X_ATTRIBUTE2)
362 AND NOT (Recinfo.ATTRIBUTE2 is NULL AND X_ATTRIBUTE2 is NULL)) OR
363 ((Recinfo.ATTRIBUTE3 <> X_ATTRIBUTE3)
364 AND NOT (Recinfo.ATTRIBUTE3 is NULL AND X_ATTRIBUTE3 is NULL)) OR
365 ((Recinfo.ATTRIBUTE4 <> X_ATTRIBUTE4)
366 AND NOT (Recinfo.ATTRIBUTE4 is NULL AND X_ATTRIBUTE4 is NULL)) OR
367 ((Recinfo.ATTRIBUTE5 <> X_ATTRIBUTE5)
368 AND NOT (Recinfo.ATTRIBUTE5 is NULL AND X_ATTRIBUTE5 is NULL)) OR
369 ((Recinfo.ATTRIBUTE6 <> X_ATTRIBUTE6)
370 AND NOT (Recinfo.ATTRIBUTE6 is NULL AND X_ATTRIBUTE6 is NULL)) OR
371 ((Recinfo.ATTRIBUTE7 <> X_ATTRIBUTE7)
372 AND NOT (Recinfo.ATTRIBUTE7 is NULL AND X_ATTRIBUTE7 is NULL)) OR
373 ((Recinfo.ATTRIBUTE8 <> X_ATTRIBUTE8)
374 AND NOT (Recinfo.ATTRIBUTE8 is NULL AND X_ATTRIBUTE8 is NULL)) OR
375 ((Recinfo.ATTRIBUTE9 <> X_ATTRIBUTE9)
376 AND NOT (Recinfo.ATTRIBUTE9 is NULL AND X_ATTRIBUTE9 is NULL)) OR
377 ((Recinfo.AUTOSCHEDULED_FLAG <> X_AUTOSCHEDULED_FLAG)
378 AND NOT (Recinfo.AUTOSCHEDULED_FLAG is NULL AND X_AUTOSCHEDULED_FLAG is NULL)) OR
379 ((Recinfo.CONTEXT <> X_CONTEXT)
380 AND NOT (Recinfo.CONTEXT is NULL AND X_CONTEXT is NULL)) OR
381 ((Recinfo.CREATED_BY <> X_CREATED_BY)
382 AND NOT (Recinfo.CREATED_BY is NULL AND X_CREATED_BY is NULL)) OR
383 ((Recinfo.CREATION_DATE <> X_CREATION_DATE)
384 AND NOT (Recinfo.CREATION_DATE is NULL AND X_CREATION_DATE is NULL)) OR
385 ((Recinfo.CUSTOMER_REQUESTED_LOT_FLAG <> X_CUSTOMER_REQUESTED_LOT_FLAG)
386 AND NOT (Recinfo.CUSTOMER_REQUESTED_LOT_FLAG is NULL AND X_CUSTOMER_REQUESTED_LOT_FLAG is NULL))
387 ) then
388 raise record_changed;
389 end if;
390
391 if (
392 ((Recinfo.DELIVERY <> X_DELIVERY)
393 AND NOT (Recinfo.DELIVERY is NULL AND X_DELIVERY is NULL)) OR
394 ((Recinfo.DEMAND_CLASS_CODE <> X_DEMAND_CLASS_CODE)
395 AND NOT (Recinfo.DEMAND_CLASS_CODE is NULL AND X_DEMAND_CLASS_CODE is NULL)) OR
396 ((Recinfo.DEMAND_ID <> X_DEMAND_ID)
397 AND NOT (Recinfo.DEMAND_ID is NULL AND X_DEMAND_ID is NULL)) OR
398 ((Recinfo.DETAIL_TYPE_CODE <> X_DETAIL_TYPE_CODE)
399 AND NOT (Recinfo.DETAIL_TYPE_CODE is NULL AND X_DETAIL_TYPE_CODE is NULL)) OR
400 ((Recinfo.INVENTORY_LOCATION_ID <> X_INVENTORY_LOCATION_ID)
401 AND NOT (Recinfo.INVENTORY_LOCATION_ID is NULL AND X_INVENTORY_LOCATION_ID is NULL)) OR
402 ((Recinfo.INVENTORY_LOCATION_SEGMENTS <> X_INVENTORY_LOCATION_SEGMENTS)
403 AND NOT (Recinfo.INVENTORY_LOCATION_SEGMENTS is NULL AND X_INVENTORY_LOCATION_SEGMENTS is NULL)) OR
404 ((Recinfo.LAST_UPDATED_BY <> X_LAST_UPDATED_BY)
405 AND NOT (Recinfo.LAST_UPDATED_BY is NULL AND X_LAST_UPDATED_BY is NULL)) OR
406 ((Recinfo.LAST_UPDATE_DATE <> X_LAST_UPDATE_DATE)
407 AND NOT (Recinfo.LAST_UPDATE_DATE is NULL AND X_LAST_UPDATE_DATE is NULL)) OR
408 ((Recinfo.LAST_UPDATE_LOGIN <> X_LAST_UPDATE_LOGIN)
409 AND NOT (Recinfo.LAST_UPDATE_LOGIN is NULL AND X_LAST_UPDATE_LOGIN is NULL)) OR
410 ((Recinfo.LATEST_ACCEPTABLE_DATE <> X_LATEST_ACCEPTABLE_DATE)
411 AND NOT (Recinfo.LATEST_ACCEPTABLE_DATE is NULL AND X_LATEST_ACCEPTABLE_DATE is NULL)) OR
412 ((Recinfo.LOT_NUMBER <> X_LOT_NUMBER)
413 AND NOT (Recinfo.LOT_NUMBER is NULL AND X_LOT_NUMBER is NULL)) OR
414 ((Recinfo.PICKING_LINE_DETAIL_ID <> X_PICKING_LINE_DETAIL_ID)
415 AND NOT (Recinfo.PICKING_LINE_DETAIL_ID is NULL AND X_PICKING_LINE_DETAIL_ID is NULL)) OR
416 ((Recinfo.PICKING_LINE_ID <> X_PICKING_LINE_ID)
417 AND NOT (Recinfo.PICKING_LINE_ID is NULL AND X_PICKING_LINE_ID is NULL)) OR
418 ((Recinfo.PROGRAM_APPLICATION_ID <> X_PROGRAM_APPLICATION_ID)
419 AND NOT (Recinfo.PROGRAM_APPLICATION_ID is NULL AND X_PROGRAM_APPLICATION_ID is NULL)) OR
420 ((Recinfo.PROGRAM_ID <> X_PROGRAM_ID)
421 AND NOT (Recinfo.PROGRAM_ID is NULL AND X_PROGRAM_ID is NULL)) OR
422 ((Recinfo.PROGRAM_UPDATE_DATE <> X_PROGRAM_UPDATE_DATE)
423 AND NOT (Recinfo.PROGRAM_UPDATE_DATE is NULL AND X_PROGRAM_UPDATE_DATE is NULL)) OR
424 ((Recinfo.RELEASED_FLAG <> X_RELEASED_FLAG)
425 AND NOT (Recinfo.RELEASED_FLAG is NULL AND X_RELEASED_FLAG is NULL)) OR
426 ((Recinfo.REQUESTED_QUANTITY <> X_REQUESTED_QUANTITY)
427 AND NOT (Recinfo.REQUESTED_QUANTITY is NULL AND X_REQUESTED_QUANTITY is NULL)) OR
428 ((Recinfo.REQUEST_ID <> X_REQUEST_ID)
429 AND NOT (Recinfo.REQUEST_ID is NULL AND X_REQUEST_ID is NULL)) OR
430 ((Recinfo.RESERVABLE_FLAG <> X_RESERVABLE_FLAG)
431 AND NOT (Recinfo.RESERVABLE_FLAG is NULL AND X_RESERVABLE_FLAG is NULL))
432 ) then
433 raise record_changed;
434 end if;
435
436 if (
437 ((Recinfo.REVISION <> X_REVISION)
438 AND NOT (Recinfo.REVISION is NULL AND X_REVISION is NULL)) OR
439 ((Recinfo.SCHEDULE_DATE <> X_SCHEDULE_DATE)
440 AND NOT (Recinfo.SCHEDULE_DATE is NULL AND X_SCHEDULE_DATE is NULL)) OR
441 ((Recinfo.SCHEDULE_LEVEL <> X_SCHEDULE_LEVEL)
442 AND NOT (Recinfo.SCHEDULE_LEVEL is NULL AND X_SCHEDULE_LEVEL is NULL)) OR
443 ((Recinfo.SCHEDULE_STATUS_CODE <> X_SCHEDULE_STATUS_CODE)
444 AND NOT (Recinfo.SCHEDULE_STATUS_CODE is NULL AND X_SCHEDULE_STATUS_CODE is NULL)) OR
445 ((Recinfo.SEGMENT1 <> X_SEGMENT1)
446 AND NOT (Recinfo.SEGMENT1 is NULL AND X_SEGMENT1 is NULL)) OR
447 ((Recinfo.SEGMENT10 <> X_SEGMENT10)
448 AND NOT (Recinfo.SEGMENT10 is NULL AND X_SEGMENT10 is NULL)) OR
449 ((Recinfo.SEGMENT11 <> X_SEGMENT11)
453 ((Recinfo.SEGMENT13 <> X_SEGMENT13)
450 AND NOT (Recinfo.SEGMENT11 is NULL AND X_SEGMENT11 is NULL)) OR
451 ((Recinfo.SEGMENT12 <> X_SEGMENT12)
452 AND NOT (Recinfo.SEGMENT12 is NULL AND X_SEGMENT12 is NULL)) OR
454 AND NOT (Recinfo.SEGMENT13 is NULL AND X_SEGMENT13 is NULL)) OR
455 ((Recinfo.SEGMENT14 <> X_SEGMENT14)
456 AND NOT (Recinfo.SEGMENT14 is NULL AND X_SEGMENT14 is NULL)) OR
457 ((Recinfo.SEGMENT15 <> X_SEGMENT15)
458 AND NOT (Recinfo.SEGMENT15 is NULL AND X_SEGMENT15 is NULL)) OR
459 ((Recinfo.SEGMENT16 <> X_SEGMENT16)
460 AND NOT (Recinfo.SEGMENT16 is NULL AND X_SEGMENT16 is NULL)) OR
461 ((Recinfo.SEGMENT17 <> X_SEGMENT17)
462 AND NOT (Recinfo.SEGMENT17 is NULL AND X_SEGMENT17 is NULL)) OR
463 ((Recinfo.SEGMENT18 <> X_SEGMENT18)
464 AND NOT (Recinfo.SEGMENT18 is NULL AND X_SEGMENT18 is NULL)) OR
465 ((Recinfo.SEGMENT19 <> X_SEGMENT19)
466 AND NOT (Recinfo.SEGMENT19 is NULL AND X_SEGMENT19 is NULL)) OR
467 ((Recinfo.SEGMENT2 <> X_SEGMENT2)
468 AND NOT (Recinfo.SEGMENT2 is NULL AND X_SEGMENT2 is NULL)) OR
469 ((Recinfo.SEGMENT20 <> X_SEGMENT20)
470 AND NOT (Recinfo.SEGMENT20 is NULL AND X_SEGMENT20 is NULL)) OR
471 ((Recinfo.SEGMENT3 <> X_SEGMENT3)
472 AND NOT (Recinfo.SEGMENT3 is NULL AND X_SEGMENT3 is NULL)) OR
473 ((Recinfo.SEGMENT4 <> X_SEGMENT4)
474 AND NOT (Recinfo.SEGMENT4 is NULL AND X_SEGMENT4 is NULL)) OR
475 ((Recinfo.SEGMENT5 <> X_SEGMENT5)
476 AND NOT (Recinfo.SEGMENT5 is NULL AND X_SEGMENT5 is NULL))
477 ) then
478 raise record_changed;
479 end if;
480
481 if (
482 ((Recinfo.SEGMENT6 <> X_SEGMENT6)
483 AND NOT (Recinfo.SEGMENT6 is NULL AND X_SEGMENT6 is NULL)) OR
484 ((Recinfo.SEGMENT7 <> X_SEGMENT7)
485 AND NOT (Recinfo.SEGMENT7 is NULL AND X_SEGMENT7 is NULL)) OR
486 ((Recinfo.SEGMENT8 <> X_SEGMENT8)
487 AND NOT (Recinfo.SEGMENT8 is NULL AND X_SEGMENT8 is NULL)) OR
488 ((Recinfo.SEGMENT9 <> X_SEGMENT9)
489 AND NOT (Recinfo.SEGMENT9 is NULL AND X_SEGMENT9 is NULL)) OR
490 ((Recinfo.SERIAL_NUMBER <> X_SERIAL_NUMBER)
491 AND NOT (Recinfo.SERIAL_NUMBER is NULL AND X_SERIAL_NUMBER is NULL)) OR
492 ((Recinfo.SHIPPED_QUANTITY <> X_SHIPPED_QUANTITY)
493 AND NOT (Recinfo.SHIPPED_QUANTITY is NULL AND X_SHIPPED_QUANTITY is NULL)) OR
494 ((Recinfo.SUBINVENTORY <> X_SUBINVENTORY)
495 AND NOT (Recinfo.SUBINVENTORY is NULL AND X_SUBINVENTORY is NULL)) OR
496 ((Recinfo.SUPPLY_SOURCE_HEADER_ID <> X_SUPPLY_SOURCE_HEADER_ID)
497 AND NOT (Recinfo.SUPPLY_SOURCE_HEADER_ID is NULL AND X_SUPPLY_SOURCE_HEADER_ID is NULL)) OR
498 ((Recinfo.SUPPLY_SOURCE_TYPE <> X_SUPPLY_SOURCE_TYPE)
499 AND NOT (Recinfo.SUPPLY_SOURCE_TYPE is NULL AND X_SUPPLY_SOURCE_TYPE is NULL)) OR
500 ((Recinfo.TRANSACTABLE_FLAG <> X_TRANSACTABLE_FLAG)
501 AND NOT (Recinfo.TRANSACTABLE_FLAG is NULL AND X_TRANSACTABLE_FLAG is NULL)) OR
502 ((Recinfo.UPDATE_FLAG <> X_UPDATE_FLAG)
503 AND NOT (Recinfo.UPDATE_FLAG is NULL AND X_UPDATE_FLAG is NULL)) OR
504 ((Recinfo.WAREHOUSE_ID <> X_WAREHOUSE_ID)
505 AND NOT (Recinfo.WAREHOUSE_ID is NULL AND X_WAREHOUSE_ID is NULL)) OR
506 ((Recinfo.WIP_COMPLETED_QUANTITY <> X_WIP_COMPLETED_QUANTITY)
507 AND NOT (Recinfo.WIP_COMPLETED_QUANTITY is NULL AND X_WIP_COMPLETED_QUANTITY is NULL)) OR
508 ((Recinfo.WIP_RESERVED_QUANTITY <> X_WIP_RESERVED_QUANTITY)
509 AND NOT (Recinfo.WIP_RESERVED_QUANTITY is NULL AND X_WIP_RESERVED_QUANTITY is NULL))
510 ) then
511 raise record_changed;
512 end if;
513
514 Result := 'SUCCESS';
515 exception
516 when record_changed then
517 Result := 'RECORD_CHANGED';
518 when record_deleted then
519 Result := 'RECORD_DELETED';
520 when resource_busy then
521 Result := 'RESOURCE_BUSY';
522 END Lock_Row;
523
524 PROCEDURE Update_Row(X_Rowid VARCHAR2,
525 X_ATTRIBUTE1 VARCHAR2,
526 X_ATTRIBUTE10 VARCHAR2,
527 X_ATTRIBUTE11 VARCHAR2,
528 X_ATTRIBUTE12 VARCHAR2,
529 X_ATTRIBUTE13 VARCHAR2,
530 X_ATTRIBUTE14 VARCHAR2,
531 X_ATTRIBUTE15 VARCHAR2,
532 X_ATTRIBUTE2 VARCHAR2,
533 X_ATTRIBUTE3 VARCHAR2,
534 X_ATTRIBUTE4 VARCHAR2,
535 X_ATTRIBUTE5 VARCHAR2,
536 X_ATTRIBUTE6 VARCHAR2,
537 X_ATTRIBUTE7 VARCHAR2,
538 X_ATTRIBUTE8 VARCHAR2,
539 X_ATTRIBUTE9 VARCHAR2,
540 X_AUTOSCHEDULED_FLAG VARCHAR2,
541 X_CONTEXT VARCHAR2,
542 X_CREATED_BY NUMBER,
543 X_CREATION_DATE DATE,
544 X_CUSTOMER_REQUESTED_LOT_FLAG VARCHAR2,
545 X_DELIVERY NUMBER,
546 X_DEMAND_CLASS_CODE VARCHAR2,
547 X_DEMAND_ID NUMBER,
548 X_DETAIL_TYPE_CODE VARCHAR2,
549 X_INVENTORY_LOCATION_ID NUMBER,
550 X_INVENTORY_LOCATION_SEGMENTS VARCHAR2,
551 X_LAST_UPDATED_BY NUMBER,
552 X_LAST_UPDATE_DATE DATE,
553 X_LAST_UPDATE_LOGIN NUMBER,
554 X_LATEST_ACCEPTABLE_DATE DATE,
555 X_LOT_NUMBER VARCHAR2,
556 X_PICKING_LINE_DETAIL_ID NUMBER,
557 X_PICKING_LINE_ID NUMBER,
558 X_PROGRAM_APPLICATION_ID NUMBER,
559 X_PROGRAM_ID NUMBER,
560 X_PROGRAM_UPDATE_DATE DATE,
561 X_RELEASED_FLAG VARCHAR2,
562 X_REQUESTED_QUANTITY NUMBER,
563 X_REQUEST_ID NUMBER,
564 X_RESERVABLE_FLAG VARCHAR2,
565 X_REVISION VARCHAR2,
566 X_SCHEDULE_DATE DATE,
567 X_SCHEDULE_LEVEL NUMBER,
568 X_SCHEDULE_STATUS_CODE VARCHAR2,
569 X_SEGMENT1 VARCHAR2,
570 X_SEGMENT10 VARCHAR2,
571 X_SEGMENT11 VARCHAR2,
575 X_SEGMENT15 VARCHAR2,
572 X_SEGMENT12 VARCHAR2,
573 X_SEGMENT13 VARCHAR2,
574 X_SEGMENT14 VARCHAR2,
576 X_SEGMENT16 VARCHAR2,
577 X_SEGMENT17 VARCHAR2,
578 X_SEGMENT18 VARCHAR2,
579 X_SEGMENT19 VARCHAR2,
580 X_SEGMENT2 VARCHAR2,
581 X_SEGMENT20 VARCHAR2,
582 X_SEGMENT3 VARCHAR2,
583 X_SEGMENT4 VARCHAR2,
584 X_SEGMENT5 VARCHAR2,
585 X_SEGMENT6 VARCHAR2,
586 X_SEGMENT7 VARCHAR2,
587 X_SEGMENT8 VARCHAR2,
588 X_SEGMENT9 VARCHAR2,
589 X_SERIAL_NUMBER VARCHAR2,
590 X_SHIPPED_QUANTITY NUMBER,
591 X_SUBINVENTORY VARCHAR2,
592 X_SUPPLY_SOURCE_HEADER_ID NUMBER,
593 X_SUPPLY_SOURCE_TYPE NUMBER,
594 X_TRANSACTABLE_FLAG VARCHAR2,
595 X_UPDATE_FLAG VARCHAR2,
596 X_WAREHOUSE_ID NUMBER,
597 X_WIP_COMPLETED_QUANTITY NUMBER,
598 X_WIP_RESERVED_QUANTITY NUMBER
599 )IS
600
601 BEGIN
602 UPDATE so_picking_line_details
603 SET
604 ATTRIBUTE1 = X_ATTRIBUTE1,
605 ATTRIBUTE10 = X_ATTRIBUTE10,
606 ATTRIBUTE11 = X_ATTRIBUTE11,
607 ATTRIBUTE12 = X_ATTRIBUTE12,
608 ATTRIBUTE13 = X_ATTRIBUTE13,
609 ATTRIBUTE14 = X_ATTRIBUTE14,
610 ATTRIBUTE15 = X_ATTRIBUTE15,
611 ATTRIBUTE2 = X_ATTRIBUTE2,
612 ATTRIBUTE3 = X_ATTRIBUTE3,
613 ATTRIBUTE4 = X_ATTRIBUTE4,
614 ATTRIBUTE5 = X_ATTRIBUTE5,
615 ATTRIBUTE6 = X_ATTRIBUTE6,
616 ATTRIBUTE7 = X_ATTRIBUTE7,
617 ATTRIBUTE8 = X_ATTRIBUTE8,
618 ATTRIBUTE9 = X_ATTRIBUTE9,
619 AUTOSCHEDULED_FLAG = X_AUTOSCHEDULED_FLAG,
620 CONTEXT = X_CONTEXT,
621 CREATED_BY = X_CREATED_BY,
622 CREATION_DATE = X_CREATION_DATE,
623 CUSTOMER_REQUESTED_LOT_FLAG = X_CUSTOMER_REQUESTED_LOT_FLAG,
624 DELIVERY = X_DELIVERY,
625 DEMAND_CLASS_CODE = X_DEMAND_CLASS_CODE,
626 DEMAND_ID = X_DEMAND_ID,
627 DETAIL_TYPE_CODE = X_DETAIL_TYPE_CODE,
628 INVENTORY_LOCATION_ID = X_INVENTORY_LOCATION_ID,
629 INVENTORY_LOCATION_SEGMENTS = X_INVENTORY_LOCATION_SEGMENTS,
630 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
631 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
632 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
633 LATEST_ACCEPTABLE_DATE = X_LATEST_ACCEPTABLE_DATE,
634 LOT_NUMBER = X_LOT_NUMBER,
635 PICKING_LINE_DETAIL_ID = X_PICKING_LINE_DETAIL_ID,
636 PICKING_LINE_ID = X_PICKING_LINE_ID,
637 PROGRAM_APPLICATION_ID = X_PROGRAM_APPLICATION_ID,
638 PROGRAM_ID = X_PROGRAM_ID,
639 PROGRAM_UPDATE_DATE = X_PROGRAM_UPDATE_DATE,
640 RELEASED_FLAG = X_RELEASED_FLAG,
641 REQUESTED_QUANTITY = X_REQUESTED_QUANTITY,
642 REQUEST_ID = X_REQUEST_ID,
643 RESERVABLE_FLAG = X_RESERVABLE_FLAG,
644 REVISION = X_REVISION,
645 SCHEDULE_DATE = X_SCHEDULE_DATE,
646 SCHEDULE_LEVEL = X_SCHEDULE_LEVEL,
647 SCHEDULE_STATUS_CODE = X_SCHEDULE_STATUS_CODE,
648 SEGMENT1 = X_SEGMENT1,
649 SEGMENT10 = X_SEGMENT10,
650 SEGMENT11 = X_SEGMENT11,
651 SEGMENT12 = X_SEGMENT12,
652 SEGMENT13 = X_SEGMENT13,
653 SEGMENT14 = X_SEGMENT14,
654 SEGMENT15 = X_SEGMENT15,
655 SEGMENT16 = X_SEGMENT16,
656 SEGMENT17 = X_SEGMENT17,
657 SEGMENT18 = X_SEGMENT18,
658 SEGMENT19 = X_SEGMENT19,
659 SEGMENT2 = X_SEGMENT2,
660 SEGMENT20 = X_SEGMENT20,
661 SEGMENT3 = X_SEGMENT3,
662 SEGMENT4 = X_SEGMENT4,
663 SEGMENT5 = X_SEGMENT5,
664 SEGMENT6 = X_SEGMENT6,
665 SEGMENT7 = X_SEGMENT7,
666 SEGMENT8 = X_SEGMENT8,
667 SEGMENT9 = X_SEGMENT9,
668 SERIAL_NUMBER = X_SERIAL_NUMBER,
669 SHIPPED_QUANTITY = X_SHIPPED_QUANTITY,
670 SUBINVENTORY = X_SUBINVENTORY,
671 SUPPLY_SOURCE_HEADER_ID = X_SUPPLY_SOURCE_HEADER_ID,
672 SUPPLY_SOURCE_TYPE = X_SUPPLY_SOURCE_TYPE,
673 TRANSACTABLE_FLAG = X_TRANSACTABLE_FLAG,
674 UPDATE_FLAG = X_UPDATE_FLAG,
675 WAREHOUSE_ID = X_WAREHOUSE_ID,
676 WIP_COMPLETED_QUANTITY = X_WIP_COMPLETED_QUANTITY,
677 WIP_RESERVED_QUANTITY = X_WIP_RESERVED_QUANTITY
678 WHERE ROWID = X_Rowid;
679
680 IF (SQL%NOTFOUND) then
681 Raise NO_DATA_FOUND;
682 end if;
683 END Update_Row;
684
685 PROCEDURE Delete_Row(X_Rowid VARCHAR2)
686 IS
687
688 BEGIN
689 DELETE FROM so_picking_line_details
690 WHERE ROWID = X_Rowid;
691
692 IF (SQL%NOTFOUND) then
693 Raise NO_DATA_FOUND;
694 end if;
695 END Delete_Row;
696
697 END OE_SO_PLD_TABLE;