DBA Data[Home] [Help]

PACKAGE BODY: APPS.MTL_RESERVATIONS_INTERFACE_PKG

Source


1 PACKAGE BODY MTL_RESERVATIONS_INTERFACE_PKG as
2 /* $Header: INVRSVF1B.pls 120.0 2005/05/25 06:35:54 appldev noship $ */
3 
4   PROCEDURE Lock_Row(	X_ROWID   				   VARCHAR2,
5 			X_RESERVATION_INTERFACE_ID                 NUMBER,
6 			X_RESERVATION_BATCH_ID                 	   NUMBER,
7 			X_REQUIREMENT_DATE			   DATE,
8 			X_ORGANIZATION_ID			   NUMBER,
9 			X_TO_ORGANIZATION_ID			   NUMBER,
10  			X_INVENTORY_ITEM_ID                        NUMBER,
11  			X_ITEM_SEGMENT1                            VARCHAR2,
12  			X_ITEM_SEGMENT2                            VARCHAR2,
13  			X_ITEM_SEGMENT3                            VARCHAR2,
14  			X_ITEM_SEGMENT4                            VARCHAR2,
15  			X_ITEM_SEGMENT5                            VARCHAR2,
16  			X_ITEM_SEGMENT6                            VARCHAR2,
17  			X_ITEM_SEGMENT7                            VARCHAR2,
18  			X_ITEM_SEGMENT8                            VARCHAR2,
19  			X_ITEM_SEGMENT9                            VARCHAR2,
20  			X_ITEM_SEGMENT10                           VARCHAR2,
21  			X_ITEM_SEGMENT11                           VARCHAR2,
22  			X_ITEM_SEGMENT12                           VARCHAR2,
23  			X_ITEM_SEGMENT13                           VARCHAR2,
24  			X_ITEM_SEGMENT14                           VARCHAR2,
25  			X_ITEM_SEGMENT15                           VARCHAR2,
26  			X_ITEM_SEGMENT16                           VARCHAR2,
27  			X_ITEM_SEGMENT17                           VARCHAR2,
28  			X_ITEM_SEGMENT18                           VARCHAR2,
29  			X_ITEM_SEGMENT19                           VARCHAR2,
30  			X_ITEM_SEGMENT20                           VARCHAR2,
31  			X_DEMAND_SOURCE_TYPE_ID                    NUMBER,
32 			X_DEMAND_SOURCE_NAME			   VARCHAR2,
33  			X_DEMAND_SOURCE_HEADER_ID                  NUMBER,
34  			X_DEMAND_SOURCE_LINE_ID                    NUMBER,
35  			X_TO_DEMAND_SOURCE_TYPE_ID                 NUMBER,
36 			X_TO_DEMAND_SOURCE_NAME			   VARCHAR2,
37  			X_TO_DEMAND_SOURCE_HEADER_ID               NUMBER,
38  			X_TO_DEMAND_SOURCE_LINE_ID                 NUMBER,
39 			X_PRIMARY_UOM_CODE			   VARCHAR2,
40 			X_PRIMARY_UOM_ID			   NUMBER,
41 			X_SECONDARY_UOM_CODE			   VARCHAR2,   --InvConv change
42 			X_SECONDARY_UOM_ID			   NUMBER,     --InvConv change
43 			X_RESERVATION_UOM_CODE			   VARCHAR2,
44 			X_RESERVATION_UOM_ID			   NUMBER,
45 			X_RESERVATION_QUANTITY			   NUMBER,
46 			X_PRIMARY_RESERVATION_QUANTITY		   NUMBER,
47 			X_SECONDARY_RSV_QUANTITY		   NUMBER,     --InvConv change
48 			X_EXTERNAL_SOURCE_CODE			   VARCHAR2,
49 			X_EXTERNAL_SOURCE_LINE_ID		   NUMBER,
50  			X_SUPPLY_SOURCE_TYPE_ID                    NUMBER,
51 			X_SUPPLY_SOURCE_NAME			   VARCHAR2,
52  			X_SUPPLY_SOURCE_HEADER_ID                  NUMBER,
53  			X_SUPPLY_SOURCE_LINE_ID                    NUMBER,
54  			X_SUPPLY_SOURCE_LINE_DETAIL                NUMBER,
55  			X_TO_SUPPLY_SOURCE_TYPE_ID                 NUMBER,
56 			X_TO_SUPPLY_SOURCE_NAME			   VARCHAR2,
57  			X_TO_SUPPLY_SOURCE_HEADER_ID               NUMBER,
58  			X_TO_SUPPLY_SOURCE_LINE_ID                 NUMBER,
59  			X_TO_SUPPLY_SOURCE_LINE_DETAIL             NUMBER,
60  			X_ERROR_CODE                               NUMBER,
61  			X_ERROR_EXPLANATION                        VARCHAR2,
62 			X_REVISION				   VARCHAR2,
63 			X_SUBINVENTORY_CODE			   VARCHAR2,
64 			X_SUBINVENTORY_ID			   NUMBER,
65 			X_LOCATOR_ID				   NUMBER,
66  			X_LOC_SEGMENT1                             VARCHAR2,
67  			X_LOC_SEGMENT2                             VARCHAR2,
68  			X_LOC_SEGMENT3                             VARCHAR2,
69  			X_LOC_SEGMENT4                             VARCHAR2,
70  			X_LOC_SEGMENT5                             VARCHAR2,
71  			X_LOC_SEGMENT6                             VARCHAR2,
72  			X_LOC_SEGMENT7                             VARCHAR2,
73  			X_LOC_SEGMENT8                             VARCHAR2,
74  			X_LOC_SEGMENT9                             VARCHAR2,
75  			X_LOC_SEGMENT10                            VARCHAR2,
76  			X_LOC_SEGMENT11                            VARCHAR2,
77  			X_LOC_SEGMENT12                            VARCHAR2,
78  			X_LOC_SEGMENT13                            VARCHAR2,
79  			X_LOC_SEGMENT14                            VARCHAR2,
80  			X_LOC_SEGMENT15                            VARCHAR2,
81  			X_LOC_SEGMENT16                            VARCHAR2,
82  			X_LOC_SEGMENT17                            VARCHAR2,
83  			X_LOC_SEGMENT18                            VARCHAR2,
84  			X_LOC_SEGMENT19                            VARCHAR2,
85  			X_LOC_SEGMENT20                            VARCHAR2,
86 			X_LOT_NUMBER				   VARCHAR2,
87 			X_LOT_NUMBER_ID				   NUMBER,
88 			X_SERIAL_NUMBER				   VARCHAR2,
89 			X_SERIAL_NUMBER_ID			   NUMBER,
90 			X_TO_REVISION				   VARCHAR2,
91 			X_TO_SUBINVENTORY_CODE			   VARCHAR2,
92 			X_TO_SUBINVENTORY_ID			   NUMBER,
93 			X_TO_LOCATOR_ID				   NUMBER,
94  			X_TO_LOC_SEGMENT1    			   VARCHAR2,
95  			X_TO_LOC_SEGMENT2                          VARCHAR2,
96  			X_TO_LOC_SEGMENT3                          VARCHAR2,
97  			X_TO_LOC_SEGMENT4                          VARCHAR2,
98  			X_TO_LOC_SEGMENT5                          VARCHAR2,
99  			X_TO_LOC_SEGMENT6                          VARCHAR2,
100  			X_TO_LOC_SEGMENT7                          VARCHAR2,
101  			X_TO_LOC_SEGMENT8                          VARCHAR2,
102  			X_TO_LOC_SEGMENT9                          VARCHAR2,
103  			X_TO_LOC_SEGMENT10                         VARCHAR2,
104  			X_TO_LOC_SEGMENT11                         VARCHAR2,
105  			X_TO_LOC_SEGMENT12                         VARCHAR2,
106  			X_TO_LOC_SEGMENT13                         VARCHAR2,
107  			X_TO_LOC_SEGMENT14                         VARCHAR2,
108  			X_TO_LOC_SEGMENT15                         VARCHAR2,
109  			X_TO_LOC_SEGMENT16                         VARCHAR2,
110  			X_TO_LOC_SEGMENT17                         VARCHAR2,
111  			X_TO_LOC_SEGMENT18                         VARCHAR2,
112  			X_TO_LOC_SEGMENT19                         VARCHAR2,
113  			X_TO_LOC_SEGMENT20                         VARCHAR2,
114 			X_TO_LOT_NUMBER				   VARCHAR2,
115 			X_TO_LOT_NUMBER_ID			   NUMBER,
116 			X_TO_SERIAL_NUMBER			   VARCHAR2,
117 			X_TO_SERIAL_NUMBER_ID			   NUMBER,
118  			X_ROW_STATUS_CODE                          NUMBER,
119 			X_LOCK_FLAG				   NUMBER,
120 			X_RESERVATION_ACTION_CODE		   NUMBER,
121 			X_TRANSACTION_MODE			   NUMBER,
122 			X_VALIDATION_FLAG			   NUMBER,
123 			X_PARTIAL_QUANTITIES_ALLOWED		   NUMBER,
124 			X_REQUEST_ID				   NUMBER,
125 			X_PROGRAM_APPLICATION_ID		   NUMBER,
126 			X_PROGRAM_ID				   NUMBER,
127 			X_PROGRAM_UPDATE_DATE			   DATE,
128 			X_PROJECT_ID				   NUMBER,
129 			X_TASK_ID				   NUMBER,
130 			X_PROJECT_PLANNING_GROUP		   NUMBER,
131  			X_ATTRIBUTE_CATEGORY                       VARCHAR2,
132  			X_ATTRIBUTE1                               VARCHAR2,
133  			X_ATTRIBUTE2                               VARCHAR2,
134  			X_ATTRIBUTE3                               VARCHAR2,
135  			X_ATTRIBUTE4                               VARCHAR2,
136  			X_ATTRIBUTE5                               VARCHAR2,
137  			X_ATTRIBUTE6                               VARCHAR2,
138  			X_ATTRIBUTE7                               VARCHAR2,
139  			X_ATTRIBUTE8                               VARCHAR2,
140  			X_ATTRIBUTE9                               VARCHAR2,
141  			X_ATTRIBUTE10                              VARCHAR2,
142  			X_ATTRIBUTE11                              VARCHAR2,
143  			X_ATTRIBUTE12                              VARCHAR2,
144  			X_ATTRIBUTE13                              VARCHAR2,
145  			X_ATTRIBUTE14                              VARCHAR2,
146  			X_ATTRIBUTE15                              VARCHAR2
147   ) IS
148     CURSOR C IS
149         SELECT *
150         FROM   mtl_reservations_interface
151         WHERE  rowid = X_Rowid
152 	FOR UPDATE NOWAIT;
153     Recinfo C%ROWTYPE;
154     RECORD_CHANGED EXCEPTION;
155 
156   BEGIN
157     OPEN C;
158     FETCH C INTO Recinfo;
159     if (C%NOTFOUND) then
160       CLOSE C;
161       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
162       APP_EXCEPTION.Raise_Exception;
163     end if;
164     CLOSE C;
165 
166     if not (
167                (   (Recinfo.reservation_batch_id = X_reservation_batch_id)
168                 OR (    (Recinfo.reservation_batch_id IS NULL)
169                     AND (X_reservation_batch_id IS NULL)))
170            AND (   (Recinfo.reservation_interface_id=X_reservation_interface_id)
171                 OR (    (Recinfo.reservation_interface_id IS NULL)
172                     AND (X_reservation_interface_id IS NULL)))
173            AND (   (Recinfo.requirement_date = X_requirement_date)
174                 OR (    (Recinfo.requirement_date IS NULL)
175                     AND (X_requirement_date IS NULL)))
176            AND (   (Recinfo.organization_id = X_organization_id)
177                 OR (    (Recinfo.organization_id IS NULL)
178                     AND (X_organization_id IS NULL)))
179            AND (   (Recinfo.to_organization_id = X_to_organization_id)
180                 OR (    (Recinfo.to_organization_id IS NULL)
181                     AND (X_to_organization_id IS NULL)))
182            AND (   (Recinfo.inventory_item_id =  X_inventory_item_id)
183                 OR (    (Recinfo.inventory_item_id IS NULL)
184                     AND (X_inventory_item_id IS NULL)))
185 	   AND (   (Recinfo.item_segment1 =  X_item_segment1)
186                 OR (    (Recinfo.item_segment1 IS NULL)
187                     AND (X_item_segment1 IS NULL)))
188 	   AND (   (Recinfo.item_segment2 =  X_item_segment2)
189                 OR (    (Recinfo.item_segment2 IS NULL)
190                     AND (X_item_segment2 IS NULL)))
191 	   AND (   (Recinfo.item_segment3 =  X_item_segment3)
192                 OR (    (Recinfo.item_segment3 IS NULL)
193                     AND (X_item_segment3 IS NULL)))
194 	   AND (   (Recinfo.item_segment4 =  X_item_segment4)
195                 OR (    (Recinfo.item_segment4 IS NULL)
196                     AND (X_item_segment4 IS NULL)))
197 	   AND (   (Recinfo.item_segment5 =  X_item_segment5)
198                 OR (    (Recinfo.item_segment5 IS NULL)
199                     AND (X_item_segment5 IS NULL)))
200 	   AND (   (Recinfo.item_segment6 =  X_item_segment6)
201                 OR (    (Recinfo.item_segment6 IS NULL)
202                     AND (X_item_segment6 IS NULL)))
203 	   AND (   (Recinfo.item_segment7 =  X_item_segment7)
204                 OR (    (Recinfo.item_segment7 IS NULL)
205                     AND (X_item_segment7 IS NULL)))
206 	   AND (   (Recinfo.item_segment8 =  X_item_segment8)
207                 OR (    (Recinfo.item_segment8 IS NULL)
208                     AND (X_item_segment8 IS NULL)))
209 	   AND (   (Recinfo.item_segment9 =  X_item_segment9)
210                 OR (    (Recinfo.item_segment9 IS NULL)
211                     AND (X_item_segment9 IS NULL)))
212 	   AND (   (Recinfo.item_segment10 =  X_item_segment10)
213                 OR (    (Recinfo.item_segment10 IS NULL)
214                     AND (X_item_segment10 IS NULL)))
215 	   AND (   (Recinfo.item_segment11 =  X_item_segment11)
216                 OR (    (Recinfo.item_segment11 IS NULL)
217                     AND (X_item_segment11 IS NULL)))
218 	   AND (   (Recinfo.item_segment12 =  X_item_segment12)
219                 OR (    (Recinfo.item_segment12 IS NULL)
220                     AND (X_item_segment12 IS NULL)))
221 	   AND (   (Recinfo.item_segment13 =  X_item_segment13)
222                 OR (    (Recinfo.item_segment13 IS NULL)
223                     AND (X_item_segment13 IS NULL)))
224 	   AND (   (Recinfo.item_segment14 =  X_item_segment14)
225                 OR (    (Recinfo.item_segment14 IS NULL)
226                     AND (X_item_segment14 IS NULL)))
227 	   AND (   (Recinfo.item_segment15 =  X_item_segment15)
228                 OR (    (Recinfo.item_segment15 IS NULL)
229                     AND (X_item_segment15 IS NULL)))
230 	   AND (   (Recinfo.item_segment16 =  X_item_segment16)
231                 OR (    (Recinfo.item_segment16 IS NULL)
232                     AND (X_item_segment16 IS NULL)))
233 	   AND (   (Recinfo.item_segment17 =  X_item_segment17)
234                 OR (    (Recinfo.item_segment17 IS NULL)
235                     AND (X_item_segment17 IS NULL)))
236 	   AND (   (Recinfo.item_segment18 =  X_item_segment18)
237                 OR (    (Recinfo.item_segment18 IS NULL)
238                     AND (X_item_segment18 IS NULL)))
239 	   AND (   (Recinfo.item_segment19 =  X_item_segment19)
240                 OR (    (Recinfo.item_segment19 IS NULL)
241                     AND (X_item_segment19 IS NULL)))
242 	   AND (   (Recinfo.item_segment20 =  X_item_segment20)
243                 OR (    (Recinfo.item_segment20 IS NULL)
244                     AND (X_item_segment20 IS NULL)))
245 	   ) then
246 		RAISE RECORD_CHANGED;
247     end if;
248 
249     if not (
250 	       (   (Recinfo.demand_source_type_id = X_demand_source_type_id)
251                 OR (    (Recinfo.demand_source_type_id IS NULL)
252                     AND (X_demand_source_type_id IS NULL)))
253 	   AND (   (Recinfo.demand_source_name = X_demand_source_name)
254                 OR (    (Recinfo.demand_source_name IS NULL)
255                     AND (X_demand_source_name IS NULL)))
256 	   AND (   (Recinfo.demand_source_header_id = X_demand_source_header_id)
257                 OR (    (Recinfo.demand_source_header_id IS NULL)
258                     AND (X_demand_source_header_id IS NULL)))
259 	   AND (   (Recinfo.demand_source_line_id = X_demand_source_line_id)
260                 OR (    (Recinfo.demand_source_line_id IS NULL)
261                     AND (X_demand_source_line_id IS NULL)))
262 	   AND (   (Recinfo.to_demand_source_type_id=X_to_demand_source_type_id)
266                 OR (    (Recinfo.to_demand_source_name IS NULL)
263                 OR (    (Recinfo.to_demand_source_type_id IS NULL)
264                     AND (X_to_demand_source_type_id IS NULL)))
265 	   AND (   (Recinfo.to_demand_source_name = X_to_demand_source_name)
267                     AND (X_to_demand_source_name IS NULL)))
268 	   AND (   (Recinfo.to_demand_source_header_id=X_to_demand_source_header_id)
269                 OR (    (Recinfo.to_demand_source_header_id IS NULL)
270                     AND (X_to_demand_source_header_id IS NULL)))
271 	   AND (   (Recinfo.to_demand_source_line_id=X_to_demand_source_line_id)
272                 OR (    (Recinfo.to_demand_source_line_id IS NULL)
273                     AND (X_to_demand_source_line_id IS NULL)))
274 	   ) then
275 		RAISE RECORD_CHANGED;
276     end if;
277 
278     if not (
279 	       (   (Recinfo.primary_uom_code = X_primary_uom_code)
280                 OR (    (Recinfo.primary_uom_code IS NULL)
281                     AND (X_primary_uom_code IS NULL)))
282 	   AND (   (Recinfo.primary_uom_id = X_primary_uom_id)
283                 OR (    (Recinfo.primary_uom_id IS NULL)
284                     AND (X_primary_uom_id IS NULL)))
285 	   AND (   (Recinfo.secondary_uom_code = X_secondary_uom_code)    --InvConv change
286                 OR (    (Recinfo.secondary_uom_code IS NULL)
287                     AND (X_secondary_uom_code IS NULL)))
288 	   AND (   (Recinfo.secondary_uom_id = X_secondary_uom_id)        --InvConv change
289                 OR (    (Recinfo.secondary_uom_id IS NULL)
290                     AND (X_secondary_uom_id IS NULL)))
291 	   AND (   (Recinfo.reservation_uom_code = X_reservation_uom_code)
292                 OR (    (Recinfo.reservation_uom_code IS NULL)
293                     AND (X_reservation_uom_code IS NULL)))
294 	   AND (   (Recinfo.reservation_uom_id = X_reservation_uom_id)
295                 OR (    (Recinfo.reservation_uom_id IS NULL)
296                     AND (X_reservation_uom_id IS NULL)))
297 	   AND (   (Recinfo.reservation_quantity = X_reservation_quantity)
298                 OR (    (Recinfo.reservation_quantity IS NULL)
299                     AND (X_reservation_quantity IS NULL)))
300 	   AND (   (Recinfo.primary_reservation_quantity=X_primary_reservation_quantity)
301                 OR (    (Recinfo.primary_reservation_quantity IS NULL)
302                     AND (X_primary_reservation_quantity IS NULL)))
303 	   AND (   (Recinfo.secondary_reservation_quantity=X_secondary_rsv_quantity)    --InvConv change
304                 OR (    (Recinfo.secondary_reservation_quantity IS NULL)
305                     AND (X_secondary_rsv_quantity IS NULL)))
306 	   AND (   (Recinfo.external_source_code = X_external_source_code)
307                 OR (    (Recinfo.external_source_code IS NULL)
308                     AND (X_external_source_code IS NULL)))
309 	   AND (   (Recinfo.external_source_line_id = X_external_source_line_id)
310                 OR (    (Recinfo.external_source_line_id IS NULL)
311                     AND (X_external_source_line_id IS NULL)))
312 	   ) then
313 		RAISE RECORD_CHANGED;
314     end if;
315 
316     if not (
317 	       (   (Recinfo.supply_source_type_id = X_supply_source_type_id)
318                 OR (    (Recinfo.supply_source_type_id IS NULL)
319                     AND (X_supply_source_type_id IS NULL)))
320 	   AND (   (Recinfo.supply_source_name = X_supply_source_name)
321                 OR (    (Recinfo.supply_source_name IS NULL)
322                     AND (X_supply_source_name IS NULL)))
323 	   AND (   (Recinfo.supply_source_header_id = X_supply_source_header_id)
324                 OR (    (Recinfo.supply_source_header_id IS NULL)
325                     AND (X_supply_source_header_id IS NULL)))
326 	   AND (   (Recinfo.supply_source_line_id = X_supply_source_line_id)
327                 OR (    (Recinfo.supply_source_line_id IS NULL)
328                     AND (X_supply_source_line_id IS NULL)))
329 	   AND ((Recinfo.supply_source_line_detail=X_supply_source_line_detail)
330                 OR (    (Recinfo.supply_source_line_detail IS NULL)
331                     AND (X_supply_source_line_detail IS NULL)))
332 	   AND (   (Recinfo.to_supply_source_type_id = X_to_supply_source_type_id)
333                 OR (    (Recinfo.to_supply_source_type_id IS NULL)
334                     AND (X_to_supply_source_type_id IS NULL)))
335 	   AND (   (Recinfo.to_supply_source_name = X_to_supply_source_name)
336                 OR (    (Recinfo.to_supply_source_name IS NULL)
337                     AND (X_to_supply_source_name IS NULL)))
338 	   AND (   (Recinfo.to_supply_source_header_id = X_to_supply_source_header_id)
339                 OR (    (Recinfo.to_supply_source_header_id IS NULL)
340                     AND (X_to_supply_source_header_id IS NULL)))
341 	   AND (   (Recinfo.to_supply_source_line_id = X_to_supply_source_line_id)
342                 OR (    (Recinfo.to_supply_source_line_id IS NULL)
343                     AND (X_to_supply_source_line_id IS NULL)))
344 	   AND ((Recinfo.to_supply_source_line_detail=X_to_supply_source_line_detail)
345                 OR (    (Recinfo.to_supply_source_line_detail IS NULL)
346                     AND (X_to_supply_source_line_detail IS NULL)))
347 	   ) then
348 		RAISE RECORD_CHANGED;
349     end if;
350 
351     if not (
352 	       (   (Recinfo.error_code = X_error_code)
353                 OR (    (Recinfo.error_code IS NULL)
354                     AND (X_error_code IS NULL)))
355 	   AND (   (Recinfo.error_explanation = X_error_explanation)
356                 OR (    (Recinfo.error_explanation IS NULL)
357                     AND (X_error_explanation IS NULL)))
358 	   ) then
359 		RAISE RECORD_CHANGED;
360     end if;
361 
362     if not (
363 	       (   (Recinfo.revision = X_revision)
364                 OR (    (Recinfo.revision IS NULL)
365                     AND (X_revision IS NULL)))
366 	   AND (   (Recinfo.subinventory_code = X_subinventory_code)
370                 OR (    (Recinfo.subinventory_id IS NULL)
367                 OR (    (Recinfo.subinventory_code IS NULL)
368                     AND (X_subinventory_code IS NULL)))
369 	   AND (   (Recinfo.subinventory_id = X_subinventory_id)
371                     AND (X_subinventory_id IS NULL)))
372 	   AND (   (Recinfo.locator_id = X_locator_id)
373                 OR (    (Recinfo.locator_id IS NULL)
374                     AND (X_locator_id IS NULL)))
375            AND (   (Recinfo.Loc_Segment1 =  X_Loc_Segment1)
376                 OR (    (Recinfo.Loc_Segment1 IS NULL)
377                     AND (X_Loc_Segment1 IS NULL)))
378            AND (   (Recinfo.Loc_Segment2 =  X_Loc_Segment2)
379                 OR (    (Recinfo.Loc_Segment2 IS NULL)
380                     AND (X_Loc_Segment2 IS NULL)))
381            AND (   (Recinfo.Loc_Segment3 =  X_Loc_Segment3)
382                 OR (    (Recinfo.Loc_Segment3 IS NULL)
383                     AND (X_Loc_Segment3 IS NULL)))
384            AND (   (Recinfo.Loc_Segment4 =  X_Loc_Segment4)
385                 OR (    (Recinfo.Loc_Segment4 IS NULL)
386                     AND (X_Loc_Segment4 IS NULL)))
387            AND (   (Recinfo.Loc_Segment5 =  X_Loc_Segment5)
388                 OR (    (Recinfo.Loc_Segment5 IS NULL)
389                     AND (X_Loc_Segment5 IS NULL)))
390            AND (   (Recinfo.Loc_Segment6 =  X_Loc_Segment6)
391                 OR (    (Recinfo.Loc_Segment6 IS NULL)
392                     AND (X_Loc_Segment6 IS NULL)))
393            AND (   (Recinfo.Loc_Segment7 =  X_Loc_Segment7)
394                 OR (    (Recinfo.Loc_Segment7 IS NULL)
395                     AND (X_Loc_Segment7 IS NULL)))
396            AND (   (Recinfo.Loc_Segment8 =  X_Loc_Segment8)
397                 OR (    (Recinfo.Loc_Segment8 IS NULL)
398                     AND (X_Loc_Segment8 IS NULL)))
399            AND (   (Recinfo.Loc_Segment9 =  X_Loc_Segment9)
400                 OR (    (Recinfo.Loc_Segment9 IS NULL)
401                     AND (X_Loc_Segment9 IS NULL)))
402            AND (   (Recinfo.Loc_Segment10 =  X_Loc_Segment10)
403                 OR (    (Recinfo.Loc_Segment10 IS NULL)
404                     AND (X_Loc_Segment10 IS NULL)))
405            AND (   (Recinfo.Loc_Segment11 =  X_Loc_Segment11)
406                 OR (    (Recinfo.Loc_Segment11 IS NULL)
407                     AND (X_Loc_Segment11 IS NULL)))
408            AND (   (Recinfo.Loc_Segment12 =  X_Loc_Segment12)
409                 OR (    (Recinfo.Loc_Segment12 IS NULL)
410                     AND (X_Loc_Segment12 IS NULL)))
411            AND (   (Recinfo.Loc_Segment13 =  X_Loc_Segment13)
412                 OR (    (Recinfo.Loc_Segment13 IS NULL)
413                     AND (X_Loc_Segment13 IS NULL)))
414            AND (   (Recinfo.Loc_Segment14 =  X_Loc_Segment14)
415                 OR (    (Recinfo.Loc_Segment14 IS NULL)
416                     AND (X_Loc_Segment14 IS NULL)))
417            AND (   (Recinfo.Loc_Segment15 =  X_Loc_Segment15)
418                 OR (    (Recinfo.Loc_Segment15 IS NULL)
419                     AND (X_Loc_Segment15 IS NULL)))
420            AND (   (Recinfo.Loc_Segment16 =  X_Loc_Segment16)
421                 OR (    (Recinfo.Loc_Segment16 IS NULL)
422                     AND (X_Loc_Segment16 IS NULL)))
423            AND (   (Recinfo.Loc_Segment17 =  X_Loc_Segment17)
424                 OR (    (Recinfo.Loc_Segment17 IS NULL)
425                     AND (X_Loc_Segment17 IS NULL)))
426            AND (   (Recinfo.Loc_Segment18 =  X_Loc_Segment18)
427                 OR (    (Recinfo.Loc_Segment18 IS NULL)
428                     AND (X_Loc_Segment18 IS NULL)))
429            AND (   (Recinfo.Loc_Segment19 =  X_Loc_Segment19)
430                 OR (    (Recinfo.Loc_Segment19 IS NULL)
431                     AND (X_Loc_Segment19 IS NULL)))
432            AND (   (Recinfo.Loc_Segment20 =  X_Loc_Segment20)
433                 OR (    (Recinfo.Loc_Segment20 IS NULL)
434                     AND (X_Loc_Segment20 IS NULL)))
435            AND (   (Recinfo.lot_number =  X_lot_number)
436                 OR (    (Recinfo.lot_number IS NULL)
437                     AND (X_lot_number IS NULL)))
438            AND (   (Recinfo.lot_number_id =  X_lot_number_id)
439                 OR (    (Recinfo.lot_number_id IS NULL)
440                     AND (X_lot_number_id IS NULL)))
441            AND (   (Recinfo.serial_number =  X_serial_number)
442                 OR (    (Recinfo.serial_number IS NULL)
443                     AND (X_serial_number IS NULL)))
444            AND (   (Recinfo.serial_number_id =  X_serial_number_id)
445                 OR (    (Recinfo.serial_number_id IS NULL)
446                     AND (X_serial_number_id IS NULL)))
447 	   ) then
448 		RAISE RECORD_CHANGED;
449     end if;
450 
451     if not (
452 	       (   (Recinfo.to_revision = X_to_revision)
453                 OR (    (Recinfo.to_revision IS NULL)
454                     AND (X_to_revision IS NULL)))
455 	   AND (   (Recinfo.to_subinventory_code = X_to_subinventory_code)
456                 OR (    (Recinfo.to_subinventory_code IS NULL)
457                     AND (X_to_subinventory_code IS NULL)))
458 	   AND (   (Recinfo.to_subinventory_id = X_to_subinventory_id)
459                 OR (    (Recinfo.to_subinventory_id IS NULL)
460                     AND (X_to_subinventory_id IS NULL)))
461 	   AND (   (Recinfo.to_locator_id = X_to_locator_id)
462                 OR (    (Recinfo.to_locator_id IS NULL)
463                     AND (X_to_locator_id IS NULL)))
464            AND (   (Recinfo.to_Loc_Segment1 =  X_to_Loc_Segment1)
465                 OR (    (Recinfo.to_Loc_Segment1 IS NULL)
466                     AND (X_to_Loc_Segment1 IS NULL)))
467            AND (   (Recinfo.to_Loc_Segment2 =  X_to_Loc_Segment2)
468                 OR (    (Recinfo.to_Loc_Segment2 IS NULL)
469                     AND (X_to_Loc_Segment2 IS NULL)))
470            AND (   (Recinfo.to_Loc_Segment3 =  X_to_Loc_Segment3)
471                 OR (    (Recinfo.to_Loc_Segment3 IS NULL)
475                     AND (X_to_Loc_Segment4 IS NULL)))
472                     AND (X_to_Loc_Segment3 IS NULL)))
473            AND (   (Recinfo.to_Loc_Segment4 =  X_to_Loc_Segment4)
474                 OR (    (Recinfo.to_Loc_Segment4 IS NULL)
476            AND (   (Recinfo.to_Loc_Segment5 =  X_to_Loc_Segment5)
477                 OR (    (Recinfo.to_Loc_Segment5 IS NULL)
478                     AND (X_to_Loc_Segment5 IS NULL)))
479            AND (   (Recinfo.to_Loc_Segment6 =  X_to_Loc_Segment6)
480                 OR (    (Recinfo.to_Loc_Segment6 IS NULL)
481                     AND (X_to_Loc_Segment6 IS NULL)))
482            AND (   (Recinfo.to_Loc_Segment7 =  X_to_Loc_Segment7)
483                 OR (    (Recinfo.to_Loc_Segment7 IS NULL)
484                     AND (X_to_Loc_Segment7 IS NULL)))
485            AND (   (Recinfo.to_Loc_Segment8 =  X_to_Loc_Segment8)
486                 OR (    (Recinfo.to_Loc_Segment8 IS NULL)
487                     AND (X_to_Loc_Segment8 IS NULL)))
488            AND (   (Recinfo.to_Loc_Segment9 =  X_to_Loc_Segment9)
489                 OR (    (Recinfo.to_Loc_Segment9 IS NULL)
490                     AND (X_to_Loc_Segment9 IS NULL)))
491            AND (   (Recinfo.to_Loc_Segment10 =  X_to_Loc_Segment10)
492                 OR (    (Recinfo.to_Loc_Segment10 IS NULL)
493                     AND (X_to_Loc_Segment10 IS NULL)))
494            AND (   (Recinfo.to_Loc_Segment11 =  X_to_Loc_Segment11)
495                 OR (    (Recinfo.to_Loc_Segment11 IS NULL)
496                     AND (X_to_Loc_Segment11 IS NULL)))
497            AND (   (Recinfo.to_Loc_Segment12 =  X_to_Loc_Segment12)
498                 OR (    (Recinfo.to_Loc_Segment12 IS NULL)
499                     AND (X_to_Loc_Segment12 IS NULL)))
500            AND (   (Recinfo.to_Loc_Segment13 =  X_to_Loc_Segment13)
501                 OR (    (Recinfo.to_Loc_Segment13 IS NULL)
502                     AND (X_to_Loc_Segment13 IS NULL)))
503            AND (   (Recinfo.to_Loc_Segment14 =  X_to_Loc_Segment14)
504                 OR (    (Recinfo.to_Loc_Segment14 IS NULL)
505                     AND (X_to_Loc_Segment14 IS NULL)))
506            AND (   (Recinfo.to_Loc_Segment15 =  X_to_Loc_Segment15)
507                 OR (    (Recinfo.to_Loc_Segment15 IS NULL)
508                     AND (X_to_Loc_Segment15 IS NULL)))
509            AND (   (Recinfo.to_Loc_Segment16 =  X_to_Loc_Segment16)
510                 OR (    (Recinfo.to_Loc_Segment16 IS NULL)
511                     AND (X_to_Loc_Segment16 IS NULL)))
512            AND (   (Recinfo.to_Loc_Segment17 =  X_to_Loc_Segment17)
513                 OR (    (Recinfo.to_Loc_Segment17 IS NULL)
514                     AND (X_to_Loc_Segment17 IS NULL)))
515            AND (   (Recinfo.to_Loc_Segment18 =  X_to_Loc_Segment18)
516                 OR (    (Recinfo.to_Loc_Segment18 IS NULL)
517                     AND (X_to_Loc_Segment18 IS NULL)))
518            AND (   (Recinfo.to_Loc_Segment19 =  X_to_Loc_Segment19)
519                 OR (    (Recinfo.to_Loc_Segment19 IS NULL)
520                     AND (X_to_Loc_Segment19 IS NULL)))
521            AND (   (Recinfo.to_Loc_Segment20 =  X_to_Loc_Segment20)
522                 OR (    (Recinfo.to_Loc_Segment20 IS NULL)
523                     AND (X_to_Loc_Segment20 IS NULL)))
524            AND (   (Recinfo.to_lot_number =  X_to_lot_number)
525                 OR (    (Recinfo.to_lot_number IS NULL)
526                     AND (X_to_lot_number IS NULL)))
527            AND (   (Recinfo.to_lot_number_id =  X_to_lot_number_id)
528                 OR (    (Recinfo.to_lot_number_id IS NULL)
529                     AND (X_to_lot_number_id IS NULL)))
530            AND (   (Recinfo.to_serial_number =  X_to_serial_number)
531                 OR (    (Recinfo.to_serial_number IS NULL)
532                     AND (X_to_serial_number IS NULL)))
533            AND (   (Recinfo.to_serial_number_id =  X_to_serial_number_id)
534                 OR (    (Recinfo.to_serial_number_id IS NULL)
535                     AND (X_to_serial_number_id IS NULL)))
536 	   ) then
537 		RAISE RECORD_CHANGED;
538     end if;
539 
540     if not (
541                (   (Recinfo.row_status_code = X_row_status_code)
542                 OR (    (Recinfo.row_status_code IS NULL)
543                     AND (X_row_status_code IS NULL)))
544            AND (   (Recinfo.lock_flag = X_lock_flag)
545                 OR (    (Recinfo.lock_flag IS NULL)
546                     AND (X_lock_flag IS NULL)))
547            AND (   (Recinfo.reservation_action_code = X_reservation_action_code)
548                 OR (    (Recinfo.reservation_action_code IS NULL)
549                     AND (X_reservation_action_code IS NULL)))
550            AND (   (Recinfo.transaction_mode = X_transaction_mode)
551                 OR (    (Recinfo.transaction_mode IS NULL)
552                     AND (X_transaction_mode IS NULL)))
553            AND (   (Recinfo.validation_flag = X_validation_flag)
554                 OR (    (Recinfo.validation_flag IS NULL)
555                     AND (X_validation_flag IS NULL)))
556            AND ((Recinfo.partial_quantities_allowed = X_partial_quantities_allowed)
557                 OR (    (Recinfo.partial_quantities_allowed IS NULL)
558                     AND (X_partial_quantities_allowed IS NULL)))
559            AND (   (Recinfo.request_id = X_request_id)
560                 OR (    (Recinfo.request_id IS NULL)
561                     AND (X_request_id IS NULL)))
562            AND (   (Recinfo.program_application_id = X_program_application_id)
563                 OR (    (Recinfo.program_application_id IS NULL)
564                     AND (X_program_application_id IS NULL)))
565            AND (   (Recinfo.program_id = X_program_id)
566                 OR (    (Recinfo.program_id IS NULL)
567                     AND (X_program_id IS NULL)))
568            AND (   (Recinfo.program_update_date = X_program_update_date)
569                 OR (    (Recinfo.program_update_date IS NULL)
570                     AND (X_program_update_date IS NULL)))
574            AND (   (Recinfo.task_id = X_task_id)
571            AND (   (Recinfo.project_id = X_project_id)
572                 OR (    (Recinfo.project_id IS NULL)
573                     AND (X_project_id IS NULL)))
575                 OR (    (Recinfo.task_id IS NULL)
576                     AND (X_task_id IS NULL)))
577            AND (   (Recinfo.project_planning_group = X_project_planning_group)
578                 OR (    (Recinfo.project_planning_group IS NULL)
579                     AND (X_project_planning_group IS NULL)))
580            AND (   (Recinfo.attribute_category = X_attribute_category)
581                 OR (    (Recinfo.attribute_category IS NULL)
582                     AND (X_attribute_category IS NULL)))
583            AND (   (Recinfo.attribute1 = X_attribute1)
584                 OR (    (Recinfo.attribute1 IS NULL)
585                     AND (X_attribute1 IS NULL)))
586            AND (   (Recinfo.attribute2 = X_attribute2)
587                 OR (    (Recinfo.attribute2 IS NULL)
588                     AND (X_attribute2 IS NULL)))
589            AND (   (Recinfo.attribute3 = X_attribute3)
590                 OR (    (Recinfo.attribute3 IS NULL)
591                     AND (X_attribute3 IS NULL)))
592            AND (   (Recinfo.attribute4 = X_attribute4)
593                 OR (    (Recinfo.attribute4 IS NULL)
594                     AND (X_attribute4 IS NULL)))
595            AND (   (Recinfo.attribute5 = X_attribute5)
596                 OR (    (Recinfo.attribute5 IS NULL)
597                     AND (X_attribute5 IS NULL)))
598            AND (   (Recinfo.attribute6 = X_attribute6)
599                 OR (    (Recinfo.attribute6 IS NULL)
600                     AND (X_attribute6 IS NULL)))
601            AND (   (Recinfo.attribute7 = X_attribute7)
602                 OR (    (Recinfo.attribute7 IS NULL)
603                     AND (X_attribute7 IS NULL)))
604            AND (   (Recinfo.attribute8 = X_attribute8)
605                 OR (    (Recinfo.attribute8 IS NULL)
606                     AND (X_attribute8 IS NULL)))
607            AND (   (Recinfo.attribute9 = X_attribute9)
608                 OR (    (Recinfo.attribute9 IS NULL)
609                     AND (X_attribute9 IS NULL)))
610            AND (   (Recinfo.attribute10 = X_attribute10)
611                 OR (    (Recinfo.attribute10 IS NULL)
612                     AND (X_attribute10 IS NULL)))
613            AND (   (Recinfo.attribute11 = X_attribute11)
614                 OR (    (Recinfo.attribute11 IS NULL)
615                     AND (X_attribute11 IS NULL)))
616            AND (   (Recinfo.attribute12 = X_attribute12)
617                 OR (    (Recinfo.attribute12 IS NULL)
618                     AND (X_attribute12 IS NULL)))
619            AND (   (Recinfo.attribute13 = X_attribute13)
620                 OR (    (Recinfo.attribute13 IS NULL)
621                     AND (X_attribute13 IS NULL)))
622            AND (   (Recinfo.attribute14 = X_attribute14)
623                 OR (    (Recinfo.attribute14 IS NULL)
624                     AND (X_attribute14 IS NULL)))
625            AND (   (Recinfo.attribute15 = X_attribute15)
626                 OR (    (Recinfo.attribute15 IS NULL)
627                     AND (X_attribute15 IS NULL)))
628 	   ) then
629 		RAISE RECORD_CHANGED;
630     end if;
631     exception
632     WHEN RECORD_CHANGED then
633       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
634       APP_EXCEPTION.Raise_Exception;
635     WHEN OTHERS then
636       raise;
637   END Lock_Row;
638 
639   PROCEDURE Update_Row( X_ROWID 				   VARCHAR2,
640 			X_RESERVATION_INTERFACE_ID                 NUMBER,
641 			X_RESERVATION_BATCH_ID                 	   NUMBER,
642 			X_REQUIREMENT_DATE			   DATE,
643 			X_ORGANIZATION_ID			   NUMBER,
644 			X_TO_ORGANIZATION_ID			   NUMBER,
645  			X_INVENTORY_ITEM_ID                        NUMBER,
646  			X_ITEM_SEGMENT1                            VARCHAR2,
647  			X_ITEM_SEGMENT2                            VARCHAR2,
648  			X_ITEM_SEGMENT3                            VARCHAR2,
649  			X_ITEM_SEGMENT4                            VARCHAR2,
650  			X_ITEM_SEGMENT5                            VARCHAR2,
651  			X_ITEM_SEGMENT6                            VARCHAR2,
652  			X_ITEM_SEGMENT7                            VARCHAR2,
653  			X_ITEM_SEGMENT8                            VARCHAR2,
654  			X_ITEM_SEGMENT9                            VARCHAR2,
655  			X_ITEM_SEGMENT10                           VARCHAR2,
656  			X_ITEM_SEGMENT11                           VARCHAR2,
657  			X_ITEM_SEGMENT12                           VARCHAR2,
658  			X_ITEM_SEGMENT13                           VARCHAR2,
659  			X_ITEM_SEGMENT14                           VARCHAR2,
660  			X_ITEM_SEGMENT15                           VARCHAR2,
661  			X_ITEM_SEGMENT16                           VARCHAR2,
662  			X_ITEM_SEGMENT17                           VARCHAR2,
663  			X_ITEM_SEGMENT18                           VARCHAR2,
664  			X_ITEM_SEGMENT19                           VARCHAR2,
665  			X_ITEM_SEGMENT20                           VARCHAR2,
666  			X_DEMAND_SOURCE_TYPE_ID                    NUMBER,
667 			X_DEMAND_SOURCE_NAME			   VARCHAR2,
668  			X_DEMAND_SOURCE_HEADER_ID                  NUMBER,
669  			X_DEMAND_SOURCE_LINE_ID                    NUMBER,
670  			X_TO_DEMAND_SOURCE_TYPE_ID                 NUMBER,
671 			X_TO_DEMAND_SOURCE_NAME			   VARCHAR2,
672  			X_TO_DEMAND_SOURCE_HEADER_ID               NUMBER,
673  			X_TO_DEMAND_SOURCE_LINE_ID                 NUMBER,
674 			X_PRIMARY_UOM_CODE			   VARCHAR2,
675 			X_PRIMARY_UOM_ID			   NUMBER,
676 			X_SECONDARY_UOM_CODE			   VARCHAR2,   --InvConv change
677 			X_SECONDARY_UOM_ID			   NUMBER,     --InvConv change
678 			X_RESERVATION_UOM_CODE			   VARCHAR2,
679 			X_RESERVATION_UOM_ID			   NUMBER,
680 			X_RESERVATION_QUANTITY			   NUMBER,
681 			X_PRIMARY_RESERVATION_QUANTITY		   NUMBER,
682 			X_SECONDARY_RSV_QUANTITY		   NUMBER,     --InvConv change
686 			X_SUPPLY_SOURCE_NAME			   VARCHAR2,
683 			X_EXTERNAL_SOURCE_CODE			   VARCHAR2,
684 			X_EXTERNAL_SOURCE_LINE_ID		   NUMBER,
685  			X_SUPPLY_SOURCE_TYPE_ID                    NUMBER,
687  			X_SUPPLY_SOURCE_HEADER_ID                  NUMBER,
688  			X_SUPPLY_SOURCE_LINE_ID                    NUMBER,
689  			X_SUPPLY_SOURCE_LINE_DETAIL                NUMBER,
690  			X_TO_SUPPLY_SOURCE_TYPE_ID                 NUMBER,
691 			X_TO_SUPPLY_SOURCE_NAME			   VARCHAR2,
692  			X_TO_SUPPLY_SOURCE_HEADER_ID               NUMBER,
693  			X_TO_SUPPLY_SOURCE_LINE_ID                    NUMBER,
694  			X_TO_SUPPLY_SOURCE_LINE_DETAIL             NUMBER,
695  			X_ERROR_CODE                               NUMBER,
696  			X_ERROR_EXPLANATION                        VARCHAR2,
697 			X_REVISION				   VARCHAR2,
698 			X_SUBINVENTORY_CODE			   VARCHAR2,
699 			X_SUBINVENTORY_ID			   NUMBER,
700 			X_LOCATOR_ID				   NUMBER,
701  			X_LOC_SEGMENT1                             VARCHAR2,
702  			X_LOC_SEGMENT2                             VARCHAR2,
703  			X_LOC_SEGMENT3                             VARCHAR2,
704  			X_LOC_SEGMENT4                             VARCHAR2,
705  			X_LOC_SEGMENT5                             VARCHAR2,
706  			X_LOC_SEGMENT6                             VARCHAR2,
707  			X_LOC_SEGMENT7                             VARCHAR2,
708  			X_LOC_SEGMENT8                             VARCHAR2,
709  			X_LOC_SEGMENT9                             VARCHAR2,
710  			X_LOC_SEGMENT10                            VARCHAR2,
711  			X_LOC_SEGMENT11                            VARCHAR2,
712  			X_LOC_SEGMENT12                            VARCHAR2,
713  			X_LOC_SEGMENT13                            VARCHAR2,
714  			X_LOC_SEGMENT14                            VARCHAR2,
715  			X_LOC_SEGMENT15                            VARCHAR2,
716  			X_LOC_SEGMENT16                            VARCHAR2,
717  			X_LOC_SEGMENT17                            VARCHAR2,
718  			X_LOC_SEGMENT18                            VARCHAR2,
719  			X_LOC_SEGMENT19                            VARCHAR2,
720  			X_LOC_SEGMENT20                            VARCHAR2,
721 			X_LOT_NUMBER				   VARCHAR2,
722 			X_LOT_NUMBER_ID				   NUMBER,
723 			X_SERIAL_NUMBER				   VARCHAR2,
724 			X_SERIAL_NUMBER_ID			   NUMBER,
725 			X_TO_REVISION				   VARCHAR2,
726 			X_TO_SUBINVENTORY_CODE			   VARCHAR2,
727 			X_TO_SUBINVENTORY_ID			   NUMBER,
728 			X_TO_LOCATOR_ID				   NUMBER,
729  			X_TO_LOC_SEGMENT1    			   VARCHAR2,
730  			X_TO_LOC_SEGMENT2                          VARCHAR2,
731  			X_TO_LOC_SEGMENT3                          VARCHAR2,
732  			X_TO_LOC_SEGMENT4                          VARCHAR2,
733  			X_TO_LOC_SEGMENT5                          VARCHAR2,
734  			X_TO_LOC_SEGMENT6                          VARCHAR2,
735  			X_TO_LOC_SEGMENT7                          VARCHAR2,
736  			X_TO_LOC_SEGMENT8                          VARCHAR2,
737  			X_TO_LOC_SEGMENT9                          VARCHAR2,
738  			X_TO_LOC_SEGMENT10                         VARCHAR2,
739  			X_TO_LOC_SEGMENT11                         VARCHAR2,
740  			X_TO_LOC_SEGMENT12                         VARCHAR2,
741  			X_TO_LOC_SEGMENT13                         VARCHAR2,
742  			X_TO_LOC_SEGMENT14                         VARCHAR2,
743  			X_TO_LOC_SEGMENT15                         VARCHAR2,
744  			X_TO_LOC_SEGMENT16                         VARCHAR2,
745  			X_TO_LOC_SEGMENT17                         VARCHAR2,
746  			X_TO_LOC_SEGMENT18                         VARCHAR2,
747  			X_TO_LOC_SEGMENT19                         VARCHAR2,
748  			X_TO_LOC_SEGMENT20                         VARCHAR2,
749 			X_TO_LOT_NUMBER				   VARCHAR2,
750 			X_TO_LOT_NUMBER_ID			   NUMBER,
751 			X_TO_SERIAL_NUMBER			   VARCHAR2,
752 			X_TO_SERIAL_NUMBER_ID			   NUMBER,
753  			X_ROW_STATUS_CODE                          NUMBER,
754 			X_LOCK_FLAG				   NUMBER,
755 			X_RESERVATION_ACTION_CODE		   NUMBER,
756 			X_TRANSACTION_MODE			   NUMBER,
757 			X_VALIDATION_FLAG			   NUMBER,
758 			X_PARTIAL_QUANTITIES_ALLOWED		   NUMBER,
759  			X_LAST_UPDATE_DATE                 	   DATE,
760  			X_LAST_UPDATED_BY                 	   NUMBER,
761  			X_LAST_UPDATE_LOGIN                        NUMBER,
762 			X_REQUEST_ID				   NUMBER,
763 			X_PROGRAM_APPLICATION_ID		   NUMBER,
764 			X_PROGRAM_ID				   NUMBER,
765 			X_PROGRAM_UPDATE_DATE			   DATE,
766 			X_PROJECT_ID				   NUMBER,
767 			X_TASK_ID				   NUMBER,
768 			X_PROJECT_PLANNING_GROUP		   NUMBER,
769  			X_ATTRIBUTE_CATEGORY                       VARCHAR2,
770  			X_ATTRIBUTE1                               VARCHAR2,
771  			X_ATTRIBUTE2                               VARCHAR2,
772  			X_ATTRIBUTE3                               VARCHAR2,
773  			X_ATTRIBUTE4                               VARCHAR2,
774  			X_ATTRIBUTE5                               VARCHAR2,
775  			X_ATTRIBUTE6                               VARCHAR2,
776  			X_ATTRIBUTE7                               VARCHAR2,
777  			X_ATTRIBUTE8                               VARCHAR2,
778  			X_ATTRIBUTE9                               VARCHAR2,
779  			X_ATTRIBUTE10                              VARCHAR2,
780  			X_ATTRIBUTE11                              VARCHAR2,
781  			X_ATTRIBUTE12                              VARCHAR2,
782  			X_ATTRIBUTE13                              VARCHAR2,
783  			X_ATTRIBUTE14                              VARCHAR2,
784  			X_ATTRIBUTE15                              VARCHAR2
785   ) IS
786   BEGIN
787     UPDATE mtl_reservations_interface
788     SET
789       RESERVATION_INTERFACE_ID       = X_RESERVATION_INTERFACE_ID,
790       RESERVATION_BATCH_ID           = X_RESERVATION_BATCH_ID,
791       REQUIREMENT_DATE               = X_REQUIREMENT_DATE,
792       ORGANIZATION_ID	             = X_ORGANIZATION_ID,
793       TO_ORGANIZATION_ID             = X_TO_ORGANIZATION_ID,
794       INVENTORY_ITEM_ID              = X_INVENTORY_ITEM_ID,
795       ITEM_SEGMENT1                  = X_ITEM_SEGMENT1,
799       ITEM_SEGMENT5                  = X_ITEM_SEGMENT5,
796       ITEM_SEGMENT2                  = X_ITEM_SEGMENT2,
797       ITEM_SEGMENT3                  = X_ITEM_SEGMENT3,
798       ITEM_SEGMENT4                  = X_ITEM_SEGMENT4,
800       ITEM_SEGMENT6                  = X_ITEM_SEGMENT6,
801       ITEM_SEGMENT7                  = X_ITEM_SEGMENT7,
802       ITEM_SEGMENT8                  = X_ITEM_SEGMENT8,
803       ITEM_SEGMENT9                  = X_ITEM_SEGMENT9,
804       ITEM_SEGMENT10                 = X_ITEM_SEGMENT10,
805       ITEM_SEGMENT11                 = X_ITEM_SEGMENT11,
806       ITEM_SEGMENT12                 = X_ITEM_SEGMENT12,
807       ITEM_SEGMENT13                 = X_ITEM_SEGMENT13,
808       ITEM_SEGMENT14                 = X_ITEM_SEGMENT14,
809       ITEM_SEGMENT15                 = X_ITEM_SEGMENT15,
810       ITEM_SEGMENT16                 = X_ITEM_SEGMENT16,
811       ITEM_SEGMENT17                 = X_ITEM_SEGMENT17,
812       ITEM_SEGMENT18                 = X_ITEM_SEGMENT18,
813       ITEM_SEGMENT19                 = X_ITEM_SEGMENT19,
814       ITEM_SEGMENT20                 = X_ITEM_SEGMENT20,
815       DEMAND_SOURCE_TYPE_ID          = X_DEMAND_SOURCE_TYPE_ID,
816       DEMAND_SOURCE_NAME             = X_DEMAND_SOURCE_NAME,
817       DEMAND_SOURCE_HEADER_ID        = X_DEMAND_SOURCE_HEADER_ID,
818       DEMAND_SOURCE_LINE_ID          = X_DEMAND_SOURCE_LINE_ID,
819       TO_DEMAND_SOURCE_TYPE_ID       = X_TO_DEMAND_SOURCE_TYPE_ID,
820       TO_DEMAND_SOURCE_NAME          = X_TO_DEMAND_SOURCE_NAME,
821       TO_DEMAND_SOURCE_HEADER_ID     = X_TO_DEMAND_SOURCE_HEADER_ID,
822       TO_DEMAND_SOURCE_LINE_ID       = X_TO_DEMAND_SOURCE_LINE_ID,
823       PRIMARY_UOM_CODE		     = X_PRIMARY_UOM_CODE,
824       PRIMARY_UOM_ID	             = X_PRIMARY_UOM_ID,
825       SECONDARY_UOM_CODE	     = X_SECONDARY_UOM_CODE,   --InvConv change
826       SECONDARY_UOM_ID	             = X_SECONDARY_UOM_ID,     --InvConv change
827       RESERVATION_UOM_CODE	     = X_RESERVATION_UOM_CODE,
828       RESERVATION_UOM_ID	     = X_RESERVATION_UOM_ID,
829       RESERVATION_QUANTITY           = X_RESERVATION_QUANTITY,
830       PRIMARY_RESERVATION_QUANTITY   = X_PRIMARY_RESERVATION_QUANTITY,
831       SECONDARY_RESERVATION_QUANTITY = X_SECONDARY_RSV_QUANTITY,   --InvConv change
832       EXTERNAL_SOURCE_CODE	     = X_EXTERNAL_SOURCE_CODE,
833       EXTERNAL_SOURCE_LINE_ID        = X_EXTERNAL_SOURCE_LINE_ID,
834       SUPPLY_SOURCE_TYPE_ID          = X_SUPPLY_SOURCE_TYPE_ID,
835       SUPPLY_SOURCE_NAME	     = X_SUPPLY_SOURCE_NAME,
836       SUPPLY_SOURCE_HEADER_ID        = X_SUPPLY_SOURCE_HEADER_ID,
837       SUPPLY_SOURCE_LINE_ID          = X_SUPPLY_SOURCE_LINE_ID,
838       SUPPLY_SOURCE_LINE_DETAIL      = X_SUPPLY_SOURCE_LINE_DETAIL,
839       TO_SUPPLY_SOURCE_TYPE_ID       = X_TO_SUPPLY_SOURCE_TYPE_ID,
840       TO_SUPPLY_SOURCE_NAME	     = X_TO_SUPPLY_SOURCE_NAME,
841       TO_SUPPLY_SOURCE_HEADER_ID     = X_TO_SUPPLY_SOURCE_HEADER_ID,
842       TO_SUPPLY_SOURCE_LINE_ID       = X_TO_SUPPLY_SOURCE_LINE_ID,
843       TO_SUPPLY_SOURCE_LINE_DETAIL   = X_TO_SUPPLY_SOURCE_LINE_DETAIL,
844       ERROR_CODE                     = X_ERROR_CODE,
845       ERROR_EXPLANATION              = X_ERROR_EXPLANATION,
846       REVISION			     = X_REVISION,
847       SUBINVENTORY_CODE		     = X_SUBINVENTORY_CODE,
848       SUBINVENTORY_ID	             = X_SUBINVENTORY_ID,
849       LOCATOR_ID		     = X_LOCATOR_ID,
850       LOC_SEGMENT1                   = X_LOC_SEGMENT1,
851       LOC_SEGMENT2                   = X_LOC_SEGMENT2,
852       LOC_SEGMENT3                   = X_LOC_SEGMENT3,
853       LOC_SEGMENT4                   = X_LOC_SEGMENT4,
854       LOC_SEGMENT5                   = X_LOC_SEGMENT5,
855       LOC_SEGMENT6                   = X_LOC_SEGMENT6,
856       LOC_SEGMENT7                   = X_LOC_SEGMENT7,
857       LOC_SEGMENT8                   = X_LOC_SEGMENT8,
858       LOC_SEGMENT9                   = X_LOC_SEGMENT9,
859       LOC_SEGMENT10                  = X_LOC_SEGMENT10,
860       LOC_SEGMENT11                  = X_LOC_SEGMENT11,
861       LOC_SEGMENT12                  = X_LOC_SEGMENT12,
862       LOC_SEGMENT13                  = X_LOC_SEGMENT13,
863       LOC_SEGMENT14                  = X_LOC_SEGMENT14,
864       LOC_SEGMENT15                  = X_LOC_SEGMENT15,
865       LOC_SEGMENT16                  = X_LOC_SEGMENT16,
866       LOC_SEGMENT17                  = X_LOC_SEGMENT17,
867       LOC_SEGMENT18                  = X_LOC_SEGMENT18,
868       LOC_SEGMENT19                  = X_LOC_SEGMENT19,
869       LOC_SEGMENT20                  = X_LOC_SEGMENT20,
870       LOT_NUMBER		     = X_LOT_NUMBER,
871       LOT_NUMBER_ID		     = X_LOT_NUMBER_ID,
872       SERIAL_NUMBER		     = X_SERIAL_NUMBER,
873       SERIAL_NUMBER_ID	             = X_SERIAL_NUMBER_ID,
874       TO_REVISION		     = X_TO_REVISION,
875       TO_SUBINVENTORY_CODE	     = X_TO_SUBINVENTORY_CODE,
876       TO_SUBINVENTORY_ID	     = X_TO_SUBINVENTORY_ID,
877       TO_LOCATOR_ID		     = X_TO_LOCATOR_ID,
878       TO_LOC_SEGMENT1    	     = X_TO_LOC_SEGMENT1,
879       TO_LOC_SEGMENT2    	     = X_TO_LOC_SEGMENT2,
880       TO_LOC_SEGMENT3    	     = X_TO_LOC_SEGMENT3,
881       TO_LOC_SEGMENT4    	     = X_TO_LOC_SEGMENT4,
882       TO_LOC_SEGMENT5    	     = X_TO_LOC_SEGMENT5,
883       TO_LOC_SEGMENT6    	     = X_TO_LOC_SEGMENT6,
884       TO_LOC_SEGMENT7    	     = X_TO_LOC_SEGMENT7,
885       TO_LOC_SEGMENT8    	     = X_TO_LOC_SEGMENT8,
886       TO_LOC_SEGMENT9    	     = X_TO_LOC_SEGMENT9,
887       TO_LOC_SEGMENT10    	     = X_TO_LOC_SEGMENT10,
888       TO_LOC_SEGMENT11    	     = X_TO_LOC_SEGMENT11,
889       TO_LOC_SEGMENT12    	     = X_TO_LOC_SEGMENT12,
890       TO_LOC_SEGMENT13    	     = X_TO_LOC_SEGMENT13,
891       TO_LOC_SEGMENT14    	     = X_TO_LOC_SEGMENT14,
892       TO_LOC_SEGMENT15    	     = X_TO_LOC_SEGMENT15,
893       TO_LOC_SEGMENT16    	     = X_TO_LOC_SEGMENT16,
894       TO_LOC_SEGMENT17    	     = X_TO_LOC_SEGMENT17,
895       TO_LOC_SEGMENT18    	     = X_TO_LOC_SEGMENT18,
896       TO_LOC_SEGMENT19    	     = X_TO_LOC_SEGMENT19,
900       TO_SERIAL_NUMBER	             = X_TO_SERIAL_NUMBER,
897       TO_LOC_SEGMENT20    	     = X_TO_LOC_SEGMENT20,
898       TO_LOT_NUMBER		     = X_TO_LOT_NUMBER,
899       TO_LOT_NUMBER_ID		     = X_TO_LOT_NUMBER_ID,
901       TO_SERIAL_NUMBER_ID	     = X_TO_SERIAL_NUMBER_ID,
902       ROW_STATUS_CODE                = X_ROW_STATUS_CODE,
903       LOCK_FLAG		             = X_LOCK_FLAG,
904       RESERVATION_ACTION_CODE	     = X_RESERVATION_ACTION_CODE,
905       TRANSACTION_MODE	             = X_TRANSACTION_MODE,
906       VALIDATION_FLAG	             = X_VALIDATION_FLAG,
907       PARTIAL_QUANTITIES_ALLOWED     = X_PARTIAL_QUANTITIES_ALLOWED,
908       LAST_UPDATE_DATE               = X_LAST_UPDATE_DATE,
909       LAST_UPDATED_BY                = X_LAST_UPDATED_BY,
910       LAST_UPDATE_LOGIN              = X_LAST_UPDATE_LOGIN,
911       REQUEST_ID		     = X_REQUEST_ID,
912       PROGRAM_APPLICATION_ID	     = X_PROGRAM_APPLICATION_ID,
913       PROGRAM_ID		     = X_PROGRAM_ID,
914       PROGRAM_UPDATE_DATE            = X_PROGRAM_UPDATE_DATE,
915       PROJECT_ID		     = X_PROJECT_ID,
916       TASK_ID		             = X_TASK_ID,
917       PROJECT_PLANNING_GROUP         = X_PROJECT_PLANNING_GROUP,
918       ATTRIBUTE_CATEGORY             = X_ATTRIBUTE_CATEGORY,
919       ATTRIBUTE1                     = X_ATTRIBUTE1,
920       ATTRIBUTE2                     = X_ATTRIBUTE2,
921       ATTRIBUTE3                     = X_ATTRIBUTE3,
922       ATTRIBUTE4                     = X_ATTRIBUTE4,
923       ATTRIBUTE5                     = X_ATTRIBUTE5,
924       ATTRIBUTE6                     = X_ATTRIBUTE6,
925       ATTRIBUTE7                     = X_ATTRIBUTE7,
926       ATTRIBUTE8                     = X_ATTRIBUTE8,
927       ATTRIBUTE9                     = X_ATTRIBUTE9,
928       ATTRIBUTE10                    = X_ATTRIBUTE10,
929       ATTRIBUTE11                    = X_ATTRIBUTE11,
930       ATTRIBUTE12                    = X_ATTRIBUTE12,
931       ATTRIBUTE13                    = X_ATTRIBUTE13,
932       ATTRIBUTE14                    = X_ATTRIBUTE14,
933       ATTRIBUTE15                    = X_ATTRIBUTE15
934     WHERE rowid = X_Rowid;
935     if (SQL%NOTFOUND) then
936       Raise NO_DATA_FOUND;
937     end if;
938   END Update_Row;
939 
940   PROCEDURE Delete_Row(	X_ROWID  VARCHAR2)
941   IS
942   BEGIN
943 	delete from mtl_reservations_interface
944 	where rowid = X_ROWID;
945 
946 	if (SQL%NOTFOUND) then
947 		Raise NO_DATA_FOUND;
948 	end if;
949   END Delete_Row;
950 
951 END MTL_RESERVATIONS_INTERFACE_PKG;