[Home] [Help]
PACKAGE BODY: APPS.INV_TROLIN_UTIL
Source
1 PACKAGE BODY inv_trolin_util AS
2 /* $Header: INVUTRLB.pls 120.2.12000000.2 2007/01/25 11:45:44 pannapra ship $ */
3
4 -- Global constant holding the package name
5
6 g_pkg_name CONSTANT VARCHAR2(30) := 'INV_Trolin_Util';
7
8 -- Procedure Clear_Dependent_Attr
9
10 PROCEDURE clear_dependent_attr(
11 p_attr_id IN NUMBER := fnd_api.g_miss_num
12 , p_trolin_rec IN inv_move_order_pub.trolin_rec_type
13 , p_old_trolin_rec IN inv_move_order_pub.trolin_rec_type := inv_move_order_pub.g_miss_trolin_rec
14 , x_trolin_rec IN OUT NOCOPY inv_move_order_pub.trolin_rec_type
15 ) IS
16 l_index NUMBER := 0;
17 l_src_attr_tbl inv_globals.number_tbl_type;
18 l_dep_attr_tbl inv_globals.number_tbl_type;
19 BEGIN
20 -- Load out record
21
22 x_trolin_rec := p_trolin_rec;
23
24 -- If attr_id is missing compare old and new records and for
25 -- every changed attribute clear its dependent fields.
26
27 IF p_attr_id = fnd_api.g_miss_num THEN
28 IF NOT inv_globals.equal(p_trolin_rec.attribute1, p_old_trolin_rec.attribute1) THEN
29 l_index := l_index + 1;
30 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute1;
31 END IF;
32
33 IF NOT inv_globals.equal(p_trolin_rec.attribute10, p_old_trolin_rec.attribute10) THEN
34 l_index := l_index + 1;
35 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute10;
36 END IF;
37
38 IF NOT inv_globals.equal(p_trolin_rec.attribute11, p_old_trolin_rec.attribute11) THEN
39 l_index := l_index + 1;
40 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute11;
41 END IF;
42
43 IF NOT inv_globals.equal(p_trolin_rec.attribute12, p_old_trolin_rec.attribute12) THEN
44 l_index := l_index + 1;
45 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute12;
46 END IF;
47
48 IF NOT inv_globals.equal(p_trolin_rec.attribute13, p_old_trolin_rec.attribute13) THEN
49 l_index := l_index + 1;
50 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute13;
51 END IF;
52
53 IF NOT inv_globals.equal(p_trolin_rec.attribute14, p_old_trolin_rec.attribute14) THEN
54 l_index := l_index + 1;
55 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute14;
56 END IF;
57
58 IF NOT inv_globals.equal(p_trolin_rec.attribute15, p_old_trolin_rec.attribute15) THEN
59 l_index := l_index + 1;
60 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute15;
61 END IF;
62
63 IF NOT inv_globals.equal(p_trolin_rec.attribute2, p_old_trolin_rec.attribute2) THEN
64 l_index := l_index + 1;
65 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute2;
66 END IF;
67
68 IF NOT inv_globals.equal(p_trolin_rec.attribute3, p_old_trolin_rec.attribute3) THEN
69 l_index := l_index + 1;
70 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute3;
71 END IF;
72
73 IF NOT inv_globals.equal(p_trolin_rec.attribute4, p_old_trolin_rec.attribute4) THEN
74 l_index := l_index + 1;
75 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute4;
76 END IF;
77
78 IF NOT inv_globals.equal(p_trolin_rec.attribute5, p_old_trolin_rec.attribute5) THEN
79 l_index := l_index + 1;
80 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute5;
81 END IF;
82
83 IF NOT inv_globals.equal(p_trolin_rec.attribute6, p_old_trolin_rec.attribute6) THEN
84 l_index := l_index + 1;
85 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute6;
86 END IF;
87
88 IF NOT inv_globals.equal(p_trolin_rec.attribute7, p_old_trolin_rec.attribute7) THEN
89 l_index := l_index + 1;
90 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute7;
91 END IF;
92
93 IF NOT inv_globals.equal(p_trolin_rec.attribute8, p_old_trolin_rec.attribute8) THEN
94 l_index := l_index + 1;
95 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute8;
96 END IF;
97
98 IF NOT inv_globals.equal(p_trolin_rec.attribute9, p_old_trolin_rec.attribute9) THEN
99 l_index := l_index + 1;
100 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute9;
101 END IF;
102
103 IF NOT inv_globals.equal(p_trolin_rec.attribute_category, p_old_trolin_rec.attribute_category) THEN
104 l_index := l_index + 1;
105 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute_category;
106 END IF;
107
108 IF NOT inv_globals.equal(p_trolin_rec.created_by, p_old_trolin_rec.created_by) THEN
109 l_index := l_index + 1;
110 l_src_attr_tbl(l_index) := inv_trolin_util.g_created_by;
111 END IF;
112
113 IF NOT inv_globals.equal(p_trolin_rec.creation_date, p_old_trolin_rec.creation_date) THEN
114 l_index := l_index + 1;
115 l_src_attr_tbl(l_index) := inv_trolin_util.g_creation_date;
116 END IF;
117
118 IF NOT inv_globals.equal(p_trolin_rec.date_required, p_old_trolin_rec.date_required) THEN
119 l_index := l_index + 1;
120 l_src_attr_tbl(l_index) := inv_trolin_util.g_date_required;
121 END IF;
122
123 IF NOT inv_globals.equal(p_trolin_rec.from_locator_id, p_old_trolin_rec.from_locator_id) THEN
124 l_index := l_index + 1;
125 l_src_attr_tbl(l_index) := inv_trolin_util.g_from_locator;
126 END IF;
127
128 IF NOT inv_globals.equal(p_trolin_rec.from_subinventory_code, p_old_trolin_rec.from_subinventory_code) THEN
129 l_index := l_index + 1;
130 l_src_attr_tbl(l_index) := inv_trolin_util.g_from_subinventory;
131 END IF;
132
133 IF NOT inv_globals.equal(p_trolin_rec.from_subinventory_id, p_old_trolin_rec.from_subinventory_id) THEN
134 l_index := l_index + 1;
135 l_src_attr_tbl(l_index) := inv_trolin_util.g_from_subinventory;
136 END IF;
137
138 IF NOT inv_globals.equal(p_trolin_rec.header_id, p_old_trolin_rec.header_id) THEN
139 l_index := l_index + 1;
140 l_src_attr_tbl(l_index) := inv_trolin_util.g_header;
141 END IF;
142
143 IF NOT inv_globals.equal(p_trolin_rec.inventory_item_id, p_old_trolin_rec.inventory_item_id) THEN
144 l_index := l_index + 1;
145 l_src_attr_tbl(l_index) := inv_trolin_util.g_inventory_item;
146 END IF;
147
148 IF NOT inv_globals.equal(p_trolin_rec.last_updated_by, p_old_trolin_rec.last_updated_by) THEN
149 l_index := l_index + 1;
150 l_src_attr_tbl(l_index) := inv_trolin_util.g_last_updated_by;
151 END IF;
152
153 IF NOT inv_globals.equal(p_trolin_rec.last_update_date, p_old_trolin_rec.last_update_date) THEN
154 l_index := l_index + 1;
155 l_src_attr_tbl(l_index) := inv_trolin_util.g_last_update_date;
156 END IF;
157
158 IF NOT inv_globals.equal(p_trolin_rec.last_update_login, p_old_trolin_rec.last_update_login) THEN
159 l_index := l_index + 1;
160 l_src_attr_tbl(l_index) := inv_trolin_util.g_last_update_login;
161 END IF;
162
163 IF NOT inv_globals.equal(p_trolin_rec.line_id, p_old_trolin_rec.line_id) THEN
164 l_index := l_index + 1;
165 l_src_attr_tbl(l_index) := inv_trolin_util.g_line;
166 END IF;
167
168 IF NOT inv_globals.equal(p_trolin_rec.line_number, p_old_trolin_rec.line_number) THEN
169 l_index := l_index + 1;
170 l_src_attr_tbl(l_index) := inv_trolin_util.g_line_number;
171 END IF;
172
173 IF NOT inv_globals.equal(p_trolin_rec.line_status, p_old_trolin_rec.line_status) THEN
174 l_index := l_index + 1;
175 l_src_attr_tbl(l_index) := inv_trolin_util.g_line_status;
176 END IF;
177
178 IF NOT inv_globals.equal(p_trolin_rec.lot_number, p_old_trolin_rec.lot_number) THEN
179 l_index := l_index + 1;
180 l_src_attr_tbl(l_index) := inv_trolin_util.g_lot_number;
181 END IF;
182
183 IF NOT inv_globals.equal(p_trolin_rec.organization_id, p_old_trolin_rec.organization_id) THEN
184 l_index := l_index + 1;
185 l_src_attr_tbl(l_index) := inv_trolin_util.g_organization;
186 END IF;
187
188 IF NOT inv_globals.equal(p_trolin_rec.program_application_id, p_old_trolin_rec.program_application_id) THEN
189 l_index := l_index + 1;
190 l_src_attr_tbl(l_index) := inv_trolin_util.g_program_application;
191 END IF;
192
193 IF NOT inv_globals.equal(p_trolin_rec.program_id, p_old_trolin_rec.program_id) THEN
194 l_index := l_index + 1;
195 l_src_attr_tbl(l_index) := inv_trolin_util.g_program;
196 END IF;
197
198 IF NOT inv_globals.equal(p_trolin_rec.program_update_date, p_old_trolin_rec.program_update_date) THEN
199 l_index := l_index + 1;
200 l_src_attr_tbl(l_index) := inv_trolin_util.g_program_update_date;
201 END IF;
202
203 IF NOT inv_globals.equal(p_trolin_rec.project_id, p_old_trolin_rec.project_id) THEN
204 l_index := l_index + 1;
205 l_src_attr_tbl(l_index) := inv_trolin_util.g_project;
206 END IF;
207
208 IF NOT inv_globals.equal(p_trolin_rec.quantity, p_old_trolin_rec.quantity) THEN
209 l_index := l_index + 1;
210 l_src_attr_tbl(l_index) := inv_trolin_util.g_quantity;
211 END IF;
212
213 IF NOT inv_globals.equal(p_trolin_rec.quantity_delivered, p_old_trolin_rec.quantity_delivered) THEN
214 l_index := l_index + 1;
215 l_src_attr_tbl(l_index) := inv_trolin_util.g_quantity_delivered;
216 END IF;
217
218 IF NOT inv_globals.equal(p_trolin_rec.quantity_detailed, p_old_trolin_rec.quantity_detailed) THEN
219 l_index := l_index + 1;
220 l_src_attr_tbl(l_index) := inv_trolin_util.g_quantity_detailed;
221 END IF;
222
223 IF NOT inv_globals.equal(p_trolin_rec.reason_id, p_old_trolin_rec.reason_id) THEN
224 l_index := l_index + 1;
225 l_src_attr_tbl(l_index) := inv_trolin_util.g_reason;
226 END IF;
227
228 IF NOT inv_globals.equal(p_trolin_rec.REFERENCE, p_old_trolin_rec.REFERENCE) THEN
229 l_index := l_index + 1;
230 l_src_attr_tbl(l_index) := inv_trolin_util.g_reference;
231 END IF;
232
233 IF NOT inv_globals.equal(p_trolin_rec.reference_id, p_old_trolin_rec.reference_id) THEN
234 l_index := l_index + 1;
235 l_src_attr_tbl(l_index) := inv_trolin_util.g_reference;
236 END IF;
237
238 IF NOT inv_globals.equal(p_trolin_rec.reference_type_code, p_old_trolin_rec.reference_type_code) THEN
239 l_index := l_index + 1;
240 l_src_attr_tbl(l_index) := inv_trolin_util.g_reference_type;
241 END IF;
242
243 IF NOT inv_globals.equal(p_trolin_rec.request_id, p_old_trolin_rec.request_id) THEN
244 l_index := l_index + 1;
245 l_src_attr_tbl(l_index) := inv_trolin_util.g_request;
246 END IF;
247
248 IF NOT inv_globals.equal(p_trolin_rec.revision, p_old_trolin_rec.revision) THEN
249 l_index := l_index + 1;
250 l_src_attr_tbl(l_index) := inv_trolin_util.g_revision;
251 END IF;
252
253 IF NOT inv_globals.equal(p_trolin_rec.serial_number_end, p_old_trolin_rec.serial_number_end) THEN
254 l_index := l_index + 1;
255 l_src_attr_tbl(l_index) := inv_trolin_util.g_serial_number_end;
256 END IF;
257
258 IF NOT inv_globals.equal(p_trolin_rec.serial_number_start, p_old_trolin_rec.serial_number_start) THEN
259 l_index := l_index + 1;
260 l_src_attr_tbl(l_index) := inv_trolin_util.g_serial_number_start;
261 END IF;
262
263 IF NOT inv_globals.equal(p_trolin_rec.status_date, p_old_trolin_rec.status_date) THEN
264 l_index := l_index + 1;
265 l_src_attr_tbl(l_index) := inv_trolin_util.g_status_date;
266 END IF;
267
268 IF NOT inv_globals.equal(p_trolin_rec.task_id, p_old_trolin_rec.task_id) THEN
269 l_index := l_index + 1;
270 l_src_attr_tbl(l_index) := inv_trolin_util.g_task;
271 END IF;
272
273 IF NOT inv_globals.equal(p_trolin_rec.to_account_id, p_old_trolin_rec.to_account_id) THEN
274 l_index := l_index + 1;
275 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_account;
276 END IF;
277
278 IF NOT inv_globals.equal(p_trolin_rec.to_locator_id, p_old_trolin_rec.to_locator_id) THEN
279 l_index := l_index + 1;
280 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_locator;
281 END IF;
282
283 IF NOT inv_globals.equal(p_trolin_rec.to_subinventory_code, p_old_trolin_rec.to_subinventory_code) THEN
284 l_index := l_index + 1;
285 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_subinventory;
286 END IF;
287
288 IF NOT inv_globals.equal(p_trolin_rec.to_subinventory_id, p_old_trolin_rec.to_subinventory_id) THEN
289 l_index := l_index + 1;
290 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_subinventory;
291 END IF;
292
293 IF NOT inv_globals.equal(p_trolin_rec.transaction_header_id, p_old_trolin_rec.transaction_header_id) THEN
294 l_index := l_index + 1;
295 l_src_attr_tbl(l_index) := inv_trolin_util.g_transaction_header;
296 END IF;
297
298 IF NOT inv_globals.equal(p_trolin_rec.uom_code, p_old_trolin_rec.uom_code) THEN
299 l_index := l_index + 1;
300 l_src_attr_tbl(l_index) := inv_trolin_util.g_uom;
301 END IF;
302
303 IF NOT inv_globals.equal(p_trolin_rec.transaction_type_id, p_old_trolin_rec.transaction_type_id) THEN
304 l_index := l_index + 1;
305 l_src_attr_tbl(l_index) := inv_trolin_util.g_transaction_type_id;
306 END IF;
307
308 IF NOT inv_globals.equal(p_trolin_rec.to_organization_id, p_old_trolin_rec.to_organization_id) THEN
309 l_index := l_index + 1;
310 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_organization_id;
311 END IF;
312
313 IF NOT inv_globals.equal(p_trolin_rec.primary_quantity, p_old_trolin_rec.primary_quantity) THEN
314 l_index := l_index + 1;
315 l_src_attr_tbl(l_index) := inv_trolin_util.g_primary_quantity;
316 END IF;
317
318 IF NOT inv_globals.equal(p_trolin_rec.txn_source_id, p_old_trolin_rec.txn_source_id) THEN
319 l_index := l_index + 1;
320 l_src_attr_tbl(l_index) := inv_trolin_util.g_txn_source_id;
321 END IF;
322
323 IF NOT inv_globals.equal(p_trolin_rec.txn_source_line_id, p_old_trolin_rec.txn_source_line_id) THEN
324 l_index := l_index + 1;
325 l_src_attr_tbl(l_index) := inv_trolin_util.g_txn_source_line_id;
326 END IF;
327
328 IF NOT inv_globals.equal(p_trolin_rec.txn_source_line_detail_id, p_old_trolin_rec.txn_source_line_detail_id) THEN
329 l_index := l_index + 1;
330 l_src_attr_tbl(l_index) := inv_trolin_util.g_txn_source_line_detail_id;
331 END IF;
332
333 IF NOT inv_globals.equal(p_trolin_rec.transaction_source_type_id, p_old_trolin_rec.transaction_source_type_id) THEN
334 l_index := l_index + 1;
335 l_src_attr_tbl(l_index) := inv_trolin_util.g_transaction_source_type_id;
336 END IF;
337
338 IF NOT inv_globals.equal(p_trolin_rec.put_away_strategy_id, p_old_trolin_rec.put_away_strategy_id) THEN
339 l_index := l_index + 1;
340 l_src_attr_tbl(l_index) := inv_trolin_util.g_put_away_strategy_id;
341 END IF;
342
343 IF NOT inv_globals.equal(p_trolin_rec.pick_strategy_id, p_old_trolin_rec.pick_strategy_id) THEN
344 l_index := l_index + 1;
345 l_src_attr_tbl(l_index) := inv_trolin_util.g_pick_strategy_id;
346 END IF;
347
348 IF NOT inv_globals.equal(p_trolin_rec.unit_number, p_old_trolin_rec.unit_number) THEN
349 l_index := l_index + 1;
350 l_src_attr_tbl(l_index) := inv_trolin_util.g_unit_number;
351 END IF;
352
353 IF NOT inv_globals.equal(p_trolin_rec.ship_to_location_id, p_old_trolin_rec.ship_to_location_id) THEN
354 l_index := l_index + 1;
355 l_src_attr_tbl(l_index) := inv_trolin_util.g_ship_to_location_id;
356 END IF;
357
358 IF NOT inv_globals.equal(p_trolin_rec.from_cost_group_id, p_old_trolin_rec.from_cost_group_id) THEN
359 l_index := l_index + 1;
360 l_src_attr_tbl(l_index) := inv_trolin_util.g_from_cost_group_id;
361 END IF;
362
363 IF NOT inv_globals.equal(p_trolin_rec.to_cost_group_id, p_old_trolin_rec.to_cost_group_id) THEN
364 l_index := l_index + 1;
365 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_cost_group_id;
366 END IF;
367
368 IF NOT inv_globals.equal(p_trolin_rec.lpn_id, p_old_trolin_rec.lpn_id) THEN
369 l_index := l_index + 1;
370 l_src_attr_tbl(l_index) := inv_trolin_util.g_lpn_id;
371 END IF;
372
373 IF NOT inv_globals.equal(p_trolin_rec.to_lpn_id, p_old_trolin_rec.to_lpn_id) THEN
374 l_index := l_index + 1;
375 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_lpn_id;
376 END IF;
377
378 IF NOT inv_globals.equal(p_trolin_rec.pick_methodology_id, p_old_trolin_rec.pick_methodology_id) THEN
379 l_index := l_index + 1;
380 l_src_attr_tbl(l_index) := inv_trolin_util.g_pick_methodology_id;
381 END IF;
382
383 IF NOT inv_globals.equal(p_trolin_rec.container_item_id, p_old_trolin_rec.container_item_id) THEN
384 l_index := l_index + 1;
385 l_src_attr_tbl(l_index) := inv_trolin_util.g_container_item_id;
386 END IF;
387
388 IF NOT inv_globals.equal(p_trolin_rec.carton_grouping_id, p_old_trolin_rec.carton_grouping_id) THEN
389 l_index := l_index + 1;
390 l_src_attr_tbl(l_index) := inv_trolin_util.g_carton_grouping_id;
391 END IF;
392
393 IF NOT inv_globals.equal(p_trolin_rec.pick_slip_number, p_old_trolin_rec.pick_slip_number) THEN
394 l_index := l_index + 1;
395 l_src_attr_tbl(l_index) := inv_trolin_util.g_pick_slip_number;
396 END IF;
397
398 IF NOT inv_globals.equal(p_trolin_rec.pick_slip_date, p_old_trolin_rec.pick_slip_date) THEN
399 l_index := l_index + 1;
400 l_src_attr_tbl(l_index) := inv_trolin_util.g_pick_slip_date;
401 END IF;
402
403 IF NOT inv_globals.equal(p_trolin_rec.ship_set_id, p_old_trolin_rec.ship_set_id) THEN
404 l_index := l_index + 1;
405 l_src_attr_tbl(l_index) := inv_trolin_util.g_ship_set_id;
406 END IF;
407
408 IF NOT inv_globals.equal(p_trolin_rec.ship_model_id, p_old_trolin_rec.ship_model_id) THEN
409 l_index := l_index + 1;
410 l_src_attr_tbl(l_index) := inv_trolin_util.g_ship_model_id;
411 END IF;
412
413 IF NOT inv_globals.equal(p_trolin_rec.model_quantity, p_old_trolin_rec.model_quantity) THEN
414 l_index := l_index + 1;
415 l_src_attr_tbl(l_index) := inv_trolin_util.g_model_quantity;
416 END IF;
417
418 IF NOT inv_globals.equal(p_trolin_rec.required_quantity, p_old_trolin_rec.required_quantity) THEN
419 l_index := l_index + 1;
420 l_src_attr_tbl(l_index) := inv_trolin_util.g_required_quantity;
421 END IF;
422 --INVCONV BEGIN
423 IF NOT inv_globals.equal(p_trolin_rec.secondary_quantity, p_old_trolin_rec.secondary_quantity) THEN
424 l_index := l_index + 1;
425 l_src_attr_tbl(l_index) := inv_trolin_util.g_secondary_quantity;
426 END IF;
427
428 IF NOT inv_globals.equal(p_trolin_rec.secondary_quantity_delivered, p_old_trolin_rec.secondary_quantity_delivered) THEN
429 l_index := l_index + 1;
430 l_src_attr_tbl(l_index) := inv_trolin_util.g_secondary_quantity_delivered;
431 END IF;
432
433 IF NOT inv_globals.equal(p_trolin_rec.secondary_quantity_detailed, p_old_trolin_rec.secondary_quantity_detailed) THEN
434 l_index := l_index + 1;
435 l_src_attr_tbl(l_index) := inv_trolin_util.g_secondary_quantity_detailed;
436 END IF;
437
438 IF NOT inv_globals.equal(p_trolin_rec.secondary_uom, p_old_trolin_rec.secondary_uom) THEN
439 l_index := l_index + 1;
440 l_src_attr_tbl(l_index) := inv_trolin_util.g_secondary_uom;
441 END IF;
442
443 IF NOT inv_globals.equal(p_trolin_rec.grade_code, p_old_trolin_rec.grade_code) THEN
444 l_index := l_index + 1;
445 l_src_attr_tbl(l_index) := inv_trolin_util.g_grade_code;
446 END IF;
447
448 IF NOT inv_globals.equal(p_trolin_rec.secondary_required_quantity, p_old_trolin_rec.secondary_required_quantity) THEN
449 l_index := l_index + 1;
450 l_src_attr_tbl(l_index) := inv_trolin_util.g_secondary_required_quantity;
451 END IF;
452 --INVCONV END;
453 ELSIF p_attr_id = g_attribute1 THEN
454 l_index := l_index + 1;
455 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute1;
456 ELSIF p_attr_id = g_attribute10 THEN
457 l_index := l_index + 1;
458 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute10;
459 ELSIF p_attr_id = g_attribute11 THEN
460 l_index := l_index + 1;
461 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute11;
462 ELSIF p_attr_id = g_attribute12 THEN
463 l_index := l_index + 1;
464 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute12;
465 ELSIF p_attr_id = g_attribute13 THEN
466 l_index := l_index + 1;
467 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute13;
468 ELSIF p_attr_id = g_attribute14 THEN
469 l_index := l_index + 1;
470 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute14;
471 ELSIF p_attr_id = g_attribute15 THEN
472 l_index := l_index + 1;
473 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute15;
474 ELSIF p_attr_id = g_attribute2 THEN
475 l_index := l_index + 1;
476 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute2;
477 ELSIF p_attr_id = g_attribute3 THEN
478 l_index := l_index + 1;
479 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute3;
480 ELSIF p_attr_id = g_attribute4 THEN
481 l_index := l_index + 1;
482 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute4;
483 ELSIF p_attr_id = g_attribute5 THEN
484 l_index := l_index + 1;
485 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute5;
486 ELSIF p_attr_id = g_attribute6 THEN
487 l_index := l_index + 1;
488 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute6;
489 ELSIF p_attr_id = g_attribute7 THEN
490 l_index := l_index + 1;
491 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute7;
492 ELSIF p_attr_id = g_attribute8 THEN
493 l_index := l_index + 1;
494 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute8;
495 ELSIF p_attr_id = g_attribute9 THEN
496 l_index := l_index + 1;
497 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute9;
498 ELSIF p_attr_id = g_attribute_category THEN
499 l_index := l_index + 1;
500 l_src_attr_tbl(l_index) := inv_trolin_util.g_attribute_category;
501 ELSIF p_attr_id = g_created_by THEN
502 l_index := l_index + 1;
503 l_src_attr_tbl(l_index) := inv_trolin_util.g_created_by;
504 ELSIF p_attr_id = g_creation_date THEN
505 l_index := l_index + 1;
506 l_src_attr_tbl(l_index) := inv_trolin_util.g_creation_date;
507 ELSIF p_attr_id = g_date_required THEN
508 l_index := l_index + 1;
509 l_src_attr_tbl(l_index) := inv_trolin_util.g_date_required;
510 ELSIF p_attr_id = g_from_locator THEN
511 l_index := l_index + 1;
512 l_src_attr_tbl(l_index) := inv_trolin_util.g_from_locator;
513 ELSIF p_attr_id = g_from_subinventory THEN
514 l_index := l_index + 1;
515 l_src_attr_tbl(l_index) := inv_trolin_util.g_from_subinventory;
516 ELSIF p_attr_id = g_from_subinventory THEN
517 l_index := l_index + 1;
518 l_src_attr_tbl(l_index) := inv_trolin_util.g_from_subinventory;
519 ELSIF p_attr_id = g_header THEN
520 l_index := l_index + 1;
521 l_src_attr_tbl(l_index) := inv_trolin_util.g_header;
522 ELSIF p_attr_id = g_inventory_item THEN
523 l_index := l_index + 1;
524 l_src_attr_tbl(l_index) := inv_trolin_util.g_inventory_item;
525 ELSIF p_attr_id = g_last_updated_by THEN
526 l_index := l_index + 1;
527 l_src_attr_tbl(l_index) := inv_trolin_util.g_last_updated_by;
528 ELSIF p_attr_id = g_last_update_date THEN
529 l_index := l_index + 1;
530 l_src_attr_tbl(l_index) := inv_trolin_util.g_last_update_date;
531 ELSIF p_attr_id = g_last_update_login THEN
532 l_index := l_index + 1;
533 l_src_attr_tbl(l_index) := inv_trolin_util.g_last_update_login;
534 ELSIF p_attr_id = g_line THEN
535 l_index := l_index + 1;
536 l_src_attr_tbl(l_index) := inv_trolin_util.g_line;
537 ELSIF p_attr_id = g_line_number THEN
538 l_index := l_index + 1;
539 l_src_attr_tbl(l_index) := inv_trolin_util.g_line_number;
540 ELSIF p_attr_id = g_line_status THEN
541 l_index := l_index + 1;
542 l_src_attr_tbl(l_index) := inv_trolin_util.g_line_status;
543 ELSIF p_attr_id = g_lot_number THEN
544 l_index := l_index + 1;
545 l_src_attr_tbl(l_index) := inv_trolin_util.g_lot_number;
546 ELSIF p_attr_id = g_organization THEN
547 l_index := l_index + 1;
548 l_src_attr_tbl(l_index) := inv_trolin_util.g_organization;
549 ELSIF p_attr_id = g_program_application THEN
550 l_index := l_index + 1;
551 l_src_attr_tbl(l_index) := inv_trolin_util.g_program_application;
552 ELSIF p_attr_id = g_program THEN
553 l_index := l_index + 1;
554 l_src_attr_tbl(l_index) := inv_trolin_util.g_program;
555 ELSIF p_attr_id = g_program_update_date THEN
556 l_index := l_index + 1;
557 l_src_attr_tbl(l_index) := inv_trolin_util.g_program_update_date;
558 ELSIF p_attr_id = g_project THEN
559 l_index := l_index + 1;
560 l_src_attr_tbl(l_index) := inv_trolin_util.g_project;
561 ELSIF p_attr_id = g_quantity THEN
562 l_index := l_index + 1;
563 l_src_attr_tbl(l_index) := inv_trolin_util.g_quantity;
564 ELSIF p_attr_id = g_quantity_delivered THEN
565 l_index := l_index + 1;
566 l_src_attr_tbl(l_index) := inv_trolin_util.g_quantity_delivered;
567 ELSIF p_attr_id = g_quantity_detailed THEN
568 l_index := l_index + 1;
569 l_src_attr_tbl(l_index) := inv_trolin_util.g_quantity_detailed;
570 ELSIF p_attr_id = g_reason THEN
571 l_index := l_index + 1;
572 l_src_attr_tbl(l_index) := inv_trolin_util.g_reason;
573 ELSIF p_attr_id = g_reference THEN
574 l_index := l_index + 1;
575 l_src_attr_tbl(l_index) := inv_trolin_util.g_reference;
576 ELSIF p_attr_id = g_reference THEN
577 l_index := l_index + 1;
578 l_src_attr_tbl(l_index) := inv_trolin_util.g_reference;
579 ELSIF p_attr_id = g_reference_type THEN
580 l_index := l_index + 1;
581 l_src_attr_tbl(l_index) := inv_trolin_util.g_reference_type;
582 ELSIF p_attr_id = g_request THEN
583 l_index := l_index + 1;
584 l_src_attr_tbl(l_index) := inv_trolin_util.g_request;
585 ELSIF p_attr_id = g_revision THEN
586 l_index := l_index + 1;
587 l_src_attr_tbl(l_index) := inv_trolin_util.g_revision;
588 ELSIF p_attr_id = g_serial_number_end THEN
589 l_index := l_index + 1;
590 l_src_attr_tbl(l_index) := inv_trolin_util.g_serial_number_end;
591 ELSIF p_attr_id = g_serial_number_start THEN
592 l_index := l_index + 1;
593 l_src_attr_tbl(l_index) := inv_trolin_util.g_serial_number_start;
594 ELSIF p_attr_id = g_status_date THEN
595 l_index := l_index + 1;
596 l_src_attr_tbl(l_index) := inv_trolin_util.g_status_date;
597 ELSIF p_attr_id = g_task THEN
598 l_index := l_index + 1;
599 l_src_attr_tbl(l_index) := inv_trolin_util.g_task;
600 ELSIF p_attr_id = g_to_account THEN
601 l_index := l_index + 1;
602 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_account;
603 ELSIF p_attr_id = g_to_locator THEN
604 l_index := l_index + 1;
605 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_locator;
606 ELSIF p_attr_id = g_to_subinventory THEN
607 l_index := l_index + 1;
608 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_subinventory;
609 ELSIF p_attr_id = g_to_subinventory THEN
610 l_index := l_index + 1;
611 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_subinventory;
612 ELSIF p_attr_id = g_transaction_header THEN
613 l_index := l_index + 1;
614 l_src_attr_tbl(l_index) := inv_trolin_util.g_transaction_header;
615 ELSIF p_attr_id = g_uom THEN
616 l_index := l_index + 1;
617 l_src_attr_tbl(l_index) := inv_trolin_util.g_uom;
618 ELSIF p_attr_id = g_txn_source_id THEN
619 l_index := l_index + 1;
620 l_src_attr_tbl(l_index) := inv_trolin_util.g_txn_source_id;
621 ELSIF p_attr_id = g_txn_source_line_id THEN
622 l_index := l_index + 1;
623 l_src_attr_tbl(l_index) := inv_trolin_util.g_txn_source_line_id;
624 ELSIF p_attr_id = g_txn_source_line_detail_id THEN
625 l_index := l_index + 1;
626 l_src_attr_tbl(l_index) := inv_trolin_util.g_txn_source_line_detail_id;
627 ELSIF p_attr_id = g_transaction_type_id THEN
628 l_index := l_index + 1;
629 l_src_attr_tbl(l_index) := inv_trolin_util.g_transaction_type_id;
630 ELSIF p_attr_id = g_transaction_source_type_id THEN
631 l_index := l_index + 1;
632 l_src_attr_tbl(l_index) := inv_trolin_util.g_transaction_source_type_id;
633 ELSIF p_attr_id = g_primary_quantity THEN
634 l_index := l_index + 1;
635 l_src_attr_tbl(l_index) := inv_trolin_util.g_primary_quantity;
636 ELSIF p_attr_id = g_to_organization_id THEN
637 l_index := l_index + 1;
638 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_organization_id;
639 ELSIF p_attr_id = g_put_away_strategy_id THEN
640 l_index := l_index + 1;
641 l_src_attr_tbl(l_index) := inv_trolin_util.g_put_away_strategy_id;
642 ELSIF p_attr_id = g_pick_strategy_id THEN
643 l_index := l_index + 1;
644 l_src_attr_tbl(l_index) := inv_trolin_util.g_pick_strategy_id;
645 ELSIF p_attr_id = g_unit_number THEN
646 l_index := l_index + 1;
647 l_src_attr_tbl(l_index) := inv_trolin_util.g_unit_number;
648 ELSIF p_attr_id = g_ship_to_location_id THEN
649 l_index := l_index + 1;
650 l_src_attr_tbl(l_index) := inv_trolin_util.g_ship_to_location_id;
651 ELSIF p_attr_id = g_from_cost_group_id THEN
652 l_index := l_index + 1;
653 l_src_attr_tbl(l_index) := inv_trolin_util.g_from_cost_group_id;
654 ELSIF p_attr_id = g_to_cost_group_id THEN
655 l_index := l_index + 1;
656 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_cost_group_id;
657 ELSIF p_attr_id = g_lpn_id THEN
658 l_index := l_index + 1;
659 l_src_attr_tbl(l_index) := inv_trolin_util.g_lpn_id;
660 ELSIF p_attr_id = g_to_lpn_id THEN
661 l_index := l_index + 1;
662 l_src_attr_tbl(l_index) := inv_trolin_util.g_to_lpn_id;
663 ELSIF p_attr_id = g_pick_methodology_id THEN
664 l_index := l_index + 1;
665 l_src_attr_tbl(l_index) := inv_trolin_util.g_pick_methodology_id;
666 ELSIF p_attr_id = g_container_item_id THEN
667 l_index := l_index + 1;
668 l_src_attr_tbl(l_index) := inv_trolin_util.g_container_item_id;
669 ELSIF p_attr_id = g_carton_grouping_id THEN
670 l_index := l_index + 1;
671 l_src_attr_tbl(l_index) := inv_trolin_util.g_carton_grouping_id;
672 ELSIF p_attr_id = g_pick_slip_number THEN
673 l_index := l_index + 1;
674 l_src_attr_tbl(l_index) := inv_trolin_util.g_pick_slip_number;
675 ELSIF p_attr_id = g_pick_slip_date THEN
676 l_index := l_index + 1;
677 l_src_attr_tbl(l_index) := inv_trolin_util.g_pick_slip_date;
678 ELSIF p_attr_id = g_ship_set_id THEN
679 l_index := l_index + 1;
680 l_src_attr_tbl(l_index) := inv_trolin_util.g_ship_set_id;
681 ELSIF p_attr_id = g_ship_model_id THEN
682 l_index := l_index + 1;
683 l_src_attr_tbl(l_index) := inv_trolin_util.g_ship_model_id;
684 ELSIF p_attr_id = g_model_quantity THEN
685 l_index := l_index + 1;
686 l_src_attr_tbl(l_index) := inv_trolin_util.g_model_quantity;
687 ELSIF p_attr_id = g_required_quantity THEN
688 l_index := l_index + 1;
689 l_src_attr_tbl(l_index) := inv_trolin_util.g_required_quantity;
690 --INVCONV BEGIN
691 ELSIF p_attr_id = g_secondary_quantity THEN
692 l_index := l_index + 1;
693 l_src_attr_tbl(l_index) := inv_trolin_util.g_secondary_quantity;
694 ELSIF p_attr_id = g_secondary_quantity_delivered THEN
695 l_index := l_index + 1;
696 l_src_attr_tbl(l_index) := inv_trolin_util.g_secondary_quantity_delivered;
697 ELSIF p_attr_id = g_secondary_quantity_detailed THEN
698 l_index := l_index + 1;
699 l_src_attr_tbl(l_index) := inv_trolin_util.g_secondary_quantity_detailed;
700 ELSIF p_attr_id = g_secondary_required_quantity THEN
701 l_index := l_index + 1;
702 l_src_attr_tbl(l_index) := inv_trolin_util.g_secondary_required_quantity;
703 ELSIF p_attr_id = g_secondary_uom THEN
704 l_index := l_index + 1;
705 l_src_attr_tbl(l_index) := inv_trolin_util.g_secondary_uom;
706 ELSIF p_attr_id = g_grade_code THEN
707 l_index := l_index + 1;
708 l_src_attr_tbl(l_index) := inv_trolin_util.g_grade_code;
709 --INVCONV END
710 END IF;
711 END clear_dependent_attr;
712
713 -- Procedure Apply_Attribute_Changes
714
715 PROCEDURE apply_attribute_changes(p_trolin_rec IN inv_move_order_pub.trolin_rec_type, p_old_trolin_rec IN inv_move_order_pub.trolin_rec_type := inv_move_order_pub.g_miss_trolin_rec, x_trolin_rec IN OUT NOCOPY inv_move_order_pub.trolin_rec_type) IS
716 BEGIN
717 -- Load out record
718
719 x_trolin_rec := p_trolin_rec;
720
721 IF NOT inv_globals.equal(p_trolin_rec.attribute1, p_old_trolin_rec.attribute1) THEN
722 NULL;
723 END IF;
724
725 IF NOT inv_globals.equal(p_trolin_rec.attribute10, p_old_trolin_rec.attribute10) THEN
726 NULL;
727 END IF;
728
729 IF NOT inv_globals.equal(p_trolin_rec.attribute11, p_old_trolin_rec.attribute11) THEN
730 NULL;
731 END IF;
732
733 IF NOT inv_globals.equal(p_trolin_rec.attribute12, p_old_trolin_rec.attribute12) THEN
734 NULL;
735 END IF;
736
737 IF NOT inv_globals.equal(p_trolin_rec.attribute13, p_old_trolin_rec.attribute13) THEN
738 NULL;
739 END IF;
740
741 IF NOT inv_globals.equal(p_trolin_rec.attribute14, p_old_trolin_rec.attribute14) THEN
742 NULL;
743 END IF;
744
745 IF NOT inv_globals.equal(p_trolin_rec.attribute15, p_old_trolin_rec.attribute15) THEN
746 NULL;
747 END IF;
748
749 IF NOT inv_globals.equal(p_trolin_rec.attribute2, p_old_trolin_rec.attribute2) THEN
750 NULL;
751 END IF;
752
753 IF NOT inv_globals.equal(p_trolin_rec.attribute3, p_old_trolin_rec.attribute3) THEN
754 NULL;
755 END IF;
756
757 IF NOT inv_globals.equal(p_trolin_rec.attribute4, p_old_trolin_rec.attribute4) THEN
758 NULL;
759 END IF;
760
761 IF NOT inv_globals.equal(p_trolin_rec.attribute5, p_old_trolin_rec.attribute5) THEN
762 NULL;
763 END IF;
764
765 IF NOT inv_globals.equal(p_trolin_rec.attribute6, p_old_trolin_rec.attribute6) THEN
766 NULL;
767 END IF;
768
769 IF NOT inv_globals.equal(p_trolin_rec.attribute7, p_old_trolin_rec.attribute7) THEN
770 NULL;
771 END IF;
772
773 IF NOT inv_globals.equal(p_trolin_rec.attribute8, p_old_trolin_rec.attribute8) THEN
774 NULL;
775 END IF;
776
777 IF NOT inv_globals.equal(p_trolin_rec.attribute9, p_old_trolin_rec.attribute9) THEN
778 NULL;
779 END IF;
780
781 IF NOT inv_globals.equal(p_trolin_rec.attribute_category, p_old_trolin_rec.attribute_category) THEN
782 NULL;
783 END IF;
784
785 IF NOT inv_globals.equal(p_trolin_rec.created_by, p_old_trolin_rec.created_by) THEN
786 NULL;
787 END IF;
788
789 IF NOT inv_globals.equal(p_trolin_rec.creation_date, p_old_trolin_rec.creation_date) THEN
790 NULL;
791 END IF;
792
793 IF NOT inv_globals.equal(p_trolin_rec.date_required, p_old_trolin_rec.date_required) THEN
794 NULL;
795 END IF;
796
797 IF NOT inv_globals.equal(p_trolin_rec.from_locator_id, p_old_trolin_rec.from_locator_id) THEN
798 NULL;
799 END IF;
800
801 IF NOT inv_globals.equal(p_trolin_rec.from_subinventory_code, p_old_trolin_rec.from_subinventory_code) THEN
802 NULL;
803 END IF;
804
805 IF NOT inv_globals.equal(p_trolin_rec.from_subinventory_id, p_old_trolin_rec.from_subinventory_id) THEN
806 NULL;
807 END IF;
808
809 IF NOT inv_globals.equal(p_trolin_rec.header_id, p_old_trolin_rec.header_id) THEN
810 NULL;
811 END IF;
812
813 IF NOT inv_globals.equal(p_trolin_rec.inventory_item_id, p_old_trolin_rec.inventory_item_id) THEN
814 NULL;
815 END IF;
816
817 IF NOT inv_globals.equal(p_trolin_rec.last_updated_by, p_old_trolin_rec.last_updated_by) THEN
818 NULL;
819 END IF;
820
821 IF NOT inv_globals.equal(p_trolin_rec.last_update_date, p_old_trolin_rec.last_update_date) THEN
822 NULL;
823 END IF;
824
825 IF NOT inv_globals.equal(p_trolin_rec.last_update_login, p_old_trolin_rec.last_update_login) THEN
826 NULL;
827 END IF;
828
829 IF NOT inv_globals.equal(p_trolin_rec.line_id, p_old_trolin_rec.line_id) THEN
830 NULL;
831 END IF;
832
833 IF NOT inv_globals.equal(p_trolin_rec.line_number, p_old_trolin_rec.line_number) THEN
834 NULL;
835 END IF;
836
837 IF NOT inv_globals.equal(p_trolin_rec.line_status, p_old_trolin_rec.line_status) THEN
838 NULL;
839 END IF;
840
841 IF NOT inv_globals.equal(p_trolin_rec.lot_number, p_old_trolin_rec.lot_number) THEN
842 NULL;
843 END IF;
844
845 IF NOT inv_globals.equal(p_trolin_rec.organization_id, p_old_trolin_rec.organization_id) THEN
846 NULL;
847 END IF;
848
849 IF NOT inv_globals.equal(p_trolin_rec.program_application_id, p_old_trolin_rec.program_application_id) THEN
850 NULL;
851 END IF;
852
853 IF NOT inv_globals.equal(p_trolin_rec.program_id, p_old_trolin_rec.program_id) THEN
854 NULL;
855 END IF;
856
857 IF NOT inv_globals.equal(p_trolin_rec.program_update_date, p_old_trolin_rec.program_update_date) THEN
858 NULL;
859 END IF;
860
861 IF NOT inv_globals.equal(p_trolin_rec.project_id, p_old_trolin_rec.project_id) THEN
862 NULL;
863 END IF;
864
865 IF NOT inv_globals.equal(p_trolin_rec.quantity, p_old_trolin_rec.quantity) THEN
866 NULL;
867 END IF;
868
869 IF NOT inv_globals.equal(p_trolin_rec.quantity_delivered, p_old_trolin_rec.quantity_delivered) THEN
870 NULL;
871 END IF;
872
873 IF NOT inv_globals.equal(p_trolin_rec.quantity_detailed, p_old_trolin_rec.quantity_detailed) THEN
874 NULL;
875 END IF;
876
877 IF NOT inv_globals.equal(p_trolin_rec.reason_id, p_old_trolin_rec.reason_id) THEN
878 NULL;
879 END IF;
880
881 IF NOT inv_globals.equal(p_trolin_rec.REFERENCE, p_old_trolin_rec.REFERENCE) THEN
882 NULL;
883 END IF;
884
885 IF NOT inv_globals.equal(p_trolin_rec.reference_id, p_old_trolin_rec.reference_id) THEN
886 NULL;
887 END IF;
888
889 IF NOT inv_globals.equal(p_trolin_rec.reference_type_code, p_old_trolin_rec.reference_type_code) THEN
890 NULL;
891 END IF;
892
893 IF NOT inv_globals.equal(p_trolin_rec.request_id, p_old_trolin_rec.request_id) THEN
894 NULL;
895 END IF;
896
897 IF NOT inv_globals.equal(p_trolin_rec.revision, p_old_trolin_rec.revision) THEN
898 NULL;
899 END IF;
900
901 IF NOT inv_globals.equal(p_trolin_rec.serial_number_end, p_old_trolin_rec.serial_number_end) THEN
902 NULL;
903 END IF;
904
905 IF NOT inv_globals.equal(p_trolin_rec.serial_number_start, p_old_trolin_rec.serial_number_start) THEN
906 NULL;
907 END IF;
908
909 IF NOT inv_globals.equal(p_trolin_rec.status_date, p_old_trolin_rec.status_date) THEN
910 NULL;
911 END IF;
912
913 IF NOT inv_globals.equal(p_trolin_rec.task_id, p_old_trolin_rec.task_id) THEN
914 NULL;
915 END IF;
916
917 IF NOT inv_globals.equal(p_trolin_rec.to_account_id, p_old_trolin_rec.to_account_id) THEN
918 NULL;
919 END IF;
920
921 IF NOT inv_globals.equal(p_trolin_rec.to_locator_id, p_old_trolin_rec.to_locator_id) THEN
922 NULL;
923 END IF;
924
925 IF NOT inv_globals.equal(p_trolin_rec.to_subinventory_code, p_old_trolin_rec.to_subinventory_code) THEN
926 NULL;
927 END IF;
928
929 IF NOT inv_globals.equal(p_trolin_rec.to_subinventory_id, p_old_trolin_rec.to_subinventory_id) THEN
930 NULL;
931 END IF;
932
933 IF NOT inv_globals.equal(p_trolin_rec.transaction_header_id, p_old_trolin_rec.transaction_header_id) THEN
934 NULL;
935 END IF;
936
937 IF NOT inv_globals.equal(p_trolin_rec.uom_code, p_old_trolin_rec.uom_code) THEN
938 NULL;
939 END IF;
940
941 IF NOT inv_globals.equal(p_trolin_rec.transaction_type_id, p_old_trolin_rec.transaction_type_id) THEN
942 NULL;
943 END IF;
944
945 IF NOT inv_globals.equal(p_trolin_rec.transaction_source_type_id, p_old_trolin_rec.transaction_source_type_id) THEN
946 NULL;
947 END IF;
948
949 IF NOT inv_globals.equal(p_trolin_rec.txn_source_id, p_old_trolin_rec.txn_source_id) THEN
950 NULL;
951 END IF;
952
953 IF NOT inv_globals.equal(p_trolin_rec.txn_source_line_id, p_old_trolin_rec.txn_source_line_id) THEN
954 NULL;
955 END IF;
956
957 IF NOT inv_globals.equal(p_trolin_rec.txn_source_line_detail_id, p_old_trolin_rec.txn_source_line_detail_id) THEN
958 NULL;
959 END IF;
960
961 IF NOT inv_globals.equal(p_trolin_rec.to_organization_id, p_old_trolin_rec.to_organization_id) THEN
962 NULL;
963 END IF;
964
965 IF NOT inv_globals.equal(p_trolin_rec.primary_quantity, p_old_trolin_rec.primary_quantity) THEN
966 NULL;
967 END IF;
968
969 IF NOT inv_globals.equal(p_trolin_rec.pick_strategy_id, p_old_trolin_rec.pick_strategy_id) THEN
970 NULL;
971 END IF;
972
973 IF NOT inv_globals.equal(p_trolin_rec.put_away_strategy_id, p_old_trolin_rec.put_away_strategy_id) THEN
974 NULL;
975 END IF;
976
977 IF NOT inv_globals.equal(p_trolin_rec.unit_number, p_old_trolin_rec.unit_number) THEN
978 NULL;
979 END IF;
980
981 IF NOT inv_globals.equal(p_trolin_rec.ship_to_location_id, p_old_trolin_rec.ship_to_location_id) THEN
982 NULL;
983 END IF;
984
985 IF NOT inv_globals.equal(p_trolin_rec.from_cost_group_id, p_old_trolin_rec.from_cost_group_id) THEN
986 NULL;
987 END IF;
988
989 IF NOT inv_globals.equal(p_trolin_rec.to_cost_group_id, p_old_trolin_rec.to_cost_group_id) THEN
990 NULL;
991 END IF;
992
993 IF NOT inv_globals.equal(p_trolin_rec.lpn_id, p_old_trolin_rec.lpn_id) THEN
994 NULL;
995 END IF;
996
997 IF NOT inv_globals.equal(p_trolin_rec.to_lpn_id, p_old_trolin_rec.to_lpn_id) THEN
998 NULL;
999 END IF;
1000
1001 IF NOT inv_globals.equal(p_trolin_rec.pick_methodology_id, p_old_trolin_rec.pick_methodology_id) THEN
1002 NULL;
1003 END IF;
1004
1005 IF NOT inv_globals.equal(p_trolin_rec.container_item_id, p_old_trolin_rec.container_item_id) THEN
1006 NULL;
1007 END IF;
1008
1009 IF NOT inv_globals.equal(p_trolin_rec.carton_grouping_id, p_old_trolin_rec.carton_grouping_id) THEN
1010 NULL;
1011 END IF;
1012
1013 IF NOT inv_globals.equal(p_trolin_rec.pick_slip_number, p_old_trolin_rec.pick_slip_number) THEN
1014 NULL;
1015 END IF;
1016
1017 IF NOT inv_globals.equal(p_trolin_rec.pick_slip_date, p_old_trolin_rec.pick_slip_date) THEN
1018 NULL;
1019 END IF;
1020
1021 IF NOT inv_globals.equal(p_trolin_rec.ship_set_id, p_old_trolin_rec.ship_set_id) THEN
1022 NULL;
1023 END IF;
1024
1025 IF NOT inv_globals.equal(p_trolin_rec.ship_model_id, p_old_trolin_rec.ship_model_id) THEN
1026 NULL;
1027 END IF;
1028
1029 IF NOT inv_globals.equal(p_trolin_rec.model_quantity, p_old_trolin_rec.model_quantity) THEN
1030 NULL;
1031 END IF;
1032
1033 IF NOT inv_globals.equal(p_trolin_rec.required_quantity, p_old_trolin_rec.required_quantity) THEN
1034 NULL;
1035 END IF;
1036 --INVCONV BEGIN
1037 IF NOT inv_globals.equal(p_trolin_rec.secondary_uom, p_old_trolin_rec.secondary_uom) THEN
1038 NULL;
1039 END IF;
1040
1041 IF NOT inv_globals.equal(p_trolin_rec.secondary_quantity, p_old_trolin_rec.secondary_quantity) THEN
1042 NULL;
1043 END IF;
1044
1045 IF NOT inv_globals.equal(p_trolin_rec.secondary_quantity_delivered, p_old_trolin_rec.secondary_quantity_delivered) THEN
1046 NULL;
1047 END IF;
1048
1049 IF NOT inv_globals.equal(p_trolin_rec.secondary_quantity_detailed, p_old_trolin_rec.secondary_quantity_detailed) THEN
1050 NULL;
1051 END IF;
1052
1053 IF NOT inv_globals.equal(p_trolin_rec.grade_code, p_old_trolin_rec.grade_code) THEN
1054 NULL;
1055 END IF;
1056
1057 IF NOT inv_globals.equal(p_trolin_rec.secondary_required_quantity, p_old_trolin_rec.secondary_required_quantity) THEN
1058 NULL;
1059 END IF;
1060
1061 --INVCONV END;
1062
1063 END apply_attribute_changes;
1064
1065 -- Function Complete_Record
1066
1067 FUNCTION complete_record(p_trolin_rec IN inv_move_order_pub.trolin_rec_type, p_old_trolin_rec IN inv_move_order_pub.trolin_rec_type)
1068 RETURN inv_move_order_pub.trolin_rec_type IS
1069 l_trolin_rec inv_move_order_pub.trolin_rec_type := p_trolin_rec;
1070 BEGIN
1071 IF l_trolin_rec.attribute1 = fnd_api.g_miss_char THEN
1072 l_trolin_rec.attribute1 := p_old_trolin_rec.attribute1;
1073 END IF;
1074
1075 IF l_trolin_rec.attribute10 = fnd_api.g_miss_char THEN
1076 l_trolin_rec.attribute10 := p_old_trolin_rec.attribute10;
1077 END IF;
1078
1079 IF l_trolin_rec.attribute11 = fnd_api.g_miss_char THEN
1080 l_trolin_rec.attribute11 := p_old_trolin_rec.attribute11;
1081 END IF;
1082
1083 IF l_trolin_rec.attribute12 = fnd_api.g_miss_char THEN
1084 l_trolin_rec.attribute12 := p_old_trolin_rec.attribute12;
1085 END IF;
1086
1087 IF l_trolin_rec.attribute13 = fnd_api.g_miss_char THEN
1088 l_trolin_rec.attribute13 := p_old_trolin_rec.attribute13;
1089 END IF;
1090
1091 IF l_trolin_rec.attribute14 = fnd_api.g_miss_char THEN
1092 l_trolin_rec.attribute14 := p_old_trolin_rec.attribute14;
1093 END IF;
1094
1095 IF l_trolin_rec.attribute15 = fnd_api.g_miss_char THEN
1096 l_trolin_rec.attribute15 := p_old_trolin_rec.attribute15;
1097 END IF;
1098
1099 IF l_trolin_rec.attribute2 = fnd_api.g_miss_char THEN
1100 l_trolin_rec.attribute2 := p_old_trolin_rec.attribute2;
1101 END IF;
1102
1103 IF l_trolin_rec.attribute3 = fnd_api.g_miss_char THEN
1104 l_trolin_rec.attribute3 := p_old_trolin_rec.attribute3;
1105 END IF;
1106
1107 IF l_trolin_rec.attribute4 = fnd_api.g_miss_char THEN
1108 l_trolin_rec.attribute4 := p_old_trolin_rec.attribute4;
1109 END IF;
1110
1111 IF l_trolin_rec.attribute5 = fnd_api.g_miss_char THEN
1112 l_trolin_rec.attribute5 := p_old_trolin_rec.attribute5;
1113 END IF;
1114
1115 IF l_trolin_rec.attribute6 = fnd_api.g_miss_char THEN
1116 l_trolin_rec.attribute6 := p_old_trolin_rec.attribute6;
1117 END IF;
1118
1119 IF l_trolin_rec.attribute7 = fnd_api.g_miss_char THEN
1120 l_trolin_rec.attribute7 := p_old_trolin_rec.attribute7;
1121 END IF;
1122
1123 IF l_trolin_rec.attribute8 = fnd_api.g_miss_char THEN
1124 l_trolin_rec.attribute8 := p_old_trolin_rec.attribute8;
1125 END IF;
1126
1127 IF l_trolin_rec.attribute9 = fnd_api.g_miss_char THEN
1128 l_trolin_rec.attribute9 := p_old_trolin_rec.attribute9;
1129 END IF;
1130
1131 IF l_trolin_rec.attribute_category = fnd_api.g_miss_char THEN
1132 l_trolin_rec.attribute_category := p_old_trolin_rec.attribute_category;
1133 END IF;
1134
1135 IF l_trolin_rec.created_by = fnd_api.g_miss_num THEN
1136 l_trolin_rec.created_by := p_old_trolin_rec.created_by;
1137 END IF;
1138
1139 IF l_trolin_rec.creation_date = fnd_api.g_miss_date THEN
1140 l_trolin_rec.creation_date := p_old_trolin_rec.creation_date;
1141 END IF;
1142
1143 IF l_trolin_rec.date_required = fnd_api.g_miss_date THEN
1144 l_trolin_rec.date_required := p_old_trolin_rec.date_required;
1145 END IF;
1146
1147 IF l_trolin_rec.from_locator_id = fnd_api.g_miss_num THEN
1148 l_trolin_rec.from_locator_id := p_old_trolin_rec.from_locator_id;
1149 END IF;
1150
1151 IF l_trolin_rec.from_subinventory_code = fnd_api.g_miss_char THEN
1152 l_trolin_rec.from_subinventory_code := p_old_trolin_rec.from_subinventory_code;
1153 END IF;
1154
1155 IF l_trolin_rec.from_subinventory_id = fnd_api.g_miss_num THEN
1156 l_trolin_rec.from_subinventory_id := p_old_trolin_rec.from_subinventory_id;
1157 END IF;
1158
1159 IF l_trolin_rec.header_id = fnd_api.g_miss_num THEN
1160 l_trolin_rec.header_id := p_old_trolin_rec.header_id;
1161 END IF;
1162
1163 IF l_trolin_rec.inventory_item_id = fnd_api.g_miss_num THEN
1164 l_trolin_rec.inventory_item_id := p_old_trolin_rec.inventory_item_id;
1165 END IF;
1166
1167 IF l_trolin_rec.last_updated_by = fnd_api.g_miss_num THEN
1168 l_trolin_rec.last_updated_by := p_old_trolin_rec.last_updated_by;
1169 END IF;
1170
1171 IF l_trolin_rec.last_update_date = fnd_api.g_miss_date THEN
1172 l_trolin_rec.last_update_date := p_old_trolin_rec.last_update_date;
1173 END IF;
1174
1175 IF l_trolin_rec.last_update_login = fnd_api.g_miss_num THEN
1176 l_trolin_rec.last_update_login := p_old_trolin_rec.last_update_login;
1177 END IF;
1178
1179 IF l_trolin_rec.line_id = fnd_api.g_miss_num THEN
1180 l_trolin_rec.line_id := p_old_trolin_rec.line_id;
1181 END IF;
1182
1183 IF l_trolin_rec.line_number = fnd_api.g_miss_num THEN
1184 l_trolin_rec.line_number := p_old_trolin_rec.line_number;
1185 END IF;
1186
1187 IF l_trolin_rec.line_status = fnd_api.g_miss_num THEN
1188 l_trolin_rec.line_status := p_old_trolin_rec.line_status;
1189 END IF;
1190
1191 IF l_trolin_rec.lot_number = fnd_api.g_miss_char THEN
1192 l_trolin_rec.lot_number := p_old_trolin_rec.lot_number;
1193 END IF;
1194
1195 IF l_trolin_rec.organization_id = fnd_api.g_miss_num THEN
1196 l_trolin_rec.organization_id := p_old_trolin_rec.organization_id;
1197 END IF;
1198
1199 IF l_trolin_rec.program_application_id = fnd_api.g_miss_num THEN
1200 l_trolin_rec.program_application_id := p_old_trolin_rec.program_application_id;
1201 END IF;
1202
1203 IF l_trolin_rec.program_id = fnd_api.g_miss_num THEN
1204 l_trolin_rec.program_id := p_old_trolin_rec.program_id;
1205 END IF;
1206
1207 IF l_trolin_rec.program_update_date = fnd_api.g_miss_date THEN
1208 l_trolin_rec.program_update_date := p_old_trolin_rec.program_update_date;
1209 END IF;
1210
1211 IF l_trolin_rec.project_id = fnd_api.g_miss_num THEN
1212 l_trolin_rec.project_id := p_old_trolin_rec.project_id;
1213 END IF;
1214
1215 IF l_trolin_rec.quantity = fnd_api.g_miss_num THEN
1216 l_trolin_rec.quantity := p_old_trolin_rec.quantity;
1217 END IF;
1218
1219 IF l_trolin_rec.quantity_delivered = fnd_api.g_miss_num THEN
1220 l_trolin_rec.quantity_delivered := p_old_trolin_rec.quantity_delivered;
1221 END IF;
1222
1223 IF l_trolin_rec.quantity_detailed = fnd_api.g_miss_num THEN
1224 l_trolin_rec.quantity_detailed := p_old_trolin_rec.quantity_detailed;
1225 END IF;
1226
1227 IF l_trolin_rec.reason_id = fnd_api.g_miss_num THEN
1228 l_trolin_rec.reason_id := p_old_trolin_rec.reason_id;
1229 END IF;
1230
1231 IF l_trolin_rec.REFERENCE = fnd_api.g_miss_char THEN
1232 l_trolin_rec.REFERENCE := p_old_trolin_rec.REFERENCE;
1233 END IF;
1234
1235 IF l_trolin_rec.reference_id = fnd_api.g_miss_num THEN
1236 l_trolin_rec.reference_id := p_old_trolin_rec.reference_id;
1237 END IF;
1238
1239 IF l_trolin_rec.reference_type_code = fnd_api.g_miss_num THEN
1240 l_trolin_rec.reference_type_code := p_old_trolin_rec.reference_type_code;
1241 END IF;
1242
1243 IF l_trolin_rec.request_id = fnd_api.g_miss_num THEN
1244 l_trolin_rec.request_id := p_old_trolin_rec.request_id;
1245 END IF;
1246
1247 IF l_trolin_rec.revision = fnd_api.g_miss_char THEN
1248 l_trolin_rec.revision := p_old_trolin_rec.revision;
1249 END IF;
1250
1251 IF l_trolin_rec.serial_number_end = fnd_api.g_miss_char THEN
1252 l_trolin_rec.serial_number_end := p_old_trolin_rec.serial_number_end;
1253 END IF;
1254
1255 IF l_trolin_rec.serial_number_start = fnd_api.g_miss_char THEN
1256 l_trolin_rec.serial_number_start := p_old_trolin_rec.serial_number_start;
1257 END IF;
1258
1259 IF l_trolin_rec.status_date = fnd_api.g_miss_date THEN
1260 l_trolin_rec.status_date := p_old_trolin_rec.status_date;
1261 END IF;
1262
1263 IF l_trolin_rec.task_id = fnd_api.g_miss_num THEN
1264 l_trolin_rec.task_id := p_old_trolin_rec.task_id;
1265 END IF;
1266
1267 IF l_trolin_rec.to_account_id = fnd_api.g_miss_num THEN
1268 l_trolin_rec.to_account_id := p_old_trolin_rec.to_account_id;
1269 END IF;
1270
1271 IF l_trolin_rec.to_locator_id = fnd_api.g_miss_num THEN
1272 l_trolin_rec.to_locator_id := p_old_trolin_rec.to_locator_id;
1273 END IF;
1274
1275 IF l_trolin_rec.to_subinventory_code = fnd_api.g_miss_char THEN
1276 l_trolin_rec.to_subinventory_code := p_old_trolin_rec.to_subinventory_code;
1277 END IF;
1278
1279 IF l_trolin_rec.to_subinventory_id = fnd_api.g_miss_num THEN
1280 l_trolin_rec.to_subinventory_id := p_old_trolin_rec.to_subinventory_id;
1281 END IF;
1282
1283 IF l_trolin_rec.transaction_header_id = fnd_api.g_miss_num THEN
1284 l_trolin_rec.transaction_header_id := p_old_trolin_rec.transaction_header_id;
1285 END IF;
1286
1287 IF l_trolin_rec.uom_code = fnd_api.g_miss_char THEN
1288 l_trolin_rec.uom_code := p_old_trolin_rec.uom_code;
1289 END IF;
1290
1291 IF l_trolin_rec.transaction_type_id = fnd_api.g_miss_num THEN
1292 l_trolin_rec.transaction_type_id := p_old_trolin_rec.transaction_type_id;
1293 END IF;
1294
1295 IF l_trolin_rec.transaction_source_type_id = fnd_api.g_miss_num THEN
1296 l_trolin_rec.transaction_source_type_id := p_old_trolin_rec.transaction_source_type_id;
1297 END IF;
1298
1299 IF l_trolin_rec.txn_source_id = fnd_api.g_miss_num THEN
1300 l_trolin_rec.txn_source_id := p_old_trolin_rec.txn_source_id;
1301 END IF;
1302
1303 IF l_trolin_rec.txn_source_line_id = fnd_api.g_miss_num THEN
1304 l_trolin_rec.txn_source_line_id := p_old_trolin_rec.txn_source_line_id;
1305 END IF;
1306
1307 IF l_trolin_rec.txn_source_line_detail_id = fnd_api.g_miss_num THEN
1308 l_trolin_rec.txn_source_line_detail_id := p_old_trolin_rec.txn_source_line_detail_id;
1309 END IF;
1310
1311 IF l_trolin_rec.primary_quantity = fnd_api.g_miss_num THEN
1312 l_trolin_rec.primary_quantity := p_old_trolin_rec.primary_quantity;
1313 END IF;
1314
1315 IF l_trolin_rec.to_organization_id = fnd_api.g_miss_num THEN
1316 l_trolin_rec.to_organization_id := p_old_trolin_rec.to_organization_id;
1317 END IF;
1318
1319 IF l_trolin_rec.pick_strategy_id = fnd_api.g_miss_num THEN
1320 l_trolin_rec.pick_strategy_id := p_old_trolin_rec.pick_strategy_id;
1321 END IF;
1322
1323 IF l_trolin_rec.put_away_strategy_id = fnd_api.g_miss_num THEN
1324 l_trolin_rec.put_away_strategy_id := p_old_trolin_rec.put_away_strategy_id;
1325 END IF;
1326
1327 IF l_trolin_rec.unit_number = fnd_api.g_miss_char THEN
1328 l_trolin_rec.unit_number := p_old_trolin_rec.unit_number;
1329 END IF;
1330
1331 IF l_trolin_rec.ship_to_location_id = fnd_api.g_miss_num THEN
1332 l_trolin_rec.ship_to_location_id := p_old_trolin_rec.ship_to_location_id;
1333 END IF;
1334
1335 IF l_trolin_rec.from_cost_group_id = fnd_api.g_miss_num THEN
1336 l_trolin_rec.from_cost_group_id := p_old_trolin_rec.from_cost_group_id;
1337 END IF;
1338
1339 IF l_trolin_rec.to_cost_group_id = fnd_api.g_miss_num THEN
1340 l_trolin_rec.to_cost_group_id := p_old_trolin_rec.to_cost_group_id;
1341 END IF;
1342
1343 IF l_trolin_rec.lpn_id = fnd_api.g_miss_num THEN
1344 l_trolin_rec.lpn_id := p_old_trolin_rec.lpn_id;
1345 END IF;
1346
1347 IF l_trolin_rec.to_lpn_id = fnd_api.g_miss_num THEN
1348 l_trolin_rec.to_lpn_id := p_old_trolin_rec.to_lpn_id;
1349 END IF;
1350
1351 IF l_trolin_rec.pick_methodology_id = fnd_api.g_miss_num THEN
1352 l_trolin_rec.pick_methodology_id := p_old_trolin_rec.pick_methodology_id;
1353 END IF;
1354
1355 IF l_trolin_rec.container_item_id = fnd_api.g_miss_num THEN
1356 l_trolin_rec.container_item_id := p_old_trolin_rec.container_item_id;
1357 END IF;
1358
1359 IF l_trolin_rec.carton_grouping_id = fnd_api.g_miss_num THEN
1360 l_trolin_rec.carton_grouping_id := p_old_trolin_rec.carton_grouping_id;
1361 END IF;
1362
1363 --INVCONV BEGIN
1364 IF l_trolin_rec.secondary_quantity = fnd_api.g_miss_num THEN
1365 l_trolin_rec.secondary_quantity := p_old_trolin_rec.secondary_quantity;
1366 END IF;
1367
1368 --Bug #4565509 - Should update secondary quantities from old records
1369 IF l_trolin_rec.secondary_quantity_delivered = fnd_api.g_miss_num THEN
1370 l_trolin_rec.secondary_quantity_delivered := p_old_trolin_rec.secondary_quantity_delivered;
1371 END IF;
1372
1373 IF l_trolin_rec.secondary_quantity_detailed = fnd_api.g_miss_num THEN
1374 l_trolin_rec.secondary_quantity_detailed := p_old_trolin_rec.secondary_quantity_detailed;
1375 END IF;
1376
1377 IF l_trolin_rec.secondary_uom = fnd_api.g_miss_char THEN
1378 l_trolin_rec.secondary_uom := p_old_trolin_rec.secondary_uom;
1379 END IF;
1380
1381 IF l_trolin_rec.grade_code = fnd_api.g_miss_char THEN
1382 l_trolin_rec.grade_code := p_old_trolin_rec.grade_code;
1383 END IF;
1384
1385 -- INVCONV END;
1386
1387 RETURN l_trolin_rec;
1388 END complete_record;
1389
1390 -- Function Convert_Miss_To_Null
1391
1392 FUNCTION convert_miss_to_null(p_trolin_rec IN inv_move_order_pub.trolin_rec_type)
1393 RETURN inv_move_order_pub.trolin_rec_type IS
1394 l_trolin_rec inv_move_order_pub.trolin_rec_type := p_trolin_rec;
1395 BEGIN
1396 /*inv_debug.message('in convert');*/
1397 IF l_trolin_rec.attribute1 = fnd_api.g_miss_char THEN
1398 l_trolin_rec.attribute1 := NULL;
1399 END IF;
1400
1401 IF l_trolin_rec.attribute10 = fnd_api.g_miss_char THEN
1402 l_trolin_rec.attribute10 := NULL;
1403 END IF;
1404
1405 IF l_trolin_rec.attribute11 = fnd_api.g_miss_char THEN
1406 l_trolin_rec.attribute11 := NULL;
1407 END IF;
1408
1409 IF l_trolin_rec.attribute12 = fnd_api.g_miss_char THEN
1410 l_trolin_rec.attribute12 := NULL;
1411 END IF;
1412
1413 IF l_trolin_rec.attribute13 = fnd_api.g_miss_char THEN
1414 l_trolin_rec.attribute13 := NULL;
1415 END IF;
1416
1417 IF l_trolin_rec.attribute14 = fnd_api.g_miss_char THEN
1418 l_trolin_rec.attribute14 := NULL;
1419 END IF;
1420
1421 IF l_trolin_rec.attribute15 = fnd_api.g_miss_char THEN
1422 l_trolin_rec.attribute15 := NULL;
1423 END IF;
1424
1425 IF l_trolin_rec.attribute2 = fnd_api.g_miss_char THEN
1426 l_trolin_rec.attribute2 := NULL;
1427 END IF;
1428
1429 IF l_trolin_rec.attribute3 = fnd_api.g_miss_char THEN
1430 l_trolin_rec.attribute3 := NULL;
1431 END IF;
1432
1433 IF l_trolin_rec.attribute4 = fnd_api.g_miss_char THEN
1434 l_trolin_rec.attribute4 := NULL;
1435 END IF;
1436
1437 IF l_trolin_rec.attribute5 = fnd_api.g_miss_char THEN
1438 l_trolin_rec.attribute5 := NULL;
1439 END IF;
1440
1441 IF l_trolin_rec.attribute6 = fnd_api.g_miss_char THEN
1442 l_trolin_rec.attribute6 := NULL;
1443 END IF;
1444
1445 IF l_trolin_rec.attribute7 = fnd_api.g_miss_char THEN
1446 l_trolin_rec.attribute7 := NULL;
1447 END IF;
1448
1449 IF l_trolin_rec.attribute8 = fnd_api.g_miss_char THEN
1450 l_trolin_rec.attribute8 := NULL;
1451 END IF;
1452
1453 IF l_trolin_rec.attribute9 = fnd_api.g_miss_char THEN
1454 l_trolin_rec.attribute9 := NULL;
1455 END IF;
1456
1457 IF l_trolin_rec.attribute_category = fnd_api.g_miss_char THEN
1458 l_trolin_rec.attribute_category := NULL;
1459 END IF;
1460
1461 IF l_trolin_rec.created_by = fnd_api.g_miss_num THEN
1462 l_trolin_rec.created_by := NULL;
1463 END IF;
1464
1465 IF l_trolin_rec.creation_date = fnd_api.g_miss_date THEN
1466 l_trolin_rec.creation_date := NULL;
1467 END IF;
1468
1469 IF l_trolin_rec.date_required = fnd_api.g_miss_date THEN
1470 l_trolin_rec.date_required := NULL;
1471 END IF;
1472
1473 IF l_trolin_rec.from_locator_id = fnd_api.g_miss_num THEN
1474 l_trolin_rec.from_locator_id := NULL;
1475 END IF;
1476
1477 IF l_trolin_rec.from_subinventory_code = fnd_api.g_miss_char THEN
1478 l_trolin_rec.from_subinventory_code := NULL;
1479 END IF;
1480
1481 IF l_trolin_rec.from_subinventory_id = fnd_api.g_miss_num THEN
1482 l_trolin_rec.from_subinventory_id := NULL;
1483 END IF;
1484
1485 IF l_trolin_rec.header_id = fnd_api.g_miss_num THEN
1486 l_trolin_rec.header_id := NULL;
1487 END IF;
1488
1489 IF l_trolin_rec.inventory_item_id = fnd_api.g_miss_num THEN
1490 l_trolin_rec.inventory_item_id := NULL;
1491 END IF;
1492
1493 IF l_trolin_rec.last_updated_by = fnd_api.g_miss_num THEN
1494 l_trolin_rec.last_updated_by := NULL;
1495 END IF;
1496
1497 IF l_trolin_rec.last_update_date = fnd_api.g_miss_date THEN
1498 l_trolin_rec.last_update_date := NULL;
1499 END IF;
1500
1501 IF l_trolin_rec.last_update_login = fnd_api.g_miss_num THEN
1502 l_trolin_rec.last_update_login := NULL;
1503 END IF;
1504
1505 IF l_trolin_rec.line_id = fnd_api.g_miss_num THEN
1506 l_trolin_rec.line_id := NULL;
1507 END IF;
1508
1509 IF l_trolin_rec.line_number = fnd_api.g_miss_num THEN
1510 l_trolin_rec.line_number := NULL;
1511 END IF;
1512
1513 IF l_trolin_rec.line_status = fnd_api.g_miss_num THEN
1514 l_trolin_rec.line_status := NULL;
1515 END IF;
1516
1517 IF l_trolin_rec.lot_number = fnd_api.g_miss_char THEN
1518 l_trolin_rec.lot_number := NULL;
1519 END IF;
1520
1521 IF l_trolin_rec.organization_id = fnd_api.g_miss_num THEN
1522 l_trolin_rec.organization_id := NULL;
1523 END IF;
1524
1525 IF l_trolin_rec.program_application_id = fnd_api.g_miss_num THEN
1526 l_trolin_rec.program_application_id := NULL;
1527 END IF;
1528
1529 IF l_trolin_rec.program_id = fnd_api.g_miss_num THEN
1530 l_trolin_rec.program_id := NULL;
1531 END IF;
1532
1533 IF l_trolin_rec.program_update_date = fnd_api.g_miss_date THEN
1534 l_trolin_rec.program_update_date := NULL;
1535 END IF;
1536
1537 IF l_trolin_rec.project_id = fnd_api.g_miss_num THEN
1538 l_trolin_rec.project_id := NULL;
1539 END IF;
1540
1541 IF l_trolin_rec.quantity = fnd_api.g_miss_num THEN
1542 l_trolin_rec.quantity := NULL;
1543 END IF;
1544
1545 IF l_trolin_rec.quantity_delivered = fnd_api.g_miss_num THEN
1546 l_trolin_rec.quantity_delivered := NULL;
1547 END IF;
1548
1549 IF l_trolin_rec.quantity_detailed = fnd_api.g_miss_num THEN
1550 l_trolin_rec.quantity_detailed := NULL;
1551 END IF;
1552
1553 IF l_trolin_rec.reason_id = fnd_api.g_miss_num THEN
1554 l_trolin_rec.reason_id := NULL;
1555 END IF;
1556
1557 IF l_trolin_rec.REFERENCE = fnd_api.g_miss_char THEN
1558 l_trolin_rec.REFERENCE := NULL;
1559 END IF;
1560
1561 IF l_trolin_rec.reference_id = fnd_api.g_miss_num THEN
1562 l_trolin_rec.reference_id := NULL;
1563 END IF;
1564
1565 IF l_trolin_rec.reference_type_code = fnd_api.g_miss_num THEN
1566 l_trolin_rec.reference_type_code := NULL;
1567 END IF;
1568
1569 IF l_trolin_rec.request_id = fnd_api.g_miss_num THEN
1570 l_trolin_rec.request_id := NULL;
1571 END IF;
1572
1573 IF l_trolin_rec.revision = fnd_api.g_miss_char THEN
1574 l_trolin_rec.revision := NULL;
1575 END IF;
1576
1577 IF l_trolin_rec.serial_number_end = fnd_api.g_miss_char THEN
1578 l_trolin_rec.serial_number_end := NULL;
1579 END IF;
1580
1581 IF l_trolin_rec.serial_number_start = fnd_api.g_miss_char THEN
1582 l_trolin_rec.serial_number_start := NULL;
1583 END IF;
1584
1585 IF l_trolin_rec.status_date = fnd_api.g_miss_date THEN
1586 l_trolin_rec.status_date := NULL;
1587 END IF;
1588
1589 IF l_trolin_rec.task_id = fnd_api.g_miss_num THEN
1590 l_trolin_rec.task_id := NULL;
1591 END IF;
1592
1593 IF l_trolin_rec.to_account_id = fnd_api.g_miss_num THEN
1594 l_trolin_rec.to_account_id := NULL;
1595 END IF;
1596
1597 IF l_trolin_rec.to_locator_id = fnd_api.g_miss_num THEN
1598 l_trolin_rec.to_locator_id := NULL;
1599 END IF;
1600
1601 IF l_trolin_rec.to_subinventory_code = fnd_api.g_miss_char THEN
1602 l_trolin_rec.to_subinventory_code := NULL;
1603 END IF;
1604
1605 IF l_trolin_rec.to_subinventory_id = fnd_api.g_miss_num THEN
1606 l_trolin_rec.to_subinventory_id := NULL;
1607 END IF;
1608
1609 IF l_trolin_rec.transaction_header_id = fnd_api.g_miss_num THEN
1610 l_trolin_rec.transaction_header_id := NULL;
1611 END IF;
1612
1613 IF l_trolin_rec.uom_code = fnd_api.g_miss_char THEN
1614 l_trolin_rec.uom_code := NULL;
1615 END IF;
1616
1617 --INVCONV BEGIN
1618 IF l_trolin_rec.secondary_quantity = fnd_api.g_miss_num THEN
1619 l_trolin_rec.secondary_quantity := NULL;
1620 END IF;
1621
1622 --Bug #4565509 - Should set secondary quantities
1623 IF l_trolin_rec.secondary_quantity_delivered = fnd_api.g_miss_num THEN
1624 l_trolin_rec.secondary_quantity_delivered := NULL;
1625 END IF;
1626
1627 IF l_trolin_rec.secondary_quantity_detailed = fnd_api.g_miss_num THEN
1628 l_trolin_rec.secondary_quantity_detailed := NULL;
1629 END IF;
1630
1631 IF l_trolin_rec.secondary_uom = fnd_api.g_miss_char THEN
1632 l_trolin_rec.secondary_uom := NULL;
1633 END IF;
1634
1635 IF l_trolin_rec.grade_code = fnd_api.g_miss_char THEN
1636 l_trolin_rec.grade_code := NULL;
1637 END IF;
1638 /*Bug#5764123. Added the below code to NULL out 'pick_methodology_id',
1639 'container_item_id' and 'carton_grouping_id', if their value is MISS_NUM.*/
1640 IF (l_trolin_rec.pick_methodology_id = fnd_api.g_miss_num) THEN
1641 l_trolin_rec.pick_methodology_id := NULL;
1642 END IF;
1643 IF (l_trolin_rec.container_item_id = fnd_api.g_miss_num) THEN
1644 l_trolin_rec.container_item_id := NULL;
1645 END IF;
1646 IF (l_trolin_rec.carton_grouping_id = fnd_api.g_miss_num) THEN
1647 l_trolin_rec.carton_grouping_id := NULL;
1648 END IF;
1649
1650 -- INVCONV END;
1651 /* IF l_trolin_rec.transaction_type_id = FND_API.G_MISS_NUM THEN
1652 l_trolin_rec.transaction_type_id := NULL;
1653 END IF;
1654
1655 IF l_trolin_rec.transaction_source_type_id = FND_API.G_MISS_NUM THEN
1656 l_trolin_rec.transaction_source_type_id := NULL;
1657 END IF;
1658
1659 IF l_trolin_rec.txn_source_id = FND_API.G_MISS_NUM THEN
1660 l_trolin_rec.txn_source_id := NULL;
1661 END IF;
1662
1663 IF l_trolin_rec.txn_source_line_id = FND_API.G_MISS_NUM THEN
1664 l_trolin_rec.txn_source_line_id := NULL;
1665 END IF;
1666
1667 IF l_trolin_rec.txn_source_line_detail_id = FND_API.G_MISS_NUM THEN
1668 l_trolin_rec.txn_source_line_detail_id := NULL;
1669 END IF;
1670
1671 IF l_trolin_rec.to_organization_id = FND_API.G_MISS_NUM THEN
1672 l_trolin_rec.to_organization_id := NULL;
1673 END IF;
1674
1675 IF l_trolin_rec.primary_quantity = FND_API.G_MISS_NUM THEN
1676 l_trolin_rec.primary_quantity := NULL;
1677 END IF;
1678
1679 IF l_trolin_rec.pick_strategy_id = FND_API.G_MISS_NUM THEN
1680 l_trolin_rec.pick_strategy_id := NULL;
1681 END IF;
1682
1683 IF l_trolin_rec.put_away_strategy_id = FND_API.G_MISS_NUM THEN
1684 l_trolin_rec.put_away_strategy_id := NULL;
1685 END IF;
1686 */
1687 RETURN l_trolin_rec;
1688 END convert_miss_to_null;
1689
1690 -- Function Convert_Miss_To_Null_Parallel /*For Parallel Pick-Release*/
1691
1692 FUNCTION convert_miss_to_null_parallel(p_trolin_rec IN inv_move_order_pub.trolin_rec_type)
1693 RETURN inv_move_order_pub.trolin_rec_type IS
1694 l_trolin_rec inv_move_order_pub.trolin_rec_type := p_trolin_rec;
1695
1696 BEGIN
1697 l_trolin_rec := inv_trolin_util.convert_miss_to_null(p_trolin_rec => l_trolin_rec);
1698
1699 IF l_trolin_rec.transaction_type_id = FND_API.G_MISS_NUM THEN
1700 l_trolin_rec.transaction_type_id := NULL;
1701 END IF;
1702
1703 IF l_trolin_rec.transaction_source_type_id = FND_API.G_MISS_NUM THEN
1704 l_trolin_rec.transaction_source_type_id := NULL;
1705 END IF;
1706
1707 IF l_trolin_rec.txn_source_id = FND_API.G_MISS_NUM THEN
1708 l_trolin_rec.txn_source_id := NULL;
1709 END IF;
1710
1711 IF l_trolin_rec.txn_source_line_id = FND_API.G_MISS_NUM THEN
1712 l_trolin_rec.txn_source_line_id := NULL;
1713 END IF;
1714
1715 IF l_trolin_rec.txn_source_line_detail_id = FND_API.G_MISS_NUM THEN
1716 l_trolin_rec.txn_source_line_detail_id := NULL;
1717 END IF;
1718
1719 IF l_trolin_rec.to_organization_id = FND_API.G_MISS_NUM THEN
1720 l_trolin_rec.to_organization_id := NULL;
1721 END IF;
1722
1723 IF l_trolin_rec.primary_quantity = FND_API.G_MISS_NUM THEN
1724 l_trolin_rec.primary_quantity := NULL;
1725 END IF;
1726
1727 IF l_trolin_rec.pick_strategy_id = FND_API.G_MISS_NUM THEN
1728 l_trolin_rec.pick_strategy_id := NULL;
1729 END IF;
1730
1731 IF l_trolin_rec.put_away_strategy_id = FND_API.G_MISS_NUM THEN
1732 l_trolin_rec.put_away_strategy_id := NULL;
1733 END IF;
1734
1735 IF l_trolin_rec.ship_to_location_id = FND_API.G_MISS_NUM THEN
1736 l_trolin_rec.ship_to_location_id := NULL;
1737 END IF;
1738
1739 IF l_trolin_rec.from_cost_group_id = FND_API.G_MISS_NUM THEN
1740 l_trolin_rec.from_cost_group_id := NULL;
1741 END IF;
1742
1743 IF l_trolin_rec.to_cost_group_id = FND_API.G_MISS_NUM THEN
1744 l_trolin_rec.to_cost_group_id := NULL;
1745 END IF;
1746
1747 IF l_trolin_rec.lpn_id = FND_API.G_MISS_NUM THEN
1748 l_trolin_rec.lpn_id := NULL;
1749 END IF;
1750
1751 IF l_trolin_rec.to_lpn_id = FND_API.G_MISS_NUM THEN
1752 l_trolin_rec.to_lpn_id := NULL;
1753 END IF;
1754
1755 IF l_trolin_rec.pick_methodology_id = FND_API.G_MISS_NUM THEN
1756 l_trolin_rec.pick_methodology_id := NULL;
1757 END IF;
1758
1759 IF l_trolin_rec.container_item_id = FND_API.G_MISS_NUM THEN
1760 l_trolin_rec.container_item_id := NULL;
1761 END IF;
1762
1763 IF l_trolin_rec.carton_grouping_id = FND_API.G_MISS_NUM THEN
1764 l_trolin_rec.carton_grouping_id := NULL;
1765 END IF;
1766
1767 return l_trolin_rec;
1768
1769 END convert_miss_to_null_parallel;
1770
1771
1772 -- Bug#2536932: Function convert_miss_to_null
1773 -- Converts all Miss Number, Char and Date to NULL Values.
1774
1775 FUNCTION convert_miss_to_null (p_trolin_val_rec INV_MOVE_ORDER_PUB.TROLIN_VAL_REC_TYPE)
1776 RETURN INV_MOVE_ORDER_PUB.TROLIN_VAL_REC_TYPE IS
1777 l_trolin_val_rec INV_MOVE_ORDER_PUB.trolin_val_rec_type := p_trolin_val_rec;
1778 BEGIN
1779 IF l_trolin_val_rec.from_locator = FND_API.G_MISS_CHAR THEN
1780 l_trolin_val_rec.from_locator := NULL;
1781 END IF;
1782
1783 IF l_trolin_val_rec.header = FND_API.G_MISS_CHAR THEN
1784 l_trolin_val_rec.header := NULL;
1785 END IF;
1786
1787 IF l_trolin_val_rec.from_subinventory = FND_API.G_MISS_CHAR THEN
1788 l_trolin_val_rec.from_subinventory := NULL;
1789 END IF;
1790
1791 IF l_trolin_val_rec.inventory_item = FND_API.G_MISS_CHAR THEN
1792 l_trolin_val_rec.inventory_item := NULL;
1793 END IF;
1794
1795 IF l_trolin_val_rec.line = FND_API.G_MISS_CHAR THEN
1796 l_trolin_val_rec.line := NULL;
1797 END IF;
1798
1799 IF l_trolin_val_rec.organization = FND_API.G_MISS_CHAR THEN
1800 l_trolin_val_rec.organization := NULL;
1801 END IF;
1802
1803 IF l_trolin_val_rec.project = FND_API.G_MISS_CHAR THEN
1804 l_trolin_val_rec.project := NULL;
1805 END IF;
1806
1807 IF l_trolin_val_rec.reason = FND_API.G_MISS_CHAR THEN
1808 l_trolin_val_rec.reason := NULL;
1809 END IF;
1810
1811 IF l_trolin_val_rec.reference = FND_API.G_MISS_CHAR THEN
1812 l_trolin_val_rec.reference := NULL;
1813 END IF;
1814
1815 IF l_trolin_val_rec.reference_type = FND_API.G_MISS_CHAR THEN
1816 l_trolin_val_rec.reference_type := NULL;
1817 END IF;
1818
1819 IF l_trolin_val_rec.task = FND_API.G_MISS_CHAR THEN
1820 l_trolin_val_rec.task := NULL;
1821 END IF;
1822
1823 IF l_trolin_val_rec.to_account = FND_API.G_MISS_CHAR THEN
1824 l_trolin_val_rec.to_account := NULL;
1825 END IF;
1826
1827 IF l_trolin_val_rec.to_locator = FND_API.G_MISS_CHAR THEN
1828 l_trolin_val_rec.to_locator := NULL;
1829 END IF;
1830
1831 IF l_trolin_val_rec.to_subinventory = FND_API.G_MISS_CHAR THEN
1832 l_trolin_val_rec.to_subinventory := NULL;
1833 END IF;
1834
1835 IF l_trolin_val_rec.transaction_header = FND_API.G_MISS_CHAR THEN
1836 l_trolin_val_rec.transaction_header := NULL;
1837 END IF;
1838
1839 IF l_trolin_val_rec.uom = FND_API.G_MISS_CHAR THEN
1840 l_trolin_val_rec.uom := NULL;
1841 END IF;
1842
1843 IF l_trolin_val_rec.transaction_type = FND_API.G_MISS_CHAR THEN
1844 l_trolin_val_rec.transaction_type := NULL;
1845 END IF;
1846
1847 IF l_trolin_val_rec.to_organization = FND_API.G_MISS_CHAR THEN
1848 l_trolin_val_rec.to_organization := NULL;
1849 END IF;
1850
1851 RETURN l_trolin_val_rec;
1852 END convert_miss_to_null;
1853
1854 -- Procedure Update_Row
1855
1856 PROCEDURE update_row(p_trolin_rec IN inv_move_order_pub.trolin_rec_type) IS
1857 BEGIN
1858 UPDATE mtl_txn_request_lines
1859 SET attribute1 = p_trolin_rec.attribute1
1860 , attribute10 = p_trolin_rec.attribute10
1861 , attribute11 = p_trolin_rec.attribute11
1862 , attribute12 = p_trolin_rec.attribute12
1863 , attribute13 = p_trolin_rec.attribute13
1864 , attribute14 = p_trolin_rec.attribute14
1865 , attribute15 = p_trolin_rec.attribute15
1866 , attribute2 = p_trolin_rec.attribute2
1867 , attribute3 = p_trolin_rec.attribute3
1868 , attribute4 = p_trolin_rec.attribute4
1869 , attribute5 = p_trolin_rec.attribute5
1870 , attribute6 = p_trolin_rec.attribute6
1871 , attribute7 = p_trolin_rec.attribute7
1872 , attribute8 = p_trolin_rec.attribute8
1873 , attribute9 = p_trolin_rec.attribute9
1874 , attribute_category = p_trolin_rec.attribute_category
1875 , created_by = p_trolin_rec.created_by
1876 , creation_date = p_trolin_rec.creation_date
1877 , date_required = p_trolin_rec.date_required
1878 , from_locator_id = p_trolin_rec.from_locator_id
1879 , from_subinventory_code = p_trolin_rec.from_subinventory_code
1880 , from_subinventory_id = p_trolin_rec.from_subinventory_id
1881 , header_id = p_trolin_rec.header_id
1882 , inventory_item_id = p_trolin_rec.inventory_item_id
1883 , last_updated_by = p_trolin_rec.last_updated_by
1884 , last_update_date = p_trolin_rec.last_update_date
1885 , last_update_login = p_trolin_rec.last_update_login
1886 , line_id = p_trolin_rec.line_id
1887 , line_number = p_trolin_rec.line_number
1888 , line_status = p_trolin_rec.line_status
1889 , lot_number = p_trolin_rec.lot_number
1890 , organization_id = p_trolin_rec.organization_id
1891 , program_application_id = p_trolin_rec.program_application_id
1892 , program_id = p_trolin_rec.program_id
1893 , program_update_date = p_trolin_rec.program_update_date
1894 , project_id = p_trolin_rec.project_id
1895 , quantity = p_trolin_rec.quantity
1896 , quantity_delivered = p_trolin_rec.quantity_delivered
1897 , quantity_detailed = p_trolin_rec.quantity_detailed
1898 , reason_id = p_trolin_rec.reason_id
1899 , REFERENCE = p_trolin_rec.REFERENCE
1900 , reference_id = p_trolin_rec.reference_id
1901 , reference_type_code = p_trolin_rec.reference_type_code
1902 , request_id = p_trolin_rec.request_id
1903 , revision = p_trolin_rec.revision
1904 , serial_number_end = p_trolin_rec.serial_number_end
1905 , serial_number_start = p_trolin_rec.serial_number_start
1906 , status_date = p_trolin_rec.status_date
1907 , task_id = p_trolin_rec.task_id
1908 , to_account_id = p_trolin_rec.to_account_id
1909 , to_locator_id = p_trolin_rec.to_locator_id
1910 , to_subinventory_code = p_trolin_rec.to_subinventory_code
1911 , to_subinventory_id = p_trolin_rec.to_subinventory_id
1912 , transaction_header_id = p_trolin_rec.transaction_header_id
1913 , uom_code = p_trolin_rec.uom_code
1914 , transaction_type_id = p_trolin_rec.transaction_type_id
1915 , transaction_source_type_id = p_trolin_rec.transaction_source_type_id
1916 , txn_source_id = p_trolin_rec.txn_source_id
1917 , txn_source_line_id = p_trolin_rec.txn_source_line_id
1918 , txn_source_line_detail_id = p_trolin_rec.txn_source_line_detail_id
1919 , to_organization_id = p_trolin_rec.to_organization_id
1920 , primary_quantity = p_trolin_rec.primary_quantity
1921 , pick_strategy_id = p_trolin_rec.pick_strategy_id
1922 , put_away_strategy_id = p_trolin_rec.put_away_strategy_id
1923 , unit_number = p_trolin_rec.unit_number
1924 , ship_to_location_id = p_trolin_rec.ship_to_location_id
1925 , from_cost_group_id = p_trolin_rec.from_cost_group_id
1926 , to_cost_group_id = p_trolin_rec.to_cost_group_id
1927 , lpn_id = p_trolin_rec.lpn_id
1928 , to_lpn_id = p_trolin_rec.to_lpn_id
1929 , inspection_status = p_trolin_rec.inspection_status
1930 , pick_methodology_id = p_trolin_rec.pick_methodology_id
1931 , container_item_id = p_trolin_rec.container_item_id
1932 , carton_grouping_id = p_trolin_rec.carton_grouping_id
1933 , wms_process_flag = p_trolin_rec.wms_process_flag
1934 , pick_slip_number = p_trolin_rec.pick_slip_number
1935 , pick_slip_date = p_trolin_rec.pick_slip_date
1936 , ship_set_id = p_trolin_rec.ship_set_id
1937 , ship_model_id = p_trolin_rec.ship_model_id
1938 , model_quantity = p_trolin_rec.model_quantity
1939 , required_quantity = p_trolin_rec.required_quantity
1940 --INVCONV BEGIN
1941 , secondary_quantity = p_trolin_rec.secondary_quantity
1942 , secondary_quantity_delivered = p_trolin_rec.secondary_quantity_delivered
1943 , secondary_quantity_detailed = p_trolin_rec.secondary_quantity_detailed
1944 , secondary_uom_code = p_trolin_rec.secondary_uom
1945 , secondary_required_quantity = p_trolin_rec.secondary_required_quantity
1946 , grade_code = p_trolin_rec.grade_code
1947 --INVCONV END;
1948 WHERE line_id = p_trolin_rec.line_id;
1949 EXCEPTION
1950 WHEN OTHERS THEN
1951 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
1952 fnd_msg_pub.add_exc_msg(g_pkg_name, 'Update_Row');
1953 END IF;
1954
1955 RAISE fnd_api.g_exc_unexpected_error;
1956 END update_row;
1957
1958 -- Procedure Update_Row_Status
1959
1960 PROCEDURE update_row_status(p_line_id IN NUMBER, p_status IN NUMBER) IS
1961 l_trolin_rec inv_move_order_pub.trolin_rec_type;
1962 BEGIN
1963 l_trolin_rec := inv_trolin_util.query_row(p_line_id);
1964 l_trolin_rec.line_status := p_status;
1965 l_trolin_rec.last_update_date := SYSDATE;
1966 l_trolin_rec.status_date := SYSDATE; -- For Bug # 5053725
1967 l_trolin_rec.last_updated_by := fnd_global.user_id;
1968 l_trolin_rec.last_update_login := fnd_global.login_id;
1969 inv_trolin_util.update_row(l_trolin_rec);
1970 EXCEPTION
1971 WHEN OTHERS THEN
1972 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
1973 fnd_msg_pub.add_exc_msg(g_pkg_name, 'Update_Row_Status');
1974 END IF;
1975
1976 RAISE fnd_api.g_exc_unexpected_error;
1977 END update_row_status;
1978
1979 -- Procedure Insert_Row
1980
1981 PROCEDURE insert_row(p_trolin_rec IN inv_move_order_pub.trolin_rec_type) IS
1982 BEGIN
1983 INSERT INTO mtl_txn_request_lines
1984 (
1985 attribute1
1986 , attribute10
1987 , attribute11
1988 , attribute12
1989 , attribute13
1990 , attribute14
1991 , attribute15
1992 , attribute2
1993 , attribute3
1994 , attribute4
1995 , attribute5
1996 , attribute6
1997 , attribute7
1998 , attribute8
1999 , attribute9
2000 , attribute_category
2001 , created_by
2002 , creation_date
2003 , date_required
2004 , from_locator_id
2005 , from_subinventory_code
2006 , from_subinventory_id
2007 , header_id
2008 , inventory_item_id
2009 , last_updated_by
2010 , last_update_date
2011 , last_update_login
2012 , line_id
2013 , line_number
2014 , line_status
2015 , lot_number
2016 , organization_id
2017 , program_application_id
2018 , program_id
2019 , program_update_date
2020 , project_id
2021 , quantity
2022 , quantity_delivered
2023 , quantity_detailed
2024 , reason_id
2025 , REFERENCE
2026 , reference_id
2027 , reference_type_code
2028 , request_id
2029 , revision
2030 , serial_number_end
2031 , serial_number_start
2032 , status_date
2033 , task_id
2034 , to_account_id
2035 , to_locator_id
2036 , to_subinventory_code
2037 , to_subinventory_id
2038 , transaction_header_id
2039 , uom_code
2040 , transaction_type_id
2041 , transaction_source_type_id
2042 , txn_source_id
2043 , txn_source_line_id
2044 , txn_source_line_detail_id
2045 , to_organization_id
2046 , primary_quantity
2047 , pick_strategy_id
2048 , put_away_strategy_id
2049 , unit_number
2050 , ship_to_location_id
2051 , from_cost_group_id
2052 , to_cost_group_id
2053 , lpn_id
2054 , to_lpn_id
2055 , inspection_status
2056 , pick_methodology_id
2057 , container_item_id
2058 , carton_grouping_id
2059 , wms_process_flag
2060 , pick_slip_number
2061 , pick_slip_date
2062 , ship_set_id
2063 , ship_model_id
2064 , model_quantity
2065 , required_quantity
2066 --INVCONV BEGIN
2067 , secondary_quantity
2068 , secondary_quantity_delivered
2069 , secondary_quantity_detailed
2070 , secondary_uom_code
2071 , secondary_required_quantity
2072 , grade_code
2073 --INVCONV END;
2074 )
2075 VALUES (
2076 p_trolin_rec.attribute1
2077 , p_trolin_rec.attribute10
2078 , p_trolin_rec.attribute11
2079 , p_trolin_rec.attribute12
2080 , p_trolin_rec.attribute13
2081 , p_trolin_rec.attribute14
2082 , p_trolin_rec.attribute15
2083 , p_trolin_rec.attribute2
2084 , p_trolin_rec.attribute3
2085 , p_trolin_rec.attribute4
2086 , p_trolin_rec.attribute5
2087 , p_trolin_rec.attribute6
2088 , p_trolin_rec.attribute7
2089 , p_trolin_rec.attribute8
2090 , p_trolin_rec.attribute9
2091 , p_trolin_rec.attribute_category
2092 , p_trolin_rec.created_by
2093 , p_trolin_rec.creation_date
2094 , p_trolin_rec.date_required
2095 , p_trolin_rec.from_locator_id
2096 , p_trolin_rec.from_subinventory_code
2097 , p_trolin_rec.from_subinventory_id
2098 , p_trolin_rec.header_id
2099 , p_trolin_rec.inventory_item_id
2100 , p_trolin_rec.last_updated_by
2101 , p_trolin_rec.last_update_date
2102 , p_trolin_rec.last_update_login
2103 , p_trolin_rec.line_id
2104 , p_trolin_rec.line_number
2105 , p_trolin_rec.line_status
2106 , p_trolin_rec.lot_number
2107 , p_trolin_rec.organization_id
2108 , p_trolin_rec.program_application_id
2109 , p_trolin_rec.program_id
2110 , p_trolin_rec.program_update_date
2111 , p_trolin_rec.project_id
2112 , p_trolin_rec.quantity
2113 , p_trolin_rec.quantity_delivered
2114 , p_trolin_rec.quantity_detailed
2115 , p_trolin_rec.reason_id
2116 , p_trolin_rec.REFERENCE
2117 , p_trolin_rec.reference_id
2118 , p_trolin_rec.reference_type_code
2119 , p_trolin_rec.request_id
2120 , p_trolin_rec.revision
2121 , p_trolin_rec.serial_number_end
2122 , p_trolin_rec.serial_number_start
2123 , p_trolin_rec.status_date
2124 , p_trolin_rec.task_id
2125 , p_trolin_rec.to_account_id
2126 , p_trolin_rec.to_locator_id
2127 , p_trolin_rec.to_subinventory_code
2128 , p_trolin_rec.to_subinventory_id
2129 , p_trolin_rec.transaction_header_id
2130 , p_trolin_rec.uom_code
2131 , p_trolin_rec.transaction_type_id
2132 , p_trolin_rec.transaction_source_type_id
2133 , p_trolin_rec.txn_source_id
2134 , p_trolin_rec.txn_source_line_id
2135 , p_trolin_rec.txn_source_line_detail_id
2136 , p_trolin_rec.to_organization_id
2137 , p_trolin_rec.primary_quantity
2138 , p_trolin_rec.pick_strategy_id
2139 , p_trolin_rec.put_away_strategy_id
2140 , p_trolin_rec.unit_number
2141 , p_trolin_rec.ship_to_location_id
2142 , p_trolin_rec.from_cost_group_id
2143 , p_trolin_rec.to_cost_group_id
2144 , p_trolin_rec.lpn_id
2145 , p_trolin_rec.to_lpn_id
2146 , p_trolin_rec.inspection_status
2147 , p_trolin_rec.pick_methodology_id
2148 , p_trolin_rec.container_item_id
2149 , p_trolin_rec.carton_grouping_id
2150 , p_trolin_rec.wms_process_flag
2151 , p_trolin_rec.pick_slip_number
2152 , p_trolin_rec.pick_slip_date
2153 , p_trolin_rec.ship_set_id
2154 , p_trolin_rec.ship_model_id
2155 , p_trolin_rec.model_quantity
2156 , p_trolin_rec.required_quantity
2157 --INVCONV BEGIN
2158 , p_trolin_rec.secondary_quantity
2159 , p_trolin_rec.secondary_quantity_delivered
2160 , p_trolin_rec.secondary_quantity_detailed
2161 , p_trolin_rec.secondary_uom
2162 , p_trolin_rec.secondary_required_quantity
2163 , p_trolin_rec.grade_code
2164 --INVCONV END;
2165 );
2166 EXCEPTION
2167 WHEN OTHERS THEN
2168 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
2169 fnd_msg_pub.add_exc_msg(g_pkg_name, 'Insert_Row');
2170 END IF;
2171
2172 RAISE fnd_api.g_exc_unexpected_error;
2173 END insert_row;
2174
2175 -- Procedure Delete_Row
2176
2177 PROCEDURE delete_row(p_line_id IN NUMBER) IS
2178 BEGIN
2179 DELETE FROM mtl_txn_request_lines
2180 WHERE line_id = p_line_id;
2181 EXCEPTION
2182 WHEN OTHERS THEN
2183 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
2184 fnd_msg_pub.add_exc_msg(g_pkg_name, 'Delete_Row');
2185 END IF;
2186
2187 RAISE fnd_api.g_exc_unexpected_error;
2188 END delete_row;
2189
2190 -- Function Get_Lines
2191
2192 FUNCTION get_lines(p_header_id IN NUMBER)
2193 RETURN inv_move_order_pub.trolin_tbl_type IS
2194 BEGIN
2195 RETURN query_rows(p_header_id => p_header_id);
2196 END get_lines;
2197
2198 -- Function Query_Row
2199
2200 FUNCTION query_row(p_line_id IN NUMBER)
2201 RETURN inv_move_order_pub.trolin_rec_type IS
2202 BEGIN
2203 /* inv_debug.message('TRO: in query_row '||to_char(p_line_id)); */
2204 RETURN query_rows(p_line_id => p_line_id)(1);
2205 END query_row;
2206
2207 -- Function Query_Rows
2208
2209 --
2210
2211 FUNCTION query_rows(p_line_id IN NUMBER := fnd_api.g_miss_num, p_header_id IN NUMBER := fnd_api.g_miss_num)
2212 RETURN inv_move_order_pub.trolin_tbl_type IS
2213 l_trolin_rec inv_move_order_pub.trolin_rec_type;
2214 l_trolin_tbl inv_move_order_pub.trolin_tbl_type;
2215
2216 --bug 2569864 - create separate cursors on header_id and line_Id
2217 CURSOR l_trolin_csr IS
2218 SELECT attribute1
2219 , attribute10
2220 , attribute11
2221 , attribute12
2222 , attribute13
2223 , attribute14
2224 , attribute15
2225 , attribute2
2226 , attribute3
2227 , attribute4
2228 , attribute5
2229 , attribute6
2230 , attribute7
2231 , attribute8
2232 , attribute9
2233 , attribute_category
2234 , created_by
2235 , creation_date
2236 , date_required
2237 , from_locator_id
2238 , from_subinventory_code
2239 , from_subinventory_id
2240 , header_id
2241 , inventory_item_id
2242 , last_updated_by
2243 , last_update_date
2244 , last_update_login
2245 , line_id
2246 , line_number
2247 , line_status
2248 , lot_number
2249 , organization_id
2250 , program_application_id
2251 , program_id
2252 , program_update_date
2253 , project_id
2254 , quantity
2255 , quantity_delivered
2256 , quantity_detailed
2257 , reason_id
2258 , REFERENCE
2259 , reference_id
2260 , reference_type_code
2261 , request_id
2262 , revision
2263 , serial_number_end
2264 , serial_number_start
2265 , status_date
2266 , task_id
2267 , to_account_id
2268 , to_locator_id
2269 , to_subinventory_code
2270 , to_subinventory_id
2271 , transaction_header_id
2272 , uom_code
2273 , transaction_type_id
2274 , transaction_source_type_id
2275 , txn_source_id
2276 , txn_source_line_id
2277 , txn_source_line_detail_id
2278 , to_organization_id
2279 , primary_quantity
2280 , pick_strategy_id
2281 , put_away_strategy_id
2282 , unit_number
2283 , ship_to_location_id
2284 , from_cost_group_id
2285 , to_cost_group_id
2286 , lpn_id
2287 , to_lpn_id
2288 , inspection_status
2289 , pick_methodology_id
2290 , container_item_id
2291 , carton_grouping_id
2292 , wms_process_flag
2293 , pick_slip_number
2294 , pick_slip_date
2295 , ship_set_id
2296 , ship_model_id
2297 , model_quantity
2298 , required_quantity
2299 --INVCONV BEGIN
2300 , secondary_quantity
2301 , secondary_quantity_delivered
2302 , secondary_quantity_detailed
2303 , secondary_uom_code
2304 , grade_code
2305 , secondary_required_quantity
2306 --INVCONV END;
2307 FROM mtl_txn_request_lines
2308 WHERE line_id = p_line_id;
2309
2310 CURSOR l_trolin_csr_header IS
2311 SELECT attribute1
2312 , attribute10
2313 , attribute11
2314 , attribute12
2315 , attribute13
2316 , attribute14
2317 , attribute15
2318 , attribute2
2319 , attribute3
2320 , attribute4
2321 , attribute5
2322 , attribute6
2323 , attribute7
2324 , attribute8
2325 , attribute9
2326 , attribute_category
2327 , created_by
2328 , creation_date
2329 , date_required
2330 , from_locator_id
2331 , from_subinventory_code
2332 , from_subinventory_id
2333 , header_id
2334 , inventory_item_id
2335 , last_updated_by
2336 , last_update_date
2337 , last_update_login
2338 , line_id
2339 , line_number
2340 , line_status
2341 , lot_number
2342 , organization_id
2343 , program_application_id
2344 , program_id
2345 , program_update_date
2346 , project_id
2347 , quantity
2348 , quantity_delivered
2349 , quantity_detailed
2350 , reason_id
2351 , REFERENCE
2352 , reference_id
2353 , reference_type_code
2354 , request_id
2355 , revision
2356 , serial_number_end
2357 , serial_number_start
2358 , status_date
2359 , task_id
2360 , to_account_id
2361 , to_locator_id
2362 , to_subinventory_code
2363 , to_subinventory_id
2364 , transaction_header_id
2365 , uom_code
2366 , transaction_type_id
2367 , transaction_source_type_id
2368 , txn_source_id
2369 , txn_source_line_id
2370 , txn_source_line_detail_id
2371 , to_organization_id
2372 , primary_quantity
2373 , pick_strategy_id
2374 , put_away_strategy_id
2375 , unit_number
2376 , ship_to_location_id
2377 , from_cost_group_id
2378 , to_cost_group_id
2379 , lpn_id
2380 , to_lpn_id
2381 , inspection_status
2382 , pick_methodology_id
2383 , container_item_id
2384 , carton_grouping_id
2385 , wms_process_flag
2386 , pick_slip_number
2387 , pick_slip_date
2388 , ship_set_id
2389 , ship_model_id
2390 , model_quantity
2391 , required_quantity
2392 --INVCONV BEGIN
2393 , secondary_quantity
2394 , secondary_quantity_delivered
2395 , secondary_quantity_detailed
2396 , secondary_uom_code
2397 , grade_code
2398 , secondary_required_quantity
2399 --INVCONV END;
2400 FROM mtl_txn_request_lines
2401 WHERE header_id = p_header_id;
2402 BEGIN
2403 /*inv_debug.message('TRO: line_id '||to_char(p_line_id)||' header_id '||to_char(p_header_id)); */
2404
2405 IF (p_line_id IS NOT NULL
2406 AND p_line_id <> fnd_api.g_miss_num
2407 )
2408 AND (p_header_id IS NOT NULL
2409 AND p_header_id <> fnd_api.g_miss_num
2410 ) THEN
2411 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
2412 fnd_msg_pub.add_exc_msg(g_pkg_name, 'Query Rows', 'Keys are mutually exclusive: line_id = ' || p_line_id || ', header_id = ' || p_header_id);
2413 END IF;
2414
2415 RAISE fnd_api.g_exc_unexpected_error;
2416 END IF;
2417
2418 IF (p_line_id IS NOT NULL
2419 AND p_line_id <> fnd_api.g_miss_num
2420 ) THEN
2421 -- Loop over fetched records
2422
2423 FOR l_implicit_rec IN l_trolin_csr LOOP
2424 l_trolin_rec.attribute1 := l_implicit_rec.attribute1;
2425 l_trolin_rec.attribute10 := l_implicit_rec.attribute10;
2426 l_trolin_rec.attribute11 := l_implicit_rec.attribute11;
2427 l_trolin_rec.attribute12 := l_implicit_rec.attribute12;
2428 l_trolin_rec.attribute13 := l_implicit_rec.attribute13;
2429 l_trolin_rec.attribute14 := l_implicit_rec.attribute14;
2430 l_trolin_rec.attribute15 := l_implicit_rec.attribute15;
2431 l_trolin_rec.attribute2 := l_implicit_rec.attribute2;
2432 l_trolin_rec.attribute3 := l_implicit_rec.attribute3;
2433 l_trolin_rec.attribute4 := l_implicit_rec.attribute4;
2434 l_trolin_rec.attribute5 := l_implicit_rec.attribute5;
2435 l_trolin_rec.attribute6 := l_implicit_rec.attribute6;
2436 l_trolin_rec.attribute7 := l_implicit_rec.attribute7;
2437 l_trolin_rec.attribute8 := l_implicit_rec.attribute8;
2438 l_trolin_rec.attribute9 := l_implicit_rec.attribute9;
2439 l_trolin_rec.attribute_category := l_implicit_rec.attribute_category;
2440 l_trolin_rec.created_by := l_implicit_rec.created_by;
2441 l_trolin_rec.creation_date := l_implicit_rec.creation_date;
2442 l_trolin_rec.date_required := l_implicit_rec.date_required;
2443 l_trolin_rec.from_locator_id := l_implicit_rec.from_locator_id;
2444 l_trolin_rec.from_subinventory_code := l_implicit_rec.from_subinventory_code;
2445 l_trolin_rec.from_subinventory_id := l_implicit_rec.from_subinventory_id;
2446 l_trolin_rec.header_id := l_implicit_rec.header_id;
2447 l_trolin_rec.inventory_item_id := l_implicit_rec.inventory_item_id;
2448 l_trolin_rec.last_updated_by := l_implicit_rec.last_updated_by;
2449 l_trolin_rec.last_update_date := l_implicit_rec.last_update_date;
2450 l_trolin_rec.last_update_login := l_implicit_rec.last_update_login;
2451 l_trolin_rec.line_id := l_implicit_rec.line_id;
2452 l_trolin_rec.line_number := l_implicit_rec.line_number;
2453 l_trolin_rec.line_status := l_implicit_rec.line_status;
2454 l_trolin_rec.lot_number := l_implicit_rec.lot_number;
2455 l_trolin_rec.organization_id := l_implicit_rec.organization_id;
2456 l_trolin_rec.program_application_id := l_implicit_rec.program_application_id;
2457 l_trolin_rec.program_id := l_implicit_rec.program_id;
2458 l_trolin_rec.program_update_date := l_implicit_rec.program_update_date;
2459 l_trolin_rec.project_id := l_implicit_rec.project_id;
2460 l_trolin_rec.quantity := l_implicit_rec.quantity;
2461 l_trolin_rec.quantity_delivered := l_implicit_rec.quantity_delivered;
2462 l_trolin_rec.quantity_detailed := l_implicit_rec.quantity_detailed;
2463 l_trolin_rec.reason_id := l_implicit_rec.reason_id;
2464 l_trolin_rec.REFERENCE := l_implicit_rec.REFERENCE;
2465 l_trolin_rec.reference_id := l_implicit_rec.reference_id;
2466 l_trolin_rec.reference_type_code := l_implicit_rec.reference_type_code;
2467 l_trolin_rec.request_id := l_implicit_rec.request_id;
2468 l_trolin_rec.revision := l_implicit_rec.revision;
2469 l_trolin_rec.serial_number_end := l_implicit_rec.serial_number_end;
2470 l_trolin_rec.serial_number_start := l_implicit_rec.serial_number_start;
2471 l_trolin_rec.status_date := l_implicit_rec.status_date;
2472 l_trolin_rec.task_id := l_implicit_rec.task_id;
2473 l_trolin_rec.to_account_id := l_implicit_rec.to_account_id;
2474 l_trolin_rec.to_locator_id := l_implicit_rec.to_locator_id;
2475 l_trolin_rec.to_subinventory_code := l_implicit_rec.to_subinventory_code;
2476 l_trolin_rec.to_subinventory_id := l_implicit_rec.to_subinventory_id;
2477 l_trolin_rec.transaction_header_id := l_implicit_rec.transaction_header_id;
2478 l_trolin_rec.uom_code := l_implicit_rec.uom_code;
2479 l_trolin_rec.transaction_type_id := l_implicit_rec.transaction_type_id;
2480 l_trolin_rec.transaction_source_type_id := l_implicit_rec.transaction_source_type_id;
2481 l_trolin_rec.txn_source_id := l_implicit_rec.txn_source_id;
2482 l_trolin_rec.txn_source_line_id := l_implicit_rec.txn_source_line_id;
2483 l_trolin_rec.txn_source_line_detail_id := l_implicit_rec.txn_source_line_detail_id;
2484 l_trolin_rec.to_organization_id := l_implicit_rec.to_organization_id;
2485 l_trolin_rec.primary_quantity := l_implicit_rec.primary_quantity;
2486 l_trolin_rec.pick_strategy_id := l_implicit_rec.pick_strategy_id;
2487 l_trolin_rec.put_away_strategy_id := l_implicit_rec.put_away_strategy_id;
2488 l_trolin_rec.unit_number := l_implicit_rec.unit_number;
2489 l_trolin_rec.ship_to_location_id := l_implicit_rec.ship_to_location_id;
2490 l_trolin_rec.from_cost_group_id := l_implicit_rec.from_cost_group_id;
2491 l_trolin_rec.to_cost_group_id := l_implicit_rec.to_cost_group_id;
2492 l_trolin_rec.lpn_id := l_implicit_rec.lpn_id;
2493 l_trolin_rec.to_lpn_id := l_implicit_rec.to_lpn_id;
2494 l_trolin_rec.inspection_status := l_implicit_rec.inspection_status;
2495 l_trolin_rec.pick_methodology_id := l_implicit_rec.pick_methodology_id;
2496 l_trolin_rec.container_item_id := l_implicit_rec.container_item_id;
2497 l_trolin_rec.carton_grouping_id := l_implicit_rec.carton_grouping_id;
2498 l_trolin_rec.wms_process_flag := l_implicit_rec.wms_process_flag;
2499 l_trolin_rec.pick_slip_number := l_implicit_rec.pick_slip_number;
2500 l_trolin_rec.pick_slip_date := l_implicit_rec.pick_slip_date;
2501 l_trolin_rec.ship_set_id := l_implicit_rec.ship_set_id;
2502 l_trolin_rec.ship_model_id := l_implicit_rec.ship_model_id;
2503 l_trolin_rec.model_quantity := l_implicit_rec.model_quantity;
2504 l_trolin_rec.required_quantity := l_implicit_rec.required_quantity;
2505 --INVCONV BEGIN
2506 l_trolin_rec.secondary_quantity := l_implicit_rec.secondary_quantity;
2507 l_trolin_rec.secondary_quantity_delivered := l_implicit_rec.secondary_quantity_delivered;
2508 l_trolin_rec.secondary_quantity_detailed := l_implicit_rec.secondary_quantity_detailed;
2509 l_trolin_rec.secondary_uom := l_implicit_rec.secondary_uom_code;
2510 l_trolin_rec.grade_code := l_implicit_rec.grade_code;
2511 l_trolin_rec.secondary_required_quantity := l_implicit_rec.secondary_required_quantity;
2512 --INVCONV END;
2513
2514 l_trolin_tbl(l_trolin_tbl.COUNT + 1) := l_trolin_rec;
2515 END LOOP;
2516 ELSE
2517 FOR l_implicit_rec IN l_trolin_csr_header LOOP
2518 l_trolin_rec.attribute1 := l_implicit_rec.attribute1;
2519 l_trolin_rec.attribute10 := l_implicit_rec.attribute10;
2520 l_trolin_rec.attribute11 := l_implicit_rec.attribute11;
2521 l_trolin_rec.attribute12 := l_implicit_rec.attribute12;
2522 l_trolin_rec.attribute13 := l_implicit_rec.attribute13;
2523 l_trolin_rec.attribute14 := l_implicit_rec.attribute14;
2524 l_trolin_rec.attribute15 := l_implicit_rec.attribute15;
2525 l_trolin_rec.attribute2 := l_implicit_rec.attribute2;
2526 l_trolin_rec.attribute3 := l_implicit_rec.attribute3;
2527 l_trolin_rec.attribute4 := l_implicit_rec.attribute4;
2528 l_trolin_rec.attribute5 := l_implicit_rec.attribute5;
2529 l_trolin_rec.attribute6 := l_implicit_rec.attribute6;
2530 l_trolin_rec.attribute7 := l_implicit_rec.attribute7;
2531 l_trolin_rec.attribute8 := l_implicit_rec.attribute8;
2532 l_trolin_rec.attribute9 := l_implicit_rec.attribute9;
2533 l_trolin_rec.attribute_category := l_implicit_rec.attribute_category;
2534 l_trolin_rec.created_by := l_implicit_rec.created_by;
2535 l_trolin_rec.creation_date := l_implicit_rec.creation_date;
2536 l_trolin_rec.date_required := l_implicit_rec.date_required;
2537 l_trolin_rec.from_locator_id := l_implicit_rec.from_locator_id;
2538 l_trolin_rec.from_subinventory_code := l_implicit_rec.from_subinventory_code;
2539 l_trolin_rec.from_subinventory_id := l_implicit_rec.from_subinventory_id;
2540 l_trolin_rec.header_id := l_implicit_rec.header_id;
2541 l_trolin_rec.inventory_item_id := l_implicit_rec.inventory_item_id;
2542 l_trolin_rec.last_updated_by := l_implicit_rec.last_updated_by;
2543 l_trolin_rec.last_update_date := l_implicit_rec.last_update_date;
2544 l_trolin_rec.last_update_login := l_implicit_rec.last_update_login;
2545 l_trolin_rec.line_id := l_implicit_rec.line_id;
2546 l_trolin_rec.line_number := l_implicit_rec.line_number;
2547 l_trolin_rec.line_status := l_implicit_rec.line_status;
2548 l_trolin_rec.lot_number := l_implicit_rec.lot_number;
2549 l_trolin_rec.organization_id := l_implicit_rec.organization_id;
2550 l_trolin_rec.program_application_id := l_implicit_rec.program_application_id;
2551 l_trolin_rec.program_id := l_implicit_rec.program_id;
2552 l_trolin_rec.program_update_date := l_implicit_rec.program_update_date;
2553 l_trolin_rec.project_id := l_implicit_rec.project_id;
2554 l_trolin_rec.quantity := l_implicit_rec.quantity;
2555 l_trolin_rec.quantity_delivered := l_implicit_rec.quantity_delivered;
2556 l_trolin_rec.quantity_detailed := l_implicit_rec.quantity_detailed;
2557 l_trolin_rec.reason_id := l_implicit_rec.reason_id;
2558 l_trolin_rec.REFERENCE := l_implicit_rec.REFERENCE;
2559 l_trolin_rec.reference_id := l_implicit_rec.reference_id;
2560 l_trolin_rec.reference_type_code := l_implicit_rec.reference_type_code;
2561 l_trolin_rec.request_id := l_implicit_rec.request_id;
2562 l_trolin_rec.revision := l_implicit_rec.revision;
2563 l_trolin_rec.serial_number_end := l_implicit_rec.serial_number_end;
2564 l_trolin_rec.serial_number_start := l_implicit_rec.serial_number_start;
2565 l_trolin_rec.status_date := l_implicit_rec.status_date;
2566 l_trolin_rec.task_id := l_implicit_rec.task_id;
2567 l_trolin_rec.to_account_id := l_implicit_rec.to_account_id;
2568 l_trolin_rec.to_locator_id := l_implicit_rec.to_locator_id;
2569 l_trolin_rec.to_subinventory_code := l_implicit_rec.to_subinventory_code;
2570 l_trolin_rec.to_subinventory_id := l_implicit_rec.to_subinventory_id;
2571 l_trolin_rec.transaction_header_id := l_implicit_rec.transaction_header_id;
2572 l_trolin_rec.uom_code := l_implicit_rec.uom_code;
2573 l_trolin_rec.transaction_type_id := l_implicit_rec.transaction_type_id;
2574 l_trolin_rec.transaction_source_type_id := l_implicit_rec.transaction_source_type_id;
2575 l_trolin_rec.txn_source_id := l_implicit_rec.txn_source_id;
2576 l_trolin_rec.txn_source_line_id := l_implicit_rec.txn_source_line_id;
2577 l_trolin_rec.txn_source_line_detail_id := l_implicit_rec.txn_source_line_detail_id;
2578 l_trolin_rec.to_organization_id := l_implicit_rec.to_organization_id;
2579 l_trolin_rec.primary_quantity := l_implicit_rec.primary_quantity;
2580 l_trolin_rec.pick_strategy_id := l_implicit_rec.pick_strategy_id;
2581 l_trolin_rec.put_away_strategy_id := l_implicit_rec.put_away_strategy_id;
2582 l_trolin_rec.unit_number := l_implicit_rec.unit_number;
2583 l_trolin_rec.ship_to_location_id := l_implicit_rec.ship_to_location_id;
2584 l_trolin_rec.from_cost_group_id := l_implicit_rec.from_cost_group_id;
2585 l_trolin_rec.to_cost_group_id := l_implicit_rec.to_cost_group_id;
2586 l_trolin_rec.lpn_id := l_implicit_rec.lpn_id;
2587 l_trolin_rec.to_lpn_id := l_implicit_rec.to_lpn_id;
2588 l_trolin_rec.inspection_status := l_implicit_rec.inspection_status;
2589 l_trolin_rec.pick_methodology_id := l_implicit_rec.pick_methodology_id;
2590 l_trolin_rec.container_item_id := l_implicit_rec.container_item_id;
2591 l_trolin_rec.carton_grouping_id := l_implicit_rec.carton_grouping_id;
2592 l_trolin_rec.wms_process_flag := l_implicit_rec.wms_process_flag;
2593 l_trolin_rec.pick_slip_number := l_implicit_rec.pick_slip_number;
2594 l_trolin_rec.pick_slip_date := l_implicit_rec.pick_slip_date;
2595 l_trolin_rec.ship_set_id := l_implicit_rec.ship_set_id;
2596 l_trolin_rec.ship_model_id := l_implicit_rec.ship_model_id;
2597 l_trolin_rec.model_quantity := l_implicit_rec.model_quantity;
2598 l_trolin_rec.required_quantity := l_implicit_rec.required_quantity;
2599 --INVCONV BEGIN
2600 l_trolin_rec.secondary_quantity := l_implicit_rec.secondary_quantity;
2601 l_trolin_rec.secondary_quantity_delivered := l_implicit_rec.secondary_quantity_delivered;
2602 l_trolin_rec.secondary_quantity_detailed := l_implicit_rec.secondary_quantity_detailed;
2603 l_trolin_rec.secondary_uom := l_implicit_rec.secondary_uom_code;
2604 l_trolin_rec.grade_code := l_implicit_rec.grade_code;
2605 l_trolin_rec.secondary_required_quantity := l_implicit_rec.secondary_required_quantity;
2606 --INVCONV END;
2607 l_trolin_tbl(l_trolin_tbl.COUNT + 1) := l_trolin_rec;
2608 END LOOP;
2609 END IF;
2610
2611 -- PK sent and no rows found
2612
2613 IF (p_line_id IS NOT NULL
2614 AND p_line_id <> fnd_api.g_miss_num
2615 )
2616 AND (l_trolin_tbl.COUNT = 0) THEN
2617 RAISE NO_DATA_FOUND;
2618 END IF;
2619
2620 -- Return fetched table
2621
2622 RETURN l_trolin_tbl;
2623 EXCEPTION
2624 WHEN fnd_api.g_exc_unexpected_error THEN
2625 RAISE fnd_api.g_exc_unexpected_error;
2626 WHEN OTHERS THEN
2627 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
2628 fnd_msg_pub.add_exc_msg(g_pkg_name, 'Query_Rows');
2629 END IF;
2630
2631 RAISE fnd_api.g_exc_unexpected_error;
2632 END query_rows;
2633
2634 -- Procedure lock_Row
2635 --
2636
2637 PROCEDURE lock_row(x_return_status OUT NOCOPY VARCHAR2, p_trolin_rec IN inv_move_order_pub.trolin_rec_type, x_trolin_rec IN OUT NOCOPY inv_move_order_pub.trolin_rec_type) IS
2638 l_trolin_rec inv_move_order_pub.trolin_rec_type;
2639 BEGIN
2640 SELECT attribute1
2641 , attribute10
2642 , attribute11
2643 , attribute12
2644 , attribute13
2645 , attribute14
2646 , attribute15
2647 , attribute2
2648 , attribute3
2649 , attribute4
2650 , attribute5
2651 , attribute6
2652 , attribute7
2653 , attribute8
2654 , attribute9
2655 , attribute_category
2656 , created_by
2657 , creation_date
2658 , date_required
2659 , from_locator_id
2660 , from_subinventory_code
2661 , from_subinventory_id
2662 , header_id
2663 , inventory_item_id
2664 , last_updated_by
2665 , last_update_date
2666 , last_update_login
2667 , line_id
2668 , line_number
2669 , line_status
2670 , lot_number
2671 , organization_id
2672 , program_application_id
2673 , program_id
2674 , program_update_date
2675 , project_id
2676 , quantity
2677 , quantity_delivered
2678 , quantity_detailed
2679 , reason_id
2680 , REFERENCE
2681 , reference_id
2682 , reference_type_code
2683 , request_id
2684 , revision
2685 , serial_number_end
2686 , serial_number_start
2687 , status_date
2688 , task_id
2689 , to_account_id
2690 , to_locator_id
2691 , to_subinventory_code
2692 , to_subinventory_id
2693 , transaction_header_id
2694 , uom_code
2695 , transaction_type_id
2696 , transaction_source_type_id
2697 , txn_source_id
2698 , txn_source_line_id
2699 , txn_source_line_detail_id
2700 , to_organization_id
2701 , primary_quantity
2702 , pick_strategy_id
2703 , put_away_strategy_id
2704 , unit_number
2705 , ship_to_location_id
2706 , from_cost_group_id
2707 , to_cost_group_id
2708 , lpn_id
2709 , to_lpn_id
2710 , inspection_status
2711 , pick_methodology_id
2712 , container_item_id
2713 , carton_grouping_id
2714 , wms_process_flag
2715 , pick_slip_number
2716 , pick_slip_date
2717 , ship_set_id
2718 , ship_model_id
2719 , model_quantity
2720 , required_quantity
2721 --INVCONV BEGIN
2722 , secondary_quantity
2723 , secondary_quantity_delivered
2724 , secondary_quantity_detailed
2725 , uom_code
2726 , grade_code
2727 , secondary_required_quantity
2728 --INVCONV END
2729 INTO l_trolin_rec.attribute1
2730 , l_trolin_rec.attribute10
2731 , l_trolin_rec.attribute11
2732 , l_trolin_rec.attribute12
2733 , l_trolin_rec.attribute13
2734 , l_trolin_rec.attribute14
2735 , l_trolin_rec.attribute15
2736 , l_trolin_rec.attribute2
2737 , l_trolin_rec.attribute3
2738 , l_trolin_rec.attribute4
2739 , l_trolin_rec.attribute5
2740 , l_trolin_rec.attribute6
2741 , l_trolin_rec.attribute7
2742 , l_trolin_rec.attribute8
2743 , l_trolin_rec.attribute9
2744 , l_trolin_rec.attribute_category
2745 , l_trolin_rec.created_by
2746 , l_trolin_rec.creation_date
2747 , l_trolin_rec.date_required
2748 , l_trolin_rec.from_locator_id
2749 , l_trolin_rec.from_subinventory_code
2750 , l_trolin_rec.from_subinventory_id
2751 , l_trolin_rec.header_id
2752 , l_trolin_rec.inventory_item_id
2753 , l_trolin_rec.last_updated_by
2754 , l_trolin_rec.last_update_date
2755 , l_trolin_rec.last_update_login
2756 , l_trolin_rec.line_id
2757 , l_trolin_rec.line_number
2758 , l_trolin_rec.line_status
2759 , l_trolin_rec.lot_number
2760 , l_trolin_rec.organization_id
2761 , l_trolin_rec.program_application_id
2762 , l_trolin_rec.program_id
2763 , l_trolin_rec.program_update_date
2764 , l_trolin_rec.project_id
2765 , l_trolin_rec.quantity
2766 , l_trolin_rec.quantity_delivered
2767 , l_trolin_rec.quantity_detailed
2768 , l_trolin_rec.reason_id
2769 , l_trolin_rec.REFERENCE
2770 , l_trolin_rec.reference_id
2771 , l_trolin_rec.reference_type_code
2772 , l_trolin_rec.request_id
2773 , l_trolin_rec.revision
2774 , l_trolin_rec.serial_number_end
2775 , l_trolin_rec.serial_number_start
2776 , l_trolin_rec.status_date
2777 , l_trolin_rec.task_id
2778 , l_trolin_rec.to_account_id
2779 , l_trolin_rec.to_locator_id
2780 , l_trolin_rec.to_subinventory_code
2781 , l_trolin_rec.to_subinventory_id
2782 , l_trolin_rec.transaction_header_id
2783 , l_trolin_rec.uom_code
2784 , l_trolin_rec.transaction_type_id
2785 , l_trolin_rec.transaction_source_type_id
2786 , l_trolin_rec.txn_source_id
2787 , l_trolin_rec.txn_source_line_id
2788 , l_trolin_rec.txn_source_line_detail_id
2789 , l_trolin_rec.to_organization_id
2790 , l_trolin_rec.primary_quantity
2791 , l_trolin_rec.pick_strategy_id
2792 , l_trolin_rec.put_away_strategy_id
2793 , l_trolin_rec.unit_number
2794 , l_trolin_rec.ship_to_location_id
2795 , l_trolin_rec.from_cost_group_id
2796 , l_trolin_rec.to_cost_group_id
2797 , l_trolin_rec.lpn_id
2798 , l_trolin_rec.to_lpn_id
2799 , l_trolin_rec.inspection_status
2800 , l_trolin_rec.pick_methodology_id
2801 , l_trolin_rec.container_item_id
2802 , l_trolin_rec.carton_grouping_id
2803 , l_trolin_rec.wms_process_flag
2804 , l_trolin_rec.pick_slip_number
2805 , l_trolin_rec.pick_slip_date
2806 , l_trolin_rec.ship_set_id
2807 , l_trolin_rec.ship_model_id
2808 , l_trolin_rec.model_quantity
2809 , l_trolin_rec.required_quantity
2810 --INVCONV BEGIN
2811 , l_trolin_rec.secondary_quantity
2812 , l_trolin_rec.secondary_quantity_delivered
2813 , l_trolin_rec.secondary_quantity_detailed
2814 , l_trolin_rec.uom_code
2815 , l_trolin_rec.grade_code
2816 , l_trolin_rec.secondary_required_quantity
2817 --INVCONV END
2818 FROM mtl_txn_request_lines
2819 WHERE line_id = p_trolin_rec.line_id
2820 FOR UPDATE NOWAIT;
2821
2822 -- Row locked. Compare IN attributes to DB attributes.
2823
2824 IF inv_globals.equal(p_trolin_rec.attribute1, l_trolin_rec.attribute1)
2825 AND inv_globals.equal(p_trolin_rec.attribute10, l_trolin_rec.attribute10)
2826 AND inv_globals.equal(p_trolin_rec.attribute11, l_trolin_rec.attribute11)
2827 AND inv_globals.equal(p_trolin_rec.attribute12, l_trolin_rec.attribute12)
2828 AND inv_globals.equal(p_trolin_rec.attribute13, l_trolin_rec.attribute13)
2829 AND inv_globals.equal(p_trolin_rec.attribute14, l_trolin_rec.attribute14)
2830 AND inv_globals.equal(p_trolin_rec.attribute15, l_trolin_rec.attribute15)
2831 AND inv_globals.equal(p_trolin_rec.attribute2, l_trolin_rec.attribute2)
2832 AND inv_globals.equal(p_trolin_rec.attribute3, l_trolin_rec.attribute3)
2833 AND inv_globals.equal(p_trolin_rec.attribute4, l_trolin_rec.attribute4)
2834 AND inv_globals.equal(p_trolin_rec.attribute5, l_trolin_rec.attribute5)
2835 AND inv_globals.equal(p_trolin_rec.attribute6, l_trolin_rec.attribute6)
2836 AND inv_globals.equal(p_trolin_rec.attribute7, l_trolin_rec.attribute7)
2837 AND inv_globals.equal(p_trolin_rec.attribute8, l_trolin_rec.attribute8)
2838 AND inv_globals.equal(p_trolin_rec.attribute9, l_trolin_rec.attribute9)
2839 AND inv_globals.equal(p_trolin_rec.attribute_category, l_trolin_rec.attribute_category)
2840 AND (inv_globals.equal(p_trolin_rec.created_by, l_trolin_rec.created_by)
2841 OR (p_trolin_rec.created_by = fnd_api.g_miss_num
2842 AND l_trolin_rec.created_by IS NULL
2843 )
2844 )
2845 AND (inv_globals.equal(p_trolin_rec.creation_date, l_trolin_rec.creation_date)
2846 OR (p_trolin_rec.creation_date = fnd_api.g_miss_date
2847 AND l_trolin_rec.creation_date IS NULL
2848 )
2849 )
2850 AND (inv_globals.equal(p_trolin_rec.date_required, l_trolin_rec.date_required)
2851 OR (p_trolin_rec.date_required = fnd_api.g_miss_date
2852 AND l_trolin_rec.date_required IS NULL
2853 )
2854 )
2855 AND (inv_globals.equal(p_trolin_rec.from_locator_id, l_trolin_rec.from_locator_id)
2856 OR (p_trolin_rec.from_locator_id = fnd_api.g_miss_num
2857 AND l_trolin_rec.from_locator_id IS NULL
2858 )
2859 )
2860 AND (inv_globals.equal(p_trolin_rec.from_subinventory_code, l_trolin_rec.from_subinventory_code)
2861 OR (p_trolin_rec.from_subinventory_code = fnd_api.g_miss_char
2862 AND l_trolin_rec.from_subinventory_code IS NULL
2863 )
2864 )
2865 AND (inv_globals.equal(p_trolin_rec.from_subinventory_id, l_trolin_rec.from_subinventory_id)
2866 OR (p_trolin_rec.from_subinventory_id = fnd_api.g_miss_num
2867 AND l_trolin_rec.from_subinventory_id IS NULL
2868 )
2869 )
2870 AND (inv_globals.equal(p_trolin_rec.header_id, l_trolin_rec.header_id)
2871 OR (p_trolin_rec.header_id = fnd_api.g_miss_num
2872 AND l_trolin_rec.header_id IS NULL
2873 )
2874 )
2875 AND (inv_globals.equal(p_trolin_rec.inventory_item_id, l_trolin_rec.inventory_item_id)
2876 OR (p_trolin_rec.inventory_item_id = fnd_api.g_miss_num
2877 AND l_trolin_rec.inventory_item_id IS NULL
2878 )
2879 )
2880 AND (inv_globals.equal(p_trolin_rec.last_updated_by, l_trolin_rec.last_updated_by)
2881 OR (p_trolin_rec.last_updated_by = fnd_api.g_miss_num
2882 AND l_trolin_rec.last_updated_by IS NULL
2883 )
2884 )
2885 AND (inv_globals.equal(p_trolin_rec.last_update_date, l_trolin_rec.last_update_date)
2886 OR (p_trolin_rec.last_update_date = fnd_api.g_miss_date
2887 AND l_trolin_rec.last_update_date IS NULL
2888 )
2889 )
2890 AND (inv_globals.equal(p_trolin_rec.last_update_login, l_trolin_rec.last_update_login)
2891 OR (p_trolin_rec.last_update_login = fnd_api.g_miss_num
2892 AND l_trolin_rec.last_update_login IS NULL
2893 )
2894 )
2895 AND (inv_globals.equal(p_trolin_rec.line_id, l_trolin_rec.line_id)
2896 OR (p_trolin_rec.line_id = fnd_api.g_miss_num
2897 AND l_trolin_rec.line_id IS NULL
2898 )
2899 )
2900 AND (inv_globals.equal(p_trolin_rec.line_number, l_trolin_rec.line_number)
2901 OR (p_trolin_rec.line_number = fnd_api.g_miss_num
2902 AND l_trolin_rec.line_number IS NULL
2903 )
2904 )
2905 AND (inv_globals.equal(p_trolin_rec.line_status, l_trolin_rec.line_status)
2906 OR (p_trolin_rec.line_status = fnd_api.g_miss_num
2907 AND l_trolin_rec.line_status IS NULL
2908 )
2909 )
2910 AND (inv_globals.equal(p_trolin_rec.lot_number, l_trolin_rec.lot_number)
2911 OR (p_trolin_rec.lot_number = fnd_api.g_miss_char
2912 AND l_trolin_rec.lot_number IS NULL
2913 )
2914 )
2915 AND (inv_globals.equal(p_trolin_rec.organization_id, l_trolin_rec.organization_id)
2916 OR (p_trolin_rec.organization_id = fnd_api.g_miss_num
2917 AND l_trolin_rec.organization_id IS NULL
2918 )
2919 )
2920 AND (inv_globals.equal(p_trolin_rec.program_application_id, l_trolin_rec.program_application_id)
2921 OR (p_trolin_rec.program_application_id = fnd_api.g_miss_num
2922 AND l_trolin_rec.program_application_id IS NULL
2923 )
2924 )
2925 AND (inv_globals.equal(p_trolin_rec.program_id, l_trolin_rec.program_id)
2926 OR (p_trolin_rec.program_id = fnd_api.g_miss_num
2927 AND l_trolin_rec.program_id IS NULL
2928 )
2929 )
2930 AND (inv_globals.equal(p_trolin_rec.program_update_date, l_trolin_rec.program_update_date)
2931 OR (p_trolin_rec.program_update_date = fnd_api.g_miss_date
2932 AND l_trolin_rec.program_update_date IS NOT NULL
2933 )
2934 )
2935 AND (inv_globals.equal(p_trolin_rec.project_id, l_trolin_rec.project_id)
2936 OR (p_trolin_rec.project_id = fnd_api.g_miss_num
2937 AND l_trolin_rec.project_id IS NULL
2938 )
2939 )
2940 AND (inv_globals.equal(p_trolin_rec.quantity, l_trolin_rec.quantity)
2941 OR (p_trolin_rec.quantity = fnd_api.g_miss_num
2942 AND l_trolin_rec.quantity IS NULL
2943 )
2944 )
2945 AND (inv_globals.equal(p_trolin_rec.quantity_delivered, l_trolin_rec.quantity_delivered)
2946 OR (p_trolin_rec.quantity_delivered = fnd_api.g_miss_num
2947 AND l_trolin_rec.quantity_delivered IS NULL
2948 )
2949 )
2950 AND (inv_globals.equal(p_trolin_rec.quantity_detailed, l_trolin_rec.quantity_detailed)
2951 OR (p_trolin_rec.quantity_detailed = fnd_api.g_miss_num
2952 AND l_trolin_rec.quantity_detailed IS NULL
2953 )
2954 )
2955 AND (inv_globals.equal(p_trolin_rec.reason_id, l_trolin_rec.reason_id)
2956 OR (p_trolin_rec.reason_id = fnd_api.g_miss_num
2957 AND l_trolin_rec.reason_id IS NULL
2958 )
2959 )
2960 AND (inv_globals.equal(p_trolin_rec.REFERENCE, l_trolin_rec.REFERENCE)
2961 OR (p_trolin_rec.REFERENCE = fnd_api.g_miss_char
2962 AND l_trolin_rec.REFERENCE IS NULL
2963 )
2964 )
2965 AND (inv_globals.equal(p_trolin_rec.reference_id, l_trolin_rec.reference_id)
2966 OR (p_trolin_rec.reference_id = fnd_api.g_miss_num
2967 AND l_trolin_rec.reference_id IS NULL
2968 )
2969 )
2970 AND (inv_globals.equal(p_trolin_rec.reference_type_code, l_trolin_rec.reference_type_code)
2971 OR (l_trolin_rec.reference_type_code = fnd_api.g_miss_num
2972 AND l_trolin_rec.reference_type_code IS NULL
2973 )
2974 )
2975 AND (inv_globals.equal(p_trolin_rec.request_id, l_trolin_rec.request_id)
2976 OR (p_trolin_rec.request_id = fnd_api.g_miss_num
2977 AND l_trolin_rec.request_id IS NULL
2978 )
2979 )
2980 AND (inv_globals.equal(p_trolin_rec.revision, l_trolin_rec.revision)
2981 OR (p_trolin_rec.revision = fnd_api.g_miss_char
2982 AND l_trolin_rec.revision IS NULL
2983 )
2984 )
2985 AND (inv_globals.equal(p_trolin_rec.serial_number_end, l_trolin_rec.serial_number_end)
2986 OR (p_trolin_rec.serial_number_end = fnd_api.g_miss_char
2987 AND l_trolin_rec.serial_number_end IS NULL
2988 )
2989 )
2990 AND (inv_globals.equal(p_trolin_rec.serial_number_start, l_trolin_rec.serial_number_start)
2991 OR (p_trolin_rec.serial_number_start = fnd_api.g_miss_char
2992 AND l_trolin_rec.serial_number_start IS NULL
2993 )
2994 )
2995 AND (inv_globals.equal(p_trolin_rec.status_date, l_trolin_rec.status_date)
2996 OR (p_trolin_rec.status_date = fnd_api.g_miss_date
2997 AND l_trolin_rec.status_date IS NULL
2998 )
2999 )
3000 AND (inv_globals.equal(p_trolin_rec.task_id, l_trolin_rec.task_id)
3001 OR (p_trolin_rec.task_id = fnd_api.g_miss_num
3002 AND l_trolin_rec.task_id IS NULL
3003 )
3004 )
3005 AND (inv_globals.equal(p_trolin_rec.to_account_id, l_trolin_rec.to_account_id)
3006 OR (p_trolin_rec.to_account_id = fnd_api.g_miss_num
3007 AND l_trolin_rec.to_account_id IS NULL
3008 )
3009 )
3010 AND (inv_globals.equal(p_trolin_rec.to_locator_id, l_trolin_rec.to_locator_id)
3011 OR (p_trolin_rec.to_locator_id = fnd_api.g_miss_num
3012 AND l_trolin_rec.to_locator_id IS NULL
3013 )
3014 )
3015 AND (inv_globals.equal(p_trolin_rec.to_subinventory_code, l_trolin_rec.to_subinventory_code)
3016 OR (p_trolin_rec.to_subinventory_code = fnd_api.g_miss_char
3017 AND l_trolin_rec.to_subinventory_code IS NULL
3018 )
3019 )
3020 AND (inv_globals.equal(p_trolin_rec.to_subinventory_id, l_trolin_rec.to_subinventory_id)
3021 OR (p_trolin_rec.to_subinventory_id = fnd_api.g_miss_num
3022 AND l_trolin_rec.to_subinventory_id IS NULL
3023 )
3024 )
3025 AND (inv_globals.equal(p_trolin_rec.transaction_header_id, l_trolin_rec.transaction_header_id)
3026 OR (p_trolin_rec.transaction_header_id = fnd_api.g_miss_num
3027 AND l_trolin_rec.transaction_header_id IS NULL
3028 )
3029 )
3030 AND (inv_globals.equal(p_trolin_rec.uom_code, l_trolin_rec.uom_code)
3031 OR (p_trolin_rec.uom_code = fnd_api.g_miss_char
3032 AND p_trolin_rec.uom_code IS NULL
3033 )
3034 )
3035 AND (inv_globals.equal(p_trolin_rec.transaction_type_id, l_trolin_rec.transaction_type_id)
3036 OR (p_trolin_rec.transaction_type_id = fnd_api.g_miss_num
3037 AND l_trolin_rec.transaction_type_id IS NULL
3038 )
3039 )
3040 AND (inv_globals.equal(p_trolin_rec.transaction_source_type_id, l_trolin_rec.transaction_source_type_id)
3041 OR (p_trolin_rec.transaction_source_type_id = fnd_api.g_miss_num
3042 AND l_trolin_rec.transaction_source_type_id IS NULL
3043 )
3044 )
3045 AND (inv_globals.equal(p_trolin_rec.txn_source_id, l_trolin_rec.txn_source_id)
3046 OR (p_trolin_rec.txn_source_id = fnd_api.g_miss_num
3047 AND l_trolin_rec.txn_source_id IS NULL
3048 )
3049 )
3050 AND inv_globals.equal(p_trolin_rec.txn_source_line_id, l_trolin_rec.txn_source_line_id)
3051 AND (inv_globals.equal(p_trolin_rec.txn_source_line_detail_id, l_trolin_rec.txn_source_line_detail_id)
3052 OR (p_trolin_rec.txn_source_line_detail_id = fnd_api.g_miss_num
3053 AND l_trolin_rec.txn_source_line_detail_id IS NULL
3054 )
3055 )
3056 AND (inv_globals.equal(p_trolin_rec.primary_quantity, l_trolin_rec.primary_quantity)
3057 OR (p_trolin_rec.primary_quantity = fnd_api.g_miss_num
3058 AND l_trolin_rec.primary_quantity IS NULL
3059 )
3060 )
3061 AND (inv_globals.equal(p_trolin_rec.to_organization_id, l_trolin_rec.to_organization_id)
3062 OR (p_trolin_rec.to_organization_id = fnd_api.g_miss_num
3063 AND l_trolin_rec.to_organization_id IS NULL
3064 )
3065 )
3066 AND (inv_globals.equal(p_trolin_rec.pick_strategy_id, l_trolin_rec.pick_strategy_id)
3067 OR (p_trolin_rec.pick_strategy_id = fnd_api.g_miss_num
3068 AND l_trolin_rec.pick_strategy_id IS NULL
3069 )
3070 )
3071 AND (inv_globals.equal(p_trolin_rec.put_away_strategy_id, l_trolin_rec.put_away_strategy_id)
3072 OR (p_trolin_rec.put_away_strategy_id = fnd_api.g_miss_num
3073 AND l_trolin_rec.put_away_strategy_id IS NULL
3074 )
3075 )
3076 AND (inv_globals.equal(p_trolin_rec.unit_number, l_trolin_rec.unit_number)
3077 OR (p_trolin_rec.unit_number = fnd_api.g_miss_char
3078 AND l_trolin_rec.unit_number IS NULL
3079 )
3080 )
3081 AND (inv_globals.equal(p_trolin_rec.ship_to_location_id, l_trolin_rec.ship_to_location_id)
3082 OR (p_trolin_rec.ship_to_location_id = fnd_api.g_miss_num
3083 AND l_trolin_rec.ship_to_location_id IS NULL
3084 )
3085 )
3086 AND (inv_globals.equal(p_trolin_rec.from_cost_group_id, l_trolin_rec.from_cost_group_id)
3087 OR (p_trolin_rec.from_cost_group_id = fnd_api.g_miss_num
3088 AND l_trolin_rec.to_cost_group_id IS NULL
3089 )
3090 )
3091 AND (inv_globals.equal(p_trolin_rec.to_cost_group_id, l_trolin_rec.to_cost_group_id)
3092 OR (p_trolin_rec.to_cost_group_id = fnd_api.g_miss_num
3093 AND l_trolin_rec.to_cost_group_id IS NULL
3094 )
3095 )
3096 AND (inv_globals.equal(p_trolin_rec.lpn_id, l_trolin_rec.lpn_id)
3097 OR (p_trolin_rec.lpn_id = fnd_api.g_miss_num
3098 AND l_trolin_rec.lpn_id IS NULL
3099 )
3100 )
3101 AND (inv_globals.equal(p_trolin_rec.to_lpn_id, l_trolin_rec.to_lpn_id)
3102 OR (p_trolin_rec.to_lpn_id = fnd_api.g_miss_num
3103 AND l_trolin_rec.to_lpn_id IS NULL
3104 )
3105 )
3106 AND inv_globals.equal(p_trolin_rec.inspection_status, l_trolin_rec.inspection_status)
3107 AND (inv_globals.equal(p_trolin_rec.pick_methodology_id, l_trolin_rec.pick_methodology_id)
3108 OR (p_trolin_rec.pick_methodology_id = fnd_api.g_miss_num
3109 AND l_trolin_rec.pick_methodology_id IS NULL
3110 )
3111 )
3112 AND (inv_globals.equal(p_trolin_rec.container_item_id, l_trolin_rec.container_item_id)
3113 OR (p_trolin_rec.container_item_id = fnd_api.g_miss_num
3114 AND l_trolin_rec.container_item_id IS NULL
3115 )
3116 )
3117 AND (inv_globals.equal(p_trolin_rec.carton_grouping_id, l_trolin_rec.carton_grouping_id)
3118 OR (p_trolin_rec.carton_grouping_id = fnd_api.g_miss_num
3119 AND l_trolin_rec.carton_grouping_id IS NULL
3120 )
3121 )
3122 AND (inv_globals.equal(p_trolin_rec.wms_process_flag, l_trolin_rec.wms_process_flag)
3123 OR (p_trolin_rec.wms_process_flag = fnd_api.g_miss_char
3124 AND l_trolin_rec.wms_process_flag IS NULL
3125 )
3126 )
3127 AND (inv_globals.equal(p_trolin_rec.pick_slip_number, l_trolin_rec.pick_slip_number)
3128 OR (p_trolin_rec.pick_slip_number = fnd_api.g_miss_num
3129 AND l_trolin_rec.pick_slip_number IS NULL
3130 )
3131 )
3132 AND (inv_globals.equal(p_trolin_rec.pick_slip_date, l_trolin_rec.pick_slip_date)
3133 OR (p_trolin_rec.pick_slip_date = fnd_api.g_miss_date
3134 AND l_trolin_rec.pick_slip_date IS NULL
3135 )
3136 )
3137 AND (inv_globals.equal(p_trolin_rec.ship_set_id, l_trolin_rec.ship_set_id)
3138 OR (p_trolin_rec.ship_set_id = fnd_api.g_miss_num
3139 AND l_trolin_rec.ship_set_id IS NULL
3140 )
3141 )
3142 AND (inv_globals.equal(p_trolin_rec.ship_model_id, l_trolin_rec.ship_model_id)
3143 OR (p_trolin_rec.ship_model_id = fnd_api.g_miss_num
3144 AND l_trolin_rec.ship_model_id IS NULL
3145 )
3146 )
3147 AND (inv_globals.equal(p_trolin_rec.model_quantity, l_trolin_rec.model_quantity)
3148 OR (p_trolin_rec.model_quantity = fnd_api.g_miss_num
3149 AND l_trolin_rec.model_quantity IS NULL
3150 )
3151 ) THEN
3152 -- Row has not changed. Set out parameter.
3153
3154 x_trolin_rec := l_trolin_rec;
3155 -- Set return status
3156
3157 x_return_status := fnd_api.g_ret_sts_success;
3158 x_trolin_rec.return_status := fnd_api.g_ret_sts_success;
3159 ELSE
3160 -- Row has changed by another user.
3161
3162 x_return_status := fnd_api.g_ret_sts_error;
3163 x_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3164
3165 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3166 fnd_message.set_name('INV', 'OE_LOCK_ROW_CHANGED');
3167 fnd_msg_pub.ADD;
3168 END IF;
3169 END IF;
3170 --Line2086
3171 EXCEPTION
3172 WHEN NO_DATA_FOUND THEN
3173 x_return_status := fnd_api.g_ret_sts_error;
3174 x_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3175
3176 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3177 fnd_message.set_name('INV', 'OE_LOCK_ROW_DELETED');
3178 fnd_msg_pub.ADD;
3179 END IF;
3180 WHEN app_exceptions.record_lock_exception THEN
3181 x_return_status := fnd_api.g_ret_sts_error;
3182 x_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3183
3184 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3185 fnd_message.set_name('INV', 'OE_LOCK_ROW_ALREADY_LOCKED');
3186 fnd_msg_pub.ADD;
3187 END IF;
3188 WHEN OTHERS THEN
3189 x_return_status := fnd_api.g_ret_sts_unexp_error;
3190 x_trolin_rec.return_status := fnd_api.g_ret_sts_unexp_error;
3191
3192 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
3193 fnd_msg_pub.add_exc_msg(g_pkg_name, 'Lock_Row');
3194 END IF;
3195 END lock_row;
3196
3197 -- Function Get_Values
3198
3199 FUNCTION get_values(p_trolin_rec IN inv_move_order_pub.trolin_rec_type, p_old_trolin_rec IN inv_move_order_pub.trolin_rec_type := inv_move_order_pub.g_miss_trolin_rec)
3200 RETURN inv_move_order_pub.trolin_val_rec_type IS
3201 l_trolin_val_rec inv_move_order_pub.trolin_val_rec_type;
3202 BEGIN
3203 -- Line2147
3204 IF p_trolin_rec.from_locator_id IS NOT NULL
3205 AND p_trolin_rec.from_locator_id <> fnd_api.g_miss_num
3206 AND NOT inv_globals.equal(p_trolin_rec.from_locator_id, p_old_trolin_rec.from_locator_id) THEN
3207 l_trolin_val_rec.from_locator := inv_id_to_value.from_locator(p_from_locator_id => p_trolin_rec.from_locator_id);
3208 END IF;
3209
3210 -- IF p_trolin_rec.from_subinventory_code IS NOT NULL AND
3211 -- p_trolin_rec.from_subinventory_code <> FND_API.G_MISS_CHAR AND
3212 -- NOT INV_GLOBALS.Equal(p_trolin_rec.from_subinventory_code,
3213 -- p_old_trolin_rec.from_subinventory_code)
3214 -- THEN
3215 -- l_trolin_val_rec.from_subinventory := INV_Id_To_Value.From_Subinventory
3216 -- ( p_from_subinventory_code => p_trolin_rec.from_subinventory_code
3217 -- );
3218 -- END IF; -- Generated
3219 -- Line 2167
3220 IF p_trolin_rec.from_subinventory_id IS NOT NULL
3221 AND p_trolin_rec.from_subinventory_id <> fnd_api.g_miss_num
3222 AND NOT inv_globals.equal(p_trolin_rec.from_subinventory_id, p_old_trolin_rec.from_subinventory_id) THEN
3223 l_trolin_val_rec.from_subinventory := inv_id_to_value.from_subinventory(p_from_subinventory_id => p_trolin_rec.from_subinventory_id);
3224 -- ( p_from_subinventory_id => p_trolin_rec.from_subinventory_id
3225 -- );
3226 END IF;
3227
3228 IF p_trolin_rec.header_id IS NOT NULL
3229 AND p_trolin_rec.header_id <> fnd_api.g_miss_num
3230 AND NOT inv_globals.equal(p_trolin_rec.header_id, p_old_trolin_rec.header_id) THEN
3231 l_trolin_val_rec.header := inv_id_to_value.header(p_header_id => p_trolin_rec.header_id);
3232 END IF;
3233
3234 IF p_trolin_rec.inventory_item_id IS NOT NULL
3235 AND p_trolin_rec.inventory_item_id <> fnd_api.g_miss_num
3236 AND NOT inv_globals.equal(p_trolin_rec.inventory_item_id, p_old_trolin_rec.inventory_item_id) THEN
3237 l_trolin_val_rec.inventory_item := inv_id_to_value.inventory_item(p_inventory_item_id => p_trolin_rec.inventory_item_id);
3238 END IF;
3239
3240 IF p_trolin_rec.line_id IS NOT NULL
3241 AND p_trolin_rec.line_id <> fnd_api.g_miss_num
3242 AND NOT inv_globals.equal(p_trolin_rec.line_id, p_old_trolin_rec.line_id) THEN
3243 l_trolin_val_rec.line := inv_id_to_value.line(p_line_id => p_trolin_rec.line_id);
3244 END IF;
3245
3246 IF p_trolin_rec.organization_id IS NOT NULL
3247 AND p_trolin_rec.organization_id <> fnd_api.g_miss_num
3248 AND NOT inv_globals.equal(p_trolin_rec.organization_id, p_old_trolin_rec.organization_id) THEN
3249 l_trolin_val_rec.ORGANIZATION := inv_id_to_value.ORGANIZATION(p_organization_id => p_trolin_rec.organization_id);
3250 END IF;
3251
3252 IF p_trolin_rec.to_organization_id IS NOT NULL
3253 AND p_trolin_rec.to_organization_id <> fnd_api.g_miss_num
3254 AND NOT inv_globals.equal(p_trolin_rec.to_organization_id, p_old_trolin_rec.to_organization_id) THEN
3255 l_trolin_val_rec.to_organization := inv_id_to_value.to_organization(p_to_organization_id => p_trolin_rec.to_organization_id);
3256 END IF;
3257
3258 IF p_trolin_rec.project_id IS NOT NULL
3259 AND p_trolin_rec.project_id <> fnd_api.g_miss_num
3260 AND NOT inv_globals.equal(p_trolin_rec.project_id, p_old_trolin_rec.project_id) THEN
3261 l_trolin_val_rec.project := inv_id_to_value.project(p_project_id => p_trolin_rec.project_id);
3262 END IF;
3263
3264 IF p_trolin_rec.reason_id IS NOT NULL
3265 AND p_trolin_rec.reason_id <> fnd_api.g_miss_num
3266 AND NOT inv_globals.equal(p_trolin_rec.reason_id, p_old_trolin_rec.reason_id) THEN
3267 l_trolin_val_rec.reason := inv_id_to_value.reason(p_reason_id => p_trolin_rec.reason_id);
3268 END IF;
3269
3270 IF p_trolin_rec.reference_id IS NOT NULL
3271 AND p_trolin_rec.reference_id <> fnd_api.g_miss_num
3272 AND NOT inv_globals.equal(p_trolin_rec.reference_id, p_old_trolin_rec.reference_id) THEN
3273 l_trolin_val_rec.REFERENCE := inv_id_to_value.REFERENCE(p_reference_id => p_trolin_rec.reference_id);
3274 END IF;
3275
3276 IF p_trolin_rec.reference_type_code IS NOT NULL
3277 AND p_trolin_rec.reference_type_code <> fnd_api.g_miss_num
3278 AND NOT inv_globals.equal(p_trolin_rec.reference_type_code, p_old_trolin_rec.reference_type_code) THEN
3279 l_trolin_val_rec.reference_type := inv_id_to_value.reference_type(p_reference_type_code => p_trolin_rec.reference_type_code);
3280 END IF;
3281
3282 IF p_trolin_rec.task_id IS NOT NULL
3283 AND p_trolin_rec.task_id <> fnd_api.g_miss_num
3284 AND NOT inv_globals.equal(p_trolin_rec.task_id, p_old_trolin_rec.task_id) THEN
3285 l_trolin_val_rec.task := inv_id_to_value.task(p_task_id => p_trolin_rec.task_id);
3286 END IF;
3287
3288 IF p_trolin_rec.to_account_id IS NOT NULL
3289 AND p_trolin_rec.to_account_id <> fnd_api.g_miss_num
3290 AND NOT inv_globals.equal(p_trolin_rec.to_account_id, p_old_trolin_rec.to_account_id) THEN
3291 l_trolin_val_rec.to_account := inv_id_to_value.to_account(p_to_account_id => p_trolin_rec.to_account_id);
3292 END IF;
3293
3294 IF p_trolin_rec.to_locator_id IS NOT NULL
3295 AND p_trolin_rec.to_locator_id <> fnd_api.g_miss_num
3296 AND NOT inv_globals.equal(p_trolin_rec.to_locator_id, p_old_trolin_rec.to_locator_id) THEN
3297 l_trolin_val_rec.to_locator := inv_id_to_value.to_locator(p_to_locator_id => p_trolin_rec.to_locator_id);
3298 END IF;
3299
3300 -- IF p_trolin_rec.to_subinventory_code IS NOT NULL AND
3301 -- p_trolin_rec.to_subinventory_code <> FND_API.G_MISS_CHAR AND
3302 -- NOT INV_GLOBALS.Equal(p_trolin_rec.to_subinventory_code,
3303 -- p_old_trolin_rec.to_subinventory_code)
3304 -- THEN
3305 -- l_trolin_val_rec.to_subinventory := INV_Id_To_Value.To_Subinventory
3306 -- ( p_to_subinventory_code => p_trolin_rec.to_subinventory_code
3307 -- );
3308 -- END IF; -- Generated
3309
3310 IF p_trolin_rec.to_subinventory_id IS NOT NULL
3311 AND p_trolin_rec.to_subinventory_id <> fnd_api.g_miss_num
3312 AND NOT inv_globals.equal(p_trolin_rec.to_subinventory_id, p_old_trolin_rec.to_subinventory_id) THEN
3313 l_trolin_val_rec.to_subinventory := inv_id_to_value.to_subinventory(p_to_subinventory_id => p_trolin_rec.to_subinventory_id);
3314 END IF;
3315
3316 IF p_trolin_rec.transaction_header_id IS NOT NULL
3317 AND p_trolin_rec.transaction_header_id <> fnd_api.g_miss_num
3318 AND NOT inv_globals.equal(p_trolin_rec.transaction_header_id, p_old_trolin_rec.transaction_header_id) THEN
3319 l_trolin_val_rec.transaction_header := inv_id_to_value.transaction_header(p_transaction_header_id => p_trolin_rec.transaction_header_id);
3320 END IF;
3321
3322 IF p_trolin_rec.transaction_type_id IS NOT NULL
3323 AND p_trolin_rec.transaction_type_id <> fnd_api.g_miss_num
3324 AND NOT inv_globals.equal(p_trolin_rec.transaction_type_id, p_old_trolin_rec.transaction_type_id) THEN
3325 l_trolin_val_rec.transaction_type := inv_id_to_value.transaction_type(p_transaction_type_id => p_trolin_rec.transaction_type_id);
3326 END IF;
3327
3328 IF p_trolin_rec.uom_code IS NOT NULL
3329 AND p_trolin_rec.uom_code <> fnd_api.g_miss_char
3330 AND NOT inv_globals.equal(p_trolin_rec.uom_code, p_old_trolin_rec.uom_code) THEN
3331 l_trolin_val_rec.uom := inv_id_to_value.uom(p_uom_code => p_trolin_rec.uom_code);
3332 END IF;
3333
3334 RETURN l_trolin_val_rec;
3335 END get_values;
3336
3337 -- Function Get_Ids
3338
3339 FUNCTION get_ids(p_trolin_rec IN inv_move_order_pub.trolin_rec_type, p_trolin_val_rec IN inv_move_order_pub.trolin_val_rec_type)
3340 RETURN inv_move_order_pub.trolin_rec_type IS
3341 l_trolin_rec inv_move_order_pub.trolin_rec_type;
3342 BEGIN
3343 -- initialize return_status.
3344
3345 l_trolin_rec.return_status := fnd_api.g_ret_sts_success;
3346 -- initialize l_trolin_rec.
3347
3348 l_trolin_rec := p_trolin_rec;
3349
3350 /*
3351 IF p_trolin_val_rec.from_locator <> FND_API.G_MISS_CHAR
3352 THEN
3353
3354 IF p_trolin_rec.from_locator_id <> FND_API.G_MISS_NUM THEN
3355
3356 l_trolin_rec.from_locator_id := p_trolin_rec.from_locator_id;
3357
3358 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_SUCCESS)
3359 THEN
3360
3361 FND_MESSAGE.SET_NAME('INV','FND_BOTH_VAL_AND_ID_EXIST');
3362 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','from_locator');
3363 FND_MSG_PUB.Add;
3364
3365 END IF;
3366
3367 ELSE
3368
3369 l_trolin_rec.from_locator_id := INV_Value_To_Id.from_locator
3370 ( p_organizatoin_id => p_trolin_rec.organization_id,
3371 p_from_locator => p_trolin_val_rec.from_locator
3372 );
3373
3374 IF l_trolin_rec.from_locator_id = FND_API.G_MISS_NUM THEN
3375 l_trolin_rec.return_status := FND_API.G_RET_STS_ERROR;
3376 END IF;
3377
3378 END IF;
3379
3380 END IF;
3381 */
3382
3383 IF p_trolin_val_rec.from_subinventory <> fnd_api.g_miss_char THEN
3384 IF p_trolin_rec.from_subinventory_id <> fnd_api.g_miss_num THEN
3385 l_trolin_rec.from_subinventory_id := p_trolin_rec.from_subinventory_id;
3386
3387 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3388 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3389 fnd_message.set_token('ATTRIBUTE', 'from_subinventory');
3390 fnd_msg_pub.ADD;
3391 END IF;
3392 ELSE
3393 l_trolin_rec.from_subinventory_id := inv_value_to_id.from_subinventory(p_organization_id => p_trolin_rec.organization_id, p_from_subinventory => p_trolin_val_rec.from_subinventory);
3394
3395 IF l_trolin_rec.from_subinventory_id = fnd_api.g_miss_num THEN
3396 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3397 END IF;
3398 END IF;
3399 END IF;
3400
3401 IF p_trolin_val_rec.header <> fnd_api.g_miss_char THEN
3402 IF p_trolin_rec.header_id <> fnd_api.g_miss_num THEN
3403 l_trolin_rec.header_id := p_trolin_rec.header_id;
3404
3405 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3406 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3407 fnd_message.set_token('ATTRIBUTE', 'header');
3408 fnd_msg_pub.ADD;
3409 END IF;
3410 ELSE
3411 l_trolin_rec.header_id := inv_value_to_id.header(p_header => p_trolin_val_rec.header);
3412
3413 IF l_trolin_rec.header_id = fnd_api.g_miss_num THEN
3414 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3415 END IF;
3416 END IF;
3417 END IF;
3418
3419 IF p_trolin_val_rec.inventory_item <> fnd_api.g_miss_char THEN
3420 IF p_trolin_rec.inventory_item_id <> fnd_api.g_miss_num THEN
3421 l_trolin_rec.inventory_item_id := p_trolin_rec.inventory_item_id;
3422
3423 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3424 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3425 fnd_message.set_token('ATTRIBUTE', 'inventory_item');
3426 fnd_msg_pub.ADD;
3427 END IF;
3428 ELSE
3429 l_trolin_rec.inventory_item_id := inv_value_to_id.inventory_item(p_organization_id => p_trolin_rec.organization_id, p_inventory_item => p_trolin_val_rec.inventory_item);
3430
3431 IF l_trolin_rec.inventory_item_id = fnd_api.g_miss_num THEN
3432 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3433 END IF;
3434 END IF;
3435 END IF;
3436
3437 IF p_trolin_val_rec.line <> fnd_api.g_miss_char THEN
3438 IF p_trolin_rec.line_id <> fnd_api.g_miss_num THEN
3439 l_trolin_rec.line_id := p_trolin_rec.line_id;
3440
3441 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3442 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3443 fnd_message.set_token('ATTRIBUTE', 'line');
3444 fnd_msg_pub.ADD;
3445 END IF;
3446 ELSE
3447 l_trolin_rec.line_id := inv_value_to_id.line(p_line => p_trolin_val_rec.line);
3448
3449 IF l_trolin_rec.line_id = fnd_api.g_miss_num THEN
3450 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3451 END IF;
3452 END IF;
3453 END IF;
3454
3455 IF p_trolin_val_rec.ORGANIZATION <> fnd_api.g_miss_char THEN
3456 IF p_trolin_rec.organization_id <> fnd_api.g_miss_num THEN
3457 l_trolin_rec.organization_id := p_trolin_rec.organization_id;
3458
3459 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3460 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3461 fnd_message.set_token('ATTRIBUTE', 'organization');
3462 fnd_msg_pub.ADD;
3463 END IF;
3464 ELSE
3465 l_trolin_rec.organization_id := inv_value_to_id.ORGANIZATION(p_organization => p_trolin_val_rec.ORGANIZATION);
3466
3467 IF l_trolin_rec.organization_id = fnd_api.g_miss_num THEN
3468 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3469 END IF;
3470 END IF;
3471 END IF;
3472
3473 IF p_trolin_val_rec.to_organization <> fnd_api.g_miss_char THEN
3474 IF p_trolin_rec.to_organization_id <> fnd_api.g_miss_num THEN
3475 l_trolin_rec.to_organization_id := p_trolin_rec.to_organization_id;
3476
3477 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3478 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3479 fnd_message.set_token('ATTRIBUTE', 'to_organization');
3480 fnd_msg_pub.ADD;
3481 END IF;
3482 ELSE
3483 l_trolin_rec.to_organization_id := inv_value_to_id.to_organization(p_to_organization => p_trolin_val_rec.to_organization);
3484
3485 IF l_trolin_rec.to_organization_id = fnd_api.g_miss_num THEN
3486 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3487 END IF;
3488 END IF;
3489 END IF;
3490
3491 IF p_trolin_val_rec.project <> fnd_api.g_miss_char THEN
3492 IF p_trolin_rec.project_id <> fnd_api.g_miss_num THEN
3493 l_trolin_rec.project_id := p_trolin_rec.project_id;
3494
3495 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3496 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3497 fnd_message.set_token('ATTRIBUTE', 'project');
3498 fnd_msg_pub.ADD;
3499 END IF;
3500 ELSE
3501 l_trolin_rec.project_id := inv_value_to_id.project(p_project => p_trolin_val_rec.project);
3502
3503 IF l_trolin_rec.project_id = fnd_api.g_miss_num THEN
3504 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3505 END IF;
3506 END IF;
3507 END IF;
3508
3509 IF p_trolin_val_rec.reason <> fnd_api.g_miss_char THEN
3510 IF p_trolin_rec.reason_id <> fnd_api.g_miss_num THEN
3511 l_trolin_rec.reason_id := p_trolin_rec.reason_id;
3512
3513 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3514 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3515 fnd_message.set_token('ATTRIBUTE', 'reason');
3516 fnd_msg_pub.ADD;
3517 END IF;
3518 ELSE
3519 l_trolin_rec.reason_id := inv_value_to_id.reason(p_reason => p_trolin_val_rec.reason);
3520
3521 IF l_trolin_rec.reason_id = fnd_api.g_miss_num THEN
3522 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3523 END IF;
3524 END IF;
3525 END IF;
3526
3527 IF p_trolin_val_rec.REFERENCE <> fnd_api.g_miss_char THEN
3528 IF p_trolin_rec.reference_id <> fnd_api.g_miss_num THEN
3529 l_trolin_rec.reference_id := p_trolin_rec.reference_id;
3530
3531 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3532 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3533 fnd_message.set_token('ATTRIBUTE', 'reference');
3534 fnd_msg_pub.ADD;
3535 END IF;
3536 ELSE
3537 l_trolin_rec.reference_id := inv_value_to_id.REFERENCE(p_reference => p_trolin_val_rec.REFERENCE);
3538
3539 IF l_trolin_rec.reference_id = fnd_api.g_miss_num THEN
3540 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3541 END IF;
3542 END IF;
3543 END IF;
3544
3545 IF p_trolin_val_rec.reference_type <> fnd_api.g_miss_char THEN
3546 IF p_trolin_rec.reference_type_code <> fnd_api.g_miss_num THEN
3547 l_trolin_rec.reference_type_code := p_trolin_rec.reference_type_code;
3548
3549 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3550 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3551 fnd_message.set_token('ATTRIBUTE', 'reference_type');
3552 fnd_msg_pub.ADD;
3553 END IF;
3554 ELSE
3555 l_trolin_rec.reference_type_code := inv_value_to_id.reference_type(p_reference_type => p_trolin_val_rec.reference_type);
3556
3557 IF l_trolin_rec.reference_type_code = fnd_api.g_miss_num THEN
3558 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3559 END IF;
3560 END IF;
3561 END IF;
3562
3563 IF p_trolin_val_rec.task <> fnd_api.g_miss_char THEN
3564 IF p_trolin_rec.task_id <> fnd_api.g_miss_num THEN
3565 l_trolin_rec.task_id := p_trolin_rec.task_id;
3566
3567 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3568 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3569 fnd_message.set_token('ATTRIBUTE', 'task');
3570 fnd_msg_pub.ADD;
3571 END IF;
3572 ELSE
3573 l_trolin_rec.task_id := inv_value_to_id.task(p_task => p_trolin_val_rec.task);
3574
3575 IF l_trolin_rec.task_id = fnd_api.g_miss_num THEN
3576 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3577 END IF;
3578 END IF;
3579 END IF;
3580
3581 IF p_trolin_val_rec.to_account <> fnd_api.g_miss_char THEN
3582 IF p_trolin_rec.to_account_id <> fnd_api.g_miss_num THEN
3583 l_trolin_rec.to_account_id := p_trolin_rec.to_account_id;
3584
3585 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3586 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3587 fnd_message.set_token('ATTRIBUTE', 'to_account');
3588 fnd_msg_pub.ADD;
3589 END IF;
3590 ELSE
3591 l_trolin_rec.to_account_id := inv_value_to_id.to_account(p_organization_id => p_trolin_rec.organization_id, p_to_account => p_trolin_val_rec.to_account);
3592
3593 IF l_trolin_rec.to_account_id = fnd_api.g_miss_num THEN
3594 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3595 END IF;
3596 END IF;
3597 END IF;
3598
3599 /*
3600 IF p_trolin_val_rec.to_locator <> FND_API.G_MISS_CHAR
3601 THEN
3602
3603 IF p_trolin_rec.to_locator_id <> FND_API.G_MISS_NUM THEN
3604
3605 l_trolin_rec.to_locator_id := p_trolin_rec.to_locator_id;
3606
3607 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_SUCCESS)
3608 THEN
3609
3610 FND_MESSAGE.SET_NAME('INV','FND_BOTH_VAL_AND_ID_EXIST');
3611 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','to_locator');
3612 FND_MSG_PUB.Add;
3613
3614 END IF;
3615
3616 ELSE
3617
3618 l_trolin_rec.to_locator_id := INV_Value_To_Id.to_locator
3619 ( p_to_locator => p_trolin_val_rec.to_locator
3620 );
3621
3622 IF l_trolin_rec.to_locator_id = FND_API.G_MISS_NUM THEN
3623 l_trolin_rec.return_status := FND_API.G_RET_STS_ERROR;
3624 END IF;
3625
3626 END IF;
3627
3628 END IF;
3629 */
3630
3631 IF p_trolin_val_rec.to_subinventory <> fnd_api.g_miss_char THEN
3632 IF p_trolin_rec.to_subinventory_code <> fnd_api.g_miss_char THEN
3633 l_trolin_rec.to_subinventory_code := p_trolin_rec.to_subinventory_code;
3634
3635 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3636 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3637 fnd_message.set_token('ATTRIBUTE', 'to_subinventory');
3638 fnd_msg_pub.ADD;
3639 END IF;
3640 ELSE
3641 l_trolin_rec.to_subinventory_code := inv_value_to_id.to_subinventory(p_organization_id => p_trolin_rec.organization_id, p_to_subinventory => p_trolin_val_rec.to_subinventory);
3642
3643 IF l_trolin_rec.to_subinventory_code = fnd_api.g_miss_char THEN
3644 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3645 END IF;
3646 END IF;
3647 END IF;
3648
3649 -- Line2839
3650 IF p_trolin_val_rec.to_subinventory <> fnd_api.g_miss_char THEN
3651 IF p_trolin_rec.to_subinventory_id <> fnd_api.g_miss_num THEN
3652 l_trolin_rec.to_subinventory_id := p_trolin_rec.to_subinventory_id;
3653
3654 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3655 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3656 fnd_message.set_token('ATTRIBUTE', 'to_subinventory');
3657 fnd_msg_pub.ADD;
3658 END IF;
3659 ELSE
3660 l_trolin_rec.to_subinventory_id := inv_value_to_id.to_subinventory(p_organization_id => p_trolin_rec.organization_id, p_to_subinventory => p_trolin_val_rec.to_subinventory);
3661
3662 IF l_trolin_rec.to_subinventory_id = fnd_api.g_miss_num THEN
3663 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3664 END IF;
3665 END IF;
3666 END IF;
3667
3668 IF p_trolin_val_rec.transaction_header <> fnd_api.g_miss_char THEN
3669 IF p_trolin_rec.transaction_header_id <> fnd_api.g_miss_num THEN
3670 l_trolin_rec.transaction_header_id := p_trolin_rec.transaction_header_id;
3671
3672 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3673 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3674 fnd_message.set_token('ATTRIBUTE', 'transaction_header');
3675 fnd_msg_pub.ADD;
3676 END IF;
3677 ELSE
3678 l_trolin_rec.transaction_header_id := inv_value_to_id.transaction_header(p_transaction_header => p_trolin_val_rec.transaction_header);
3679
3680 IF l_trolin_rec.transaction_header_id = fnd_api.g_miss_num THEN
3681 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3682 END IF;
3683 END IF;
3684 END IF;
3685
3686 IF p_trolin_val_rec.transaction_type <> fnd_api.g_miss_char THEN
3687 IF p_trolin_rec.transaction_type_id <> fnd_api.g_miss_num THEN
3688 l_trolin_rec.transaction_type_id := p_trolin_rec.transaction_type_id;
3689
3690 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3691 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3692 fnd_message.set_token('ATTRIBUTE', 'transaction_type');
3693 fnd_msg_pub.ADD;
3694 END IF;
3695 ELSE
3696 l_trolin_rec.transaction_type_id := inv_value_to_id.transaction_type(p_transaction_type => p_trolin_val_rec.transaction_type);
3697
3698 IF l_trolin_rec.transaction_type_id = fnd_api.g_miss_num THEN
3699 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3700 END IF;
3701 END IF;
3702 END IF;
3703
3704 -- Line2899
3705 IF p_trolin_val_rec.uom <> fnd_api.g_miss_char THEN
3706 IF p_trolin_rec.uom_code <> fnd_api.g_miss_char THEN
3707 l_trolin_rec.uom_code := p_trolin_rec.uom_code;
3708
3709 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
3710 fnd_message.set_name('INV', 'FND_BOTH_VAL_AND_ID_EXIST');
3711 fnd_message.set_token('ATTRIBUTE', 'uom');
3712 fnd_msg_pub.ADD;
3713 END IF;
3714 ELSE
3715 -- Line2917
3716 l_trolin_rec.uom_code := inv_value_to_id.uom(p_uom => p_trolin_val_rec.uom);
3717
3718 IF l_trolin_rec.uom_code = fnd_api.g_miss_char THEN
3719 l_trolin_rec.return_status := fnd_api.g_ret_sts_error;
3720 END IF;
3721 END IF;
3722 END IF;
3723
3724 RETURN l_trolin_rec;
3725 END get_ids;
3726
3727 --Procedure Insert_Mo_Lines_Bulk /* For Parallel Pick-Release */
3728
3729 PROCEDURE insert_mo_lines_bulk(p_new_trolin_tbl IN inv_move_order_pub.trolin_new_tbl_type
3730 ,x_return_status IN OUT NOCOPY VARCHAR2) IS
3731
3732 BEGIN
3733 FORALL i IN 1 .. p_new_trolin_tbl.COUNT
3734 insert into mtl_txn_request_lines
3735 values p_new_trolin_tbl(i);
3736
3737 x_return_status := fnd_api.g_ret_sts_success;
3738 EXCEPTION
3739 WHEN OTHERS THEN
3740 x_return_status := fnd_api.g_ret_sts_error;
3741 RAISE fnd_api.g_exc_unexpected_error;
3742 END insert_mo_lines_bulk;
3743
3744 END inv_trolin_util;