[Home] [Help]
PACKAGE BODY: APPS.EGO_ITEM_PUB
Source
1 PACKAGE BODY EGO_ITEM_PUB AS
2 /* $Header: EGOPITMB.pls 120.22.12010000.2 2008/11/26 22:03:46 akbharga ship $ */
3
4 G_FILE_NAME CONSTANT VARCHAR2(12) := 'EGOPITMB.pls';
5 G_PKG_NAME CONSTANT VARCHAR2(30) := 'EGO_ITEM_PUB';
6
7 G_USER_ID NUMBER := FND_GLOBAL.User_Id;
8 G_LOGIN_ID NUMBER := FND_GLOBAL.Conc_Login_Id;
9
10 PROCEDURE initialize_item_info
11 (p_inventory_item_id IN NUMBER
12 ,p_organization_id IN NUMBER
13 ,p_tab_index IN INTEGER
14 ,x_item_table IN OUT NOCOPY EGO_ITEM_PUB.Item_Tbl_Type
15 ,x_return_status OUT NOCOPY VARCHAR2
16 ,x_msg_count OUT NOCOPY NUMBER);
17
18 PROCEDURE initialize_template_info
19 (p_template_id IN NUMBER
20 ,p_template_name IN VARCHAR2
21 ,p_organization_id IN NUMBER
22 ,p_organization_code IN VARCHAR2
23 ,p_tab_index IN INTEGER
24 ,x_item_table IN OUT NOCOPY EGO_ITEM_PUB.Item_Tbl_Type
25 ,x_return_status OUT NOCOPY VARCHAR2
26 ,x_msg_count OUT NOCOPY NUMBER);
27
28
29 -----------------------------------------------------------------
30 FUNCTION REPLACE_G_MISS_CHAR(p_value_passed VARCHAR2
31 ,p_value_set VARCHAR2)
32 RETURN VARCHAR2 IS
33 l_return_value VARCHAR2(4000);
34 BEGIN
35 IF p_value_passed = G_MISS_CHAR THEN
36 l_return_value := p_value_set;
37 ELSE
38 l_return_value := p_value_passed;
39 END IF;
40 RETURN l_return_value;
41 END REPLACE_G_MISS_CHAR;
42
43 -----------------------------------------------------------------
44 FUNCTION REPLACE_G_MISS_NUM(p_value_passed NUMBER
45 ,p_value_set NUMBER)
46 RETURN NUMBER IS
47 l_return_value NUMBER;
48 BEGIN
49 IF p_value_passed = G_MISS_NUM THEN
50 l_return_value := p_value_set;
51 ELSE
52 l_return_value := p_value_passed;
53 END IF;
54 RETURN l_return_value;
55 END REPLACE_G_MISS_NUM;
56
57 -----------------------------------------------------------------
58 FUNCTION REPLACE_G_MISS_DATE(p_value_passed DATE
59 ,p_value_set DATE)
60 RETURN DATE IS
61 l_return_value DATE;
62 BEGIN
63 IF p_value_passed = G_MISS_DATE THEN
64 l_return_value := p_value_set;
65 ELSE
66 l_return_value := p_value_passed;
67 END IF;
68 RETURN l_return_value;
69 END REPLACE_G_MISS_DATE;
70
71 -----------------------------------------------------------------
72 -- Write Debug statements to DBMS OUTPUT
73 -----------------------------------------------------------------
74 PROCEDURE Write_Out (p_msg IN VARCHAR2) IS
75 BEGIN
76 NULL;
77 --DBMS_OUTPUT.PUT_LINE('['||TO_CHAR(SYSDATE,'DD-MON-YYYY HH24:MI:SS')||'] '|| p_msg);
78 END;
79
80 ---------------------------------------------------------------------------
81 -- Procedure to merge the new value in the given Table
82 ---------------------------------------------------------------------------
83 PROCEDURE Merge_new_entry(p_num_table IN OUT NOCOPY EGO_NUMBER_TBL_TYPE,
84 p_num_value IN NUMBER) IS
85
86 l_value_exists BOOLEAN := FALSE;
87 BEGIN
88
89 IF (p_num_table IS NULL) THEN
90
91 p_num_table := EGO_NUMBER_TBL_TYPE();
92 --WRITE_OUT('NEW Entry, add value to the end: '||p_num_value);
93 p_num_table.EXTEND();
94 p_num_table(p_num_table.LAST) := p_num_value;
95
96 ELSE -- IF (p_num_table IS NULL)...
97
98 FOR i IN 1..p_num_table.COUNT LOOP
99 IF (p_num_table(i) = p_num_value) THEN
100 --WRITE_OUT('No need to Add. Value Exists: '||p_num_table(i));
101 l_value_exists := TRUE;
102 END IF;
103 END LOOP; --end: FOR i IN 1..l_num_table.COUNT LOOP
104
105 IF NOT (l_value_exists) THEN
106 --WRITE_OUT('NEW Entry, add value to the end: '||p_num_value);
107 p_num_table.EXTEND();
108 p_num_table(p_num_table.LAST) := p_num_value;
109 END IF; --end: IF NOT (l_value_exists) THEN
110
111 END IF; --end: IF (p_num_table IS NULL) THEN
112
113 END Merge_new_entry;
114
115 ---------------------------------------------------------------------------
116 PROCEDURE Process_Items(
117 p_api_version IN NUMBER
118 ,p_init_msg_list IN VARCHAR2 DEFAULT G_FALSE
119 ,p_commit IN VARCHAR2 DEFAULT G_FALSE
120 ,p_Item_Tbl IN EGO_Item_PUB.Item_Tbl_Type
121 ,x_Item_Tbl OUT NOCOPY EGO_Item_PUB.Item_Tbl_Type
122 ,p_Role_Grant_Tbl IN EGO_Item_PUB.Role_Grant_Tbl_Type DEFAULT EGO_Item_PUB.G_MISS_Role_Grant_Tbl
123 ,x_return_status OUT NOCOPY VARCHAR2
124 ,x_msg_count OUT NOCOPY NUMBER) IS
125
126 l_api_name CONSTANT VARCHAR2(30) := 'Process_Items';
127 l_api_version CONSTANT NUMBER := 1.0;
128 l_return_status VARCHAR2(1) := G_MISS_CHAR;
129 l_tab_index NUMBER := p_Item_Tbl.FIRST;
130 l_item_tbl EGO_Item_PUB.Item_Tbl_Type;
131
132 BEGIN
133
134 x_return_status := G_RET_STS_SUCCESS;
135
136 -- Check for call compatibility
137 IF NOT FND_API.Compatible_API_Call ( l_api_version, p_api_version,
138 l_api_name, G_PKG_NAME )
139 THEN
140 RAISE FND_API.g_EXC_UNEXPECTED_ERROR;
141 END IF;
142
143 -- Initialize message list
144 IF FND_API.To_Boolean (p_init_msg_list) THEN
145 Error_Handler.Initialize;
146 END IF;
147
148 -- Set business object identifier in the System Information record
149 Error_Handler.Set_BO_Identifier ( p_bo_identifier => G_BO_Identifier );
150
151 l_item_tbl := p_Item_Tbl;
152 -- Store items input data in the global table so that the business object
153 -- data are accessible without copying to all procedures.
154
155 WHILE l_tab_index <= p_Item_Tbl.LAST LOOP
156
157 IF ((p_Item_Tbl(l_tab_index).Transaction_Type = G_TTYPE_CREATE)
158 AND(p_Item_Tbl(l_tab_index).item_catalog_group_id IS NULL
159 OR p_Item_Tbl(l_tab_index).item_catalog_group_id = G_MISS_NUM
160 OR NOT INVIDIT3.CHECK_NPR_CATALOG(p_Item_Tbl(l_tab_index).item_catalog_group_id)))
161 THEN
162
163 IF p_Item_Tbl(l_tab_index).copy_inventory_item_Id IS NOT NULL
164 AND p_Item_Tbl(l_tab_index).copy_inventory_item_Id <> G_MISS_NUM THEN
165
166 initialize_item_info(
167 p_inventory_item_id => p_Item_Tbl(l_tab_index).copy_inventory_item_Id
168 ,p_organization_id => p_Item_Tbl(l_tab_index).organization_id
169 ,p_tab_index => l_tab_index
170 ,x_item_table => l_item_tbl
171 ,x_return_status => x_return_status
172 ,x_msg_count => x_msg_count);
173
174 IF x_return_status = G_RET_STS_ERROR THEN
175 RAISE FND_API.G_EXC_ERROR;
176 ELSIF x_return_status = G_RET_STS_UNEXP_ERROR THEN
177 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
178 END IF;
179
180 END IF;
181
182 END IF;
183 l_tab_index := l_tab_index + 1;
184 END LOOP;
185
186 EGO_Item_PVT.G_Item_Tbl := l_item_tbl;
187
188 -- Call the Private API to process items table.
189
190 EGO_Item_PVT.Process_Items (
191 p_commit => p_commit
192 ,x_return_status => l_return_status
193 ,x_msg_count => x_msg_count );
194
195 x_return_status := l_return_status;
196 x_Item_Tbl := EGO_Item_PVT.G_Item_Tbl;
197
198 EXCEPTION
199 WHEN FND_API.g_EXC_UNEXPECTED_ERROR THEN
200 x_return_status := G_RET_STS_UNEXP_ERROR;
201 WHEN others THEN
202 x_return_status := G_RET_STS_UNEXP_ERROR;
203 EGO_Item_Msg.Add_Error_Message ( EGO_Item_PVT.G_Item_indx, 'INV', 'INV_ITEM_UNEXPECTED_ERROR',
204 'PACKAGE_NAME', G_PKG_NAME, FALSE,
205 'PROCEDURE_NAME', l_api_name, FALSE,
206 'ERROR_TEXT', SQLERRM, FALSE );
207 END Process_Items;
208
209 ---------------------------------------------------------------------------
210 PROCEDURE Process_Item(
211 p_api_version IN NUMBER
212 ,p_init_msg_list IN VARCHAR2 DEFAULT G_FALSE
213 ,p_commit IN VARCHAR2 DEFAULT G_FALSE
214 -- Transaction data
215 ,p_Transaction_Type IN VARCHAR2 DEFAULT G_MISS_CHAR
216 ,p_Language_Code IN VARCHAR2 DEFAULT G_MISS_CHAR
217 -- Copy item from
218 ,p_Template_Id IN NUMBER DEFAULT NULL
219 ,p_Template_Name IN VARCHAR2 DEFAULT NULL
220 -- Item identifier
221 ,p_Inventory_Item_Id IN NUMBER DEFAULT G_MISS_NUM
222 ,p_Item_Number IN VARCHAR2 DEFAULT G_MISS_CHAR
223 ,p_Segment1 IN VARCHAR2 DEFAULT G_MISS_CHAR
224 ,p_Segment2 IN VARCHAR2 DEFAULT G_MISS_CHAR
225 ,p_Segment3 IN VARCHAR2 DEFAULT G_MISS_CHAR
226 ,p_Segment4 IN VARCHAR2 DEFAULT G_MISS_CHAR
227 ,p_Segment5 IN VARCHAR2 DEFAULT G_MISS_CHAR
228 ,p_Segment6 IN VARCHAR2 DEFAULT G_MISS_CHAR
229 ,p_Segment7 IN VARCHAR2 DEFAULT G_MISS_CHAR
230 ,p_Segment8 IN VARCHAR2 DEFAULT G_MISS_CHAR
231 ,p_Segment9 IN VARCHAR2 DEFAULT G_MISS_CHAR
232 ,p_Segment10 IN VARCHAR2 DEFAULT G_MISS_CHAR
233 ,p_Segment11 IN VARCHAR2 DEFAULT G_MISS_CHAR
234 ,p_Segment12 IN VARCHAR2 DEFAULT G_MISS_CHAR
235 ,p_Segment13 IN VARCHAR2 DEFAULT G_MISS_CHAR
236 ,p_Segment14 IN VARCHAR2 DEFAULT G_MISS_CHAR
237 ,p_Segment15 IN VARCHAR2 DEFAULT G_MISS_CHAR
238 ,p_Segment16 IN VARCHAR2 DEFAULT G_MISS_CHAR
239 ,p_Segment17 IN VARCHAR2 DEFAULT G_MISS_CHAR
240 ,p_Segment18 IN VARCHAR2 DEFAULT G_MISS_CHAR
241 ,p_Segment19 IN VARCHAR2 DEFAULT G_MISS_CHAR
242 ,p_Segment20 IN VARCHAR2 DEFAULT G_MISS_CHAR
243 ,p_Object_Version_Number IN NUMBER DEFAULT G_MISS_NUM
244 -- New Item segments Bug:2806390
245 ,p_New_Item_Number IN VARCHAR2 DEFAULT G_MISS_CHAR
246 ,p_New_Segment1 IN VARCHAR2 DEFAULT G_MISS_CHAR
247 ,p_New_Segment2 IN VARCHAR2 DEFAULT G_MISS_CHAR
248 ,p_New_Segment3 IN VARCHAR2 DEFAULT G_MISS_CHAR
249 ,p_New_Segment4 IN VARCHAR2 DEFAULT G_MISS_CHAR
250 ,p_New_Segment5 IN VARCHAR2 DEFAULT G_MISS_CHAR
251 ,p_New_Segment6 IN VARCHAR2 DEFAULT G_MISS_CHAR
252 ,p_New_Segment7 IN VARCHAR2 DEFAULT G_MISS_CHAR
253 ,p_New_Segment8 IN VARCHAR2 DEFAULT G_MISS_CHAR
254 ,p_New_Segment9 IN VARCHAR2 DEFAULT G_MISS_CHAR
255 ,p_New_Segment10 IN VARCHAR2 DEFAULT G_MISS_CHAR
256 ,p_New_Segment11 IN VARCHAR2 DEFAULT G_MISS_CHAR
257 ,p_New_Segment12 IN VARCHAR2 DEFAULT G_MISS_CHAR
258 ,p_New_Segment13 IN VARCHAR2 DEFAULT G_MISS_CHAR
259 ,p_New_Segment14 IN VARCHAR2 DEFAULT G_MISS_CHAR
260 ,p_New_Segment15 IN VARCHAR2 DEFAULT G_MISS_CHAR
261 ,p_New_Segment16 IN VARCHAR2 DEFAULT G_MISS_CHAR
262 ,p_New_Segment17 IN VARCHAR2 DEFAULT G_MISS_CHAR
263 ,p_New_Segment18 IN VARCHAR2 DEFAULT G_MISS_CHAR
264 ,p_New_Segment19 IN VARCHAR2 DEFAULT G_MISS_CHAR
265 ,p_New_Segment20 IN VARCHAR2 DEFAULT G_MISS_CHAR
266 -- Organization
267 ,p_Organization_Id IN NUMBER DEFAULT G_MISS_NUM
268 ,p_Organization_Code IN VARCHAR2 DEFAULT G_MISS_CHAR
269 -- Item catalog group
270 ,p_Item_Catalog_Group_Id IN NUMBER DEFAULT G_MISS_NUM
271 ,p_Catalog_Status_Flag IN VARCHAR2 DEFAULT G_MISS_CHAR
272 -- Lifecycle
273 ,p_Lifecycle_Id IN NUMBER DEFAULT G_MISS_NUM
274 ,p_Current_Phase_Id IN NUMBER DEFAULT G_MISS_NUM
275 -- Main attributes
276 ,p_Description IN VARCHAR2 DEFAULT G_MISS_CHAR
277 ,p_Long_Description IN VARCHAR2 DEFAULT G_MISS_CHAR
278 ,p_Primary_Uom_Code IN VARCHAR2 DEFAULT G_MISS_CHAR
279 ,p_Inventory_Item_Status_Code IN VARCHAR2 DEFAULT G_MISS_CHAR
280 -- BOM/Eng
281 ,p_Bom_Enabled_Flag IN VARCHAR2 DEFAULT G_MISS_CHAR
282 ,p_Eng_Item_Flag IN VARCHAR2 DEFAULT G_MISS_CHAR
283 -- Role Grant
284 ,p_Role_Id IN NUMBER DEFAULT G_MISS_NUM
285 ,p_Role_Name IN VARCHAR2 DEFAULT G_MISS_CHAR
286 ,p_Grantee_Party_Type IN VARCHAR2 DEFAULT G_MISS_CHAR
287 ,p_Grantee_Party_Id IN NUMBER DEFAULT G_MISS_NUM
288 ,p_Grantee_Party_Name IN VARCHAR2 DEFAULT G_MISS_CHAR
289 ,p_Grant_Start_Date IN DATE DEFAULT G_MISS_DATE
290 ,p_Grant_End_Date IN DATE DEFAULT G_MISS_DATE
291 -- Returned item id
292 ,x_Inventory_Item_Id OUT NOCOPY NUMBER
293 ,x_Organization_Id OUT NOCOPY NUMBER
294 ,x_return_status OUT NOCOPY VARCHAR2
295 ,x_msg_count OUT NOCOPY NUMBER) IS
296
297 l_api_name CONSTANT VARCHAR2(30) := 'Process_Item';
298 l_api_version CONSTANT NUMBER := 1.0;
299 l_return_status VARCHAR2(1) := G_MISS_CHAR;
300 l_Item_Tbl EGO_Item_PUB.Item_Tbl_Type;
301 l_Item_Tbl_out EGO_Item_PUB.Item_Tbl_Type;
302 indx BINARY_INTEGER := 1;
303
304 BEGIN
305 l_Item_Tbl(indx).Transaction_Type := p_Transaction_Type;
306 l_Item_Tbl(indx).Language_Code := p_Language_Code;
307 -- Copy item from
308 l_Item_Tbl(indx).Template_Id := p_Template_Id;
309 l_Item_Tbl(indx).Template_Name := p_Template_Name;
310 -- Item identifier
311 l_Item_Tbl(indx).Inventory_Item_Id := p_Inventory_Item_Id;
312 l_Item_Tbl(indx).Item_Number := p_Item_Number;
313 l_Item_Tbl(indx).Segment1 := p_Segment1;
314 l_Item_Tbl(indx).Segment2 := p_Segment2;
315 l_Item_Tbl(indx).Segment3 := p_Segment3;
316 l_Item_Tbl(indx).Segment4 := p_Segment4;
317 l_Item_Tbl(indx).Segment5 := p_Segment5;
318 l_Item_Tbl(indx).Segment6 := p_Segment6;
319 l_Item_Tbl(indx).Segment7 := p_Segment7;
320 l_Item_Tbl(indx).Segment8 := p_Segment8;
321 l_Item_Tbl(indx).Segment9 := p_Segment9;
322 l_Item_Tbl(indx).Segment10 := p_Segment10;
323 l_Item_Tbl(indx).Segment11 := p_Segment11;
324 l_Item_Tbl(indx).Segment12 := p_Segment12;
325 l_Item_Tbl(indx).Segment13 := p_Segment13;
326 l_Item_Tbl(indx).Segment14 := p_Segment14;
327 l_Item_Tbl(indx).Segment15 := p_Segment15;
328 l_Item_Tbl(indx).Segment16 := p_Segment16;
329 l_Item_Tbl(indx).Segment17 := p_Segment17;
330 l_Item_Tbl(indx).Segment18 := p_Segment18;
331 l_Item_Tbl(indx).Segment19 := p_Segment19;
332 l_Item_Tbl(indx).Segment20 := p_Segment20;
333 l_Item_Tbl(indx).Object_Version_Number := p_Object_Version_Number;
334 -- Organization
335 l_Item_Tbl(indx).Organization_Id := p_Organization_Id;
336 l_Item_Tbl(indx).Organization_Code := p_Organization_Code;
337 -- Item catalog group
338 l_Item_Tbl(indx).Item_Catalog_Group_Id := p_Item_Catalog_Group_Id;
339 l_Item_Tbl(indx).Catalog_Status_Flag := p_Catalog_Status_Flag;
340 -- Lifecycle
341 l_Item_Tbl(indx).Lifecycle_Id := p_Lifecycle_Id;
342 l_Item_Tbl(indx).Current_Phase_Id := p_Current_Phase_Id;
343 -- Main attributes
344 l_Item_Tbl(indx).Description := p_Description;
345 l_Item_Tbl(indx).Long_Description := p_Long_Description;
346 l_Item_Tbl(indx).Primary_Uom_Code := p_Primary_Uom_Code;
347 l_Item_Tbl(indx).Inventory_Item_Status_Code := p_Inventory_Item_Status_Code;
348 -- BoM/Eng
349 l_Item_Tbl(indx).Bom_Enabled_Flag := p_Bom_Enabled_Flag;
350 l_Item_Tbl(indx).Eng_Item_Flag := p_Eng_Item_Flag;
351
352 --Bug:2806390 Update Item segments
353 IF (p_Transaction_Type = G_TTYPE_UPDATE) THEN
354 Update_Item_Number(
355 p_Inventory_Item_Id
356 , p_Item_Number
357 , p_Segment1
358 , p_Segment2
359 , p_Segment3
360 , p_Segment4
361 , p_Segment5
362 , p_Segment6
363 , p_Segment7
364 , p_Segment8
365 , p_Segment9
366 , p_Segment10
367 , p_Segment11
368 , p_Segment12
369 , p_Segment13
370 , p_Segment14
371 , p_Segment15
372 , p_Segment16
373 , p_Segment17
374 , p_Segment18
375 , p_Segment19
376 , p_Segment20
377 , p_New_Segment1
378 , p_New_Segment2
379 , p_New_Segment3
380 , p_New_Segment4
381 , p_New_Segment5
382 , p_New_Segment6
383 , p_New_Segment7
384 , p_New_Segment8
385 , p_New_Segment9
386 , p_New_Segment10
387 , p_New_Segment11
388 , p_New_Segment12
389 , p_New_Segment13
390 , p_New_Segment14
391 , p_New_Segment15
392 , p_New_Segment16
393 , p_New_Segment17
394 , p_New_Segment18
395 , p_New_Segment19
396 , p_New_Segment20
397 , l_Item_Tbl
398 , l_return_status);
399
400 IF (l_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
401 x_msg_count := NVL(x_msg_count,0)+1; --Bug:3947619
402 END IF;
403
404 END IF;
405
406 IF (l_return_status IN (FND_API.G_RET_STS_SUCCESS,G_MISS_CHAR) ) THEN
407 EGO_Item_PUB.Process_Items(
408 p_api_version => 1.0
409 , p_init_msg_list => p_init_msg_list
410 , p_commit => p_commit
411 , p_Item_Tbl => l_Item_Tbl
412 , x_Item_Tbl => l_Item_Tbl_out
413 , x_return_status => l_return_status
414 , x_msg_count => x_msg_count );
415 END IF;
416
417 x_Inventory_Item_Id := l_Item_Tbl_out(indx).Inventory_Item_Id;
418 x_Organization_Id := l_Item_Tbl_out(indx).Organization_Id;
419
420 x_return_status := l_return_status;
421
422 EXCEPTION
423 WHEN OTHERS THEN
424 x_return_status := G_RET_STS_UNEXP_ERROR;
425 EGO_Item_Msg.Add_Error_Message ( indx, 'INV', 'INV_ITEM_UNEXPECTED_ERROR',
426 'PACKAGE_NAME', G_PKG_NAME, FALSE,
427 'PROCEDURE_NAME', l_api_name, FALSE,
428 'ERROR_TEXT', SQLERRM, FALSE );
429
430 END Process_Item;
431
432 ---------------------------------------------------------------------------
433 --Added for bug 5997870. Will clear the session variable in the INVUPD2B package
434 PROCEDURE Clear_Object_Version_Values IS
435 BEGIN
436 INVUPD2B.obj_ver_rec.inventory_item_id := NULL;
437 INVUPD2B.obj_ver_rec.org_id := NULL;
438 INVUPD2B.obj_ver_rec.Object_Version_Number := NULL;
439 END;
440
441 ---------------------------------------------------------------------------
442 PROCEDURE Process_Item(
443 p_api_version IN NUMBER
444 ,p_init_msg_list IN VARCHAR2 DEFAULT G_FALSE
445 ,p_commit IN VARCHAR2 DEFAULT G_FALSE
446 -- Transaction data
447 ,p_Transaction_Type IN VARCHAR2 DEFAULT G_MISS_CHAR
448 ,p_Language_Code IN VARCHAR2 DEFAULT G_MISS_CHAR
449 -- Copy item from template
450 ,p_Template_Id IN NUMBER DEFAULT NULL
451 ,p_Template_Name IN VARCHAR2 DEFAULT NULL
452 -- Copy item from another item
453 ,p_copy_inventory_item_Id IN NUMBER DEFAULT G_MISS_NUM
454 -- Base Attributes
455 ,p_inventory_item_id IN NUMBER DEFAULT G_MISS_NUM
456 ,p_organization_id IN NUMBER DEFAULT G_MISS_NUM
457 ,p_master_organization_id IN NUMBER DEFAULT G_MISS_NUM
458 ,p_description IN VARCHAR2 DEFAULT G_MISS_CHAR
459 ,p_long_description IN VARCHAR2 DEFAULT G_MISS_CHAR
460 ,p_primary_uom_code IN VARCHAR2 DEFAULT G_MISS_CHAR
461 ,p_primary_unit_of_measure IN VARCHAR2 DEFAULT G_MISS_CHAR
462 ,p_item_type IN VARCHAR2 DEFAULT G_MISS_CHAR
463 ,p_inventory_item_status_code IN VARCHAR2 DEFAULT G_MISS_CHAR
464 ,p_allowed_units_lookup_code IN NUMBER DEFAULT G_MISS_NUM
465 ,p_item_catalog_group_id IN NUMBER DEFAULT G_MISS_NUM
466 ,p_catalog_status_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
467 ,p_inventory_item_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
468 ,p_stock_enabled_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
469 ,p_mtl_transactions_enabled_fl IN VARCHAR2 DEFAULT G_MISS_CHAR
470 ,p_check_shortages_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
471 ,p_revision_qty_control_code IN NUMBER DEFAULT G_MISS_NUM
472 ,p_reservable_type IN NUMBER DEFAULT G_MISS_NUM
473 ,p_shelf_life_code IN NUMBER DEFAULT G_MISS_NUM
474 ,p_shelf_life_days IN NUMBER DEFAULT G_MISS_NUM
475 ,p_cycle_count_enabled_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
476 ,p_negative_measurement_error IN NUMBER DEFAULT G_MISS_NUM
477 ,p_positive_measurement_error IN NUMBER DEFAULT G_MISS_NUM
478 ,p_lot_control_code IN NUMBER DEFAULT G_MISS_NUM
479 ,p_auto_lot_alpha_prefix IN VARCHAR2 DEFAULT G_MISS_CHAR
480 ,p_start_auto_lot_number IN VARCHAR2 DEFAULT G_MISS_CHAR
481 ,p_serial_number_control_code IN NUMBER DEFAULT G_MISS_NUM
482 ,p_auto_serial_alpha_prefix IN VARCHAR2 DEFAULT G_MISS_CHAR
483 ,p_start_auto_serial_number IN VARCHAR2 DEFAULT G_MISS_CHAR
484 ,p_location_control_code IN NUMBER DEFAULT G_MISS_NUM
485 ,p_restrict_subinventories_cod IN NUMBER DEFAULT G_MISS_NUM
486 ,p_restrict_locators_code IN NUMBER DEFAULT G_MISS_NUM
487 ,p_bom_enabled_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
488 ,p_bom_item_type IN NUMBER DEFAULT G_MISS_NUM
489 ,p_base_item_id IN NUMBER DEFAULT G_MISS_NUM
490 ,p_effectivity_control IN NUMBER DEFAULT G_MISS_NUM
491 ,p_eng_item_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
492 ,p_engineering_ecn_code IN VARCHAR2 DEFAULT G_MISS_CHAR
493 ,p_engineering_item_id IN NUMBER DEFAULT G_MISS_NUM
494 ,p_engineering_date IN DATE DEFAULT G_MISS_DATE
495 ,p_product_family_item_id IN NUMBER DEFAULT G_MISS_NUM
496 ,p_auto_created_config_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
497 ,p_model_config_clause_name IN VARCHAR2 DEFAULT G_MISS_CHAR
498 -- attribute not in the form
499 ,p_new_revision_code IN VARCHAR2 DEFAULT G_MISS_CHAR
500 ,p_costing_enabled_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
501 ,p_inventory_asset_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
502 ,p_default_include_in_rollup_f IN VARCHAR2 DEFAULT G_MISS_CHAR
503 ,p_cost_of_sales_account IN NUMBER DEFAULT G_MISS_NUM
504 ,p_std_lot_size IN NUMBER DEFAULT G_MISS_NUM
505 ,p_purchasing_item_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
506 ,p_purchasing_enabled_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
507 ,p_must_use_approved_vendor_fl IN VARCHAR2 DEFAULT G_MISS_CHAR
508 ,p_allow_item_desc_update_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
509 ,p_rfq_required_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
510 ,p_outside_operation_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
511 ,p_outside_operation_uom_type IN VARCHAR2 DEFAULT G_MISS_CHAR
512 ,p_taxable_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
513 ,p_purchasing_tax_code IN VARCHAR2 DEFAULT G_MISS_CHAR
514 ,p_receipt_required_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
515 ,p_inspection_required_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
516 ,p_buyer_id IN NUMBER DEFAULT G_MISS_NUM
517 ,p_unit_of_issue IN VARCHAR2 DEFAULT G_MISS_CHAR
518 ,p_receive_close_tolerance IN NUMBER DEFAULT G_MISS_NUM
519 ,p_invoice_close_tolerance IN NUMBER DEFAULT G_MISS_NUM
520 ,p_un_number_id IN NUMBER DEFAULT G_MISS_NUM
521 ,p_hazard_class_id IN NUMBER DEFAULT G_MISS_NUM
522 ,p_list_price_per_unit IN NUMBER DEFAULT G_MISS_NUM
523 ,p_market_price IN NUMBER DEFAULT G_MISS_NUM
524 ,p_price_tolerance_percent IN NUMBER DEFAULT G_MISS_NUM
525 ,p_rounding_factor IN NUMBER DEFAULT G_MISS_NUM
526 ,p_encumbrance_account IN NUMBER DEFAULT G_MISS_NUM
527 ,p_expense_account IN NUMBER DEFAULT G_MISS_NUM
528 ,p_expense_billable_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
529 ,p_asset_category_id IN NUMBER DEFAULT G_MISS_NUM
530 ,p_receipt_days_exception_code IN VARCHAR2 DEFAULT G_MISS_CHAR
531 ,p_days_early_receipt_allowed IN NUMBER DEFAULT G_MISS_NUM
532 ,p_days_late_receipt_allowed IN NUMBER DEFAULT G_MISS_NUM
533 ,p_allow_substitute_receipts_f IN VARCHAR2 DEFAULT G_MISS_CHAR
534 ,p_allow_unordered_receipts_fl IN VARCHAR2 DEFAULT G_MISS_CHAR
535 ,p_allow_express_delivery_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
536 ,p_qty_rcv_exception_code IN VARCHAR2 DEFAULT G_MISS_CHAR
537 ,p_qty_rcv_tolerance IN NUMBER DEFAULT G_MISS_NUM
538 ,p_receiving_routing_id IN NUMBER DEFAULT G_MISS_NUM
539 ,p_enforce_ship_to_location_c IN VARCHAR2 DEFAULT G_MISS_CHAR
540 ,p_weight_uom_code IN VARCHAR2 DEFAULT G_MISS_CHAR
541 ,p_unit_weight IN NUMBER DEFAULT G_MISS_NUM
542 ,p_volume_uom_code IN VARCHAR2 DEFAULT G_MISS_CHAR
543 ,p_unit_volume IN NUMBER DEFAULT G_MISS_NUM
544 ,p_container_item_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
545 ,p_vehicle_item_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
546 ,p_container_type_code IN VARCHAR2 DEFAULT G_MISS_CHAR
547 ,p_internal_volume IN NUMBER DEFAULT G_MISS_NUM
548 ,p_maximum_load_weight IN NUMBER DEFAULT G_MISS_NUM
549 ,p_minimum_fill_percent IN NUMBER DEFAULT G_MISS_NUM
550 ,p_inventory_planning_code IN NUMBER DEFAULT G_MISS_NUM
551 ,p_planner_code IN VARCHAR2 DEFAULT G_MISS_CHAR
552 ,p_planning_make_buy_code IN NUMBER DEFAULT G_MISS_NUM
553 ,p_min_minmax_quantity IN NUMBER DEFAULT G_MISS_NUM
554 ,p_max_minmax_quantity IN NUMBER DEFAULT G_MISS_NUM
555 ,p_minimum_order_quantity IN NUMBER DEFAULT G_MISS_NUM
556 ,p_maximum_order_quantity IN NUMBER DEFAULT G_MISS_NUM
557 ,p_order_cost IN NUMBER DEFAULT G_MISS_NUM
558 ,p_carrying_cost IN NUMBER DEFAULT G_MISS_NUM
559 ,p_source_type IN NUMBER DEFAULT G_MISS_NUM
560 ,p_source_organization_id IN NUMBER DEFAULT G_MISS_NUM
561 ,p_source_subinventory IN VARCHAR2 DEFAULT G_MISS_CHAR
562 ,p_mrp_safety_stock_code IN NUMBER DEFAULT G_MISS_NUM
563 ,p_safety_stock_bucket_days IN NUMBER DEFAULT G_MISS_NUM
564 ,p_mrp_safety_stock_percent IN NUMBER DEFAULT G_MISS_NUM
565 ,p_fixed_order_quantity IN NUMBER DEFAULT G_MISS_NUM
566 ,p_fixed_days_supply IN NUMBER DEFAULT G_MISS_NUM
567 ,p_fixed_lot_multiplier IN NUMBER DEFAULT G_MISS_NUM
568 ,p_mrp_planning_code IN NUMBER DEFAULT G_MISS_NUM
569 ,p_ato_forecast_control IN NUMBER DEFAULT G_MISS_NUM
570 ,p_planning_exception_set IN VARCHAR2 DEFAULT G_MISS_CHAR
571 ,p_end_assembly_pegging_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
572 ,p_shrinkage_rate IN NUMBER DEFAULT G_MISS_NUM
573 ,p_rounding_control_type IN NUMBER DEFAULT G_MISS_NUM
574 ,p_acceptable_early_days IN NUMBER DEFAULT G_MISS_NUM
575 ,p_repetitive_planning_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
576 ,p_overrun_percentage IN NUMBER DEFAULT G_MISS_NUM
577 ,p_acceptable_rate_increase IN NUMBER DEFAULT G_MISS_NUM
578 ,p_acceptable_rate_decrease IN NUMBER DEFAULT G_MISS_NUM
579 ,p_mrp_calculate_atp_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
580 ,p_auto_reduce_mps IN NUMBER DEFAULT G_MISS_NUM
581 ,p_planning_time_fence_code IN NUMBER DEFAULT G_MISS_NUM
582 ,p_planning_time_fence_days IN NUMBER DEFAULT G_MISS_NUM
583 ,p_demand_time_fence_code IN NUMBER DEFAULT G_MISS_NUM
584 ,p_demand_time_fence_days IN NUMBER DEFAULT G_MISS_NUM
585 ,p_release_time_fence_code IN NUMBER DEFAULT G_MISS_NUM
586 ,p_release_time_fence_days IN NUMBER DEFAULT G_MISS_NUM
587 ,p_preprocessing_lead_time IN NUMBER DEFAULT G_MISS_NUM
588 ,p_full_lead_time IN NUMBER DEFAULT G_MISS_NUM
589 ,p_postprocessing_lead_time IN NUMBER DEFAULT G_MISS_NUM
590 ,p_fixed_lead_time IN NUMBER DEFAULT G_MISS_NUM
591 ,p_variable_lead_time IN NUMBER DEFAULT G_MISS_NUM
592 ,p_cum_manufacturing_lead_time IN NUMBER DEFAULT G_MISS_NUM
593 ,p_cumulative_total_lead_time IN NUMBER DEFAULT G_MISS_NUM
594 ,p_lead_time_lot_size IN NUMBER DEFAULT G_MISS_NUM
595 ,p_build_in_wip_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
596 ,p_wip_supply_type IN NUMBER DEFAULT G_MISS_NUM
597 ,p_wip_supply_subinventory IN VARCHAR2 DEFAULT G_MISS_CHAR
598 ,p_wip_supply_locator_id IN NUMBER DEFAULT G_MISS_NUM
599 ,p_overcompletion_tolerance_ty IN NUMBER DEFAULT G_MISS_NUM
600 ,p_overcompletion_tolerance_va IN NUMBER DEFAULT G_MISS_NUM
601 ,p_customer_order_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
602 ,p_customer_order_enabled_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
603 ,p_shippable_item_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
604 ,p_internal_order_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
605 ,p_internal_order_enabled_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
606 ,p_so_transactions_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
607 ,p_pick_components_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
608 ,p_atp_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
609 ,p_replenish_to_order_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
610 ,p_atp_rule_id IN NUMBER DEFAULT G_MISS_NUM
611 ,p_atp_components_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
612 ,p_ship_model_complete_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
613 ,p_picking_rule_id IN NUMBER DEFAULT G_MISS_NUM
614 ,p_collateral_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
615 ,p_default_shipping_org IN NUMBER DEFAULT G_MISS_NUM
616 ,p_returnable_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
617 ,p_return_inspection_requireme IN NUMBER DEFAULT G_MISS_NUM
618 ,p_over_shipment_tolerance IN NUMBER DEFAULT G_MISS_NUM
619 ,p_under_shipment_tolerance IN NUMBER DEFAULT G_MISS_NUM
620 ,p_over_return_tolerance IN NUMBER DEFAULT G_MISS_NUM
621 ,p_under_return_tolerance IN NUMBER DEFAULT G_MISS_NUM
622 ,p_invoiceable_item_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
623 ,p_invoice_enabled_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
624 ,p_accounting_rule_id IN NUMBER DEFAULT G_MISS_NUM
625 ,p_invoicing_rule_id IN NUMBER DEFAULT G_MISS_NUM
626 ,p_tax_code IN VARCHAR2 DEFAULT G_MISS_CHAR
627 ,p_sales_account IN NUMBER DEFAULT G_MISS_NUM
628 ,p_payment_terms_id IN NUMBER DEFAULT G_MISS_NUM
629 ,p_coverage_schedule_id IN NUMBER DEFAULT G_MISS_NUM
630 ,p_service_duration IN NUMBER DEFAULT G_MISS_NUM
631 ,p_service_duration_period_cod IN VARCHAR2 DEFAULT G_MISS_CHAR
632 ,p_serviceable_product_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
633 ,p_service_starting_delay IN NUMBER DEFAULT G_MISS_NUM
634 ,p_material_billable_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
635 ,p_serviceable_component_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
636 ,p_preventive_maintenance_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
637 ,p_prorate_service_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
638 -- Start attributes not in the form
639 ,p_serviceable_item_class_id IN NUMBER DEFAULT G_MISS_NUM
640 ,p_base_warranty_service_id IN NUMBER DEFAULT G_MISS_NUM
641 ,p_warranty_vendor_id IN NUMBER DEFAULT G_MISS_NUM
642 ,p_max_warranty_amount IN NUMBER DEFAULT G_MISS_NUM
643 ,p_response_time_period_code IN VARCHAR2 DEFAULT G_MISS_CHAR
644 ,p_response_time_value IN NUMBER DEFAULT G_MISS_NUM
645 ,p_primary_specialist_id IN NUMBER DEFAULT G_MISS_NUM
646 ,p_secondary_specialist_id IN NUMBER DEFAULT G_MISS_NUM
647 -- End attributes not in the form
648 ,p_wh_update_date IN DATE DEFAULT G_MISS_DATE
649 ,p_equipment_type IN NUMBER DEFAULT G_MISS_NUM
650 ,p_recovered_part_disp_code IN VARCHAR2 DEFAULT G_MISS_CHAR
651 ,p_defect_tracking_on_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
652 ,p_event_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
653 ,p_electronic_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
654 ,p_downloadable_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
655 ,p_vol_discount_exempt_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
656 ,p_coupon_exempt_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
657 ,p_comms_nl_trackable_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
658 ,p_asset_creation_code IN VARCHAR2 DEFAULT G_MISS_CHAR
659 ,p_comms_activation_reqd_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
660 ,p_orderable_on_web_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
661 ,p_back_orderable_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
662 ,p_web_status IN VARCHAR2 DEFAULT G_MISS_CHAR
663 ,p_indivisible_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
664 ,p_dimension_uom_code IN VARCHAR2 DEFAULT G_MISS_CHAR
665 ,p_unit_length IN NUMBER DEFAULT G_MISS_NUM
666 ,p_unit_width IN NUMBER DEFAULT G_MISS_NUM
667 ,p_unit_height IN NUMBER DEFAULT G_MISS_NUM
668 ,p_bulk_picked_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
669 ,p_lot_status_enabled IN VARCHAR2 DEFAULT G_MISS_CHAR
670 ,p_default_lot_status_id IN NUMBER DEFAULT G_MISS_NUM
671 ,p_serial_status_enabled IN VARCHAR2 DEFAULT G_MISS_CHAR
672 ,p_default_serial_status_id IN NUMBER DEFAULT G_MISS_NUM
673 ,p_lot_split_enabled IN VARCHAR2 DEFAULT G_MISS_CHAR
674 ,p_lot_merge_enabled IN VARCHAR2 DEFAULT G_MISS_CHAR
675 ,p_inventory_carry_penalty IN NUMBER DEFAULT G_MISS_NUM
676 ,p_operation_slack_penalty IN NUMBER DEFAULT G_MISS_NUM
677 ,p_financing_allowed_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
678 ,p_eam_item_type IN NUMBER DEFAULT G_MISS_NUM
679 ,p_eam_activity_type_code IN VARCHAR2 DEFAULT G_MISS_CHAR
680 ,p_eam_activity_cause_code IN VARCHAR2 DEFAULT G_MISS_CHAR
681 ,p_eam_act_notification_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
682 ,p_eam_act_shutdown_status IN VARCHAR2 DEFAULT G_MISS_CHAR
683 ,p_dual_uom_control IN NUMBER DEFAULT G_MISS_NUM
684 ,p_secondary_uom_code IN VARCHAR2 DEFAULT G_MISS_CHAR
685 ,p_dual_uom_deviation_high IN NUMBER DEFAULT G_MISS_NUM
686 ,p_dual_uom_deviation_low IN NUMBER DEFAULT G_MISS_NUM
687 ,p_contract_item_type_code IN VARCHAR2 DEFAULT G_MISS_CHAR
688 ,p_subscription_depend_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
689 ,p_serv_req_enabled_code IN VARCHAR2 DEFAULT G_MISS_CHAR
690 ,p_serv_billing_enabled_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
691 ,p_serv_importance_level IN NUMBER DEFAULT G_MISS_NUM
692 ,p_planned_inv_point_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
693 ,p_lot_translate_enabled IN VARCHAR2 DEFAULT G_MISS_CHAR
694 ,p_default_so_source_type IN VARCHAR2 DEFAULT G_MISS_CHAR
695 ,p_create_supply_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
696 ,p_substitution_window_code IN NUMBER DEFAULT G_MISS_NUM
697 ,p_substitution_window_days IN NUMBER DEFAULT G_MISS_NUM
698 ,p_ib_item_instance_class IN VARCHAR2 DEFAULT G_MISS_CHAR
699 ,p_config_model_type IN VARCHAR2 DEFAULT G_MISS_CHAR
700 ,p_lot_substitution_enabled IN VARCHAR2 DEFAULT G_MISS_CHAR
701 ,p_minimum_license_quantity IN NUMBER DEFAULT G_MISS_NUM
702 ,p_eam_activity_source_code IN VARCHAR2 DEFAULT G_MISS_CHAR
703 ,p_approval_status IN VARCHAR2 DEFAULT G_MISS_CHAR
704 --Start: 26 new attributes
705 ,p_tracking_quantity_ind IN VARCHAR2 DEFAULT G_MISS_CHAR
706 ,p_ont_pricing_qty_source IN VARCHAR2 DEFAULT G_MISS_CHAR
707 ,p_secondary_default_ind IN VARCHAR2 DEFAULT G_MISS_CHAR
708 ,p_option_specific_sourced IN NUMBER DEFAULT G_MISS_NUM
709 ,p_vmi_minimum_units IN NUMBER DEFAULT G_MISS_NUM
710 ,p_vmi_minimum_days IN NUMBER DEFAULT G_MISS_NUM
711 ,p_vmi_maximum_units IN NUMBER DEFAULT G_MISS_NUM
712 ,p_vmi_maximum_days IN NUMBER DEFAULT G_MISS_NUM
713 ,p_vmi_fixed_order_quantity IN NUMBER DEFAULT G_MISS_NUM
714 ,p_so_authorization_flag IN NUMBER DEFAULT G_MISS_NUM
715 ,p_consigned_flag IN NUMBER DEFAULT G_MISS_NUM
716 ,p_asn_autoexpire_flag IN NUMBER DEFAULT G_MISS_NUM
717 ,p_vmi_forecast_type IN NUMBER DEFAULT G_MISS_NUM
718 ,p_forecast_horizon IN NUMBER DEFAULT G_MISS_NUM
719 ,p_exclude_from_budget_flag IN NUMBER DEFAULT G_MISS_NUM
720 ,p_days_tgt_inv_supply IN NUMBER DEFAULT G_MISS_NUM
721 ,p_days_tgt_inv_window IN NUMBER DEFAULT G_MISS_NUM
722 ,p_days_max_inv_supply IN NUMBER DEFAULT G_MISS_NUM
723 ,p_days_max_inv_window IN NUMBER DEFAULT G_MISS_NUM
724 ,p_drp_planned_flag IN NUMBER DEFAULT G_MISS_NUM
725 ,p_critical_component_flag IN NUMBER DEFAULT G_MISS_NUM
726 ,p_continous_transfer IN NUMBER DEFAULT G_MISS_NUM
727 ,p_convergence IN NUMBER DEFAULT G_MISS_NUM
728 ,p_divergence IN NUMBER DEFAULT G_MISS_NUM
729 ,p_config_orgs IN VARCHAR2 DEFAULT G_MISS_CHAR
730 ,p_config_match IN VARCHAR2 DEFAULT G_MISS_CHAR
731 --End: 26 new attributes
732 ,p_Item_Number IN VARCHAR2 DEFAULT G_MISS_CHAR
733 ,p_segment1 IN VARCHAR2 DEFAULT G_MISS_CHAR
734 ,p_segment2 IN VARCHAR2 DEFAULT G_MISS_CHAR
735 ,p_segment3 IN VARCHAR2 DEFAULT G_MISS_CHAR
736 ,p_segment4 IN VARCHAR2 DEFAULT G_MISS_CHAR
737 ,p_segment5 IN VARCHAR2 DEFAULT G_MISS_CHAR
738 ,p_segment6 IN VARCHAR2 DEFAULT G_MISS_CHAR
739 ,p_segment7 IN VARCHAR2 DEFAULT G_MISS_CHAR
740 ,p_segment8 IN VARCHAR2 DEFAULT G_MISS_CHAR
741 ,p_segment9 IN VARCHAR2 DEFAULT G_MISS_CHAR
742 ,p_segment10 IN VARCHAR2 DEFAULT G_MISS_CHAR
743 ,p_segment11 IN VARCHAR2 DEFAULT G_MISS_CHAR
744 ,p_segment12 IN VARCHAR2 DEFAULT G_MISS_CHAR
745 ,p_segment13 IN VARCHAR2 DEFAULT G_MISS_CHAR
746 ,p_segment14 IN VARCHAR2 DEFAULT G_MISS_CHAR
747 ,p_segment15 IN VARCHAR2 DEFAULT G_MISS_CHAR
748 ,p_segment16 IN VARCHAR2 DEFAULT G_MISS_CHAR
749 ,p_segment17 IN VARCHAR2 DEFAULT G_MISS_CHAR
750 ,p_segment18 IN VARCHAR2 DEFAULT G_MISS_CHAR
751 ,p_segment19 IN VARCHAR2 DEFAULT G_MISS_CHAR
752 ,p_segment20 IN VARCHAR2 DEFAULT G_MISS_CHAR
753 ,p_summary_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
754 ,p_enabled_flag IN VARCHAR2 DEFAULT G_MISS_CHAR
755 ,p_start_date_active IN DATE DEFAULT G_MISS_DATE
756 ,p_end_date_active IN DATE DEFAULT G_MISS_DATE
757 ,p_attribute_category IN VARCHAR2 DEFAULT G_MISS_CHAR
758 ,p_attribute1 IN VARCHAR2 DEFAULT G_MISS_CHAR
759 ,p_attribute2 IN VARCHAR2 DEFAULT G_MISS_CHAR
760 ,p_attribute3 IN VARCHAR2 DEFAULT G_MISS_CHAR
761 ,p_attribute4 IN VARCHAR2 DEFAULT G_MISS_CHAR
762 ,p_attribute5 IN VARCHAR2 DEFAULT G_MISS_CHAR
763 ,p_attribute6 IN VARCHAR2 DEFAULT G_MISS_CHAR
764 ,p_attribute7 IN VARCHAR2 DEFAULT G_MISS_CHAR
765 ,p_attribute8 IN VARCHAR2 DEFAULT G_MISS_CHAR
766 ,p_attribute9 IN VARCHAR2 DEFAULT G_MISS_CHAR
767 ,p_attribute10 IN VARCHAR2 DEFAULT G_MISS_CHAR
768 ,p_attribute11 IN VARCHAR2 DEFAULT G_MISS_CHAR
769 ,p_attribute12 IN VARCHAR2 DEFAULT G_MISS_CHAR
770 ,p_attribute13 IN VARCHAR2 DEFAULT G_MISS_CHAR
771 ,p_attribute14 IN VARCHAR2 DEFAULT G_MISS_CHAR
772 ,p_attribute15 IN VARCHAR2 DEFAULT G_MISS_CHAR
773 ,p_attribute16 IN VARCHAR2 DEFAULT G_MISS_CHAR
774 ,p_attribute17 IN VARCHAR2 DEFAULT G_MISS_CHAR
775 ,p_attribute18 IN VARCHAR2 DEFAULT G_MISS_CHAR
776 ,p_attribute19 IN VARCHAR2 DEFAULT G_MISS_CHAR
777 ,p_attribute20 IN VARCHAR2 DEFAULT G_MISS_CHAR
778 ,p_attribute21 IN VARCHAR2 DEFAULT G_MISS_CHAR
779 ,p_attribute22 IN VARCHAR2 DEFAULT G_MISS_CHAR
780 ,p_attribute23 IN VARCHAR2 DEFAULT G_MISS_CHAR
781 ,p_attribute24 IN VARCHAR2 DEFAULT G_MISS_CHAR
782 ,p_attribute25 IN VARCHAR2 DEFAULT G_MISS_CHAR
783 ,p_attribute26 IN VARCHAR2 DEFAULT G_MISS_CHAR
784 ,p_attribute27 IN VARCHAR2 DEFAULT G_MISS_CHAR
785 ,p_attribute28 IN VARCHAR2 DEFAULT G_MISS_CHAR
786 ,p_attribute29 IN VARCHAR2 DEFAULT G_MISS_CHAR
787 ,p_attribute30 IN VARCHAR2 DEFAULT G_MISS_CHAR
788 ,p_global_attribute_category IN VARCHAR2 DEFAULT G_MISS_CHAR
789 ,p_global_attribute1 IN VARCHAR2 DEFAULT G_MISS_CHAR
790 ,p_global_attribute2 IN VARCHAR2 DEFAULT G_MISS_CHAR
791 ,p_global_attribute3 IN VARCHAR2 DEFAULT G_MISS_CHAR
792 ,p_global_attribute4 IN VARCHAR2 DEFAULT G_MISS_CHAR
793 ,p_global_attribute5 IN VARCHAR2 DEFAULT G_MISS_CHAR
794 ,p_global_attribute6 IN VARCHAR2 DEFAULT G_MISS_CHAR
795 ,p_global_attribute7 IN VARCHAR2 DEFAULT G_MISS_CHAR
796 ,p_global_attribute8 IN VARCHAR2 DEFAULT G_MISS_CHAR
797 ,p_global_attribute9 IN VARCHAR2 DEFAULT G_MISS_CHAR
798 ,p_global_attribute10 IN VARCHAR2 DEFAULT G_MISS_CHAR
799 ,p_global_attribute11 IN VARCHAR2 DEFAULT G_MISS_CHAR
800 ,p_global_attribute12 IN VARCHAR2 DEFAULT G_MISS_CHAR
801 ,p_global_attribute13 IN VARCHAR2 DEFAULT G_MISS_CHAR
802 ,p_global_attribute14 IN VARCHAR2 DEFAULT G_MISS_CHAR
803 ,p_global_attribute15 IN VARCHAR2 DEFAULT G_MISS_CHAR
804 ,p_global_attribute16 IN VARCHAR2 DEFAULT G_MISS_CHAR
805 ,p_global_attribute17 IN VARCHAR2 DEFAULT G_MISS_CHAR
806 ,p_global_attribute18 IN VARCHAR2 DEFAULT G_MISS_CHAR
807 ,p_global_attribute19 IN VARCHAR2 DEFAULT G_MISS_CHAR
808 ,p_global_attribute20 IN VARCHAR2 DEFAULT G_MISS_CHAR
809 ,p_creation_date IN DATE DEFAULT G_MISS_DATE
810 ,p_created_by IN NUMBER DEFAULT G_MISS_NUM
811 ,p_last_update_date IN DATE DEFAULT G_MISS_DATE
812 ,p_last_updated_by IN NUMBER DEFAULT G_MISS_NUM
813 ,p_last_update_login IN NUMBER DEFAULT G_MISS_NUM
814 ,p_request_id IN NUMBER DEFAULT G_MISS_NUM
815 ,p_program_application_id IN NUMBER DEFAULT G_MISS_NUM
816 ,p_program_id IN NUMBER DEFAULT G_MISS_NUM
817 ,p_program_update_date IN DATE DEFAULT G_MISS_DATE
818 ,p_lifecycle_id IN NUMBER DEFAULT G_MISS_NUM
819 ,p_current_phase_id IN NUMBER DEFAULT G_MISS_NUM
820 -- Revision attribute parameter
821 ,p_revision_id IN NUMBER DEFAULT G_MISS_NUM
822 ,p_revision_code IN VARCHAR2 DEFAULT G_MISS_CHAR
823 ,p_revision_label IN VARCHAR2 DEFAULT G_MISS_CHAR
824 ,p_revision_description IN VARCHAR2 DEFAULT G_MISS_CHAR
825 ,p_effectivity_Date IN DATE DEFAULT G_MISS_DATE
826 ,p_rev_lifecycle_id IN NUMBER DEFAULT G_MISS_NUM
827 ,p_rev_current_phase_id IN NUMBER DEFAULT G_MISS_NUM
828 -- 5208102: Supporting template for UDA's at revisions
829 ,p_rev_template_id IN NUMBER DEFAULT G_MISS_NUM
830 ,p_rev_template_name IN VARCHAR2 DEFAULT G_MISS_CHAR
831
832 ,p_rev_attribute_category IN VARCHAR2 DEFAULT G_MISS_CHAR
833 ,p_rev_attribute1 IN VARCHAR2 DEFAULT G_MISS_CHAR
834 ,p_rev_attribute2 IN VARCHAR2 DEFAULT G_MISS_CHAR
835 ,p_rev_attribute3 IN VARCHAR2 DEFAULT G_MISS_CHAR
836 ,p_rev_attribute4 IN VARCHAR2 DEFAULT G_MISS_CHAR
837 ,p_rev_attribute5 IN VARCHAR2 DEFAULT G_MISS_CHAR
838 ,p_rev_attribute6 IN VARCHAR2 DEFAULT G_MISS_CHAR
839 ,p_rev_attribute7 IN VARCHAR2 DEFAULT G_MISS_CHAR
840 ,p_rev_attribute8 IN VARCHAR2 DEFAULT G_MISS_CHAR
841 ,p_rev_attribute9 IN VARCHAR2 DEFAULT G_MISS_CHAR
842 ,p_rev_attribute10 IN VARCHAR2 DEFAULT G_MISS_CHAR
843 ,p_rev_attribute11 IN VARCHAR2 DEFAULT G_MISS_CHAR
844 ,p_rev_attribute12 IN VARCHAR2 DEFAULT G_MISS_CHAR
845 ,p_rev_attribute13 IN VARCHAR2 DEFAULT G_MISS_CHAR
846 ,p_rev_attribute14 IN VARCHAR2 DEFAULT G_MISS_CHAR
847 ,p_rev_attribute15 IN VARCHAR2 DEFAULT G_MISS_CHAR
848 -- Returned item id
849 ,x_Inventory_Item_Id OUT NOCOPY NUMBER
850 ,x_Organization_Id OUT NOCOPY NUMBER
851 ,x_return_status OUT NOCOPY VARCHAR2
852 ,x_msg_count OUT NOCOPY NUMBER
853 ,x_msg_data OUT NOCOPY VARCHAR2
854 ,p_apply_template IN VARCHAR2 DEFAULT 'ALL'
855 ,p_object_version_number IN NUMBER DEFAULT G_MISS_NUM
856 ,p_process_control IN VARCHAR2 DEFAULT NULL
857 ,p_process_item IN NUMBER DEFAULT G_MISS_NUM
858 --R12 Enhancement adding attributes
859 ,P_CAS_NUMBER IN VARCHAR2 DEFAULT G_MISS_CHAR
860 ,P_CHILD_LOT_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
861 ,P_CHILD_LOT_PREFIX IN VARCHAR2 DEFAULT G_MISS_CHAR
862 ,P_CHILD_LOT_STARTING_NUMBER IN NUMBER DEFAULT G_MISS_NUM
863 ,P_CHILD_LOT_VALIDATION_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
864 ,P_COPY_LOT_ATTRIBUTE_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
865 ,P_DEFAULT_GRADE IN VARCHAR2 DEFAULT G_MISS_CHAR
866 ,P_EXPIRATION_ACTION_CODE IN VARCHAR2 DEFAULT G_MISS_CHAR
867 ,P_EXPIRATION_ACTION_INTERVAL IN NUMBER DEFAULT G_MISS_NUM
868 ,P_GRADE_CONTROL_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
869 ,P_HAZARDOUS_MATERIAL_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
870 ,P_HOLD_DAYS IN NUMBER DEFAULT G_MISS_NUM
871 ,P_LOT_DIVISIBLE_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
872 ,P_MATURITY_DAYS IN NUMBER DEFAULT G_MISS_NUM
873 ,P_PARENT_CHILD_GENERATION_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
874 ,P_PROCESS_COSTING_ENABLED_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
875 ,P_PROCESS_EXECUTION_ENABLED_FL IN VARCHAR2 DEFAULT G_MISS_CHAR
876 ,P_PROCESS_QUALITY_ENABLED_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
877 ,P_PROCESS_SUPPLY_LOCATOR_ID IN NUMBER DEFAULT G_MISS_NUM
878 ,P_PROCESS_SUPPLY_SUBINVENTORY IN VARCHAR2 DEFAULT G_MISS_CHAR
879 ,P_PROCESS_YIELD_LOCATOR_ID IN NUMBER DEFAULT G_MISS_NUM
880 ,P_PROCESS_YIELD_SUBINVENTORY IN VARCHAR2 DEFAULT G_MISS_CHAR
881 ,P_RECIPE_ENABLED_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
882 ,P_RETEST_INTERVAL IN NUMBER DEFAULT G_MISS_NUM
883 ,P_CHARGE_PERIODICITY_CODE IN VARCHAR2 DEFAULT G_MISS_CHAR
884 ,P_REPAIR_LEADTIME IN NUMBER DEFAULT G_MISS_NUM
885 ,P_REPAIR_YIELD IN NUMBER DEFAULT G_MISS_NUM
886 ,P_PREPOSITION_POINT IN VARCHAR2 DEFAULT G_MISS_CHAR
887 ,P_REPAIR_PROGRAM IN NUMBER DEFAULT G_MISS_NUM
888 ,P_SUBCONTRACTING_COMPONENT IN NUMBER DEFAULT G_MISS_NUM
889 ,P_OUTSOURCED_ASSEMBLY IN NUMBER DEFAULT G_MISS_NUM
890 -- R12 C Attributes
891 ,P_GDSN_OUTBOUND_ENABLED_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
892 ,P_TRADE_ITEM_DESCRIPTOR IN VARCHAR2 DEFAULT G_MISS_CHAR
893 ,P_STYLE_ITEM_FLAG IN VARCHAR2 DEFAULT G_MISS_CHAR
894 ,P_STYLE_ITEM_ID IN NUMBER DEFAULT G_MISS_NUM ) IS
895
896 l_api_name CONSTANT VARCHAR2(30) := 'Process_Item_Scalar';
897 l_api_version CONSTANT NUMBER := 1.0;
898 indx BINARY_INTEGER := 1;
899 l_item_tbl EGO_ITEM_PUB.Item_Tbl_Type;
900 l_Revision_Tbl EGO_Item_PUB.Item_Revision_Tbl_Type;
901 l_item_created_tbl EGO_ITEM_PUB.Item_Tbl_Type;
902 l_approval_status VARCHAR2(30);
903 l_template_applied BOOLEAN := FALSE;
904 l_obj_version_num mtl_system_items_b.object_version_number%TYPE;
905
906 CURSOR c_get_obj_version_num(cp_inventory_item_id IN NUMBER
907 ,cp_organization_id IN NUMBER ) IS
908 SELECT object_version_number
909 FROM mtl_system_items_b
910 WHERE inventory_item_id = cp_inventory_item_id
911 AND organization_id = cp_organization_id;
912
913 BEGIN
914 -- standard check for API validation
915 IF NOT FND_API.Compatible_API_Call (l_api_version,
916 p_api_version,
917 l_api_name,
918 G_PKG_NAME)
919 THEN
920 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
921 END IF;
922
923 -- create save point
924 IF FND_API.To_Boolean(p_commit) THEN
925 SAVEPOINT Process_Item_Scalar;
926 END IF;
927
928 -- Initialize message list
929 IF FND_API.To_Boolean(p_init_msg_list) THEN
930 FND_MSG_PUB.Initialize;
931 END IF;
932
933 -- Set business object identifier in the System Information record
934 ERROR_HANDLER.Initialize;
935 Error_Handler.Set_BO_Identifier ( p_bo_identifier => G_BO_Identifier);
936
937 IF (((p_Transaction_Type = G_TTYPE_CREATE)
938 AND(p_item_catalog_group_id IS NULL
939 OR p_item_catalog_group_id = G_MISS_NUM
940 OR NOT INVIDIT3.CHECK_NPR_CATALOG(p_item_catalog_group_id)))
941 AND INSTR(p_process_control,'PLM_UI:Y') = 0)
942 THEN
943 IF p_copy_inventory_item_Id IS NOT NULL
944 AND p_copy_inventory_item_Id <> G_MISS_NUM THEN
945 initialize_item_info
946 (p_inventory_item_id => p_copy_inventory_item_Id
947 ,p_organization_id => p_organization_id
948 ,p_tab_index => indx
949 ,x_item_table => l_item_tbl
950 ,x_return_status => x_return_status
951 ,x_msg_count => x_msg_count);
952 IF x_return_status = G_RET_STS_ERROR THEN
953 RAISE FND_API.G_EXC_ERROR;
954 ELSIF x_return_status = G_RET_STS_UNEXP_ERROR THEN
955 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
956 END IF;
957 END IF;
958
959 IF p_Template_Id IS NOT NULL
960 AND p_Template_Id <> G_MISS_NUM
961 AND UPPER(p_apply_template) IN ('ALL','BASE_TEMPLATE') THEN
962 initialize_template_info
963 (p_template_id => p_template_id
964 ,p_template_name => p_template_name
965 ,p_organization_id => p_organization_id
966 ,p_organization_code => NULL
967 ,p_tab_index => indx
968 ,x_item_table => l_item_tbl
969 ,x_return_status => x_return_status
970 ,x_msg_count => x_msg_count);
971
972 l_template_applied := TRUE;
973
974 IF x_return_status = G_RET_STS_ERROR THEN
975 RAISE FND_API.G_EXC_ERROR;
976 ELSIF x_return_status = G_RET_STS_UNEXP_ERROR THEN
977 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
978 END IF;
979 END IF;
980 END IF;
981
982 -- Bug 5997870.. set the value in invupd2b so that this check may be
983 -- done after locking the record and not before it...
984 IF((p_object_version_number IS NOT NULL) AND
985 (p_object_version_number <> G_MISS_NUM)) THEN
986 INVUPD2B.obj_ver_rec.inventory_item_id := p_inventory_item_id;
987 INVUPD2B.obj_ver_rec.org_id := p_organization_id;
988 INVUPD2B.obj_ver_rec.Object_Version_Number := Nvl(p_object_version_number,1);
989 END IF;
990 --Code changes for bug 5997870 ends...
991
992 --Check if record is changed before update.
993 IF p_transaction_type = G_TTYPE_UPDATE
994 AND Nvl(p_object_version_number,-1) <> G_MISS_NUM
995 THEN
996 OPEN c_get_obj_version_num (cp_inventory_item_id => p_inventory_item_id
997 ,cp_organization_id => p_organization_id);
998 FETCH c_get_obj_version_num into l_obj_version_num;
999 CLOSE c_get_obj_version_num;
1000 IF nvl(l_obj_version_num,-1) <> nvl(p_object_version_number,-1) THEN
1001 x_return_status := G_RET_STS_ERROR;
1002 EGO_Item_Msg.Add_Error_Message (
1003 p_entity_index => 1
1004 ,p_application_short_name => 'EGO'
1005 ,p_message_name => 'EGO_REQUERY_ITEM_INFO'
1006 );
1007 IF FND_API.To_Boolean(p_commit) THEN
1008 ROLLBACK TO Process_Item_Scalar;
1009 END IF;
1010 x_msg_count := 1;
1011 RETURN;
1012 END IF;
1013 END IF;
1014
1015 --Apply only template during update
1016 IF p_transaction_type = G_TTYPE_UPDATE
1017 AND p_Template_Id IS NOT NULL
1018 AND p_Template_Id <> G_MISS_NUM
1019 AND UPPER(p_apply_template) IN ('ALL','BASE_TEMPLATE')
1020 AND INVIDIT3.CHECK_ITEM_APPROVED(p_inventory_item_id,p_organization_id)
1021 AND INSTR(p_process_control,'PLM_UI:Y') = 0
1022 THEN
1023
1024 initialize_template_info
1025 (p_template_id => p_template_id
1026 ,p_template_name => p_template_name
1027 ,p_organization_id => p_organization_id
1028 ,p_organization_code => NULL
1029 ,p_tab_index => indx
1030 ,x_item_table => l_item_tbl
1031 ,x_return_status => x_return_status
1032 ,x_msg_count => x_msg_count);
1033
1034 IF x_return_status = G_RET_STS_ERROR THEN
1035 RAISE FND_API.G_EXC_ERROR;
1036 ELSIF x_return_status = G_RET_STS_UNEXP_ERROR THEN
1037 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1038 END IF;
1039 END IF;
1040
1041 --During CREATE COPY_ITEM/TEMPLATE are applicable for NPR Catalog
1042 IF p_process_item NOT IN (1,2) THEN
1043 l_item_tbl(indx).process_item_record := 1;
1044 ELSE
1045 l_item_tbl(indx).process_item_record := p_process_item;
1046 END IF;
1047
1048 IF p_transaction_type = G_TTYPE_UPDATE AND l_item_tbl(indx).process_item_record = 1 THEN
1049
1050 EGO_ITEM_PUB.Update_Item_Number (
1051 p_Inventory_Item_Id => REPLACE_G_MISS_NUM(p_inventory_item_id,null)
1052 ,p_item_number => p_item_number
1053 ,p_New_Segment1 => p_Segment1
1054 ,p_New_Segment2 => p_Segment2
1055 ,p_New_Segment3 => p_Segment3
1056 ,p_New_Segment4 => p_Segment4
1057 ,p_New_Segment5 => p_Segment5
1058 ,p_New_Segment6 => p_Segment6
1059 ,p_New_Segment7 => p_Segment7
1060 ,p_New_Segment8 => p_Segment8
1061 ,p_New_Segment9 => p_Segment9
1062 ,p_New_Segment10 => p_Segment10
1063 ,p_New_Segment11 => p_Segment11
1064 ,p_New_Segment12 => p_Segment12
1065 ,p_New_Segment13 => p_Segment13
1066 ,p_New_Segment14 => p_Segment14
1067 ,p_New_Segment15 => p_Segment15
1068 ,p_New_Segment16 => p_Segment16
1069 ,p_New_Segment17 => p_Segment17
1070 ,p_New_Segment18 => p_Segment18
1071 ,p_New_Segment19 => p_Segment19
1072 ,p_New_Segment20 => p_Segment20
1073 ,x_Item_Tbl => l_item_created_tbl
1074 ,x_return_status => x_return_status);
1075
1076 --Bug: 3947619 incrementing the msg count if error message were logged
1077 IF (x_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
1078 x_msg_count := NVL(x_msg_count,0)+1;
1079 END IF;
1080 END IF;
1081
1082 IF NVL(x_return_status,FND_API.G_RET_STS_SUCCESS) = FND_API.G_RET_STS_SUCCESS AND
1083 p_transaction_type IN (G_TTYPE_CREATE, G_TTYPE_UPDATE) THEN
1084
1085 l_item_tbl(indx).item_number := p_item_number;
1086 l_item_tbl(indx).segment1 := p_segment1;
1087 l_item_tbl(indx).segment2 := p_segment2;
1088 l_item_tbl(indx).segment3 := p_segment3;
1089 l_item_tbl(indx).segment4 := p_segment4;
1090 l_item_tbl(indx).segment5 := p_segment5;
1091 l_item_tbl(indx).segment6 := p_segment6;
1092 l_item_tbl(indx).segment7 := p_segment7;
1093 l_item_tbl(indx).segment8 := p_segment8;
1094 l_item_tbl(indx).segment9 := p_segment9;
1095 l_item_tbl(indx).segment10 := p_segment10;
1096 l_item_tbl(indx).segment11 := p_segment11;
1097 l_item_tbl(indx).segment12 := p_segment12;
1098 l_item_tbl(indx).segment13 := p_segment13;
1099 l_item_tbl(indx).segment14 := p_segment14;
1100 l_item_tbl(indx).segment15 := p_segment15;
1101 l_item_tbl(indx).segment16 := p_segment16;
1102 l_item_tbl(indx).segment17 := p_segment17;
1103 l_item_tbl(indx).segment18 := p_segment18;
1104 l_item_tbl(indx).segment19 := p_segment19;
1105 l_item_tbl(indx).segment20 := p_segment20;
1106 l_item_tbl(indx).transaction_type := p_transaction_type;
1107 l_item_tbl(indx).language_code := p_language_code;
1108 -- item identifier
1109 l_item_tbl(indx).inventory_item_id := p_inventory_item_id;
1110 l_item_tbl(indx).summary_flag := p_summary_flag;
1111 l_item_tbl(indx).enabled_flag := p_enabled_flag;
1112 l_item_tbl(indx).start_date_active := p_start_date_active;
1113 l_item_tbl(indx).end_date_active := p_end_date_active;
1114 -- organization
1115 l_item_tbl(indx).organization_id := p_organization_id;
1116 -- item catalog group (user item type)
1117 l_item_tbl(indx).item_catalog_group_id := p_item_catalog_group_id;
1118 l_item_tbl(indx).catalog_status_flag := p_catalog_status_flag;
1119
1120 IF UPPER(p_apply_template) IN ('USER_TEMPLATE','ALL') THEN
1121 l_Item_Tbl(indx).template_id := (-1*p_Template_Id); --Let IOI not apply any template
1122 ELSE
1123 l_Item_Tbl(indx).template_id := -1;
1124 END IF;
1125
1126 -- lifecycle
1127 l_item_tbl(indx).lifecycle_id := p_lifecycle_id;
1128 l_item_tbl(indx).current_phase_id := p_current_phase_id;
1129 -- main attributes
1130 l_item_tbl(indx).description := REPLACE_G_MISS_CHAR(p_description,l_item_tbl(indx).description);
1131 l_item_tbl(indx).long_description := REPLACE_G_MISS_CHAR(p_long_description,l_item_tbl(indx).long_description);
1132 l_item_tbl(indx).primary_uom_code := REPLACE_G_MISS_CHAR(p_primary_uom_code,l_item_tbl(indx).primary_uom_code);
1133 l_item_tbl(indx).allowed_units_lookup_code := REPLACE_G_MISS_NUM(p_allowed_units_lookup_code,l_item_tbl(indx).allowed_units_lookup_code);
1134 l_item_tbl(indx).inventory_item_status_code := REPLACE_G_MISS_CHAR(p_inventory_item_status_code,l_item_tbl(indx).inventory_item_status_code);
1135 l_item_tbl(indx).dual_uom_control := REPLACE_G_MISS_NUM(p_dual_uom_control,l_item_tbl(indx).dual_uom_control);
1136 l_item_tbl(indx).secondary_uom_code := REPLACE_G_MISS_CHAR(p_secondary_uom_code,l_item_tbl(indx).secondary_uom_code);
1137 l_item_tbl(indx).dual_uom_deviation_high := REPLACE_G_MISS_NUM (p_dual_uom_deviation_high,l_item_tbl(indx).dual_uom_deviation_high);
1138 l_item_tbl(indx).dual_uom_deviation_low := REPLACE_G_MISS_NUM (p_dual_uom_deviation_low,l_item_tbl(indx).dual_uom_deviation_low);
1139 l_item_tbl(indx).item_type := REPLACE_G_MISS_CHAR(p_item_type,l_item_tbl(indx).item_type);
1140 -- inventory
1141 l_item_tbl(indx).inventory_item_flag := REPLACE_G_MISS_CHAR(p_inventory_item_flag,l_item_tbl(indx).inventory_item_flag);
1142 l_item_tbl(indx).stock_enabled_flag := REPLACE_G_MISS_CHAR(p_stock_enabled_flag,l_item_tbl(indx).stock_enabled_flag);
1143 l_item_tbl(indx).mtl_transactions_enabled_flag := REPLACE_G_MISS_CHAR(p_mtl_transactions_enabled_fl,l_item_tbl(indx).mtl_transactions_enabled_flag);
1144 l_item_tbl(indx).revision_qty_control_code := REPLACE_G_MISS_NUM(p_revision_qty_control_code,l_item_tbl(indx).revision_qty_control_code);
1145 l_item_tbl(indx).lot_control_code := REPLACE_G_MISS_NUM(p_lot_control_code,l_item_tbl(indx).lot_control_code);
1146 l_item_tbl(indx).auto_lot_alpha_prefix := REPLACE_G_MISS_CHAR(p_auto_lot_alpha_prefix,l_item_tbl(indx).auto_lot_alpha_prefix);
1147 l_item_tbl(indx).start_auto_lot_number := REPLACE_G_MISS_CHAR(p_start_auto_lot_number,l_item_tbl(indx).start_auto_lot_number);
1148 l_item_tbl(indx).serial_number_control_code := REPLACE_G_MISS_NUM(p_serial_number_control_code,l_item_tbl(indx).serial_number_control_code);
1149 l_item_tbl(indx).auto_serial_alpha_prefix := REPLACE_G_MISS_CHAR(p_auto_serial_alpha_prefix,l_item_tbl(indx).auto_serial_alpha_prefix);
1150 l_item_tbl(indx).start_auto_serial_number := REPLACE_G_MISS_CHAR(p_start_auto_serial_number,l_item_tbl(indx).start_auto_serial_number);
1151 l_item_tbl(indx).shelf_life_code := REPLACE_G_MISS_NUM(p_shelf_life_code,l_item_tbl(indx).shelf_life_code);
1152 l_item_tbl(indx).shelf_life_days := REPLACE_G_MISS_NUM (p_shelf_life_days,l_item_tbl(indx).shelf_life_days);
1153 l_item_tbl(indx).restrict_subinventories_code := REPLACE_G_MISS_NUM(p_restrict_subinventories_cod,l_item_tbl(indx).restrict_subinventories_code);
1154 l_item_tbl(indx).location_control_code := REPLACE_G_MISS_NUM(p_location_control_code,l_item_tbl(indx).location_control_code);
1155 l_item_tbl(indx).restrict_locators_code := REPLACE_G_MISS_NUM(p_restrict_locators_code,l_item_tbl(indx).restrict_locators_code);
1156 l_item_tbl(indx).reservable_type := REPLACE_G_MISS_NUM(p_reservable_type,l_item_tbl(indx).reservable_type);
1157 l_item_tbl(indx).cycle_count_enabled_flag := REPLACE_G_MISS_CHAR(p_cycle_count_enabled_flag,l_item_tbl(indx).cycle_count_enabled_flag);
1158 l_item_tbl(indx).negative_measurement_error := REPLACE_G_MISS_NUM(p_negative_measurement_error,l_item_tbl(indx).negative_measurement_error);
1159 l_item_tbl(indx).positive_measurement_error := REPLACE_G_MISS_NUM(p_positive_measurement_error,l_item_tbl(indx).positive_measurement_error);
1160 l_item_tbl(indx).check_shortages_flag := REPLACE_G_MISS_CHAR(p_check_shortages_flag,l_item_tbl(indx).check_shortages_flag);
1161 l_item_tbl(indx).lot_status_enabled := REPLACE_G_MISS_CHAR(p_lot_status_enabled,l_item_tbl(indx).lot_status_enabled);
1162 l_item_tbl(indx).default_lot_status_id := REPLACE_G_MISS_NUM (p_default_lot_status_id,l_item_tbl(indx).default_lot_status_id);
1163 l_item_tbl(indx).serial_status_enabled := REPLACE_G_MISS_CHAR(p_serial_status_enabled,l_item_tbl(indx).serial_status_enabled);
1164 l_item_tbl(indx).default_serial_status_id := REPLACE_G_MISS_NUM (p_default_serial_status_id,l_item_tbl(indx).default_serial_status_id);
1165 l_item_tbl(indx).lot_split_enabled := REPLACE_G_MISS_CHAR(p_lot_split_enabled,l_item_tbl(indx).lot_split_enabled);
1166 l_item_tbl(indx).lot_merge_enabled := REPLACE_G_MISS_CHAR(p_lot_merge_enabled,l_item_tbl(indx).lot_merge_enabled);
1167 l_item_tbl(indx).lot_translate_enabled := REPLACE_G_MISS_CHAR(p_lot_translate_enabled,l_item_tbl(indx).lot_translate_enabled);
1168 l_item_tbl(indx).lot_substitution_enabled := REPLACE_G_MISS_CHAR(p_lot_substitution_enabled,l_item_tbl(indx).lot_substitution_enabled);
1169 l_item_tbl(indx).bulk_picked_flag := REPLACE_G_MISS_CHAR(p_bulk_picked_flag,l_item_tbl(indx).bulk_picked_flag);
1170 -- bills of material
1171 l_item_tbl(indx).bom_item_type := REPLACE_G_MISS_NUM(p_bom_item_type,l_item_tbl(indx).bom_item_type);
1172 l_item_tbl(indx).bom_enabled_flag := REPLACE_G_MISS_CHAR(p_bom_enabled_flag,l_item_tbl(indx).bom_enabled_flag);
1173 l_item_tbl(indx).base_item_id := REPLACE_G_MISS_NUM (p_base_item_id,l_item_tbl(indx).base_item_id);
1174 l_item_tbl(indx).eng_item_flag := REPLACE_G_MISS_CHAR(p_eng_item_flag,l_item_tbl(indx).eng_item_flag);
1175 l_item_tbl(indx).engineering_item_id := REPLACE_G_MISS_NUM (p_engineering_item_id,l_item_tbl(indx).engineering_item_id);
1176 l_item_tbl(indx).engineering_ecn_code := REPLACE_G_MISS_CHAR(p_engineering_ecn_code,l_item_tbl(indx).engineering_ecn_code);
1177 l_item_tbl(indx).engineering_date := REPLACE_G_MISS_DATE(p_engineering_date,l_item_tbl(indx).engineering_date);
1178 l_item_tbl(indx).effectivity_control := REPLACE_G_MISS_NUM (p_effectivity_control,l_item_tbl(indx).effectivity_control);
1179 l_item_tbl(indx).config_model_type := REPLACE_G_MISS_CHAR(p_config_model_type,l_item_tbl(indx).config_model_type);
1180 l_item_tbl(indx).product_family_item_id := REPLACE_G_MISS_NUM (p_product_family_item_id,l_item_tbl(indx).product_family_item_id);
1181 l_item_tbl(indx).auto_created_config_flag := REPLACE_G_MISS_CHAR(p_auto_created_config_flag,l_item_tbl(indx).auto_created_config_flag);--3911562
1182
1183 -- costing
1184 l_item_tbl(indx).costing_enabled_flag := REPLACE_G_MISS_CHAR(p_costing_enabled_flag,l_item_tbl(indx).costing_enabled_flag);
1185 l_item_tbl(indx).inventory_asset_flag := REPLACE_G_MISS_CHAR(p_inventory_asset_flag,l_item_tbl(indx).inventory_asset_flag);
1186 l_item_tbl(indx).cost_of_sales_account := REPLACE_G_MISS_NUM (p_cost_of_sales_account,l_item_tbl(indx).cost_of_sales_account);
1187 l_item_tbl(indx).default_include_in_rollup_flag := REPLACE_G_MISS_CHAR(p_default_include_in_rollup_f,l_item_tbl(indx).default_include_in_rollup_flag);
1188 l_item_tbl(indx).std_lot_size := REPLACE_G_MISS_NUM (p_std_lot_size,l_item_tbl(indx).std_lot_size);
1189 -- enterprise asset management
1190 l_item_tbl(indx).eam_item_type := REPLACE_G_MISS_NUM (p_eam_item_type,l_item_tbl(indx).eam_item_type);
1191 l_item_tbl(indx).eam_activity_type_code := REPLACE_G_MISS_CHAR(p_eam_activity_type_code,l_item_tbl(indx).eam_activity_type_code);
1192 l_item_tbl(indx).eam_activity_cause_code := REPLACE_G_MISS_CHAR(p_eam_activity_cause_code,l_item_tbl(indx).eam_activity_cause_code);
1193 l_item_tbl(indx).eam_activity_source_code := REPLACE_G_MISS_CHAR(p_eam_activity_source_code,l_item_tbl(indx).eam_activity_source_code);
1194 l_item_tbl(indx).eam_act_shutdown_status := REPLACE_G_MISS_CHAR(p_eam_act_shutdown_status,l_item_tbl(indx).eam_act_shutdown_status);
1195 l_item_tbl(indx).eam_act_notification_flag := REPLACE_G_MISS_CHAR(p_eam_act_notification_flag,l_item_tbl(indx).eam_act_notification_flag);
1196 -- purchasing
1197 l_item_tbl(indx).purchasing_item_flag := REPLACE_G_MISS_CHAR(p_purchasing_item_flag,l_item_tbl(indx).purchasing_item_flag);
1198 l_item_tbl(indx).purchasing_enabled_flag := REPLACE_G_MISS_CHAR(p_purchasing_enabled_flag,l_item_tbl(indx).purchasing_enabled_flag);
1199 l_item_tbl(indx).buyer_id := REPLACE_G_MISS_NUM (p_buyer_id,l_item_tbl(indx).buyer_id);
1200 l_item_tbl(indx).must_use_approved_vendor_flag := REPLACE_G_MISS_CHAR(p_must_use_approved_vendor_fl,l_item_tbl(indx).must_use_approved_vendor_flag);
1201 l_item_tbl(indx).purchasing_tax_code := REPLACE_G_MISS_CHAR(p_purchasing_tax_code,l_item_tbl(indx).purchasing_tax_code);
1202 l_item_tbl(indx).taxable_flag := REPLACE_G_MISS_CHAR(p_taxable_flag,l_item_tbl(indx).taxable_flag);
1203 l_item_tbl(indx).receive_close_tolerance := REPLACE_G_MISS_NUM (p_receive_close_tolerance,l_item_tbl(indx).receive_close_tolerance);
1204 l_item_tbl(indx).allow_item_desc_update_flag := REPLACE_G_MISS_CHAR(p_allow_item_desc_update_flag,l_item_tbl(indx).allow_item_desc_update_flag);
1205 l_item_tbl(indx).inspection_required_flag := REPLACE_G_MISS_CHAR(p_inspection_required_flag,l_item_tbl(indx).inspection_required_flag);
1206 l_item_tbl(indx).receipt_required_flag := REPLACE_G_MISS_CHAR(p_receipt_required_flag,l_item_tbl(indx).receipt_required_flag);
1207 l_item_tbl(indx).market_price := REPLACE_G_MISS_NUM (p_market_price,l_item_tbl(indx).market_price);
1208 l_item_tbl(indx).un_number_id := REPLACE_G_MISS_NUM (p_un_number_id,l_item_tbl(indx).un_number_id);
1209 l_item_tbl(indx).hazard_class_id := REPLACE_G_MISS_NUM (p_hazard_class_id,l_item_tbl(indx).hazard_class_id);
1210 l_item_tbl(indx).rfq_required_flag := REPLACE_G_MISS_CHAR(p_rfq_required_flag,l_item_tbl(indx).rfq_required_flag);
1211 l_item_tbl(indx).list_price_per_unit := REPLACE_G_MISS_NUM (p_list_price_per_unit,l_item_tbl(indx).list_price_per_unit);
1212 l_item_tbl(indx).price_tolerance_percent := REPLACE_G_MISS_NUM (p_price_tolerance_percent,l_item_tbl(indx).price_tolerance_percent);
1213 l_item_tbl(indx).asset_category_id := REPLACE_G_MISS_NUM (p_asset_category_id,l_item_tbl(indx).asset_category_id);
1214 l_item_tbl(indx).rounding_factor := REPLACE_G_MISS_NUM (p_rounding_factor,l_item_tbl(indx).rounding_factor);
1215 l_item_tbl(indx).unit_of_issue := REPLACE_G_MISS_CHAR(p_unit_of_issue,l_item_tbl(indx).unit_of_issue);
1216 l_item_tbl(indx).outside_operation_flag := REPLACE_G_MISS_CHAR(p_outside_operation_flag,l_item_tbl(indx).outside_operation_flag);
1217 l_item_tbl(indx).outside_operation_uom_type := REPLACE_G_MISS_CHAR(p_outside_operation_uom_type,l_item_tbl(indx).outside_operation_uom_type);
1218 l_item_tbl(indx).invoice_close_tolerance := REPLACE_G_MISS_NUM (p_invoice_close_tolerance,l_item_tbl(indx).invoice_close_tolerance);
1219 l_item_tbl(indx).encumbrance_account := REPLACE_G_MISS_NUM (p_encumbrance_account,l_item_tbl(indx).encumbrance_account);
1220 l_item_tbl(indx).expense_account := REPLACE_G_MISS_NUM (p_expense_account,l_item_tbl(indx).expense_account);
1221 l_item_tbl(indx).qty_rcv_exception_code := REPLACE_G_MISS_CHAR(p_qty_rcv_exception_code,l_item_tbl(indx).qty_rcv_exception_code);
1222 l_item_tbl(indx).receiving_routing_id := REPLACE_G_MISS_NUM (p_receiving_routing_id,l_item_tbl(indx).receiving_routing_id);
1223 l_item_tbl(indx).qty_rcv_tolerance := REPLACE_G_MISS_NUM (p_qty_rcv_tolerance,l_item_tbl(indx).qty_rcv_tolerance);
1224 l_item_tbl(indx).enforce_ship_to_location_code := REPLACE_G_MISS_CHAR(p_enforce_ship_to_location_c,l_item_tbl(indx).enforce_ship_to_location_code);
1225 l_item_tbl(indx).allow_substitute_receipts_flag := REPLACE_G_MISS_CHAR(p_allow_substitute_receipts_f,l_item_tbl(indx).allow_substitute_receipts_flag);
1226 l_item_tbl(indx).allow_unordered_receipts_flag := REPLACE_G_MISS_CHAR(p_allow_unordered_receipts_fl,l_item_tbl(indx).allow_unordered_receipts_flag);
1227 l_item_tbl(indx).allow_express_delivery_flag := REPLACE_G_MISS_CHAR(p_allow_express_delivery_flag,l_item_tbl(indx).allow_express_delivery_flag);
1228 l_item_tbl(indx).days_early_receipt_allowed := REPLACE_G_MISS_NUM (p_days_early_receipt_allowed,l_item_tbl(indx).days_early_receipt_allowed);
1229 l_item_tbl(indx).days_late_receipt_allowed := REPLACE_G_MISS_NUM (p_days_late_receipt_allowed,l_item_tbl(indx).days_late_receipt_allowed);
1230 l_item_tbl(indx).receipt_days_exception_code := REPLACE_G_MISS_CHAR(p_receipt_days_exception_code,l_item_tbl(indx).receipt_days_exception_code);
1231 -- physical
1232 l_item_tbl(indx).weight_uom_code := REPLACE_G_MISS_CHAR(p_weight_uom_code,l_item_tbl(indx).weight_uom_code);
1233 l_item_tbl(indx).unit_weight := REPLACE_G_MISS_NUM (p_unit_weight,l_item_tbl(indx).unit_weight);
1234 l_item_tbl(indx).volume_uom_code := REPLACE_G_MISS_CHAR(p_volume_uom_code,l_item_tbl(indx).volume_uom_code);
1235 l_item_tbl(indx).unit_volume := REPLACE_G_MISS_NUM (p_unit_volume,l_item_tbl(indx).unit_volume);
1236 l_item_tbl(indx).container_item_flag := REPLACE_G_MISS_CHAR(p_container_item_flag,l_item_tbl(indx).container_item_flag);
1237 l_item_tbl(indx).vehicle_item_flag := REPLACE_G_MISS_CHAR(p_vehicle_item_flag,l_item_tbl(indx).vehicle_item_flag);
1238 l_item_tbl(indx).maximum_load_weight := REPLACE_G_MISS_NUM (p_maximum_load_weight,l_item_tbl(indx).maximum_load_weight);
1239 l_item_tbl(indx).minimum_fill_percent := REPLACE_G_MISS_NUM (p_minimum_fill_percent,l_item_tbl(indx).minimum_fill_percent);
1240 l_item_tbl(indx).internal_volume := REPLACE_G_MISS_NUM (p_internal_volume,l_item_tbl(indx).internal_volume);
1241 l_item_tbl(indx).container_type_code := REPLACE_G_MISS_CHAR(p_container_type_code,l_item_tbl(indx).container_type_code);
1242 l_item_tbl(indx).collateral_flag := REPLACE_G_MISS_CHAR(p_collateral_flag,l_item_tbl(indx).collateral_flag);
1243 l_item_tbl(indx).event_flag := REPLACE_G_MISS_CHAR(p_event_flag,l_item_tbl(indx).event_flag);
1244 l_item_tbl(indx).equipment_type := REPLACE_G_MISS_NUM (p_equipment_type,l_item_tbl(indx).equipment_type);
1245 l_item_tbl(indx).electronic_flag := REPLACE_G_MISS_CHAR(p_electronic_flag,l_item_tbl(indx).electronic_flag);
1246 l_item_tbl(indx).downloadable_flag := REPLACE_G_MISS_CHAR(p_downloadable_flag,l_item_tbl(indx).downloadable_flag);
1247 l_item_tbl(indx).indivisible_flag := REPLACE_G_MISS_CHAR(p_indivisible_flag,l_item_tbl(indx).indivisible_flag);
1248 l_item_tbl(indx).dimension_uom_code := REPLACE_G_MISS_CHAR(p_dimension_uom_code,l_item_tbl(indx).dimension_uom_code);
1249 l_item_tbl(indx).unit_length := REPLACE_G_MISS_NUM (p_unit_length,l_item_tbl(indx).unit_length);
1250 l_item_tbl(indx).unit_width := REPLACE_G_MISS_NUM (p_unit_width,l_item_tbl(indx).unit_width);
1251 l_item_tbl(indx).unit_height := REPLACE_G_MISS_NUM (p_unit_height,l_item_tbl(indx).unit_height);
1252 --Planning
1253 l_item_tbl(indx).inventory_planning_code := REPLACE_G_MISS_NUM (p_inventory_planning_code,l_item_tbl(indx).inventory_planning_code);
1254 l_item_tbl(indx).planner_code := REPLACE_G_MISS_CHAR(p_planner_code,l_item_tbl(indx).planner_code);
1255 l_item_tbl(indx).planning_make_buy_code := REPLACE_G_MISS_NUM (p_planning_make_buy_code,l_item_tbl(indx).planning_make_buy_code);
1256 l_item_tbl(indx).min_minmax_quantity := REPLACE_G_MISS_NUM (p_min_minmax_quantity,l_item_tbl(indx).min_minmax_quantity);
1257 l_item_tbl(indx).max_minmax_quantity := REPLACE_G_MISS_NUM (p_max_minmax_quantity,l_item_tbl(indx).max_minmax_quantity);
1258 l_item_tbl(indx).safety_stock_bucket_days := REPLACE_G_MISS_NUM (p_safety_stock_bucket_days,l_item_tbl(indx).safety_stock_bucket_days);
1259 l_item_tbl(indx).carrying_cost := REPLACE_G_MISS_NUM (p_carrying_cost,l_item_tbl(indx).carrying_cost);
1260 l_item_tbl(indx).order_cost := REPLACE_G_MISS_NUM (p_order_cost,l_item_tbl(indx).order_cost);
1261 l_item_tbl(indx).mrp_safety_stock_percent := REPLACE_G_MISS_NUM (p_mrp_safety_stock_percent,l_item_tbl(indx).mrp_safety_stock_percent);
1262 l_item_tbl(indx).mrp_safety_stock_code := REPLACE_G_MISS_NUM (p_mrp_safety_stock_code,l_item_tbl(indx).mrp_safety_stock_code);
1263 l_item_tbl(indx).fixed_order_quantity := REPLACE_G_MISS_NUM (p_fixed_order_quantity,l_item_tbl(indx).fixed_order_quantity);
1264 l_item_tbl(indx).fixed_days_supply := REPLACE_G_MISS_NUM (p_fixed_days_supply,l_item_tbl(indx).fixed_days_supply);
1265 l_item_tbl(indx).minimum_order_quantity := REPLACE_G_MISS_NUM (p_minimum_order_quantity,l_item_tbl(indx).minimum_order_quantity);
1266 l_item_tbl(indx).maximum_order_quantity := REPLACE_G_MISS_NUM (p_maximum_order_quantity,l_item_tbl(indx).maximum_order_quantity);
1267 l_item_tbl(indx).fixed_lot_multiplier := REPLACE_G_MISS_NUM (p_fixed_lot_multiplier,l_item_tbl(indx).fixed_lot_multiplier);
1268 l_item_tbl(indx).source_type := REPLACE_G_MISS_NUM (p_source_type,l_item_tbl(indx).source_type);
1269 l_item_tbl(indx).source_organization_id := REPLACE_G_MISS_NUM (p_source_organization_id,l_item_tbl(indx).source_organization_id);
1270 l_item_tbl(indx).source_subinventory := REPLACE_G_MISS_CHAR(p_source_subinventory,l_item_tbl(indx).source_subinventory);
1271 l_item_tbl(indx).mrp_planning_code := REPLACE_G_MISS_NUM (p_mrp_planning_code,l_item_tbl(indx).mrp_planning_code);
1272 l_item_tbl(indx).ato_forecast_control := REPLACE_G_MISS_NUM (p_ato_forecast_control,l_item_tbl(indx).ato_forecast_control);
1273 l_item_tbl(indx).planning_exception_set := REPLACE_G_MISS_CHAR(p_planning_exception_set,l_item_tbl(indx).planning_exception_set);
1274 l_item_tbl(indx).shrinkage_rate := REPLACE_G_MISS_NUM (p_shrinkage_rate,l_item_tbl(indx).shrinkage_rate);
1275 l_item_tbl(indx).end_assembly_pegging_flag := REPLACE_G_MISS_CHAR(p_end_assembly_pegging_flag,l_item_tbl(indx).end_assembly_pegging_flag);
1276 l_item_tbl(indx).rounding_control_type := REPLACE_G_MISS_NUM (p_rounding_control_type,l_item_tbl(indx).rounding_control_type);
1277 l_item_tbl(indx).planned_inv_point_flag := REPLACE_G_MISS_CHAR(p_planned_inv_point_flag,l_item_tbl(indx).planned_inv_point_flag);
1278 l_item_tbl(indx).create_supply_flag := REPLACE_G_MISS_CHAR(p_create_supply_flag,l_item_tbl(indx).create_supply_flag);
1279 l_item_tbl(indx).acceptable_early_days := REPLACE_G_MISS_NUM (p_acceptable_early_days,l_item_tbl(indx).acceptable_early_days);
1280 l_item_tbl(indx).mrp_calculate_atp_flag := REPLACE_G_MISS_CHAR(p_mrp_calculate_atp_flag,l_item_tbl(indx).mrp_calculate_atp_flag);
1281 l_item_tbl(indx).auto_reduce_mps := REPLACE_G_MISS_NUM (p_auto_reduce_mps,l_item_tbl(indx).auto_reduce_mps);
1282 l_item_tbl(indx).repetitive_planning_flag := REPLACE_G_MISS_CHAR(p_repetitive_planning_flag,l_item_tbl(indx).repetitive_planning_flag);
1283 l_item_tbl(indx).overrun_percentage := REPLACE_G_MISS_NUM (p_overrun_percentage,l_item_tbl(indx).overrun_percentage);
1284 l_item_tbl(indx).acceptable_rate_decrease := REPLACE_G_MISS_NUM (p_acceptable_rate_decrease,l_item_tbl(indx).acceptable_rate_decrease);
1285 l_item_tbl(indx).acceptable_rate_increase := REPLACE_G_MISS_NUM (p_acceptable_rate_increase,l_item_tbl(indx).acceptable_rate_increase);
1286 l_item_tbl(indx).planning_time_fence_code := REPLACE_G_MISS_NUM (p_planning_time_fence_code,l_item_tbl(indx).planning_time_fence_code);
1287 l_item_tbl(indx).planning_time_fence_days := REPLACE_G_MISS_NUM (p_planning_time_fence_days,l_item_tbl(indx).planning_time_fence_days);
1288 l_item_tbl(indx).demand_time_fence_code := REPLACE_G_MISS_NUM (p_demand_time_fence_code,l_item_tbl(indx).demand_time_fence_code);
1289 l_item_tbl(indx).demand_time_fence_days := REPLACE_G_MISS_NUM (p_demand_time_fence_days,l_item_tbl(indx).demand_time_fence_days);
1290 l_item_tbl(indx).release_time_fence_code := REPLACE_G_MISS_NUM (p_release_time_fence_code,l_item_tbl(indx).release_time_fence_code);
1291 l_item_tbl(indx).release_time_fence_days := REPLACE_G_MISS_NUM (p_release_time_fence_days,l_item_tbl(indx).release_time_fence_days);
1292 l_item_tbl(indx).substitution_window_code := REPLACE_G_MISS_NUM (p_substitution_window_code,l_item_tbl(indx).substitution_window_code);
1293 l_item_tbl(indx).substitution_window_days := REPLACE_G_MISS_NUM (p_substitution_window_days,l_item_tbl(indx).substitution_window_days);
1294 -- lead times
1295 l_item_tbl(indx).preprocessing_lead_time := REPLACE_G_MISS_NUM (p_preprocessing_lead_time,l_item_tbl(indx).preprocessing_lead_time);
1296 l_item_tbl(indx).full_lead_time := REPLACE_G_MISS_NUM (p_full_lead_time,l_item_tbl(indx).full_lead_time);
1297 l_item_tbl(indx).postprocessing_lead_time := REPLACE_G_MISS_NUM (p_postprocessing_lead_time,l_item_tbl(indx).postprocessing_lead_time);
1298 l_item_tbl(indx).fixed_lead_time := REPLACE_G_MISS_NUM (p_fixed_lead_time,l_item_tbl(indx).fixed_lead_time);
1299 l_item_tbl(indx).variable_lead_time := REPLACE_G_MISS_NUM (p_variable_lead_time,l_item_tbl(indx).variable_lead_time);
1300 l_item_tbl(indx).cum_manufacturing_lead_time := REPLACE_G_MISS_NUM (p_cum_manufacturing_lead_time,l_item_tbl(indx).cum_manufacturing_lead_time);
1301 l_item_tbl(indx).cumulative_total_lead_time := REPLACE_G_MISS_NUM (p_cumulative_total_lead_time,l_item_tbl(indx).cumulative_total_lead_time);
1302 l_item_tbl(indx).lead_time_lot_size := REPLACE_G_MISS_NUM (p_lead_time_lot_size,l_item_tbl(indx).lead_time_lot_size);
1303 -- wip
1304 l_item_tbl(indx).build_in_wip_flag := REPLACE_G_MISS_CHAR(p_build_in_wip_flag,l_item_tbl(indx).build_in_wip_flag);
1305 l_item_tbl(indx).wip_supply_type := REPLACE_G_MISS_NUM (p_wip_supply_type,l_item_tbl(indx).wip_supply_type);
1306 l_item_tbl(indx).wip_supply_subinventory := REPLACE_G_MISS_CHAR(p_wip_supply_subinventory,l_item_tbl(indx).wip_supply_subinventory);
1307 l_item_tbl(indx).wip_supply_locator_id := REPLACE_G_MISS_NUM (p_wip_supply_locator_id,l_item_tbl(indx).wip_supply_locator_id);
1308 l_item_tbl(indx).overcompletion_tolerance_type := REPLACE_G_MISS_NUM (p_overcompletion_tolerance_ty,l_item_tbl(indx).overcompletion_tolerance_type);
1309 l_item_tbl(indx).overcompletion_tolerance_value := REPLACE_G_MISS_NUM (p_overcompletion_tolerance_va,l_item_tbl(indx).overcompletion_tolerance_value);
1310 l_item_tbl(indx).inventory_carry_penalty := REPLACE_G_MISS_NUM (p_inventory_carry_penalty,l_item_tbl(indx).inventory_carry_penalty);
1311 l_item_tbl(indx).operation_slack_penalty := REPLACE_G_MISS_NUM (p_operation_slack_penalty,l_item_tbl(indx).operation_slack_penalty);
1312 -- order management
1313 l_item_tbl(indx).customer_order_flag := REPLACE_G_MISS_CHAR(p_customer_order_flag,l_item_tbl(indx).customer_order_flag);
1314 l_item_tbl(indx).customer_order_enabled_flag := REPLACE_G_MISS_CHAR(p_customer_order_enabled_flag,l_item_tbl(indx).customer_order_enabled_flag);
1315 l_item_tbl(indx).internal_order_flag := REPLACE_G_MISS_CHAR(p_internal_order_flag,l_item_tbl(indx).internal_order_flag);
1316 l_item_tbl(indx).internal_order_enabled_flag := REPLACE_G_MISS_CHAR(p_internal_order_enabled_flag,l_item_tbl(indx).internal_order_enabled_flag);
1317 l_item_tbl(indx).shippable_item_flag := REPLACE_G_MISS_CHAR(p_shippable_item_flag,l_item_tbl(indx).shippable_item_flag);
1318 l_item_tbl(indx).so_transactions_flag := REPLACE_G_MISS_CHAR(p_so_transactions_flag,l_item_tbl(indx).so_transactions_flag);
1319 l_item_tbl(indx).picking_rule_id := REPLACE_G_MISS_NUM (p_picking_rule_id,l_item_tbl(indx).picking_rule_id);
1320 l_item_tbl(indx).pick_components_flag := REPLACE_G_MISS_CHAR(p_pick_components_flag,l_item_tbl(indx).pick_components_flag);
1321 l_item_tbl(indx).replenish_to_order_flag := REPLACE_G_MISS_CHAR(p_replenish_to_order_flag,l_item_tbl(indx).replenish_to_order_flag);
1322 l_item_tbl(indx).atp_flag := REPLACE_G_MISS_CHAR(p_atp_flag,l_item_tbl(indx).atp_flag);
1323 l_item_tbl(indx).atp_components_flag := REPLACE_G_MISS_CHAR(p_atp_components_flag,l_item_tbl(indx).atp_components_flag);
1324 l_item_tbl(indx).atp_rule_id := REPLACE_G_MISS_NUM (p_atp_rule_id,l_item_tbl(indx).atp_rule_id);
1325 l_item_tbl(indx).ship_model_complete_flag := REPLACE_G_MISS_CHAR(p_ship_model_complete_flag,l_item_tbl(indx).ship_model_complete_flag);
1326 l_item_tbl(indx).default_shipping_org := REPLACE_G_MISS_NUM (p_default_shipping_org,l_item_tbl(indx).default_shipping_org);
1327 l_item_tbl(indx).default_so_source_type := REPLACE_G_MISS_CHAR(p_default_so_source_type,l_item_tbl(indx).default_so_source_type);
1328 l_item_tbl(indx).returnable_flag := REPLACE_G_MISS_CHAR(p_returnable_flag,l_item_tbl(indx).returnable_flag);
1329 l_item_tbl(indx).return_inspection_requirement := REPLACE_G_MISS_NUM (p_return_inspection_requireme,l_item_tbl(indx).return_inspection_requirement);
1330 l_item_tbl(indx).over_shipment_tolerance := REPLACE_G_MISS_NUM (p_over_shipment_tolerance,l_item_tbl(indx).over_shipment_tolerance);
1331 l_item_tbl(indx).under_shipment_tolerance := REPLACE_G_MISS_NUM (p_under_shipment_tolerance,l_item_tbl(indx).under_shipment_tolerance);
1332 l_item_tbl(indx).over_return_tolerance := REPLACE_G_MISS_NUM (p_over_return_tolerance,l_item_tbl(indx).over_return_tolerance);
1333 l_item_tbl(indx).under_return_tolerance := REPLACE_G_MISS_NUM (p_under_return_tolerance,l_item_tbl(indx).under_return_tolerance);
1334 l_item_tbl(indx).financing_allowed_flag := REPLACE_G_MISS_CHAR(p_financing_allowed_flag,l_item_tbl(indx).financing_allowed_flag);
1335 l_item_tbl(indx).vol_discount_exempt_flag := REPLACE_G_MISS_CHAR(p_vol_discount_exempt_flag,l_item_tbl(indx).vol_discount_exempt_flag);
1336 l_item_tbl(indx).coupon_exempt_flag := REPLACE_G_MISS_CHAR(p_coupon_exempt_flag,l_item_tbl(indx).coupon_exempt_flag);
1337 l_item_tbl(indx).invoiceable_item_flag := REPLACE_G_MISS_CHAR(p_invoiceable_item_flag,l_item_tbl(indx).invoiceable_item_flag);
1338 l_item_tbl(indx).invoice_enabled_flag := REPLACE_G_MISS_CHAR(p_invoice_enabled_flag,l_item_tbl(indx).invoice_enabled_flag);
1339 l_item_tbl(indx).accounting_rule_id := REPLACE_G_MISS_NUM (p_accounting_rule_id,l_item_tbl(indx).accounting_rule_id);
1340 l_item_tbl(indx).invoicing_rule_id := REPLACE_G_MISS_NUM (p_invoicing_rule_id,l_item_tbl(indx).invoicing_rule_id);
1341 l_item_tbl(indx).tax_code := REPLACE_G_MISS_CHAR(p_tax_code,l_item_tbl(indx).tax_code);
1342 l_item_tbl(indx).sales_account := REPLACE_G_MISS_NUM (p_sales_account,l_item_tbl(indx).sales_account);
1343 l_item_tbl(indx).payment_terms_id := REPLACE_G_MISS_NUM (p_payment_terms_id,l_item_tbl(indx).payment_terms_id);
1344 -- service
1345 l_item_tbl(indx).contract_item_type_code := REPLACE_G_MISS_CHAR(p_contract_item_type_code,l_item_tbl(indx).contract_item_type_code);
1346 l_item_tbl(indx).service_duration_period_code := REPLACE_G_MISS_CHAR(p_service_duration_period_cod,l_item_tbl(indx).service_duration_period_code);
1347 l_item_tbl(indx).service_duration := REPLACE_G_MISS_NUM (p_service_duration,l_item_tbl(indx).service_duration);
1348 l_item_tbl(indx).coverage_schedule_id := REPLACE_G_MISS_NUM (p_coverage_schedule_id,l_item_tbl(indx).coverage_schedule_id);
1349 l_item_tbl(indx).subscription_depend_flag := REPLACE_G_MISS_CHAR(p_subscription_depend_flag,l_item_tbl(indx).subscription_depend_flag);
1350 l_item_tbl(indx).serv_importance_level := REPLACE_G_MISS_NUM (p_serv_importance_level,l_item_tbl(indx).serv_importance_level);
1351 l_item_tbl(indx).serv_req_enabled_code := REPLACE_G_MISS_CHAR(p_serv_req_enabled_code,l_item_tbl(indx).serv_req_enabled_code);
1352 l_item_tbl(indx).comms_activation_reqd_flag := REPLACE_G_MISS_CHAR(p_comms_activation_reqd_flag,l_item_tbl(indx).comms_activation_reqd_flag);
1353 l_item_tbl(indx).serviceable_product_flag := REPLACE_G_MISS_CHAR(p_serviceable_product_flag,l_item_tbl(indx).serviceable_product_flag);
1354 l_item_tbl(indx).material_billable_flag := REPLACE_G_MISS_CHAR(p_material_billable_flag,l_item_tbl(indx).material_billable_flag);
1355 l_item_tbl(indx).serv_billing_enabled_flag := REPLACE_G_MISS_CHAR(p_serv_billing_enabled_flag,l_item_tbl(indx).serv_billing_enabled_flag);
1356 l_item_tbl(indx).defect_tracking_on_flag := REPLACE_G_MISS_CHAR(p_defect_tracking_on_flag,l_item_tbl(indx).defect_tracking_on_flag);
1357 l_item_tbl(indx).recovered_part_disp_code := REPLACE_G_MISS_CHAR(p_recovered_part_disp_code,l_item_tbl(indx).recovered_part_disp_code);
1358 l_item_tbl(indx).comms_nl_trackable_flag := REPLACE_G_MISS_CHAR(p_comms_nl_trackable_flag,l_item_tbl(indx).comms_nl_trackable_flag);
1359 l_item_tbl(indx).asset_creation_code := REPLACE_G_MISS_CHAR(p_asset_creation_code,l_item_tbl(indx).asset_creation_code);
1360 l_item_tbl(indx).ib_item_instance_class := REPLACE_G_MISS_CHAR(p_ib_item_instance_class,l_item_tbl(indx).ib_item_instance_class);
1361 l_item_tbl(indx).service_starting_delay := REPLACE_G_MISS_NUM (p_service_starting_delay,l_item_tbl(indx).service_starting_delay);
1362 -- web option
1363 l_item_tbl(indx).web_status := REPLACE_G_MISS_CHAR(p_web_status,l_item_tbl(indx).web_status);
1364 l_item_tbl(indx).orderable_on_web_flag := REPLACE_G_MISS_CHAR(p_orderable_on_web_flag,l_item_tbl(indx).orderable_on_web_flag);
1365 l_item_tbl(indx).back_orderable_flag := REPLACE_G_MISS_CHAR(p_back_orderable_flag,l_item_tbl(indx).back_orderable_flag);
1366 l_item_tbl(indx).minimum_license_quantity := REPLACE_G_MISS_NUM (p_minimum_license_quantity,l_item_tbl(indx).minimum_license_quantity);
1367 --Start: 26 new attributes
1368 l_item_tbl(indx).tracking_quantity_ind := REPLACE_G_MISS_CHAR(p_tracking_quantity_ind,l_item_tbl(indx).tracking_quantity_ind);
1369 l_item_tbl(indx).ont_pricing_qty_source := REPLACE_G_MISS_CHAR(p_ont_pricing_qty_source,l_item_tbl(indx).ont_pricing_qty_source);
1370 l_item_tbl(indx).secondary_default_ind := REPLACE_G_MISS_CHAR(p_secondary_default_ind,l_item_tbl(indx).secondary_default_ind);
1371 l_item_tbl(indx).option_specific_sourced := REPLACE_G_MISS_NUM (p_option_specific_sourced,l_item_tbl(indx).option_specific_sourced);
1372 l_item_tbl(indx).vmi_minimum_units := REPLACE_G_MISS_NUM (p_vmi_minimum_units,l_item_tbl(indx).vmi_minimum_units);
1373 l_item_tbl(indx).vmi_minimum_days := REPLACE_G_MISS_NUM (p_vmi_minimum_days,l_item_tbl(indx).vmi_minimum_days);
1374 l_item_tbl(indx).vmi_maximum_units := REPLACE_G_MISS_NUM (p_vmi_maximum_units,l_item_tbl(indx).vmi_maximum_units);
1375 l_item_tbl(indx).vmi_maximum_days := REPLACE_G_MISS_NUM (p_vmi_maximum_days,l_item_tbl(indx).vmi_maximum_days);
1376 l_item_tbl(indx).vmi_fixed_order_quantity := REPLACE_G_MISS_NUM (p_vmi_fixed_order_quantity,l_item_tbl(indx).vmi_fixed_order_quantity);
1377 l_item_tbl(indx).so_authorization_flag := REPLACE_G_MISS_NUM (p_so_authorization_flag,l_item_tbl(indx).so_authorization_flag);
1378 l_item_tbl(indx).consigned_flag := REPLACE_G_MISS_NUM (p_consigned_flag,l_item_tbl(indx).consigned_flag);
1379 l_item_tbl(indx).asn_autoexpire_flag := REPLACE_G_MISS_NUM (p_asn_autoexpire_flag,l_item_tbl(indx).asn_autoexpire_flag);
1380 l_item_tbl(indx).vmi_forecast_type := REPLACE_G_MISS_NUM (p_vmi_forecast_type,l_item_tbl(indx).vmi_forecast_type);
1381 l_item_tbl(indx).forecast_horizon := REPLACE_G_MISS_NUM (p_forecast_horizon,l_item_tbl(indx).forecast_horizon);
1382 l_item_tbl(indx).exclude_from_budget_flag := REPLACE_G_MISS_NUM (p_exclude_from_budget_flag,l_item_tbl(indx).exclude_from_budget_flag);
1383 l_item_tbl(indx).days_tgt_inv_supply := REPLACE_G_MISS_NUM (p_days_tgt_inv_supply,l_item_tbl(indx).days_tgt_inv_supply);
1384 l_item_tbl(indx).days_tgt_inv_window := REPLACE_G_MISS_NUM (p_days_tgt_inv_window,l_item_tbl(indx).days_tgt_inv_window);
1385 l_item_tbl(indx).days_max_inv_supply := REPLACE_G_MISS_NUM (p_days_max_inv_supply,l_item_tbl(indx).days_max_inv_supply);
1386 l_item_tbl(indx).days_max_inv_window := REPLACE_G_MISS_NUM (p_days_max_inv_window,l_item_tbl(indx).days_max_inv_window);
1387 l_item_tbl(indx).drp_planned_flag := REPLACE_G_MISS_NUM (p_drp_planned_flag,l_item_tbl(indx).drp_planned_flag);
1388 l_item_tbl(indx).critical_component_flag := REPLACE_G_MISS_NUM (p_critical_component_flag,l_item_tbl(indx).critical_component_flag);
1389 l_item_tbl(indx).continous_transfer := REPLACE_G_MISS_NUM (p_continous_transfer,l_item_tbl(indx).continous_transfer);
1390 l_item_tbl(indx).convergence := REPLACE_G_MISS_NUM (p_convergence,l_item_tbl(indx).convergence);
1391 l_item_tbl(indx).divergence := REPLACE_G_MISS_NUM (p_divergence,l_item_tbl(indx).divergence);
1392 l_item_tbl(indx).config_orgs := REPLACE_G_MISS_CHAR(p_config_orgs,l_item_tbl(indx).config_orgs);
1393 l_item_tbl(indx).config_match := REPLACE_G_MISS_CHAR(p_config_match,l_item_tbl(indx).config_match);
1394 --End: 26 new attributes
1395 -- descriptive flex
1396 l_item_tbl(indx).attribute_category := REPLACE_G_MISS_CHAR(p_attribute_category,l_item_tbl(indx).attribute_category);
1397 l_item_tbl(indx).attribute1 := REPLACE_G_MISS_CHAR(p_attribute1,l_item_tbl(indx).attribute1);
1398 l_item_tbl(indx).attribute2 := REPLACE_G_MISS_CHAR(p_attribute2,l_item_tbl(indx).attribute2);
1399 l_item_tbl(indx).attribute3 := REPLACE_G_MISS_CHAR(p_attribute3,l_item_tbl(indx).attribute3);
1400 l_item_tbl(indx).attribute4 := REPLACE_G_MISS_CHAR(p_attribute4,l_item_tbl(indx).attribute4);
1401 l_item_tbl(indx).attribute5 := REPLACE_G_MISS_CHAR(p_attribute5,l_item_tbl(indx).attribute5);
1402 l_item_tbl(indx).attribute6 := REPLACE_G_MISS_CHAR(p_attribute6,l_item_tbl(indx).attribute6);
1403 l_item_tbl(indx).attribute7 := REPLACE_G_MISS_CHAR(p_attribute7,l_item_tbl(indx).attribute7);
1404 l_item_tbl(indx).attribute8 := REPLACE_G_MISS_CHAR(p_attribute8,l_item_tbl(indx).attribute8);
1405 l_item_tbl(indx).attribute9 := REPLACE_G_MISS_CHAR(p_attribute9,l_item_tbl(indx).attribute9);
1406 l_item_tbl(indx).attribute10 := REPLACE_G_MISS_CHAR(p_attribute10,l_item_tbl(indx).attribute10);
1407 l_item_tbl(indx).attribute11 := REPLACE_G_MISS_CHAR(p_attribute11,l_item_tbl(indx).attribute11);
1408 l_item_tbl(indx).attribute12 := REPLACE_G_MISS_CHAR(p_attribute12,l_item_tbl(indx).attribute12);
1409 l_item_tbl(indx).attribute13 := REPLACE_G_MISS_CHAR(p_attribute13,l_item_tbl(indx).attribute13);
1410 l_item_tbl(indx).attribute14 := REPLACE_G_MISS_CHAR(p_attribute14,l_item_tbl(indx).attribute14);
1411 l_item_tbl(indx).attribute15 := REPLACE_G_MISS_CHAR(p_attribute15,l_item_tbl(indx).attribute15);
1412 l_item_tbl(indx).attribute16 := REPLACE_G_MISS_CHAR(p_attribute16,l_item_tbl(indx).attribute16);
1413 l_item_tbl(indx).attribute17 := REPLACE_G_MISS_CHAR(p_attribute17,l_item_tbl(indx).attribute17);
1414 l_item_tbl(indx).attribute18 := REPLACE_G_MISS_CHAR(p_attribute18,l_item_tbl(indx).attribute18);
1415 l_item_tbl(indx).attribute19 := REPLACE_G_MISS_CHAR(p_attribute19,l_item_tbl(indx).attribute19);
1416 l_item_tbl(indx).attribute20 := REPLACE_G_MISS_CHAR(p_attribute20,l_item_tbl(indx).attribute20);
1417 l_item_tbl(indx).attribute21 := REPLACE_G_MISS_CHAR(p_attribute21,l_item_tbl(indx).attribute21);
1418 l_item_tbl(indx).attribute22 := REPLACE_G_MISS_CHAR(p_attribute22,l_item_tbl(indx).attribute22);
1419 l_item_tbl(indx).attribute23 := REPLACE_G_MISS_CHAR(p_attribute23,l_item_tbl(indx).attribute23);
1420 l_item_tbl(indx).attribute24 := REPLACE_G_MISS_CHAR(p_attribute24,l_item_tbl(indx).attribute24);
1421 l_item_tbl(indx).attribute25 := REPLACE_G_MISS_CHAR(p_attribute25,l_item_tbl(indx).attribute25);
1422 l_item_tbl(indx).attribute26 := REPLACE_G_MISS_CHAR(p_attribute26,l_item_tbl(indx).attribute26);
1423 l_item_tbl(indx).attribute27 := REPLACE_G_MISS_CHAR(p_attribute27,l_item_tbl(indx).attribute27);
1424 l_item_tbl(indx).attribute28 := REPLACE_G_MISS_CHAR(p_attribute28,l_item_tbl(indx).attribute28);
1425 l_item_tbl(indx).attribute29 := REPLACE_G_MISS_CHAR(p_attribute29,l_item_tbl(indx).attribute29);
1426 l_item_tbl(indx).attribute30 := REPLACE_G_MISS_CHAR(p_attribute30,l_item_tbl(indx).attribute30);
1427 -- global descriptive flex
1428 l_item_tbl(indx).global_attribute_category := REPLACE_G_MISS_CHAR(p_global_attribute_category,l_item_tbl(indx).global_attribute_category);
1429 l_item_tbl(indx).global_attribute1 := REPLACE_G_MISS_CHAR(p_global_attribute1,l_item_tbl(indx).global_attribute1);
1430 l_item_tbl(indx).global_attribute2 := REPLACE_G_MISS_CHAR(p_global_attribute2,l_item_tbl(indx).global_attribute2);
1431 l_item_tbl(indx).global_attribute3 := REPLACE_G_MISS_CHAR(p_global_attribute3,l_item_tbl(indx).global_attribute3);
1432 l_item_tbl(indx).global_attribute4 := REPLACE_G_MISS_CHAR(p_global_attribute4,l_item_tbl(indx).global_attribute4);
1433 l_item_tbl(indx).global_attribute5 := REPLACE_G_MISS_CHAR(p_global_attribute5,l_item_tbl(indx).global_attribute5);
1434 l_item_tbl(indx).global_attribute6 := REPLACE_G_MISS_CHAR(p_global_attribute6,l_item_tbl(indx).global_attribute6);
1435 l_item_tbl(indx).global_attribute7 := REPLACE_G_MISS_CHAR(p_global_attribute7,l_item_tbl(indx).global_attribute7);
1436 l_item_tbl(indx).global_attribute8 := REPLACE_G_MISS_CHAR(p_global_attribute8,l_item_tbl(indx).global_attribute8);
1437 l_item_tbl(indx).global_attribute9 := REPLACE_G_MISS_CHAR(p_global_attribute9,l_item_tbl(indx).global_attribute9);
1438 l_item_tbl(indx).global_attribute10 := REPLACE_G_MISS_CHAR(p_global_attribute10,l_item_tbl(indx).global_attribute10);
1439
1440 l_item_tbl(indx).global_attribute11 := REPLACE_G_MISS_CHAR(p_global_attribute11,l_item_tbl(indx).global_attribute11);
1441 l_item_tbl(indx).global_attribute12 := REPLACE_G_MISS_CHAR(p_global_attribute12,l_item_tbl(indx).global_attribute12);
1442 l_item_tbl(indx).global_attribute13 := REPLACE_G_MISS_CHAR(p_global_attribute13,l_item_tbl(indx).global_attribute13);
1443 l_item_tbl(indx).global_attribute14 := REPLACE_G_MISS_CHAR(p_global_attribute14,l_item_tbl(indx).global_attribute14);
1444 l_item_tbl(indx).global_attribute15 := REPLACE_G_MISS_CHAR(p_global_attribute15,l_item_tbl(indx).global_attribute15);
1445 l_item_tbl(indx).global_attribute16 := REPLACE_G_MISS_CHAR(p_global_attribute16,l_item_tbl(indx).global_attribute16);
1446 l_item_tbl(indx).global_attribute17 := REPLACE_G_MISS_CHAR(p_global_attribute17,l_item_tbl(indx).global_attribute17);
1447 l_item_tbl(indx).global_attribute18 := REPLACE_G_MISS_CHAR(p_global_attribute18,l_item_tbl(indx).global_attribute18);
1448 l_item_tbl(indx).global_attribute19 := REPLACE_G_MISS_CHAR(p_global_attribute19,l_item_tbl(indx).global_attribute19);
1449 l_item_tbl(indx).global_attribute20 := REPLACE_G_MISS_CHAR(p_global_attribute20,l_item_tbl(indx).global_attribute20);
1450 /* R12 Enhacement */
1451 l_item_tbl(indx).CAS_NUMBER := REPLACE_G_MISS_CHAR(p_CAS_NUMBER ,l_item_tbl(indx).CAS_NUMBER );
1452 l_item_tbl(indx).CHILD_LOT_FLAG := REPLACE_G_MISS_CHAR(p_CHILD_LOT_FLAG ,l_item_tbl(indx).CHILD_LOT_FLAG);
1453 l_item_tbl(indx).CHILD_LOT_PREFIX := REPLACE_G_MISS_CHAR(p_CHILD_LOT_PREFIX,l_item_tbl(indx).CHILD_LOT_PREFIX);
1454 l_item_tbl(indx).CHILD_LOT_STARTING_NUMBER := REPLACE_G_MISS_NUM(p_CHILD_LOT_STARTING_NUMBER,l_item_tbl(indx).CHILD_LOT_STARTING_NUMBER);
1455 l_item_tbl(indx).CHILD_LOT_VALIDATION_FLAG := REPLACE_G_MISS_CHAR(p_CHILD_LOT_VALIDATION_FLAG,l_item_tbl(indx).CHILD_LOT_VALIDATION_FLAG);
1456 l_item_tbl(indx).COPY_LOT_ATTRIBUTE_FLAG := REPLACE_G_MISS_CHAR(p_COPY_LOT_ATTRIBUTE_FLAG,l_item_tbl(indx).COPY_LOT_ATTRIBUTE_FLAG);
1457 l_item_tbl(indx).DEFAULT_GRADE := REPLACE_G_MISS_CHAR(p_DEFAULT_GRADE,l_item_tbl(indx).DEFAULT_GRADE);
1458 l_item_tbl(indx).EXPIRATION_ACTION_CODE := REPLACE_G_MISS_CHAR(p_EXPIRATION_ACTION_CODE,l_item_tbl(indx).EXPIRATION_ACTION_CODE);
1459 l_item_tbl(indx).EXPIRATION_ACTION_INTERVAL := REPLACE_G_MISS_NUM(p_EXPIRATION_ACTION_INTERVAL,l_item_tbl(indx).EXPIRATION_ACTION_INTERVAL);
1460 l_item_tbl(indx).GRADE_CONTROL_FLAG := REPLACE_G_MISS_CHAR(p_GRADE_CONTROL_FLAG,l_item_tbl(indx).GRADE_CONTROL_FLAG);
1461 l_item_tbl(indx).HAZARDOUS_MATERIAL_FLAG := REPLACE_G_MISS_CHAR(p_HAZARDOUS_MATERIAL_FLAG,l_item_tbl(indx).HAZARDOUS_MATERIAL_FLAG);
1462 l_item_tbl(indx).HOLD_DAYS := REPLACE_G_MISS_NUM(p_HOLD_DAYS,l_item_tbl(indx).HOLD_DAYS);
1463 l_item_tbl(indx).LOT_DIVISIBLE_FLAG := REPLACE_G_MISS_CHAR(p_LOT_DIVISIBLE_FLAG,l_item_tbl(indx).LOT_DIVISIBLE_FLAG);
1464 l_item_tbl(indx).MATURITY_DAYS := REPLACE_G_MISS_NUM(p_MATURITY_DAYS,l_item_tbl(indx).MATURITY_DAYS);
1465 l_item_tbl(indx).PARENT_CHILD_GENERATION_FLAG := REPLACE_G_MISS_CHAR(p_PARENT_CHILD_GENERATION_FLAG,l_item_tbl(indx).PARENT_CHILD_GENERATION_FLAG);
1466 l_item_tbl(indx).PROCESS_COSTING_ENABLED_FLAG := REPLACE_G_MISS_CHAR(p_PROCESS_COSTING_ENABLED_FLAG,l_item_tbl(indx).PROCESS_COSTING_ENABLED_FLAG);
1467 l_item_tbl(indx).PROCESS_EXECUTION_ENABLED_FLAG := REPLACE_G_MISS_CHAR(p_PROCESS_EXECUTION_ENABLED_FL,l_item_tbl(indx).PROCESS_EXECUTION_ENABLED_FLAG);
1468 l_item_tbl(indx).PROCESS_QUALITY_ENABLED_FLAG := REPLACE_G_MISS_CHAR(p_PROCESS_QUALITY_ENABLED_FLAG,l_item_tbl(indx).PROCESS_QUALITY_ENABLED_FLAG);
1469 l_item_tbl(indx).PROCESS_SUPPLY_LOCATOR_ID := REPLACE_G_MISS_NUM(p_PROCESS_SUPPLY_LOCATOR_ID,l_item_tbl(indx).PROCESS_SUPPLY_LOCATOR_ID);
1470 l_item_tbl(indx).PROCESS_SUPPLY_SUBINVENTORY := REPLACE_G_MISS_CHAR(p_PROCESS_SUPPLY_SUBINVENTORY,l_item_tbl(indx).PROCESS_SUPPLY_SUBINVENTORY);
1471 l_item_tbl(indx).PROCESS_YIELD_LOCATOR_ID := REPLACE_G_MISS_NUM(p_PROCESS_YIELD_LOCATOR_ID,l_item_tbl(indx).PROCESS_YIELD_LOCATOR_ID);
1472 l_item_tbl(indx).PROCESS_YIELD_SUBINVENTORY := REPLACE_G_MISS_CHAR(p_PROCESS_YIELD_SUBINVENTORY,l_item_tbl(indx).PROCESS_YIELD_SUBINVENTORY);
1473 l_item_tbl(indx).RECIPE_ENABLED_FLAG := REPLACE_G_MISS_CHAR(p_RECIPE_ENABLED_FLAG,l_item_tbl(indx).RECIPE_ENABLED_FLAG);
1474 l_item_tbl(indx).RETEST_INTERVAL := REPLACE_G_MISS_NUM(p_RETEST_INTERVAL,l_item_tbl(indx).RETEST_INTERVAL);
1475 l_item_tbl(indx).charge_periodicity_code := REPLACE_G_MISS_CHAR(p_charge_periodicity_code,l_item_tbl(indx).charge_periodicity_code);
1476 l_item_tbl(indx).REPAIR_LEADTIME := REPLACE_G_MISS_NUM(p_REPAIR_LEADTIME,l_item_tbl(indx).REPAIR_LEADTIME);
1477 l_item_tbl(indx).REPAIR_YIELD := REPLACE_G_MISS_NUM(p_REPAIR_YIELD,l_item_tbl(indx).REPAIR_YIELD);
1478 l_item_tbl(indx).PREPOSITION_POINT := REPLACE_G_MISS_CHAR(p_PREPOSITION_POINT,l_item_tbl(indx).PREPOSITION_POINT);
1479 l_item_tbl(indx).REPAIR_PROGRAM := REPLACE_G_MISS_NUM(p_REPAIR_PROGRAM,l_item_tbl(indx).REPAIR_PROGRAM);
1480 l_item_tbl(indx).SUBCONTRACTING_COMPONENT := REPLACE_G_MISS_NUM(p_SUBCONTRACTING_COMPONENT,l_item_tbl(indx).SUBCONTRACTING_COMPONENT);
1481 l_item_tbl(indx).OUTSOURCED_ASSEMBLY := REPLACE_G_MISS_NUM(p_OUTSOURCED_ASSEMBLY ,l_item_tbl(indx).OUTSOURCED_ASSEMBLY );
1482 --R12 C Attributes
1483 l_item_tbl(indx).GDSN_OUTBOUND_ENABLED_FLAG := REPLACE_G_MISS_CHAR(p_GDSN_OUTBOUND_ENABLED_FLAG ,l_item_tbl(indx).GDSN_OUTBOUND_ENABLED_FLAG );
1484 l_item_tbl(indx).TRADE_ITEM_DESCRIPTOR := REPLACE_G_MISS_CHAR(P_TRADE_ITEM_DESCRIPTOR ,l_item_tbl(indx).TRADE_ITEM_DESCRIPTOR );
1485 l_item_tbl(indx).STYLE_ITEM_FLAG := REPLACE_G_MISS_CHAR(P_STYLE_ITEM_FLAG ,l_item_tbl(indx).STYLE_ITEM_FLAG );
1486 l_item_tbl(indx).STYLE_ITEM_ID := REPLACE_G_MISS_NUM(P_STYLE_ITEM_ID ,l_item_tbl(indx).STYLE_ITEM_ID );
1487 -- Revision table populating
1488
1489 l_Revision_Tbl(indx).Transaction_Type := p_Transaction_Type;
1490 l_Revision_Tbl(indx).Inventory_Item_Id := p_inventory_item_id;
1491 l_Revision_Tbl(indx).Item_Number := p_Item_Number;
1492 l_Revision_Tbl(indx).Organization_Id := p_organization_id;
1493 l_Revision_Tbl(indx).Revision_Id := p_revision_id;
1494 l_Revision_Tbl(indx).Revision_Code := p_revision_code;
1495 l_Revision_Tbl(indx).Revision_Label := p_revision_label;
1496 l_Revision_Tbl(indx).Description := p_revision_description;
1497 l_Revision_Tbl(indx).Effectivity_Date := p_effectivity_Date;
1498 l_Revision_Tbl(indx).Lifecycle_Id := p_rev_lifecycle_id;
1499 l_Revision_Tbl(indx).Current_Phase_Id := p_rev_current_phase_id;
1500 -- 5208102: Supporting template for UDA's at revisions
1501 l_Revision_Tbl(indx).template_id := p_rev_template_id;
1502 l_Revision_Tbl(indx).template_name := p_rev_template_name;
1503
1504 l_Revision_Tbl(indx).Attribute_Category := p_rev_attribute_category;
1505 l_Revision_Tbl(indx).Attribute1 := p_rev_attribute1;
1506 l_Revision_Tbl(indx).Attribute2 := p_rev_attribute2;
1507 l_Revision_Tbl(indx).Attribute3 := p_rev_attribute3;
1508 l_Revision_Tbl(indx).Attribute4 := p_rev_attribute4;
1509 l_Revision_Tbl(indx).Attribute5 := p_rev_attribute5;
1510 l_Revision_Tbl(indx).Attribute6 := p_rev_attribute6;
1511 l_Revision_Tbl(indx).Attribute7 := p_rev_attribute7;
1512 l_Revision_Tbl(indx).Attribute8 := p_rev_attribute8;
1513 l_Revision_Tbl(indx).Attribute9 := p_rev_attribute9;
1514 l_Revision_Tbl(indx).Attribute10 := p_rev_attribute10;
1515 l_Revision_Tbl(indx).Attribute11 := p_rev_attribute11;
1516 l_Revision_Tbl(indx).Attribute12 := p_rev_attribute12;
1517 l_Revision_Tbl(indx).Attribute13 := p_rev_attribute13;
1518 l_Revision_Tbl(indx).Attribute14 := p_rev_attribute14;
1519 l_Revision_Tbl(indx).Attribute15 := p_rev_attribute15;
1520
1521 EGO_Item_PVT.G_Item_Tbl := l_item_tbl;
1522 EGO_Item_PVT.G_Revision_Tbl := l_Revision_Tbl;
1523
1524 INV_EGO_REVISION_VALIDATE.Set_Process_Control(NVL(p_process_control,'PLM_UI:Y'));--Bug:3777954
1525
1526 EGO_Item_PVT.Process_Items (
1527 p_commit => p_commit
1528 ,x_return_status => x_return_status
1529 ,x_msg_count => x_msg_count);
1530
1531 x_msg_data := FND_MESSAGE.get; --Retrieving error message in the case of p_process_control = "Interface_Handler"
1532
1533 INV_EGO_REVISION_VALIDATE.Set_Process_Control(NULL);
1534
1535 l_item_created_tbl := EGO_Item_PVT.G_Item_Tbl;
1536
1537 IF x_return_status = FND_API.G_RET_STS_SUCCESS AND l_item_tbl(indx).process_item_record = 1 THEN
1538
1539 x_inventory_item_id := l_item_created_tbl(indx).inventory_item_id;
1540 x_organization_id := l_item_created_tbl(indx).organization_id;
1541
1542 IF p_approval_status = G_MISS_CHAR THEN
1543 l_approval_status := NULL;
1544 ELSE
1545 l_approval_status := p_approval_status;
1546 END IF;
1547
1548 IF NVL(p_process_control,'PLM_UI:N') <> 'EGO_INTERFACE_HANDLER' THEN --R12 C
1549 EGO_ITEM_PUB.Update_Item_Approval_Status (
1550 p_inventory_item_id => x_inventory_item_id
1551 ,p_organization_id => x_organization_id
1552 ,p_approval_status => l_approval_status );
1553 END IF;
1554
1555 END IF; -- x_return_status = FND_API.G_RET_STS_SUCCESS from IOI
1556
1557 ELSIF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1558
1559 FND_MESSAGE.Set_Name ('EGO', 'EGO_PROGRAM_NOT_IMPLEMENTED');
1560 FND_MSG_PUB.Add;
1561 RAISE FND_API.G_EXC_ERROR;
1562
1563 END IF; -- TRANSACTION_TYPE IN CREATE/UPDATE
1564
1565 IF FND_API.To_Boolean(p_commit) THEN
1566 COMMIT WORK;
1567 END IF;
1568
1569 --EGO_Item_PVT.Process_Items returns the status which is correct, please donot override that.
1570 --x_return_status := G_RET_STS_SUCCESS;
1571 --Bug 5997870.. Clear the values before returning so that it does not stick around till next call..
1572 Clear_Object_Version_Values;
1573
1574 EXCEPTION
1575 WHEN FND_API.G_EXC_ERROR THEN
1576 Clear_Object_Version_Values;
1577
1578 IF FND_API.To_Boolean(p_commit) THEN
1579 ROLLBACK TO Process_Item_Scalar;
1580 END IF;
1581 x_return_status := G_RET_STS_ERROR;
1582 FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
1583 ,p_count => x_msg_count
1584 ,p_data => x_msg_data);
1585 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1586 Clear_Object_Version_Values;
1587
1588 IF FND_API.To_Boolean(p_commit) THEN
1589 ROLLBACK TO Process_Item_Scalar;
1590 END IF;
1591 x_RETURN_STATUS := G_RET_STS_UNEXP_ERROR;
1592 FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
1593 ,p_count => x_msg_count
1594 ,p_data => x_msg_data);
1595 WHEN OTHERS THEN
1596 Clear_Object_Version_Values;
1597
1598 IF FND_API.To_Boolean(p_commit) THEN
1599 ROLLBACK TO Process_Item_Scalar;
1600 END IF;
1601 x_return_status := G_RET_STS_UNEXP_ERROR;
1602 FND_MESSAGE.Set_Name('EGO', 'EGO_PLSQL_ERR');
1603 FND_MESSAGE.Set_Token('PKG_NAME', G_PKG_NAME);
1604 FND_MESSAGE.Set_Token('API_NAME', l_api_name);
1605 FND_MESSAGE.Set_Token('SQL_ERR_MSG', SQLERRM);
1606 FND_MSG_PUB.Add;
1607 FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
1608 ,p_count => x_msg_count
1609 ,p_data => x_msg_data);
1610 END Process_Item;
1611
1612 ---------------------------------------------------------------------------
1613 PROCEDURE Process_Item_Org_Assignments(
1614 p_api_version IN NUMBER
1615 ,p_init_msg_list IN VARCHAR2 DEFAULT G_FALSE
1616 ,p_commit IN VARCHAR2 DEFAULT G_FALSE
1617 ,p_Item_Org_Assignment_Tbl IN EGO_Item_PUB.Item_Org_Assignment_Tbl_Type
1618 ,x_return_status OUT NOCOPY VARCHAR2
1619 ,x_msg_count OUT NOCOPY NUMBER) IS
1620
1621 l_api_name CONSTANT VARCHAR2(30) := 'Process_Item_Org_Assignments';
1622 l_api_version CONSTANT NUMBER := 1.0;
1623 l_return_status VARCHAR2(1) := G_MISS_CHAR;
1624 BEGIN
1625 x_return_status := G_RET_STS_SUCCESS;
1626 -- Check for call compatibility
1627 IF NOT FND_API.Compatible_API_Call ( l_api_version, p_api_version,
1628 l_api_name, G_PKG_NAME )
1629 THEN
1630 RAISE FND_API.g_EXC_UNEXPECTED_ERROR;
1631 END IF;
1632
1633 -- Initialize message list
1634 IF FND_API.To_Boolean (p_init_msg_list) THEN
1635 Error_Handler.Initialize;
1636 END IF;
1637
1638 -- Set business object identifier in the System Information record
1639 Error_Handler.Set_BO_Identifier ( p_bo_identifier => G_BO_Identifier );
1640
1641 -- Store item org assignment data in the global table
1642 EGO_Item_PVT.G_Item_Org_Assignment_Tbl := p_Item_Org_Assignment_Tbl;
1643
1644 EGO_Item_PVT.Process_Item_Org_Assignments(
1645 p_commit => p_commit
1646 , x_return_status => l_return_status
1647 , x_msg_count => x_msg_count);
1648
1649 x_return_status := l_return_status;
1650
1651 EXCEPTION
1652 WHEN FND_API.g_EXC_UNEXPECTED_ERROR THEN
1653 x_return_status := G_RET_STS_UNEXP_ERROR;
1654 WHEN others THEN
1655 x_return_status := G_RET_STS_UNEXP_ERROR;
1656 EGO_Item_Msg.Add_Error_Message ( EGO_Item_PVT.G_Item_Org_indx, 'INV', 'INV_ITEM_UNEXPECTED_ERROR',
1657 'PACKAGE_NAME', G_PKG_NAME, FALSE,
1658 'PROCEDURE_NAME', l_api_name, FALSE,
1659 'ERROR_TEXT', SQLERRM, FALSE );
1660 END Process_Item_Org_Assignments;
1661
1662 ---------------------------------------------------------------------------
1663 PROCEDURE Assign_Item_To_Org(
1664 p_api_version IN NUMBER
1665 ,p_init_msg_list IN VARCHAR2 DEFAULT G_FALSE
1666 ,p_commit IN VARCHAR2 DEFAULT G_FALSE
1667 ,p_Inventory_Item_Id IN NUMBER DEFAULT G_MISS_NUM
1668 ,p_Item_Number IN VARCHAR2 DEFAULT G_MISS_CHAR
1669 ,p_Organization_Id IN NUMBER DEFAULT G_MISS_NUM
1670 ,p_Organization_Code IN VARCHAR2 DEFAULT G_MISS_CHAR
1671 ,p_Primary_Uom_Code IN VARCHAR2 DEFAULT G_MISS_CHAR
1672 ,x_return_status OUT NOCOPY VARCHAR2
1673 ,x_msg_count OUT NOCOPY NUMBER) IS
1674
1675 l_api_name CONSTANT VARCHAR2(30) := 'Assign_Item_To_Org';
1676 l_api_version CONSTANT NUMBER := 1.0;
1677 l_return_status VARCHAR2(1) := G_MISS_CHAR;
1678 l_Item_Org_Assignment_Tbl EGO_Item_PUB.Item_Org_Assignment_Tbl_Type;
1679 indx BINARY_INTEGER := 1;
1680 BEGIN
1681
1682 l_Item_Org_Assignment_Tbl(indx).Inventory_Item_Id := p_Inventory_Item_Id;
1683 l_Item_Org_Assignment_Tbl(indx).Item_Number := p_Item_Number;
1684 l_Item_Org_Assignment_Tbl(indx).Organization_Id := p_Organization_Id;
1685 l_Item_Org_Assignment_Tbl(indx).Organization_Code := p_Organization_Code;
1686 l_Item_Org_Assignment_Tbl(indx).Primary_Uom_Code := p_Primary_Uom_Code;
1687
1688 EGO_Item_PUB.Process_Item_Org_Assignments(
1689 p_api_version => 1.0
1690 , p_init_msg_list => p_init_msg_list
1691 , p_commit => p_commit
1692 , p_Item_Org_Assignment_Tbl => l_Item_Org_Assignment_Tbl
1693 , x_return_status => x_return_status
1694 , x_msg_count => x_msg_count );
1695
1696 END Assign_Item_To_Org;
1697
1698 ---------------------------------------------------------------------------
1699 PROCEDURE Update_Item_Number(
1700 p_Inventory_Item_Id IN NUMBER
1701 ,p_Item_Number IN VARCHAR2 DEFAULT G_MISS_CHAR
1702 ,p_Segment1 IN VARCHAR2 DEFAULT G_MISS_CHAR
1703 ,p_Segment2 IN VARCHAR2 DEFAULT G_MISS_CHAR
1704 ,p_Segment3 IN VARCHAR2 DEFAULT G_MISS_CHAR
1705 ,p_Segment4 IN VARCHAR2 DEFAULT G_MISS_CHAR
1706 ,p_Segment5 IN VARCHAR2 DEFAULT G_MISS_CHAR
1707 ,p_Segment6 IN VARCHAR2 DEFAULT G_MISS_CHAR
1708 ,p_Segment7 IN VARCHAR2 DEFAULT G_MISS_CHAR
1709 ,p_Segment8 IN VARCHAR2 DEFAULT G_MISS_CHAR
1710 ,p_Segment9 IN VARCHAR2 DEFAULT G_MISS_CHAR
1711 ,p_Segment10 IN VARCHAR2 DEFAULT G_MISS_CHAR
1712 ,p_Segment11 IN VARCHAR2 DEFAULT G_MISS_CHAR
1713 ,p_Segment12 IN VARCHAR2 DEFAULT G_MISS_CHAR
1714 ,p_Segment13 IN VARCHAR2 DEFAULT G_MISS_CHAR
1715 ,p_Segment14 IN VARCHAR2 DEFAULT G_MISS_CHAR
1716 ,p_Segment15 IN VARCHAR2 DEFAULT G_MISS_CHAR
1717 ,p_Segment16 IN VARCHAR2 DEFAULT G_MISS_CHAR
1718 ,p_Segment17 IN VARCHAR2 DEFAULT G_MISS_CHAR
1719 ,p_Segment18 IN VARCHAR2 DEFAULT G_MISS_CHAR
1720 ,p_Segment19 IN VARCHAR2 DEFAULT G_MISS_CHAR
1721 ,p_Segment20 IN VARCHAR2 DEFAULT G_MISS_CHAR
1722 ,p_New_Segment1 IN VARCHAR2 DEFAULT G_MISS_CHAR
1723 ,p_New_Segment2 IN VARCHAR2 DEFAULT G_MISS_CHAR
1724 ,p_New_Segment3 IN VARCHAR2 DEFAULT G_MISS_CHAR
1725 ,p_New_Segment4 IN VARCHAR2 DEFAULT G_MISS_CHAR
1726 ,p_New_Segment5 IN VARCHAR2 DEFAULT G_MISS_CHAR
1727 ,p_New_Segment6 IN VARCHAR2 DEFAULT G_MISS_CHAR
1728 ,p_New_Segment7 IN VARCHAR2 DEFAULT G_MISS_CHAR
1729 ,p_New_Segment8 IN VARCHAR2 DEFAULT G_MISS_CHAR
1730 ,p_New_Segment9 IN VARCHAR2 DEFAULT G_MISS_CHAR
1731 ,p_New_Segment10 IN VARCHAR2 DEFAULT G_MISS_CHAR
1732 ,p_New_Segment11 IN VARCHAR2 DEFAULT G_MISS_CHAR
1733 ,p_New_Segment12 IN VARCHAR2 DEFAULT G_MISS_CHAR
1734 ,p_New_Segment13 IN VARCHAR2 DEFAULT G_MISS_CHAR
1735 ,p_New_Segment14 IN VARCHAR2 DEFAULT G_MISS_CHAR
1736 ,p_New_Segment15 IN VARCHAR2 DEFAULT G_MISS_CHAR
1737 ,p_New_Segment16 IN VARCHAR2 DEFAULT G_MISS_CHAR
1738 ,p_New_Segment17 IN VARCHAR2 DEFAULT G_MISS_CHAR
1739 ,p_New_Segment18 IN VARCHAR2 DEFAULT G_MISS_CHAR
1740 ,p_New_Segment19 IN VARCHAR2 DEFAULT G_MISS_CHAR
1741 ,p_New_Segment20 IN VARCHAR2 DEFAULT G_MISS_CHAR
1742 ,x_Item_Tbl IN OUT NOCOPY EGO_Item_PUB.Item_Tbl_Type
1743 ,x_return_status OUT NOCOPY VARCHAR2) IS
1744
1745 l_Segment_Rec INV_ITEM_API.Item_rec_type;
1746 l_Item_Id MTL_SYSTEM_ITEMS.INVENTORY_ITEM_ID%TYPE;
1747 l_description MTL_SYSTEM_ITEMS.DESCRIPTION%TYPE;
1748 l_uom MTL_SYSTEM_ITEMS.PRIMARY_UNIT_OF_MEASURE%TYPE;
1749 l_catalog MTL_SYSTEM_ITEMS.ITEM_CATALOG_GROUP_ID%TYPE;
1750 l_error_status VARCHAR2(500) := NULL;
1751
1752 BEGIN
1753
1754 x_return_status := G_MISS_CHAR;
1755
1756 IF p_Item_Number IS NOT NULL AND p_Item_Number <> G_MISS_CHAR THEN
1757 INVPUOPI.mtl_pr_parse_item_number(
1758 p_item_number =>p_Item_Number
1759 ,p_segment1 =>l_Segment_Rec.segment1
1760 ,p_segment2 =>l_Segment_Rec.segment2
1761 ,p_segment3 =>l_Segment_Rec.segment3
1762 ,p_segment4 =>l_Segment_Rec.segment4
1763 ,p_segment5 =>l_Segment_Rec.segment5
1764 ,p_segment6 =>l_Segment_Rec.segment6
1765 ,p_segment7 =>l_Segment_Rec.segment7
1766 ,p_segment8 =>l_Segment_Rec.segment8
1767 ,p_segment9 =>l_Segment_Rec.segment9
1768 ,p_segment10 =>l_Segment_Rec.segment10
1769 ,p_segment11 =>l_Segment_Rec.segment11
1770 ,p_segment12 =>l_Segment_Rec.segment12
1771 ,p_segment13 =>l_Segment_Rec.segment13
1772 ,p_segment14 =>l_Segment_Rec.segment14
1773 ,p_segment15 =>l_Segment_Rec.segment15
1774 ,p_segment16 =>l_Segment_Rec.segment16
1775 ,p_segment17 =>l_Segment_Rec.segment17
1776 ,p_segment18 =>l_Segment_Rec.segment18
1777 ,p_segment19 =>l_Segment_Rec.segment19
1778 ,p_segment20 =>l_Segment_Rec.segment20
1779 ,x_err_text =>l_error_status);
1780
1781 IF l_error_status IS NOT NULL THEN
1782 EGO_Item_Msg.Add_Error_Message (
1783 p_entity_index => 1
1784 ,p_application_short_name => 'INV'
1785 ,p_message_name => 'INV_ITEM_NUMBER_PARSE'
1786 ,p_token_name1 => 'PACKAGE_NAME'
1787 ,p_token_value1 => G_PKG_NAME
1788 ,p_translate1 => FALSE
1789 ,p_token_name2 => 'PROCEDURE_NAME'
1790 ,p_token_value2 => 'Update_Item_Number'
1791 ,p_translate2 => FALSE
1792 ,p_token_name3 => 'API_VERSION'
1793 ,p_token_value3 => '1.0'
1794 ,p_translate3 => FALSE);
1795 x_return_status := FND_API.G_RET_STS_ERROR;
1796 END IF;
1797
1798 ELSE
1799
1800 l_Segment_Rec.segment1 := p_New_Segment1;
1801 l_Segment_Rec.segment2 := p_New_Segment2;
1802 l_Segment_Rec.segment3 := p_New_Segment3;
1803 l_Segment_Rec.segment4 := p_New_Segment4;
1804 l_Segment_Rec.segment5 := p_New_Segment5;
1805 l_Segment_Rec.segment6 := p_New_Segment6;
1806 l_Segment_Rec.segment7 := p_New_Segment7;
1807 l_Segment_Rec.segment8 := p_New_Segment8;
1808 l_Segment_Rec.segment9 := p_New_Segment9;
1809 l_Segment_Rec.segment10 := p_New_Segment10;
1810 l_Segment_Rec.segment11 := p_New_Segment11;
1811 l_Segment_Rec.segment12 := p_New_Segment12;
1812 l_Segment_Rec.segment13 := p_New_Segment13;
1813 l_Segment_Rec.segment14 := p_New_Segment14;
1814 l_Segment_Rec.segment15 := p_New_Segment15;
1815 l_Segment_Rec.segment16 := p_New_Segment16;
1816 l_Segment_Rec.segment17 := p_New_Segment17;
1817 l_Segment_Rec.segment18 := p_New_Segment18;
1818 l_Segment_Rec.segment19 := p_New_Segment19;
1819 l_Segment_Rec.segment20 := p_New_Segment20;
1820
1821 END IF;
1822
1823 INV_ITEM_PVT.Check_Item_Number (
1824 P_Segment_Rec => l_Segment_Rec
1825 ,P_Item_Id => l_Item_Id
1826 ,P_Description => l_description
1827 ,P_unit_of_measure => l_uom
1828 ,P_Item_Catalog_Group_Id => l_catalog);
1829
1830 IF l_Item_Id IS NULL THEN
1831
1832 UPDATE mtl_system_items_b
1833 SET segment1 = l_Segment_Rec.segment1
1834 ,segment2 = l_Segment_Rec.segment2
1835 ,segment3 = l_Segment_Rec.segment3
1836 ,segment4 = l_Segment_Rec.segment4
1837 ,segment5 = l_Segment_Rec.segment5
1838 ,segment6 = l_Segment_Rec.segment6
1839 ,segment7 = l_Segment_Rec.segment7
1840 ,segment8 = l_Segment_Rec.segment8
1841 ,segment9 = l_Segment_Rec.segment9
1842 ,segment10 = l_Segment_Rec.segment10
1843 ,segment11 = l_Segment_Rec.segment11
1844 ,segment12 = l_Segment_Rec.segment12
1845 ,segment13 = l_Segment_Rec.segment13
1846 ,segment14 = l_Segment_Rec.segment14
1847 ,segment15 = l_Segment_Rec.segment15
1848 ,segment16 = l_Segment_Rec.segment16
1849 ,segment17 = l_Segment_Rec.segment17
1850 ,segment18 = l_Segment_Rec.segment18
1851 ,segment19 = l_Segment_Rec.segment19
1852 ,segment20 = l_Segment_Rec.segment20
1853 WHERE inventory_item_id = P_Inventory_Item_Id;
1854
1855 x_Item_Tbl(1).segment1 := l_Segment_Rec.segment1;
1856 x_Item_Tbl(1).segment2 := l_Segment_Rec.segment2;
1857 x_Item_Tbl(1).segment3 := l_Segment_Rec.segment3;
1858 x_Item_Tbl(1).segment4 := l_Segment_Rec.segment4;
1859 x_Item_Tbl(1).segment5 := l_Segment_Rec.segment5;
1860 x_Item_Tbl(1).segment6 := l_Segment_Rec.segment6;
1861 x_Item_Tbl(1).segment7 := l_Segment_Rec.segment7;
1862 x_Item_Tbl(1).segment8 := l_Segment_Rec.segment8;
1863 x_Item_Tbl(1).segment9 := l_Segment_Rec.segment9;
1864 x_Item_Tbl(1).segment10 := l_Segment_Rec.segment10;
1865 x_Item_Tbl(1).segment11 := l_Segment_Rec.segment11;
1866 x_Item_Tbl(1).segment12 := l_Segment_Rec.segment12;
1867 x_Item_Tbl(1).segment13 := l_Segment_Rec.segment13;
1868 x_Item_Tbl(1).segment14 := l_Segment_Rec.segment14;
1869 x_Item_Tbl(1).segment15 := l_Segment_Rec.segment15;
1870 x_Item_Tbl(1).segment16 := l_Segment_Rec.segment16;
1871 x_Item_Tbl(1).segment17 := l_Segment_Rec.segment17;
1872 x_Item_Tbl(1).segment18 := l_Segment_Rec.segment18;
1873 x_Item_Tbl(1).segment19 := l_Segment_Rec.segment19;
1874 x_Item_Tbl(1).segment20 := l_Segment_Rec.segment20;
1875
1876 x_return_status := FND_API.G_RET_STS_SUCCESS;
1877
1878 ELSIF p_Inventory_Item_Id <> l_Item_Id THEN
1879
1880 EGO_Item_Msg.Add_Error_Message (
1881 p_entity_index => 1
1882 ,p_application_short_name => 'INV'
1883 ,p_message_name => 'INV_DUPL_ORG_ITEM_SEG');
1884
1885 x_return_status := FND_API.G_RET_STS_ERROR;
1886 ELSE
1887 --Segments are same not updated
1888 x_return_status := FND_API.G_RET_STS_SUCCESS;
1889 END IF;
1890
1891 END Update_Item_Number;
1892
1893 ---------------------------------------------------------------------------
1894 PROCEDURE Seed_Item_Long_Desc_Attr_Group (
1895 p_inventory_item_id IN NUMBER
1896 ,p_organization_id IN NUMBER
1897 ,p_item_catalog_group_id IN NUMBER
1898 ,p_commit IN VARCHAR2 DEFAULT G_FALSE
1899 ,x_return_status OUT NOCOPY VARCHAR2
1900 ,x_errorcode OUT NOCOPY NUMBER
1901 ,x_msg_count OUT NOCOPY NUMBER
1902 ,x_msg_data OUT NOCOPY VARCHAR2)IS
1903
1904 BEGIN
1905
1906 EGO_Item_PVT.Seed_Item_Long_Desc_Attr_Group(
1907 p_inventory_item_id => p_inventory_item_id
1908 ,p_organization_id => p_organization_id
1909 ,p_item_catalog_group_id => p_item_catalog_group_id
1910 ,x_return_status => x_return_status
1911 ,x_errorcode => x_errorcode
1912 ,x_msg_count => x_msg_count
1913 ,x_msg_data => x_msg_data);
1914
1915 IF FND_API.To_Boolean(p_commit) THEN
1916 COMMIT WORK;
1917 END IF;
1918
1919 END Seed_Item_Long_Desc_Attr_Group;
1920
1921 ---------------------------------------------------------------------------
1922 PROCEDURE Seed_Item_Long_Desc_In_Bulk (
1923 p_set_process_id IN NUMBER
1924 ,p_commit IN VARCHAR2 DEFAULT G_FALSE
1925 ,x_return_status OUT NOCOPY VARCHAR2
1926 ,x_msg_data OUT NOCOPY VARCHAR2
1927 ) IS
1928
1929 BEGIN
1930
1931 EGO_Item_PVT.Seed_Item_Long_Desc_In_Bulk(
1932 p_set_process_id => p_set_process_id
1933 ,x_return_status => x_return_status
1934 ,x_msg_data => x_msg_data
1935 );
1936
1937 IF FND_API.To_Boolean(p_commit) THEN
1938 COMMIT WORK;
1939 END IF;
1940
1941 END Seed_Item_Long_Desc_In_Bulk;
1942
1943 ---------------------------------------------------------------------------
1944 PROCEDURE Process_User_Attrs_For_Item (
1945 p_api_version IN NUMBER
1946 ,p_inventory_item_id IN NUMBER
1947 ,p_organization_id IN NUMBER
1948 ,p_attributes_row_table IN EGO_USER_ATTR_ROW_TABLE
1949 ,p_attributes_data_table IN EGO_USER_ATTR_DATA_TABLE
1950 ,p_entity_id IN NUMBER DEFAULT NULL
1951 ,p_entity_index IN NUMBER DEFAULT NULL
1952 ,p_entity_code IN VARCHAR2 DEFAULT NULL
1953 ,p_debug_level IN NUMBER DEFAULT 0
1954 ,p_init_error_handler IN VARCHAR2 DEFAULT FND_API.G_TRUE
1955 ,p_write_to_concurrent_log IN VARCHAR2 DEFAULT FND_API.G_FALSE
1956 ,p_init_fnd_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
1957 ,p_log_errors IN VARCHAR2 DEFAULT FND_API.G_TRUE
1958 ,p_add_errors_to_fnd_stack IN VARCHAR2 DEFAULT FND_API.G_FALSE
1959 ,p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE
1960 ,x_failed_row_id_list OUT NOCOPY VARCHAR2
1961 ,x_return_status OUT NOCOPY VARCHAR2
1962 ,x_errorcode OUT NOCOPY NUMBER
1963 ,x_msg_count OUT NOCOPY NUMBER
1964 ,x_msg_data OUT NOCOPY VARCHAR2
1965 ) IS
1966
1967 BEGIN
1968
1969 EGO_ITEM_PVT.Process_User_Attrs_For_Item(
1970 p_api_version => p_api_version
1971 ,p_inventory_item_id => p_inventory_item_id
1972 ,p_organization_id => p_organization_id
1973 ,p_attributes_row_table => p_attributes_row_table
1974 ,p_attributes_data_table => p_attributes_data_table
1975 ,p_entity_id => p_entity_id
1976 ,p_entity_index => p_entity_index
1977 ,p_entity_code => p_entity_code
1978 ,p_debug_level => p_debug_level
1979 ,p_init_error_handler => p_init_error_handler
1980 ,p_write_to_concurrent_log => p_write_to_concurrent_log
1981 ,p_init_fnd_msg_list => p_init_fnd_msg_list
1982 ,p_log_errors => p_log_errors
1983 ,p_add_errors_to_fnd_stack => p_add_errors_to_fnd_stack
1984 ,p_commit => p_commit
1985 ,x_failed_row_id_list => x_failed_row_id_list
1986 ,x_return_status => x_return_status
1987 ,x_errorcode => x_errorcode
1988 ,x_msg_count => x_msg_count
1989 ,x_msg_data => x_msg_data
1990 );
1991
1992 END Process_User_Attrs_For_Item;
1993
1994 ---------------------------------------------------------------------------
1995 PROCEDURE Get_User_Attrs_For_Item (
1996 p_api_version IN NUMBER
1997 ,p_inventory_item_id IN NUMBER
1998 ,p_organization_id IN NUMBER
1999 ,p_attr_group_request_table IN EGO_ATTR_GROUP_REQUEST_TABLE
2000 ,p_entity_id IN NUMBER DEFAULT NULL
2001 ,p_entity_index IN NUMBER DEFAULT NULL
2002 ,p_entity_code IN VARCHAR2 DEFAULT NULL
2003 ,p_debug_level IN NUMBER DEFAULT 0
2004 ,p_init_error_handler IN VARCHAR2 DEFAULT FND_API.G_TRUE
2005 ,p_init_fnd_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
2006 ,p_add_errors_to_fnd_stack IN VARCHAR2 DEFAULT FND_API.G_FALSE
2007 ,p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE
2008 ,x_attributes_row_table OUT NOCOPY EGO_USER_ATTR_ROW_TABLE
2009 ,x_attributes_data_table OUT NOCOPY EGO_USER_ATTR_DATA_TABLE
2010 ,x_return_status OUT NOCOPY VARCHAR2
2011 ,x_errorcode OUT NOCOPY NUMBER
2012 ,x_msg_count OUT NOCOPY NUMBER
2013 ,x_msg_data OUT NOCOPY VARCHAR2
2014 ) IS
2015
2016 BEGIN
2017
2018 EGO_ITEM_PVT.Get_User_Attrs_For_Item(
2019 p_api_version => p_api_version
2020 ,p_inventory_item_id => p_inventory_item_id
2021 ,p_organization_id => p_organization_id
2022 ,p_attr_group_request_table => p_attr_group_request_table
2023 ,p_entity_id => p_entity_id
2024 ,p_entity_index => p_entity_index
2025 ,p_entity_code => p_entity_code
2026 ,p_debug_level => p_debug_level
2027 ,p_init_error_handler => p_init_error_handler
2028 ,p_init_fnd_msg_list => p_init_fnd_msg_list
2029 ,p_add_errors_to_fnd_stack => p_add_errors_to_fnd_stack
2030 ,p_commit => p_commit
2031 ,x_attributes_row_table => x_attributes_row_table
2032 ,x_attributes_data_table => x_attributes_data_table
2033 ,x_return_status => x_return_status
2034 ,x_errorcode => x_errorcode
2035 ,x_msg_count => x_msg_count
2036 ,x_msg_data => x_msg_data
2037 );
2038
2039 END Get_User_Attrs_For_Item;
2040
2041 ---------------------------------------------------------------------------
2042 PROCEDURE Update_Item_Approval_Status (
2043 p_inventory_item_id IN NUMBER
2044 ,p_organization_id IN NUMBER
2045 ,p_approval_status IN VARCHAR2
2046 ,p_nir_id IN NUMBER DEFAULT NULL
2047 ,p_commit IN VARCHAR2 DEFAULT G_FALSE)
2048 IS
2049 l_eng_item_flag VARCHAR2(10);
2050 l_msg_data VARCHAR2(2000);
2051 old_approval_status MTL_SYSTEM_ITEMS_B.APPROVAL_STATUS%TYPE;
2052 l_event_return_status VARCHAR2(1);
2053 BEGIN
2054 --get old Approval Status, needed for Raising event.
2055 SELECT APPROVAL_STATUS INTO old_approval_status
2056 FROM MTL_SYSTEM_ITEMS_B
2057 WHERE INVENTORY_ITEM_ID = p_inventory_item_id
2058 AND ORGANIZATION_ID = p_organization_id;
2059
2060 UPDATE MTL_SYSTEM_ITEMS_B
2061 SET APPROVAL_STATUS = p_approval_status
2062 WHERE INVENTORY_ITEM_ID = p_inventory_item_id
2063 AND ORGANIZATION_ID = p_organization_id
2064 RETURNING ENG_ITEM_FLAG INTO l_eng_item_flag;
2065
2066 --Bug: 6404939 Overrides 3808294, R12C onwards non-functional category
2067 -- assignments for unapproved items will be supported, so only
2068 -- functional category assignments will be deleted
2069 --Bug: 3808294 If its unapproved item delete default item-cat assignments
2070 IF p_approval_status <> 'A' THEN
2071 DELETE MTL_ITEM_CATEGORIES
2072 WHERE INVENTORY_ITEM_ID = p_inventory_item_id
2073 AND ORGANIZATION_ID = p_organization_id
2074 AND CATEGORY_SET_ID IN (SELECT CATEGORY_SET_ID
2075 FROM MTL_DEFAULT_CATEGORY_SETS);
2076 ELSIF p_approval_status = 'A' AND l_eng_item_flag = 'Y' THEN
2077 INVIDIT2.Insert_Categories
2078 (
2079 X_event => 'INSERT'
2080 , X_item_id => p_inventory_item_id
2081 , X_org_id => p_organization_id
2082 , X_master_org_id => p_organization_id
2083 , X_inventory_item_flag => 'N'
2084 , X_purchasing_item_flag => 'N'
2085 , X_internal_order_flag => 'N'
2086 , X_mrp_planning_code => NULL
2087 , X_serviceable_product_flag => 'N'
2088 , X_costing_enabled_flag => 'N'
2089 , X_eng_item_flag => l_eng_item_flag
2090 , X_customer_order_flag => 'N'
2091 , X_eam_item_type => NULL
2092 , X_contract_item_type_code => NULL
2093 , p_Folder_Category_Set_id => NULL
2094 , p_Folder_Item_Category_id => NULL
2095 , X_last_updated_by => G_USER_ID
2096 );
2097 END IF;
2098 --Bug: 3808294 Ends
2099 --Bug: 6404939 Ends
2100
2101 -- R12-C: Since Items can now have multiple NIRs, we will store the latest
2102 --NIR that cause the approval status change for an item in MSIB.
2103 IF NVL(p_approval_status,'0') <> NVL(OLD_APPROVAL_STATUS,'0')
2104 AND p_nir_id IS NOT NULL THEN
2105 UPDATE MTL_SYSTEM_ITEMS_B
2106 SET LAST_SUBMITTED_NIR_ID = p_nir_id
2107 WHERE INVENTORY_ITEM_ID = p_inventory_item_id
2108 AND ORGANIZATION_ID = p_organization_id;
2109 END IF;
2110 -- R12-C End
2111
2112 -- Start 4105841 : Business Event Enhancement
2113 IF NVL(p_approval_status,'0') <> NVL(OLD_APPROVAL_STATUS,'0')
2114 AND p_approval_status = 'A' THEN
2115 EGO_WF_WRAPPER_PVT.Raise_Item_Event
2116 (p_event_name => EGO_WF_WRAPPER_PVT.G_ITEM_APPROVED_EVENT
2117 ,p_Inventory_Item_Id => p_inventory_item_id
2118 ,p_Organization_Id => p_organization_id
2119 ,x_msg_data => l_msg_data
2120 ,x_return_status => l_event_return_status );
2121 END IF;
2122 -- End 4105841 : Business Event Enhancement
2123
2124 IF FND_API.To_Boolean(p_commit) THEN
2125 COMMIT WORK;
2126 END IF;
2127
2128 IF FND_API.To_Boolean(p_commit) THEN
2129 COMMIT WORK;
2130 END IF;
2131 END Update_Item_Approval_Status;
2132
2133 ---------------------------------------------------------------------------
2134 PROCEDURE initialize_item_info (p_inventory_item_id IN NUMBER
2135 ,p_organization_id IN NUMBER
2136 ,p_tab_index IN INTEGER
2137 ,x_item_table IN OUT NOCOPY EGO_ITEM_PUB.Item_Tbl_Type
2138 ,x_return_status OUT NOCOPY VARCHAR2
2139 ,x_msg_count OUT NOCOPY NUMBER) IS
2140
2141 CURSOR c_copy_item_info (cp_inventory_item_id IN NUMBER
2142 ,cp_organization_id IN NUMBER ) IS
2143 SELECT *
2144 FROM mtl_system_items_b
2145 WHERE inventory_item_id = cp_inventory_item_id
2146 AND organization_id = cp_organization_id;
2147
2148 l_orig_item_rec MTL_SYSTEM_ITEMS_B%ROWTYPE;
2149
2150 BEGIN
2151
2152 OPEN c_copy_item_info (cp_inventory_item_id => p_inventory_item_id
2153 ,cp_organization_id => p_organization_id);
2154 FETCH c_copy_item_info into l_orig_item_rec;
2155
2156 IF c_copy_item_info%NOTFOUND THEN
2157 EGO_Item_Msg.Add_Error_Message
2158 (p_entity_index => 1
2159 ,p_application_short_name => 'EGO'
2160 ,p_message_name => 'EGO_IPI_INVALID_ITEM'
2161 ,p_token_name1 => 'ITEM'
2162 ,p_token_value1 => p_inventory_item_id
2163 ,p_translate1 => FALSE
2164 ,p_token_name2 => 'ORGANIZATION'
2165 ,p_token_value2 => p_organization_id
2166 ,p_translate2 => FALSE
2167 ,p_token_name3 => NULL
2168 ,p_token_value3 => NULL
2169 ,p_translate3 => FALSE
2170 );
2171 x_return_status := G_RET_STS_ERROR;
2172 ELSE
2173 x_item_table(p_tab_index).summary_flag := l_orig_item_rec.SUMMARY_FLAG;
2174 x_item_table(p_tab_index).ALLOWED_UNITS_LOOKUP_CODE := l_orig_item_rec.allowed_units_lookup_code;
2175 x_item_table(p_tab_index).DUAL_UOM_CONTROL := l_orig_item_rec.DUAL_UOM_CONTROL;
2176 x_item_table(p_tab_index).SECONDARY_UOM_CODE := l_orig_item_rec.SECONDARY_UOM_CODE;
2177 x_item_table(p_tab_index).DUAL_UOM_DEVIATION_HIGH := l_orig_item_rec.DUAL_UOM_DEVIATION_HIGH;
2178 x_item_table(p_tab_index).DUAL_UOM_DEVIATION_LOW := l_orig_item_rec.DUAL_UOM_DEVIATION_LOW;
2179 x_item_table(p_tab_index).ITEM_TYPE := l_orig_item_rec.ITEM_TYPE;
2180 -- Inventory
2181 x_item_table(p_tab_index).INVENTORY_ITEM_FLAG := l_orig_item_rec.INVENTORY_ITEM_FLAG;
2182 x_item_table(p_tab_index).STOCK_ENABLED_FLAG := l_orig_item_rec.STOCK_ENABLED_FLAG;
2183 x_item_table(p_tab_index).MTL_TRANSACTIONS_ENABLED_FLAG := l_orig_item_rec.MTL_TRANSACTIONS_ENABLED_FLAG;
2184 x_item_table(p_tab_index).REVISION_QTY_CONTROL_CODE := l_orig_item_rec.REVISION_QTY_CONTROL_CODE;
2185 x_item_table(p_tab_index).LOT_CONTROL_CODE := l_orig_item_rec.LOT_CONTROL_CODE;
2186 x_item_table(p_tab_index).AUTO_LOT_ALPHA_PREFIX := l_orig_item_rec.AUTO_LOT_ALPHA_PREFIX;
2187 x_item_table(p_tab_index).START_AUTO_LOT_NUMBER := l_orig_item_rec.START_AUTO_LOT_NUMBER;
2188 x_item_table(p_tab_index).SERIAL_NUMBER_CONTROL_CODE := l_orig_item_rec.SERIAL_NUMBER_CONTROL_CODE;
2189 x_item_table(p_tab_index).AUTO_SERIAL_ALPHA_PREFIX := l_orig_item_rec.AUTO_SERIAL_ALPHA_PREFIX;
2190 x_item_table(p_tab_index).START_AUTO_SERIAL_NUMBER := l_orig_item_rec.START_AUTO_SERIAL_NUMBER;
2191 x_item_table(p_tab_index).SHELF_LIFE_CODE := l_orig_item_rec.SHELF_LIFE_CODE;
2192 x_item_table(p_tab_index).SHELF_LIFE_DAYS := l_orig_item_rec.SHELF_LIFE_DAYS;
2193 x_item_table(p_tab_index).RESTRICT_SUBINVENTORIES_CODE := l_orig_item_rec.RESTRICT_SUBINVENTORIES_CODE;
2194 x_item_table(p_tab_index).LOCATION_CONTROL_CODE := l_orig_item_rec.LOCATION_CONTROL_CODE;
2195 x_item_table(p_tab_index).RESTRICT_LOCATORS_CODE := l_orig_item_rec.RESTRICT_LOCATORS_CODE;
2196 x_item_table(p_tab_index).RESERVABLE_TYPE := l_orig_item_rec.RESERVABLE_TYPE;
2197 x_item_table(p_tab_index).CYCLE_COUNT_ENABLED_FLAG := l_orig_item_rec.CYCLE_COUNT_ENABLED_FLAG;
2198 x_item_table(p_tab_index).NEGATIVE_MEASUREMENT_ERROR := l_orig_item_rec.NEGATIVE_MEASUREMENT_ERROR;
2199 x_item_table(p_tab_index).POSITIVE_MEASUREMENT_ERROR := l_orig_item_rec.POSITIVE_MEASUREMENT_ERROR;
2200 x_item_table(p_tab_index).CHECK_SHORTAGES_FLAG := l_orig_item_rec.CHECK_SHORTAGES_FLAG;
2201 x_item_table(p_tab_index).LOT_STATUS_ENABLED := l_orig_item_rec.LOT_STATUS_ENABLED;
2202 x_item_table(p_tab_index).DEFAULT_LOT_STATUS_ID := l_orig_item_rec.DEFAULT_LOT_STATUS_ID;
2203 x_item_table(p_tab_index).SERIAL_STATUS_ENABLED := l_orig_item_rec.SERIAL_STATUS_ENABLED;
2204 x_item_table(p_tab_index).DEFAULT_SERIAL_STATUS_ID := l_orig_item_rec.DEFAULT_SERIAL_STATUS_ID;
2205 x_item_table(p_tab_index).LOT_SPLIT_ENABLED := l_orig_item_rec.LOT_SPLIT_ENABLED;
2206 x_item_table(p_tab_index).LOT_MERGE_ENABLED := l_orig_item_rec.LOT_MERGE_ENABLED;
2207 x_item_table(p_tab_index).LOT_TRANSLATE_ENABLED := l_orig_item_rec.LOT_TRANSLATE_ENABLED;
2208 x_item_table(p_tab_index).BULK_PICKED_FLAG := l_orig_item_rec.BULK_PICKED_FLAG;
2209 x_item_table(p_tab_index).LOT_SUBSTITUTION_ENABLED := l_orig_item_rec.LOT_SUBSTITUTION_ENABLED;
2210 -- Bills of Material
2211 x_item_table(p_tab_index).BOM_ITEM_TYPE := l_orig_item_rec.BOM_ITEM_TYPE;
2212 x_item_table(p_tab_index).BOM_ENABLED_FLAG := l_orig_item_rec.BOM_ENABLED_FLAG;
2213 x_item_table(p_tab_index).BASE_ITEM_ID := l_orig_item_rec.BASE_ITEM_ID;
2214 x_item_table(p_tab_index).ENG_ITEM_FLAG := l_orig_item_rec.ENG_ITEM_FLAG;
2215 x_item_table(p_tab_index).ENGINEERING_ITEM_ID := l_orig_item_rec.ENGINEERING_ITEM_ID;
2216 x_item_table(p_tab_index).ENGINEERING_ECN_CODE := l_orig_item_rec.ENGINEERING_ECN_CODE;
2217 x_item_table(p_tab_index).ENGINEERING_DATE := l_orig_item_rec.ENGINEERING_DATE;
2218 x_item_table(p_tab_index).EFFECTIVITY_CONTROL := l_orig_item_rec.EFFECTIVITY_CONTROL;
2219 x_item_table(p_tab_index).Product_Family_Item_Id := l_orig_item_rec.Product_Family_Item_Id;
2220 x_item_table(p_tab_index).auto_created_config_flag := l_orig_item_rec.auto_created_config_flag;--3911562
2221 -- Costing
2222 x_item_table(p_tab_index).COSTING_ENABLED_FLAG := l_orig_item_rec.COSTING_ENABLED_FLAG;
2223 x_item_table(p_tab_index).INVENTORY_ASSET_FLAG := l_orig_item_rec.INVENTORY_ASSET_FLAG;
2224 x_item_table(p_tab_index).COST_OF_SALES_ACCOUNT := l_orig_item_rec.COST_OF_SALES_ACCOUNT;
2225 x_item_table(p_tab_index).DEFAULT_INCLUDE_IN_ROLLUP_FLAG := l_orig_item_rec.DEFAULT_INCLUDE_IN_ROLLUP_FLAG;
2226 x_item_table(p_tab_index).STD_LOT_SIZE := l_orig_item_rec.STD_LOT_SIZE;
2227 x_item_table(p_tab_index).CONFIG_MODEL_TYPE := l_orig_item_rec.CONFIG_MODEL_TYPE;
2228 -- Enterprise Asset Management
2229 x_item_table(p_tab_index).EAM_ITEM_TYPE := l_orig_item_rec.EAM_ITEM_TYPE;
2230 x_item_table(p_tab_index).EAM_ACTIVITY_TYPE_CODE := l_orig_item_rec.EAM_ACTIVITY_TYPE_CODE;
2231 x_item_table(p_tab_index).EAM_ACTIVITY_CAUSE_CODE := l_orig_item_rec.EAM_ACTIVITY_CAUSE_CODE;
2232 x_item_table(p_tab_index).EAM_ACT_SHUTDOWN_STATUS := l_orig_item_rec.EAM_ACT_SHUTDOWN_STATUS;
2233 x_item_table(p_tab_index).EAM_ACT_NOTIFICATION_FLAG := l_orig_item_rec.EAM_ACT_NOTIFICATION_FLAG;
2234 x_item_table(p_tab_index).EAM_ACTIVITY_SOURCE_CODE := l_orig_item_rec.EAM_ACTIVITY_SOURCE_CODE;
2235 -- Purchasing
2236 x_item_table(p_tab_index).PURCHASING_ITEM_FLAG := l_orig_item_rec.PURCHASING_ITEM_FLAG;
2237 x_item_table(p_tab_index).PURCHASING_ENABLED_FLAG := l_orig_item_rec.PURCHASING_ENABLED_FLAG;
2238 x_item_table(p_tab_index).BUYER_ID := l_orig_item_rec.BUYER_ID;
2239 x_item_table(p_tab_index).MUST_USE_APPROVED_VENDOR_FLAG := l_orig_item_rec.MUST_USE_APPROVED_VENDOR_FLAG;
2240 x_item_table(p_tab_index).PURCHASING_TAX_CODE := l_orig_item_rec.PURCHASING_TAX_CODE;
2241 x_item_table(p_tab_index).TAXABLE_FLAG := l_orig_item_rec.TAXABLE_FLAG;
2242 x_item_table(p_tab_index).RECEIVE_CLOSE_TOLERANCE := l_orig_item_rec.RECEIVE_CLOSE_TOLERANCE;
2243 x_item_table(p_tab_index).ALLOW_ITEM_DESC_UPDATE_FLAG := l_orig_item_rec.ALLOW_ITEM_DESC_UPDATE_FLAG;
2244 x_item_table(p_tab_index).INSPECTION_REQUIRED_FLAG := l_orig_item_rec.INSPECTION_REQUIRED_FLAG;
2245 x_item_table(p_tab_index).RECEIPT_REQUIRED_FLAG := l_orig_item_rec.RECEIPT_REQUIRED_FLAG;
2246 x_item_table(p_tab_index).MARKET_PRICE := l_orig_item_rec.MARKET_PRICE;
2247 x_item_table(p_tab_index).UN_NUMBER_ID := l_orig_item_rec.UN_NUMBER_ID;
2248 x_item_table(p_tab_index).HAZARD_CLASS_ID := l_orig_item_rec.HAZARD_CLASS_ID;
2249 x_item_table(p_tab_index).RFQ_REQUIRED_FLAG := l_orig_item_rec.RFQ_REQUIRED_FLAG;
2250 x_item_table(p_tab_index).LIST_PRICE_PER_UNIT := l_orig_item_rec.LIST_PRICE_PER_UNIT;
2251 x_item_table(p_tab_index).PRICE_TOLERANCE_PERCENT := l_orig_item_rec.PRICE_TOLERANCE_PERCENT;
2252 x_item_table(p_tab_index).ASSET_CATEGORY_ID := l_orig_item_rec.ASSET_CATEGORY_ID;
2253 x_item_table(p_tab_index).ROUNDING_FACTOR := l_orig_item_rec.ROUNDING_FACTOR;
2254 x_item_table(p_tab_index).UNIT_OF_ISSUE := l_orig_item_rec.UNIT_OF_ISSUE;
2255 x_item_table(p_tab_index).OUTSIDE_OPERATION_FLAG := l_orig_item_rec.OUTSIDE_OPERATION_FLAG;
2256 x_item_table(p_tab_index).OUTSIDE_OPERATION_UOM_TYPE := l_orig_item_rec.OUTSIDE_OPERATION_UOM_TYPE;
2257 x_item_table(p_tab_index).INVOICE_CLOSE_TOLERANCE := l_orig_item_rec.INVOICE_CLOSE_TOLERANCE;
2258 x_item_table(p_tab_index).ENCUMBRANCE_ACCOUNT := l_orig_item_rec.ENCUMBRANCE_ACCOUNT;
2259 x_item_table(p_tab_index).EXPENSE_ACCOUNT := l_orig_item_rec.EXPENSE_ACCOUNT;
2260 x_item_table(p_tab_index).QTY_RCV_EXCEPTION_CODE := l_orig_item_rec.QTY_RCV_EXCEPTION_CODE;
2261 x_item_table(p_tab_index).RECEIVING_ROUTING_ID := l_orig_item_rec.RECEIVING_ROUTING_ID;
2262 x_item_table(p_tab_index).QTY_RCV_TOLERANCE := l_orig_item_rec.QTY_RCV_TOLERANCE;
2263 x_item_table(p_tab_index).ENFORCE_SHIP_TO_LOCATION_CODE := l_orig_item_rec.ENFORCE_SHIP_TO_LOCATION_CODE;
2264 x_item_table(p_tab_index).ALLOW_SUBSTITUTE_RECEIPTS_FLAG := l_orig_item_rec.ALLOW_SUBSTITUTE_RECEIPTS_FLAG;
2265 x_item_table(p_tab_index).ALLOW_UNORDERED_RECEIPTS_FLAG := l_orig_item_rec.ALLOW_UNORDERED_RECEIPTS_FLAG;
2266 x_item_table(p_tab_index).ALLOW_EXPRESS_DELIVERY_FLAG := l_orig_item_rec.ALLOW_EXPRESS_DELIVERY_FLAG;
2267 x_item_table(p_tab_index).DAYS_EARLY_RECEIPT_ALLOWED := l_orig_item_rec.DAYS_EARLY_RECEIPT_ALLOWED;
2268 x_item_table(p_tab_index).DAYS_LATE_RECEIPT_ALLOWED := l_orig_item_rec.DAYS_LATE_RECEIPT_ALLOWED;
2269 x_item_table(p_tab_index).RECEIPT_DAYS_EXCEPTION_CODE := l_orig_item_rec.RECEIPT_DAYS_EXCEPTION_CODE;
2270 -- Physical
2271 x_item_table(p_tab_index).WEIGHT_UOM_CODE := l_orig_item_rec.WEIGHT_UOM_CODE;
2272 x_item_table(p_tab_index).UNIT_WEIGHT := l_orig_item_rec.UNIT_WEIGHT;
2273 x_item_table(p_tab_index).VOLUME_UOM_CODE := l_orig_item_rec.VOLUME_UOM_CODE;
2274 x_item_table(p_tab_index).UNIT_VOLUME := l_orig_item_rec.UNIT_VOLUME;
2275 x_item_table(p_tab_index).CONTAINER_ITEM_FLAG := l_orig_item_rec.CONTAINER_ITEM_FLAG;
2276 x_item_table(p_tab_index).VEHICLE_ITEM_FLAG := l_orig_item_rec.VEHICLE_ITEM_FLAG;
2277 x_item_table(p_tab_index).MAXIMUM_LOAD_WEIGHT := l_orig_item_rec.MAXIMUM_LOAD_WEIGHT;
2278 x_item_table(p_tab_index).MINIMUM_FILL_PERCENT := l_orig_item_rec.MINIMUM_FILL_PERCENT;
2279 x_item_table(p_tab_index).INTERNAL_VOLUME := l_orig_item_rec.INTERNAL_VOLUME;
2280 x_item_table(p_tab_index).CONTAINER_TYPE_CODE := l_orig_item_rec.CONTAINER_TYPE_CODE;
2281 x_item_table(p_tab_index).COLLATERAL_FLAG := l_orig_item_rec.COLLATERAL_FLAG;
2282 x_item_table(p_tab_index).EVENT_FLAG := l_orig_item_rec.EVENT_FLAG;
2283 x_item_table(p_tab_index).EQUIPMENT_TYPE := l_orig_item_rec.EQUIPMENT_TYPE;
2284 x_item_table(p_tab_index).ELECTRONIC_FLAG := l_orig_item_rec.ELECTRONIC_FLAG;
2285 x_item_table(p_tab_index).DOWNLOADABLE_FLAG := l_orig_item_rec.DOWNLOADABLE_FLAG;
2286 x_item_table(p_tab_index).INDIVISIBLE_FLAG := l_orig_item_rec.INDIVISIBLE_FLAG;
2287 x_item_table(p_tab_index).DIMENSION_UOM_CODE := l_orig_item_rec.DIMENSION_UOM_CODE;
2288 x_item_table(p_tab_index).UNIT_LENGTH := l_orig_item_rec.UNIT_LENGTH;
2289 x_item_table(p_tab_index).UNIT_WIDTH := l_orig_item_rec.UNIT_WIDTH;
2290 x_item_table(p_tab_index).UNIT_HEIGHT := l_orig_item_rec.UNIT_HEIGHT;
2291 --Planning
2292 x_item_table(p_tab_index).INVENTORY_PLANNING_CODE := l_orig_item_rec.INVENTORY_PLANNING_CODE;
2293 x_item_table(p_tab_index).PLANNER_CODE := l_orig_item_rec.PLANNER_CODE;
2294 x_item_table(p_tab_index).PLANNING_MAKE_BUY_CODE := l_orig_item_rec.PLANNING_MAKE_BUY_CODE;
2295 x_item_table(p_tab_index).MIN_MINMAX_QUANTITY := l_orig_item_rec.MIN_MINMAX_QUANTITY;
2296 x_item_table(p_tab_index).MAX_MINMAX_QUANTITY := l_orig_item_rec.MAX_MINMAX_QUANTITY;
2297 x_item_table(p_tab_index).SAFETY_STOCK_BUCKET_DAYS := l_orig_item_rec.SAFETY_STOCK_BUCKET_DAYS;
2298 x_item_table(p_tab_index).MRP_SAFETY_STOCK_PERCENT := l_orig_item_rec.MRP_SAFETY_STOCK_PERCENT;
2299 x_item_table(p_tab_index).MRP_SAFETY_STOCK_CODE := l_orig_item_rec.MRP_SAFETY_STOCK_CODE;
2300 x_item_table(p_tab_index).FIXED_ORDER_QUANTITY := l_orig_item_rec.FIXED_ORDER_QUANTITY;
2301 x_item_table(p_tab_index).FIXED_DAYS_SUPPLY := l_orig_item_rec.FIXED_DAYS_SUPPLY;
2302 x_item_table(p_tab_index).MINIMUM_ORDER_QUANTITY := l_orig_item_rec.MINIMUM_ORDER_QUANTITY;
2303 x_item_table(p_tab_index).MAXIMUM_ORDER_QUANTITY := l_orig_item_rec.MAXIMUM_ORDER_QUANTITY;
2304 x_item_table(p_tab_index).FIXED_LOT_MULTIPLIER := l_orig_item_rec.FIXED_LOT_MULTIPLIER;
2305 x_item_table(p_tab_index).SOURCE_TYPE := l_orig_item_rec.SOURCE_TYPE;
2306 x_item_table(p_tab_index).SOURCE_ORGANIZATION_ID := l_orig_item_rec.SOURCE_ORGANIZATION_ID;
2307 x_item_table(p_tab_index).SOURCE_SUBINVENTORY := l_orig_item_rec.SOURCE_SUBINVENTORY;
2308 x_item_table(p_tab_index).MRP_PLANNING_CODE := l_orig_item_rec.MRP_PLANNING_CODE;
2309 x_item_table(p_tab_index).ATO_FORECAST_CONTROL := l_orig_item_rec.ATO_FORECAST_CONTROL;
2310 x_item_table(p_tab_index).PLANNING_EXCEPTION_SET := l_orig_item_rec.PLANNING_EXCEPTION_SET;
2311 x_item_table(p_tab_index).SHRINKAGE_RATE := l_orig_item_rec.SHRINKAGE_RATE;
2312 x_item_table(p_tab_index).END_ASSEMBLY_PEGGING_FLAG := l_orig_item_rec.END_ASSEMBLY_PEGGING_FLAG;
2313 x_item_table(p_tab_index).ROUNDING_CONTROL_TYPE := l_orig_item_rec.ROUNDING_CONTROL_TYPE;
2314 x_item_table(p_tab_index).PLANNED_INV_POINT_FLAG := l_orig_item_rec.PLANNED_INV_POINT_FLAG;
2315 x_item_table(p_tab_index).CREATE_SUPPLY_FLAG := l_orig_item_rec.CREATE_SUPPLY_FLAG;
2316 x_item_table(p_tab_index).ACCEPTABLE_EARLY_DAYS := l_orig_item_rec.ACCEPTABLE_EARLY_DAYS;
2317 x_item_table(p_tab_index).MRP_CALCULATE_ATP_FLAG := l_orig_item_rec.MRP_CALCULATE_ATP_FLAG;
2318 x_item_table(p_tab_index).AUTO_REDUCE_MPS := l_orig_item_rec.AUTO_REDUCE_MPS;
2319 x_item_table(p_tab_index).REPETITIVE_PLANNING_FLAG := l_orig_item_rec.REPETITIVE_PLANNING_FLAG;
2320 x_item_table(p_tab_index).OVERRUN_PERCENTAGE := l_orig_item_rec.OVERRUN_PERCENTAGE;
2321 x_item_table(p_tab_index).ACCEPTABLE_RATE_DECREASE := l_orig_item_rec.ACCEPTABLE_RATE_DECREASE;
2322 x_item_table(p_tab_index).ACCEPTABLE_RATE_INCREASE := l_orig_item_rec.ACCEPTABLE_RATE_INCREASE;
2323 x_item_table(p_tab_index).PLANNING_TIME_FENCE_CODE := l_orig_item_rec.PLANNING_TIME_FENCE_CODE;
2324 x_item_table(p_tab_index).PLANNING_TIME_FENCE_DAYS := l_orig_item_rec.PLANNING_TIME_FENCE_DAYS;
2325 x_item_table(p_tab_index).DEMAND_TIME_FENCE_CODE := l_orig_item_rec.DEMAND_TIME_FENCE_CODE;
2326 x_item_table(p_tab_index).DEMAND_TIME_FENCE_DAYS := l_orig_item_rec.DEMAND_TIME_FENCE_DAYS;
2327 x_item_table(p_tab_index).RELEASE_TIME_FENCE_CODE := l_orig_item_rec.RELEASE_TIME_FENCE_CODE;
2328 x_item_table(p_tab_index).RELEASE_TIME_FENCE_DAYS := l_orig_item_rec.RELEASE_TIME_FENCE_DAYS;
2329 x_item_table(p_tab_index).SUBSTITUTION_WINDOW_CODE := l_orig_item_rec.SUBSTITUTION_WINDOW_CODE;
2330 x_item_table(p_tab_index).SUBSTITUTION_WINDOW_DAYS := l_orig_item_rec.SUBSTITUTION_WINDOW_DAYS;
2331 -- Lead Times
2332 x_item_table(p_tab_index).PREPROCESSING_LEAD_TIME := l_orig_item_rec.PREPROCESSING_LEAD_TIME;
2333 x_item_table(p_tab_index).FULL_LEAD_TIME := l_orig_item_rec.FULL_LEAD_TIME;
2334 x_item_table(p_tab_index).POSTPROCESSING_LEAD_TIME := l_orig_item_rec.POSTPROCESSING_LEAD_TIME;
2335 x_item_table(p_tab_index).FIXED_LEAD_TIME := l_orig_item_rec.FIXED_LEAD_TIME;
2336 x_item_table(p_tab_index).VARIABLE_LEAD_TIME := l_orig_item_rec.VARIABLE_LEAD_TIME;
2337 x_item_table(p_tab_index).CUM_MANUFACTURING_LEAD_TIME := l_orig_item_rec.CUM_MANUFACTURING_LEAD_TIME;
2338 x_item_table(p_tab_index).CUMULATIVE_TOTAL_LEAD_TIME := l_orig_item_rec.CUMULATIVE_TOTAL_LEAD_TIME;
2339 x_item_table(p_tab_index).LEAD_TIME_LOT_SIZE := l_orig_item_rec.LEAD_TIME_LOT_SIZE;
2340 -- WIP
2341 x_item_table(p_tab_index).BUILD_IN_WIP_FLAG := l_orig_item_rec.BUILD_IN_WIP_FLAG;
2342 x_item_table(p_tab_index).WIP_SUPPLY_TYPE := l_orig_item_rec.WIP_SUPPLY_TYPE;
2343 x_item_table(p_tab_index).WIP_SUPPLY_SUBINVENTORY := l_orig_item_rec.WIP_SUPPLY_SUBINVENTORY;
2344 x_item_table(p_tab_index).WIP_SUPPLY_LOCATOR_ID := l_orig_item_rec.WIP_SUPPLY_LOCATOR_ID;
2345 x_item_table(p_tab_index).OVERCOMPLETION_TOLERANCE_TYPE := l_orig_item_rec.OVERCOMPLETION_TOLERANCE_TYPE;
2346 x_item_table(p_tab_index).OVERCOMPLETION_TOLERANCE_VALUE := l_orig_item_rec.OVERCOMPLETION_TOLERANCE_VALUE;
2347 x_item_table(p_tab_index).INVENTORY_CARRY_PENALTY := l_orig_item_rec.INVENTORY_CARRY_PENALTY;
2348 x_item_table(p_tab_index).OPERATION_SLACK_PENALTY := l_orig_item_rec.OPERATION_SLACK_PENALTY;
2349 -- Order Management
2350 x_item_table(p_tab_index).CUSTOMER_ORDER_FLAG := l_orig_item_rec.CUSTOMER_ORDER_FLAG;
2351 x_item_table(p_tab_index).CUSTOMER_ORDER_ENABLED_FLAG := l_orig_item_rec.CUSTOMER_ORDER_ENABLED_FLAG;
2352 x_item_table(p_tab_index).INTERNAL_ORDER_FLAG := l_orig_item_rec.INTERNAL_ORDER_FLAG;
2353 x_item_table(p_tab_index).INTERNAL_ORDER_ENABLED_FLAG := l_orig_item_rec.INTERNAL_ORDER_ENABLED_FLAG;
2354 x_item_table(p_tab_index).SHIPPABLE_ITEM_FLAG := l_orig_item_rec.SHIPPABLE_ITEM_FLAG;
2355 x_item_table(p_tab_index).SO_TRANSACTIONS_FLAG := l_orig_item_rec.SO_TRANSACTIONS_FLAG;
2356 x_item_table(p_tab_index).PICKING_RULE_ID := l_orig_item_rec.PICKING_RULE_ID;
2357 x_item_table(p_tab_index).PICK_COMPONENTS_FLAG := l_orig_item_rec.PICK_COMPONENTS_FLAG;
2358 x_item_table(p_tab_index).REPLENISH_TO_ORDER_FLAG := l_orig_item_rec.REPLENISH_TO_ORDER_FLAG;
2359 x_item_table(p_tab_index).ATP_FLAG := l_orig_item_rec.ATP_FLAG;
2360 x_item_table(p_tab_index).ATP_COMPONENTS_FLAG := l_orig_item_rec.ATP_COMPONENTS_FLAG;
2361 x_item_table(p_tab_index).ATP_RULE_ID := l_orig_item_rec.ATP_RULE_ID;
2362 x_item_table(p_tab_index).SHIP_MODEL_COMPLETE_FLAG := l_orig_item_rec.SHIP_MODEL_COMPLETE_FLAG;
2363 x_item_table(p_tab_index).DEFAULT_SHIPPING_ORG := l_orig_item_rec.DEFAULT_SHIPPING_ORG;
2364 x_item_table(p_tab_index).DEFAULT_SO_SOURCE_TYPE := l_orig_item_rec.DEFAULT_SO_SOURCE_TYPE;
2365 x_item_table(p_tab_index).RETURNABLE_FLAG := l_orig_item_rec.RETURNABLE_FLAG;
2366 x_item_table(p_tab_index).RETURN_INSPECTION_REQUIREMENT := l_orig_item_rec.RETURN_INSPECTION_REQUIREMENT;
2367 x_item_table(p_tab_index).OVER_SHIPMENT_TOLERANCE := l_orig_item_rec.OVER_SHIPMENT_TOLERANCE;
2368 x_item_table(p_tab_index).UNDER_SHIPMENT_TOLERANCE := l_orig_item_rec.UNDER_SHIPMENT_TOLERANCE;
2369 x_item_table(p_tab_index).OVER_RETURN_TOLERANCE := l_orig_item_rec.OVER_RETURN_TOLERANCE;
2370 x_item_table(p_tab_index).UNDER_RETURN_TOLERANCE := l_orig_item_rec.UNDER_RETURN_TOLERANCE;
2371 x_item_table(p_tab_index).FINANCING_ALLOWED_FLAG := l_orig_item_rec.FINANCING_ALLOWED_FLAG;
2372 x_item_table(p_tab_index).VOL_DISCOUNT_EXEMPT_FLAG := l_orig_item_rec.VOL_DISCOUNT_EXEMPT_FLAG;
2373 x_item_table(p_tab_index).COUPON_EXEMPT_FLAG := l_orig_item_rec.COUPON_EXEMPT_FLAG;
2374 x_item_table(p_tab_index).INVOICEABLE_ITEM_FLAG := l_orig_item_rec.INVOICEABLE_ITEM_FLAG;
2375 x_item_table(p_tab_index).INVOICE_ENABLED_FLAG := l_orig_item_rec.INVOICE_ENABLED_FLAG;
2376 x_item_table(p_tab_index).ACCOUNTING_RULE_ID := l_orig_item_rec.ACCOUNTING_RULE_ID;
2377 x_item_table(p_tab_index).INVOICING_RULE_ID := l_orig_item_rec.INVOICING_RULE_ID;
2378 x_item_table(p_tab_index).TAX_CODE := l_orig_item_rec.TAX_CODE;
2379 x_item_table(p_tab_index).SALES_ACCOUNT := l_orig_item_rec.SALES_ACCOUNT;
2380 x_item_table(p_tab_index).PAYMENT_TERMS_ID := l_orig_item_rec.PAYMENT_TERMS_ID;
2381 -- Service
2382 x_item_table(p_tab_index).CONTRACT_ITEM_TYPE_CODE := l_orig_item_rec.CONTRACT_ITEM_TYPE_CODE;
2383 x_item_table(p_tab_index).SERVICE_DURATION_PERIOD_CODE := l_orig_item_rec.SERVICE_DURATION_PERIOD_CODE;
2384 x_item_table(p_tab_index).SERVICE_DURATION := l_orig_item_rec.SERVICE_DURATION;
2385 x_item_table(p_tab_index).COVERAGE_SCHEDULE_ID := l_orig_item_rec.COVERAGE_SCHEDULE_ID;
2386 x_item_table(p_tab_index).SUBSCRIPTION_DEPEND_FLAG := l_orig_item_rec.SUBSCRIPTION_DEPEND_FLAG;
2387 x_item_table(p_tab_index).SERV_IMPORTANCE_LEVEL := l_orig_item_rec.SERV_IMPORTANCE_LEVEL;
2388 x_item_table(p_tab_index).SERV_REQ_ENABLED_CODE := l_orig_item_rec.SERV_REQ_ENABLED_CODE;
2389 x_item_table(p_tab_index).COMMS_ACTIVATION_REQD_FLAG := l_orig_item_rec.COMMS_ACTIVATION_REQD_FLAG;
2390 x_item_table(p_tab_index).SERVICEABLE_PRODUCT_FLAG := l_orig_item_rec.SERVICEABLE_PRODUCT_FLAG;
2391 x_item_table(p_tab_index).MATERIAL_BILLABLE_FLAG := l_orig_item_rec.MATERIAL_BILLABLE_FLAG;
2392 x_item_table(p_tab_index).SERV_BILLING_ENABLED_FLAG := l_orig_item_rec.SERV_BILLING_ENABLED_FLAG;
2393 x_item_table(p_tab_index).DEFECT_TRACKING_ON_FLAG := l_orig_item_rec.DEFECT_TRACKING_ON_FLAG;
2394 x_item_table(p_tab_index).RECOVERED_PART_DISP_CODE := l_orig_item_rec.RECOVERED_PART_DISP_CODE;
2395 x_item_table(p_tab_index).COMMS_NL_TRACKABLE_FLAG := l_orig_item_rec.COMMS_NL_TRACKABLE_FLAG;
2396 x_item_table(p_tab_index).ASSET_CREATION_CODE := l_orig_item_rec.ASSET_CREATION_CODE;
2397 x_item_table(p_tab_index).IB_ITEM_INSTANCE_CLASS := l_orig_item_rec.IB_ITEM_INSTANCE_CLASS;
2398 x_item_table(p_tab_index).SERVICE_STARTING_DELAY := l_orig_item_rec.SERVICE_STARTING_DELAY;
2399 -- Web Option
2400 x_item_table(p_tab_index).WEB_STATUS := l_orig_item_rec.WEB_STATUS;
2401 x_item_table(p_tab_index).ORDERABLE_ON_WEB_FLAG := l_orig_item_rec.ORDERABLE_ON_WEB_FLAG;
2402 x_item_table(p_tab_index).BACK_ORDERABLE_FLAG := l_orig_item_rec.BACK_ORDERABLE_FLAG;
2403 x_item_table(p_tab_index).MINIMUM_LICENSE_QUANTITY := l_orig_item_rec.MINIMUM_LICENSE_QUANTITY;
2404 --Start: 26 new attributes
2405 x_item_table(p_tab_index).tracking_quantity_ind := l_orig_item_rec.TRACKING_QUANTITY_IND;
2406 x_item_table(p_tab_index).ont_pricing_qty_source := l_orig_item_rec.ONT_PRICING_QTY_SOURCE;
2407 x_item_table(p_tab_index).secondary_default_ind := l_orig_item_rec.SECONDARY_DEFAULT_IND;
2408 x_item_table(p_tab_index).option_specific_sourced := l_orig_item_rec.OPTION_SPECIFIC_SOURCED;
2409 x_item_table(p_tab_index).vmi_minimum_units := l_orig_item_rec.VMI_MINIMUM_UNITS;
2410 x_item_table(p_tab_index).vmi_minimum_days := l_orig_item_rec.VMI_MINIMUM_DAYS;
2411 x_item_table(p_tab_index).vmi_maximum_units := l_orig_item_rec.VMI_MAXIMUM_UNITS;
2412 x_item_table(p_tab_index).vmi_maximum_days := l_orig_item_rec.VMI_MAXIMUM_DAYS;
2413 x_item_table(p_tab_index).vmi_fixed_order_quantity := l_orig_item_rec.VMI_FIXED_ORDER_QUANTITY;
2414 x_item_table(p_tab_index).so_authorization_flag := l_orig_item_rec.SO_AUTHORIZATION_FLAG;
2415 x_item_table(p_tab_index).consigned_flag := l_orig_item_rec.CONSIGNED_FLAG;
2416 x_item_table(p_tab_index).asn_autoexpire_flag := l_orig_item_rec.ASN_AUTOEXPIRE_FLAG;
2417 x_item_table(p_tab_index).vmi_forecast_type := l_orig_item_rec.VMI_FORECAST_TYPE;
2418 x_item_table(p_tab_index).forecast_horizon := l_orig_item_rec.FORECAST_HORIZON;
2419 x_item_table(p_tab_index).exclude_from_budget_flag := l_orig_item_rec.EXCLUDE_FROM_BUDGET_FLAG;
2420 x_item_table(p_tab_index).days_tgt_inv_supply := l_orig_item_rec.DAYS_TGT_INV_SUPPLY;
2421 x_item_table(p_tab_index).days_tgt_inv_window := l_orig_item_rec.DAYS_TGT_INV_WINDOW;
2422 x_item_table(p_tab_index).days_max_inv_supply := l_orig_item_rec.DAYS_MAX_INV_SUPPLY;
2423 x_item_table(p_tab_index).days_max_inv_window := l_orig_item_rec.DAYS_MAX_INV_WINDOW;
2424 x_item_table(p_tab_index).drp_planned_flag := l_orig_item_rec.DRP_PLANNED_FLAG;
2425 x_item_table(p_tab_index).critical_component_flag := l_orig_item_rec.CRITICAL_COMPONENT_FLAG;
2426 x_item_table(p_tab_index).continous_transfer := l_orig_item_rec.CONTINOUS_TRANSFER;
2427 x_item_table(p_tab_index).convergence := l_orig_item_rec.CONVERGENCE;
2428 x_item_table(p_tab_index).divergence := l_orig_item_rec.DIVERGENCE;
2429 x_item_table(p_tab_index).config_orgs := l_orig_item_rec.CONFIG_ORGS;
2430 x_item_table(p_tab_index).config_match := l_orig_item_rec.CONFIG_MATCH;
2431 --End: 26 new attributes
2432 -- Descriptive flex
2433 x_item_table(p_tab_index).Attribute_Category := l_orig_item_rec.Attribute_Category;
2434 x_item_table(p_tab_index).Attribute1 := l_orig_item_rec.Attribute1;
2435 x_item_table(p_tab_index).Attribute2 := l_orig_item_rec.Attribute2;
2436 x_item_table(p_tab_index).Attribute3 := l_orig_item_rec.Attribute3;
2437 x_item_table(p_tab_index).Attribute4 := l_orig_item_rec.Attribute4;
2438 x_item_table(p_tab_index).Attribute5 := l_orig_item_rec.Attribute5;
2439 x_item_table(p_tab_index).Attribute6 := l_orig_item_rec.Attribute6;
2440 x_item_table(p_tab_index).Attribute7 := l_orig_item_rec.Attribute7;
2441 x_item_table(p_tab_index).Attribute8 := l_orig_item_rec.Attribute8;
2442 x_item_table(p_tab_index).Attribute9 := l_orig_item_rec.Attribute9;
2443 x_item_table(p_tab_index).Attribute10 := l_orig_item_rec.Attribute10;
2444 x_item_table(p_tab_index).Attribute11 := l_orig_item_rec.Attribute11;
2445 x_item_table(p_tab_index).Attribute12 := l_orig_item_rec.Attribute12;
2446 x_item_table(p_tab_index).Attribute13 := l_orig_item_rec.Attribute13;
2447 x_item_table(p_tab_index).Attribute14 := l_orig_item_rec.Attribute14;
2448 x_item_table(p_tab_index).Attribute15 := l_orig_item_rec.Attribute15;
2449 x_item_table(p_tab_index).Attribute16 := l_orig_item_rec.Attribute16;
2450 x_item_table(p_tab_index).Attribute17 := l_orig_item_rec.Attribute17;
2451 x_item_table(p_tab_index).Attribute18 := l_orig_item_rec.Attribute18;
2452 x_item_table(p_tab_index).Attribute19 := l_orig_item_rec.Attribute19;
2453 x_item_table(p_tab_index).Attribute20 := l_orig_item_rec.Attribute20;
2454 x_item_table(p_tab_index).Attribute21 := l_orig_item_rec.Attribute21;
2455 x_item_table(p_tab_index).Attribute22 := l_orig_item_rec.Attribute22;
2456 x_item_table(p_tab_index).Attribute23 := l_orig_item_rec.Attribute23;
2457 x_item_table(p_tab_index).Attribute24 := l_orig_item_rec.Attribute24;
2458 x_item_table(p_tab_index).Attribute25 := l_orig_item_rec.Attribute25;
2459 x_item_table(p_tab_index).Attribute26 := l_orig_item_rec.Attribute26;
2460 x_item_table(p_tab_index).Attribute27 := l_orig_item_rec.Attribute27;
2461 x_item_table(p_tab_index).Attribute28 := l_orig_item_rec.Attribute28;
2462 x_item_table(p_tab_index).Attribute29 := l_orig_item_rec.Attribute29;
2463 x_item_table(p_tab_index).Attribute30 := l_orig_item_rec.Attribute30;
2464 -- Global Descriptive flex
2465 x_item_table(p_tab_index).Global_Attribute_Category := l_orig_item_rec.Global_Attribute_Category;
2466 x_item_table(p_tab_index).Global_Attribute1 := l_orig_item_rec.Global_Attribute1;
2467 x_item_table(p_tab_index).Global_Attribute2 := l_orig_item_rec.Global_Attribute2;
2468 x_item_table(p_tab_index).Global_Attribute3 := l_orig_item_rec.Global_Attribute3;
2469 x_item_table(p_tab_index).Global_Attribute4 := l_orig_item_rec.Global_Attribute4;
2470 x_item_table(p_tab_index).Global_Attribute5 := l_orig_item_rec.Global_Attribute5;
2471 x_item_table(p_tab_index).Global_Attribute6 := l_orig_item_rec.Global_Attribute6;
2472 x_item_table(p_tab_index).Global_Attribute7 := l_orig_item_rec.Global_Attribute7;
2473 x_item_table(p_tab_index).Global_Attribute8 := l_orig_item_rec.Global_Attribute8;
2474 x_item_table(p_tab_index).Global_Attribute9 := l_orig_item_rec.Global_Attribute9;
2475 x_item_table(p_tab_index).Global_Attribute10 := l_orig_item_rec.Global_Attribute10;
2476 x_item_table(p_tab_index).Global_Attribute11 := l_orig_item_rec.Global_Attribute11;
2477 x_item_table(p_tab_index).Global_Attribute12 := l_orig_item_rec.Global_Attribute12;
2478 x_item_table(p_tab_index).Global_Attribute13 := l_orig_item_rec.Global_Attribute13;
2479 x_item_table(p_tab_index).Global_Attribute14 := l_orig_item_rec.Global_Attribute14;
2480 x_item_table(p_tab_index).Global_Attribute15 := l_orig_item_rec.Global_Attribute15;
2481 x_item_table(p_tab_index).Global_Attribute16 := l_orig_item_rec.Global_Attribute16;
2482 x_item_table(p_tab_index).Global_Attribute17 := l_orig_item_rec.Global_Attribute17;
2483 x_item_table(p_tab_index).Global_Attribute18 := l_orig_item_rec.Global_Attribute18;
2484 x_item_table(p_tab_index).Global_Attribute19 := l_orig_item_rec.Global_Attribute19;
2485 x_item_table(p_tab_index).Global_Attribute20 := l_orig_item_rec.Global_Attribute20;
2486
2487 /* R12 Attributes */
2488
2489 x_item_table(p_tab_index).CAS_NUMBER := l_orig_item_rec.CAS_NUMBER;
2490 x_item_table(p_tab_index).CHILD_LOT_FLAG := l_orig_item_rec.CHILD_LOT_FLAG;
2491 x_item_table(p_tab_index).CHILD_LOT_PREFIX := l_orig_item_rec.CHILD_LOT_PREFIX;
2492 x_item_table(p_tab_index).CHILD_LOT_STARTING_NUMBER := l_orig_item_rec.CHILD_LOT_STARTING_NUMBER;
2493 x_item_table(p_tab_index).CHILD_LOT_VALIDATION_FLAG := l_orig_item_rec.CHILD_LOT_VALIDATION_FLAG;
2494 x_item_table(p_tab_index).COPY_LOT_ATTRIBUTE_FLAG := l_orig_item_rec.COPY_LOT_ATTRIBUTE_FLAG;
2495 x_item_table(p_tab_index).DEFAULT_GRADE := l_orig_item_rec.DEFAULT_GRADE;
2496 x_item_table(p_tab_index).EXPIRATION_ACTION_CODE := l_orig_item_rec.EXPIRATION_ACTION_CODE;
2497 x_item_table(p_tab_index).EXPIRATION_ACTION_INTERVAL := l_orig_item_rec.EXPIRATION_ACTION_INTERVAL;
2498 x_item_table(p_tab_index).GRADE_CONTROL_FLAG := l_orig_item_rec.GRADE_CONTROL_FLAG;
2499 x_item_table(p_tab_index).HAZARDOUS_MATERIAL_FLAG := l_orig_item_rec.HAZARDOUS_MATERIAL_FLAG;
2500 x_item_table(p_tab_index).HOLD_DAYS := l_orig_item_rec.HOLD_DAYS;
2501 x_item_table(p_tab_index).LOT_DIVISIBLE_FLAG := l_orig_item_rec.LOT_DIVISIBLE_FLAG;
2502 x_item_table(p_tab_index).MATURITY_DAYS := l_orig_item_rec.MATURITY_DAYS;
2503 x_item_table(p_tab_index).PARENT_CHILD_GENERATION_FLAG := l_orig_item_rec.PARENT_CHILD_GENERATION_FLAG;
2504 x_item_table(p_tab_index).PROCESS_COSTING_ENABLED_FLAG := l_orig_item_rec.PROCESS_COSTING_ENABLED_FLAG;
2505 x_item_table(p_tab_index).PROCESS_EXECUTION_ENABLED_FLAG := l_orig_item_rec.PROCESS_EXECUTION_ENABLED_FLAG;
2506 x_item_table(p_tab_index).PROCESS_QUALITY_ENABLED_FLAG := l_orig_item_rec.PROCESS_QUALITY_ENABLED_FLAG;
2507 x_item_table(p_tab_index).PROCESS_SUPPLY_LOCATOR_ID := l_orig_item_rec.PROCESS_SUPPLY_LOCATOR_ID;
2508 x_item_table(p_tab_index).PROCESS_SUPPLY_SUBINVENTORY := l_orig_item_rec.PROCESS_SUPPLY_SUBINVENTORY;
2509 x_item_table(p_tab_index).PROCESS_YIELD_LOCATOR_ID := l_orig_item_rec.PROCESS_YIELD_LOCATOR_ID;
2510 x_item_table(p_tab_index).PROCESS_YIELD_SUBINVENTORY := l_orig_item_rec.PROCESS_YIELD_SUBINVENTORY;
2511 x_item_table(p_tab_index).RECIPE_ENABLED_FLAG := l_orig_item_rec.RECIPE_ENABLED_FLAG;
2512 x_item_table(p_tab_index).RETEST_INTERVAL := l_orig_item_rec.RETEST_INTERVAL;
2513 x_item_table(p_tab_index).CHARGE_PERIODICITY_CODE := l_orig_item_rec.CHARGE_PERIODICITY_CODE;
2514 x_item_table(p_tab_index).REPAIR_LEADTIME := l_orig_item_rec.REPAIR_LEADTIME;
2515 x_item_table(p_tab_index).REPAIR_YIELD := l_orig_item_rec.REPAIR_YIELD;
2516 x_item_table(p_tab_index).PREPOSITION_POINT := l_orig_item_rec.PREPOSITION_POINT;
2517 x_item_table(p_tab_index).REPAIR_PROGRAM := l_orig_item_rec.REPAIR_PROGRAM;
2518 x_item_table(p_tab_index).SUBCONTRACTING_COMPONENT := l_orig_item_rec.SUBCONTRACTING_COMPONENT;
2519 x_item_table(p_tab_index).OUTSOURCED_ASSEMBLY := l_orig_item_rec.OUTSOURCED_ASSEMBLY;
2520 x_return_status := G_RET_STS_SUCCESS;
2521 END IF;
2522
2523 CLOSE c_copy_item_info;
2524
2525 EXCEPTION
2526 WHEN OTHERS THEN
2527 IF c_copy_item_info%ISOPEN THEN
2528 CLOSE c_copy_item_info;
2529 END IF;
2530 END initialize_item_info;
2531
2532 ---------------------------------------------------------------------------
2533 PROCEDURE initialize_template_info
2534 (p_template_id IN NUMBER
2535 ,p_template_name IN VARCHAR2
2536 ,p_organization_id IN NUMBER
2537 ,p_organization_code IN VARCHAR2
2538 ,p_tab_index IN INTEGER
2539 ,x_item_table IN OUT NOCOPY EGO_ITEM_PUB.Item_Tbl_Type
2540 ,x_return_status OUT NOCOPY VARCHAR2
2541 ,x_msg_count OUT NOCOPY NUMBER) IS
2542
2543 CURSOR c_get_context_org (cp_template_id IN NUMBER) IS
2544 SELECT context_organization_id
2545 FROM mtl_item_templates mit
2546 WHERE mit.template_id = cp_template_id;
2547
2548 CURSOR c_get_template_attributes (cp_template_id IN NUMBER) IS
2549 SELECT attribute_name, attribute_value
2550 FROM mtl_item_templ_attributes
2551 WHERE template_id = cp_template_id
2552 AND enabled_flag = 'Y'
2553 AND attribute_name IN
2554 ( SELECT a.attribute_name
2555 FROM mtl_item_attributes a
2556 WHERE NVL(a.status_control_code, 3) <> 1
2557 AND a.control_level IN (1, 2)
2558 AND a.attribute_group_id_gui IS NOT NULL
2559 AND a.attribute_name NOT IN
2560 ('MTL_SYSTEM_ITEMS.BASE_ITEM_ID',
2561 'MTL_SYSTEM_ITEMS.WIP_SUPPLY_LOCATOR_ID',
2562 'MTL_SYSTEM_ITEMS.WIP_SUPPLY_SUBINVENTORY',
2563 'MTL_SYSTEM_ITEMS.BASE_WARRANTY_SERVICE_ID',
2564 'MTL_SYSTEM_ITEMS.PLANNER_CODE',
2565 'MTL_SYSTEM_ITEMS.ENCUMBRANCE_ACCOUNT',
2566 'MTL_SYSTEM_ITEMS.EXPENSE_ACCOUNT',
2567 'MTL_SYSTEM_ITEMS.SALES_ACCOUNT',
2568 'MTL_SYSTEM_ITEMS.COST_OF_SALES_ACCOUNT',
2569 'MTL_SYSTEM_ITEMS.PLANNING_EXCEPTION_SET')
2570 );
2571
2572 -- Attributes that can be applied only through the Org Specific templates.
2573
2574 CURSOR c_get_org_template_attributes (cp_template_id IN NUMBER) IS
2575 SELECT attribute_name, attribute_value
2576 FROM mtl_item_templ_attributes
2577 WHERE template_id = cp_template_id
2578 AND enabled_flag = 'Y'
2579 AND attribute_name IN
2580 ( SELECT a.attribute_name
2581 FROM mtl_item_attributes a
2582 WHERE NVL(a.status_control_code, 3) <> 1
2583 AND a.control_level IN (1, 2)
2584 AND a.attribute_group_id_gui IS NOT NULL
2585 AND a.attribute_name IN
2586 ('MTL_SYSTEM_ITEMS.BASE_ITEM_ID',
2587 'MTL_SYSTEM_ITEMS.WIP_SUPPLY_LOCATOR_ID',
2588 'MTL_SYSTEM_ITEMS.WIP_SUPPLY_SUBINVENTORY',
2589 'MTL_SYSTEM_ITEMS.BASE_WARRANTY_SERVICE_ID',
2590 'MTL_SYSTEM_ITEMS.PLANNER_CODE',
2591 'MTL_SYSTEM_ITEMS.ENCUMBRANCE_ACCOUNT',
2592 'MTL_SYSTEM_ITEMS.EXPENSE_ACCOUNT',
2593 'MTL_SYSTEM_ITEMS.SALES_ACCOUNT',
2594 'MTL_SYSTEM_ITEMS.COST_OF_SALES_ACCOUNT',
2595 'MTL_SYSTEM_ITEMS.PLANNING_EXCEPTION_SET')
2596 );
2597
2598 CURSOR c_get_global_flex_fields (cp_template_id IN NUMBER) IS
2599 SELECT GLOBAL_ATTRIBUTE_CATEGORY,
2600 GLOBAL_ATTRIBUTE1,
2601 GLOBAL_ATTRIBUTE2,
2602 GLOBAL_ATTRIBUTE3,
2603 GLOBAL_ATTRIBUTE4,
2604 GLOBAL_ATTRIBUTE5,
2605 GLOBAL_ATTRIBUTE6,
2606 GLOBAL_ATTRIBUTE7,
2607 GLOBAL_ATTRIBUTE8,
2608 GLOBAL_ATTRIBUTE9,
2609 GLOBAL_ATTRIBUTE10,
2610 GLOBAL_ATTRIBUTE11,
2611 GLOBAL_ATTRIBUTE12,
2612 GLOBAL_ATTRIBUTE13,
2613 GLOBAL_ATTRIBUTE14,
2614 GLOBAL_ATTRIBUTE15,
2615 GLOBAL_ATTRIBUTE16,
2616 GLOBAL_ATTRIBUTE17,
2617 GLOBAL_ATTRIBUTE18,
2618 GLOBAL_ATTRIBUTE19,
2619 GLOBAL_ATTRIBUTE20
2620 FROM MTL_ITEM_TEMPLATES MIT
2621 WHERE MIT.template_id = cp_template_id;
2622
2623 l_org_id mtl_item_templates.context_organization_id%TYPE;
2624
2625 BEGIN
2626
2627 l_org_id := NULL;
2628 OPEN c_get_context_org (cp_template_id => p_template_id);
2629 FETCH c_get_context_org INTO l_org_id;
2630 CLOSE c_get_context_org;
2631
2632 IF ( (l_org_id is NOT NULL) AND (l_org_id <> p_organization_id) ) THEN
2633 EGO_Item_Msg.Add_Error_Message
2634 (p_entity_index => 1
2635 ,p_application_short_name => 'EGO'
2636 ,p_message_name => 'EGO_INVALID_TEMPLATE_ORG'
2637 ,p_token_name1 => 'TEMPLATE_NAME'
2638 ,p_token_value1 => p_template_name
2639 ,p_translate1 => FALSE
2640 ,p_token_name2 => 'ORGANIZATION_CODE'
2641 ,p_token_value2 => p_organization_code
2642 ,p_translate2 => FALSE
2643 ,p_token_name3 => NULL
2644 ,p_token_value3 => NULL
2645 ,p_translate3 => FALSE
2646 );
2647 x_return_status := G_RET_STS_ERROR;
2648 RETURN;
2649 END IF; -- c_get_context_org%NOTFOUND
2650
2651 ------------------------------------
2652 -- Set item record attribute values
2653 ------------------------------------
2654 FOR cr IN c_get_template_attributes (cp_template_id => p_template_id) LOOP
2655 IF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ACCEPTABLE_EARLY_DAYS' THEN
2656 x_item_table(p_tab_index).ACCEPTABLE_EARLY_DAYS := cr.ATTRIBUTE_VALUE;
2657 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ACCEPTABLE_RATE_DECREASE' THEN
2658 x_item_table(p_tab_index).ACCEPTABLE_RATE_DECREASE := cr.ATTRIBUTE_VALUE;
2659 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ACCEPTABLE_RATE_INCREASE' THEN
2660 x_item_table(p_tab_index).ACCEPTABLE_RATE_INCREASE := cr.ATTRIBUTE_VALUE;
2661 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ACCOUNTING_RULE_ID' THEN
2662 x_item_table(p_tab_index).ACCOUNTING_RULE_ID := cr.ATTRIBUTE_VALUE;
2663 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ALLOWED_UNITS_LOOKUP_CODE' THEN
2664 x_item_table(p_tab_index).ALLOWED_UNITS_LOOKUP_CODE := cr.ATTRIBUTE_VALUE;
2665 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ALLOW_EXPRESS_DELIVERY_FLAG' THEN
2666 x_item_table(p_tab_index).ALLOW_EXPRESS_DELIVERY_FLAG := cr.ATTRIBUTE_VALUE;
2667 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ALLOW_ITEM_DESC_UPDATE_FLAG' THEN
2668 x_item_table(p_tab_index).ALLOW_ITEM_DESC_UPDATE_FLAG := cr.ATTRIBUTE_VALUE;
2669 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ALLOW_SUBSTITUTE_RECEIPTS_FLAG' THEN
2670 x_item_table(p_tab_index).ALLOW_SUBSTITUTE_RECEIPTS_FLAG := cr.ATTRIBUTE_VALUE;
2671 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ALLOW_UNORDERED_RECEIPTS_FLAG' THEN
2672 x_item_table(p_tab_index).ALLOW_UNORDERED_RECEIPTS_FLAG := cr.ATTRIBUTE_VALUE;
2673 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ASSET_CATEGORY_ID' THEN
2674 x_item_table(p_tab_index).ASSET_CATEGORY_ID := cr.ATTRIBUTE_VALUE;
2675 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ATP_COMPONENTS_FLAG' THEN
2676 x_item_table(p_tab_index).ATP_COMPONENTS_FLAG := cr.ATTRIBUTE_VALUE;
2677 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ATP_FLAG' THEN
2678 x_item_table(p_tab_index).ATP_FLAG := cr.ATTRIBUTE_VALUE;
2679 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ATP_RULE_ID' THEN
2680 x_item_table(p_tab_index).ATP_RULE_ID := cr.ATTRIBUTE_VALUE;
2681 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.AUTO_LOT_ALPHA_PREFIX' THEN
2682 x_item_table(p_tab_index).AUTO_LOT_ALPHA_PREFIX := cr.ATTRIBUTE_VALUE;
2683 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.AUTO_REDUCE_MPS' THEN
2684 x_item_table(p_tab_index).AUTO_REDUCE_MPS := cr.ATTRIBUTE_VALUE;
2685 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.AUTO_SERIAL_ALPHA_PREFIX' THEN
2686 x_item_table(p_tab_index).AUTO_SERIAL_ALPHA_PREFIX := cr.ATTRIBUTE_VALUE;
2687 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.BOM_ENABLED_FLAG' THEN
2688 x_item_table(p_tab_index).BOM_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
2689 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.BOM_ITEM_TYPE' THEN
2690 x_item_table(p_tab_index).BOM_ITEM_TYPE := cr.ATTRIBUTE_VALUE;
2691 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.BUILD_IN_WIP_FLAG' THEN
2692 x_item_table(p_tab_index).BUILD_IN_WIP_FLAG := cr.ATTRIBUTE_VALUE;
2693 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.BUYER_ID' THEN
2694 x_item_table(p_tab_index).BUYER_ID := cr.ATTRIBUTE_VALUE;
2695 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CARRYING_COST' THEN
2696 x_item_table(p_tab_index).CARRYING_COST := cr.ATTRIBUTE_VALUE;
2697 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.COLLATERAL_FLAG' THEN
2698 x_item_table(p_tab_index).COLLATERAL_FLAG := cr.ATTRIBUTE_VALUE;
2699 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.COSTING_ENABLED_FLAG' THEN
2700 x_item_table(p_tab_index).COSTING_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
2701 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.AUTO_CREATED_CONFIG_FLAG' THEN--3911562
2702 x_item_table(p_tab_index).auto_created_config_flag := cr.ATTRIBUTE_VALUE;
2703 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.COVERAGE_SCHEDULE_ID' THEN
2704 x_item_table(p_tab_index).COVERAGE_SCHEDULE_ID := cr.ATTRIBUTE_VALUE;
2705 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CUMULATIVE_TOTAL_LEAD_TIME' THEN
2706 x_item_table(p_tab_index).CUMULATIVE_TOTAL_LEAD_TIME := cr.ATTRIBUTE_VALUE;
2707 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CUM_MANUFACTURING_LEAD_TIME' THEN
2708 x_item_table(p_tab_index).CUM_MANUFACTURING_LEAD_TIME := cr.ATTRIBUTE_VALUE;
2709 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CUSTOMER_ORDER_ENABLED_FLAG' THEN
2710 x_item_table(p_tab_index).CUSTOMER_ORDER_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
2711 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CUSTOMER_ORDER_FLAG' THEN
2712 x_item_table(p_tab_index).CUSTOMER_ORDER_FLAG := cr.ATTRIBUTE_VALUE;
2713 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CYCLE_COUNT_ENABLED_FLAG' THEN
2714 x_item_table(p_tab_index).CYCLE_COUNT_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
2715 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DAYS_EARLY_RECEIPT_ALLOWED' THEN
2716 x_item_table(p_tab_index).DAYS_EARLY_RECEIPT_ALLOWED := cr.ATTRIBUTE_VALUE;
2717 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DAYS_LATE_RECEIPT_ALLOWED' THEN
2718 x_item_table(p_tab_index).DAYS_LATE_RECEIPT_ALLOWED := cr.ATTRIBUTE_VALUE;
2719 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DEFAULT_INCLUDE_IN_ROLLUP_FLAG' THEN
2720 x_item_table(p_tab_index).DEFAULT_INCLUDE_IN_ROLLUP_FLAG := cr.ATTRIBUTE_VALUE;
2721 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DEFAULT_SHIPPING_ORG' THEN
2722 x_item_table(p_tab_index).DEFAULT_SHIPPING_ORG := cr.ATTRIBUTE_VALUE;
2723 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DEMAND_TIME_FENCE_CODE' THEN
2724 x_item_table(p_tab_index).DEMAND_TIME_FENCE_CODE := cr.ATTRIBUTE_VALUE;
2725 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DEMAND_TIME_FENCE_DAYS' THEN
2726 x_item_table(p_tab_index).DEMAND_TIME_FENCE_DAYS := cr.ATTRIBUTE_VALUE;
2727 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.END_ASSEMBLY_PEGGING_FLAG' THEN
2728 x_item_table(p_tab_index).END_ASSEMBLY_PEGGING_FLAG := cr.ATTRIBUTE_VALUE;
2729 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ENFORCE_SHIP_TO_LOCATION_CODE' THEN
2730 x_item_table(p_tab_index).ENFORCE_SHIP_TO_LOCATION_CODE := cr.ATTRIBUTE_VALUE;
2731 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EXPENSE_ACCOUNT' THEN
2732 x_item_table(p_tab_index).EXPENSE_ACCOUNT := cr.ATTRIBUTE_VALUE;
2733 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.FIXED_DAYS_SUPPLY' THEN
2734 x_item_table(p_tab_index).FIXED_DAYS_SUPPLY := cr.ATTRIBUTE_VALUE;
2735 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.FIXED_LEAD_TIME' THEN
2736 x_item_table(p_tab_index).FIXED_LEAD_TIME := cr.ATTRIBUTE_VALUE;
2737 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.FIXED_LOT_MULTIPLIER' THEN
2738 x_item_table(p_tab_index).FIXED_LOT_MULTIPLIER := cr.ATTRIBUTE_VALUE;
2739 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.FIXED_ORDER_QUANTITY' THEN
2740 x_item_table(p_tab_index).FIXED_ORDER_QUANTITY := cr.ATTRIBUTE_VALUE;
2741 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.FULL_LEAD_TIME' THEN
2742 x_item_table(p_tab_index).FULL_LEAD_TIME := cr.ATTRIBUTE_VALUE;
2743 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.HAZARD_CLASS_ID' THEN
2744 x_item_table(p_tab_index).HAZARD_CLASS_ID := cr.ATTRIBUTE_VALUE;
2745 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INSPECTION_REQUIRED_FLAG' THEN
2746 x_item_table(p_tab_index).INSPECTION_REQUIRED_FLAG := cr.ATTRIBUTE_VALUE;
2747 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INTERNAL_ORDER_ENABLED_FLAG' THEN
2748 x_item_table(p_tab_index).INTERNAL_ORDER_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
2749 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INTERNAL_ORDER_FLAG' THEN
2750 x_item_table(p_tab_index).INTERNAL_ORDER_FLAG := cr.ATTRIBUTE_VALUE;
2751 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INVENTORY_ASSET_FLAG' THEN
2752 x_item_table(p_tab_index).INVENTORY_ASSET_FLAG := cr.ATTRIBUTE_VALUE;
2753 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INVENTORY_ITEM_FLAG' THEN
2754 x_item_table(p_tab_index).INVENTORY_ITEM_FLAG := cr.ATTRIBUTE_VALUE;
2755 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INVENTORY_ITEM_STATUS_CODE' THEN
2756 x_item_table(p_tab_index).INVENTORY_ITEM_STATUS_CODE := cr.ATTRIBUTE_VALUE;
2757 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INVENTORY_PLANNING_CODE' THEN
2758 x_item_table(p_tab_index).INVENTORY_PLANNING_CODE := cr.ATTRIBUTE_VALUE;
2759 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INVOICEABLE_ITEM_FLAG' THEN
2760 x_item_table(p_tab_index).INVOICEABLE_ITEM_FLAG := cr.ATTRIBUTE_VALUE;
2761 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INVOICE_CLOSE_TOLERANCE' THEN
2762 x_item_table(p_tab_index).INVOICE_CLOSE_TOLERANCE := cr.ATTRIBUTE_VALUE;
2763 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INVOICE_ENABLED_FLAG' THEN
2764 x_item_table(p_tab_index).INVOICE_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
2765 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INVOICING_RULE_ID' THEN
2766 x_item_table(p_tab_index).INVOICING_RULE_ID := cr.ATTRIBUTE_VALUE;
2767 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ITEM_TYPE' THEN
2768 x_item_table(p_tab_index).ITEM_TYPE := cr.ATTRIBUTE_VALUE;
2769 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.LEAD_TIME_LOT_SIZE' THEN
2770 x_item_table(p_tab_index).LEAD_TIME_LOT_SIZE := cr.ATTRIBUTE_VALUE;
2771 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.LIST_PRICE_PER_UNIT' THEN
2772 x_item_table(p_tab_index).LIST_PRICE_PER_UNIT := cr.ATTRIBUTE_VALUE;
2773 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.LOCATION_CONTROL_CODE' THEN
2774 x_item_table(p_tab_index).LOCATION_CONTROL_CODE := cr.ATTRIBUTE_VALUE;
2775 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.LOT_CONTROL_CODE' THEN
2776 x_item_table(p_tab_index).LOT_CONTROL_CODE := cr.ATTRIBUTE_VALUE;
2777 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MARKET_PRICE' THEN
2778 x_item_table(p_tab_index).MARKET_PRICE := cr.ATTRIBUTE_VALUE;
2779 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MATERIAL_BILLABLE_FLAG' THEN
2780 x_item_table(p_tab_index).MATERIAL_BILLABLE_FLAG := cr.ATTRIBUTE_VALUE;
2781 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MAXIMUM_ORDER_QUANTITY' THEN
2782 x_item_table(p_tab_index).MAXIMUM_ORDER_QUANTITY := cr.ATTRIBUTE_VALUE;
2783 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MAX_MINMAX_QUANTITY' THEN
2784 x_item_table(p_tab_index).MAX_MINMAX_QUANTITY := cr.ATTRIBUTE_VALUE;
2785 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MINIMUM_ORDER_QUANTITY' THEN
2786 x_item_table(p_tab_index).MINIMUM_ORDER_QUANTITY := cr.ATTRIBUTE_VALUE;
2787 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MIN_MINMAX_QUANTITY' THEN
2788 x_item_table(p_tab_index).MIN_MINMAX_QUANTITY := cr.ATTRIBUTE_VALUE;
2789 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MRP_CALCULATE_ATP_FLAG' THEN
2790 x_item_table(p_tab_index).MRP_CALCULATE_ATP_FLAG := cr.ATTRIBUTE_VALUE;
2791 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MRP_PLANNING_CODE' THEN
2792 x_item_table(p_tab_index).MRP_PLANNING_CODE := cr.ATTRIBUTE_VALUE;
2793 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MRP_SAFETY_STOCK_CODE' THEN
2794 x_item_table(p_tab_index).MRP_SAFETY_STOCK_CODE := cr.ATTRIBUTE_VALUE;
2795 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MRP_SAFETY_STOCK_PERCENT' THEN
2796 x_item_table(p_tab_index).MRP_SAFETY_STOCK_PERCENT := cr.ATTRIBUTE_VALUE;
2797 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MTL_TRANSACTIONS_ENABLED_FLAG' THEN
2798 x_item_table(p_tab_index).MTL_TRANSACTIONS_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
2799 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MUST_USE_APPROVED_VENDOR_FLAG' THEN
2800 x_item_table(p_tab_index).MUST_USE_APPROVED_VENDOR_FLAG := cr.ATTRIBUTE_VALUE;
2801 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.NEGATIVE_MEASUREMENT_ERROR' THEN
2802 x_item_table(p_tab_index).NEGATIVE_MEASUREMENT_ERROR := cr.ATTRIBUTE_VALUE;
2803 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ORDER_COST' THEN
2804 x_item_table(p_tab_index).ORDER_COST := cr.ATTRIBUTE_VALUE;
2805 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.OUTSIDE_OPERATION_FLAG' THEN
2806 x_item_table(p_tab_index).OUTSIDE_OPERATION_FLAG := cr.ATTRIBUTE_VALUE;
2807 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.OUTSIDE_OPERATION_UOM_TYPE' THEN
2808 x_item_table(p_tab_index).OUTSIDE_OPERATION_UOM_TYPE := cr.ATTRIBUTE_VALUE;
2809 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.OVERRUN_PERCENTAGE' THEN
2810 x_item_table(p_tab_index).OVERRUN_PERCENTAGE := cr.ATTRIBUTE_VALUE;
2811 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PAYMENT_TERMS_ID' THEN
2812 x_item_table(p_tab_index).PAYMENT_TERMS_ID := cr.ATTRIBUTE_VALUE;
2813 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PICKING_RULE_ID' THEN
2814 x_item_table(p_tab_index).PICKING_RULE_ID := cr.ATTRIBUTE_VALUE;
2815 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PICK_COMPONENTS_FLAG' THEN
2816 x_item_table(p_tab_index).PICK_COMPONENTS_FLAG := cr.ATTRIBUTE_VALUE;
2817 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PLANNING_MAKE_BUY_CODE' THEN
2818 x_item_table(p_tab_index).PLANNING_MAKE_BUY_CODE := cr.ATTRIBUTE_VALUE;
2819 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PLANNING_TIME_FENCE_CODE' THEN
2820 x_item_table(p_tab_index).PLANNING_TIME_FENCE_CODE := cr.ATTRIBUTE_VALUE;
2821 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PLANNING_TIME_FENCE_DAYS' THEN
2822 x_item_table(p_tab_index).PLANNING_TIME_FENCE_DAYS := cr.ATTRIBUTE_VALUE;
2823 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.POSITIVE_MEASUREMENT_ERROR' THEN
2824 x_item_table(p_tab_index).POSITIVE_MEASUREMENT_ERROR := cr.ATTRIBUTE_VALUE;
2825 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.POSTPROCESSING_LEAD_TIME' THEN
2826 x_item_table(p_tab_index).POSTPROCESSING_LEAD_TIME := cr.ATTRIBUTE_VALUE;
2827 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PREPROCESSING_LEAD_TIME' THEN
2828 x_item_table(p_tab_index).PREPROCESSING_LEAD_TIME := cr.ATTRIBUTE_VALUE;
2829 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PRICE_TOLERANCE_PERCENT' THEN
2830 x_item_table(p_tab_index).PRICE_TOLERANCE_PERCENT := cr.ATTRIBUTE_VALUE;
2831 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PURCHASING_ENABLED_FLAG' THEN
2832 x_item_table(p_tab_index).PURCHASING_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
2833 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PURCHASING_ITEM_FLAG' THEN
2834 x_item_table(p_tab_index).PURCHASING_ITEM_FLAG := cr.ATTRIBUTE_VALUE;
2835 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.QTY_RCV_EXCEPTION_CODE' THEN
2836 x_item_table(p_tab_index).QTY_RCV_EXCEPTION_CODE := cr.ATTRIBUTE_VALUE;
2837 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.QTY_RCV_TOLERANCE' THEN
2838 x_item_table(p_tab_index).QTY_RCV_TOLERANCE := cr.ATTRIBUTE_VALUE;
2839 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RECEIPT_DAYS_EXCEPTION_CODE' THEN
2840 x_item_table(p_tab_index).RECEIPT_DAYS_EXCEPTION_CODE := cr.ATTRIBUTE_VALUE;
2841 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RECEIPT_REQUIRED_FLAG' THEN
2842 x_item_table(p_tab_index).RECEIPT_REQUIRED_FLAG := cr.ATTRIBUTE_VALUE;
2843 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RECEIVE_CLOSE_TOLERANCE' THEN
2844 x_item_table(p_tab_index).RECEIVE_CLOSE_TOLERANCE := cr.ATTRIBUTE_VALUE;
2845 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RECEIVING_ROUTING_ID' THEN
2846 x_item_table(p_tab_index).RECEIVING_ROUTING_ID := cr.ATTRIBUTE_VALUE;
2847 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.REPETITIVE_PLANNING_FLAG' THEN
2848 x_item_table(p_tab_index).REPETITIVE_PLANNING_FLAG := cr.ATTRIBUTE_VALUE;
2849 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.REPLENISH_TO_ORDER_FLAG' THEN
2850 x_item_table(p_tab_index).REPLENISH_TO_ORDER_FLAG := cr.ATTRIBUTE_VALUE;
2851 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RESERVABLE_TYPE' THEN
2852 x_item_table(p_tab_index).RESERVABLE_TYPE := cr.ATTRIBUTE_VALUE;
2853 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RESTRICT_LOCATORS_CODE' THEN
2854 x_item_table(p_tab_index).RESTRICT_LOCATORS_CODE := cr.ATTRIBUTE_VALUE;
2855 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RESTRICT_SUBINVENTORIES_CODE' THEN
2856 x_item_table(p_tab_index).RESTRICT_SUBINVENTORIES_CODE := cr.ATTRIBUTE_VALUE;
2857 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RETURNABLE_FLAG' THEN
2858 x_item_table(p_tab_index).RETURNABLE_FLAG := cr.ATTRIBUTE_VALUE;
2859 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RETURN_INSPECTION_REQUIREMENT' THEN
2860 x_item_table(p_tab_index).RETURN_INSPECTION_REQUIREMENT := cr.ATTRIBUTE_VALUE;
2861 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.REVISION_QTY_CONTROL_CODE' THEN
2862 x_item_table(p_tab_index).REVISION_QTY_CONTROL_CODE := cr.ATTRIBUTE_VALUE;
2863 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RFQ_REQUIRED_FLAG' THEN
2864 x_item_table(p_tab_index).RFQ_REQUIRED_FLAG := cr.ATTRIBUTE_VALUE;
2865 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ROUNDING_CONTROL_TYPE' THEN
2866 x_item_table(p_tab_index).ROUNDING_CONTROL_TYPE := cr.ATTRIBUTE_VALUE;
2867 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ROUNDING_FACTOR' THEN
2868 x_item_table(p_tab_index).ROUNDING_FACTOR := cr.ATTRIBUTE_VALUE;
2869 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SAFETY_STOCK_BUCKET_DAYS' THEN
2870 x_item_table(p_tab_index).SAFETY_STOCK_BUCKET_DAYS := cr.ATTRIBUTE_VALUE;
2871 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SERIAL_NUMBER_CONTROL_CODE' THEN
2872 x_item_table(p_tab_index).SERIAL_NUMBER_CONTROL_CODE := cr.ATTRIBUTE_VALUE;
2873 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SERVICEABLE_PRODUCT_FLAG' THEN
2874 x_item_table(p_tab_index).SERVICEABLE_PRODUCT_FLAG := cr.ATTRIBUTE_VALUE;
2875 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SERVICE_DURATION' THEN
2876 x_item_table(p_tab_index).SERVICE_DURATION := cr.ATTRIBUTE_VALUE;
2877 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SERVICE_DURATION_PERIOD_CODE' THEN
2878 x_item_table(p_tab_index).SERVICE_DURATION_PERIOD_CODE := cr.ATTRIBUTE_VALUE;
2879 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SERVICE_STARTING_DELAY' THEN
2880 x_item_table(p_tab_index).SERVICE_STARTING_DELAY := cr.ATTRIBUTE_VALUE;
2881 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SHELF_LIFE_CODE' THEN
2882 x_item_table(p_tab_index).SHELF_LIFE_CODE := cr.ATTRIBUTE_VALUE;
2883 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SHELF_LIFE_DAYS' THEN
2884 x_item_table(p_tab_index).SHELF_LIFE_DAYS := cr.ATTRIBUTE_VALUE;
2885 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SHIPPABLE_ITEM_FLAG' THEN
2886 x_item_table(p_tab_index).SHIPPABLE_ITEM_FLAG := cr.ATTRIBUTE_VALUE;
2887 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SHIP_MODEL_COMPLETE_FLAG' THEN
2888 x_item_table(p_tab_index).SHIP_MODEL_COMPLETE_FLAG := cr.ATTRIBUTE_VALUE;
2889 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SHRINKAGE_RATE' THEN
2890 x_item_table(p_tab_index).SHRINKAGE_RATE := cr.ATTRIBUTE_VALUE;
2891 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SOURCE_ORGANIZATION_ID' THEN
2892 x_item_table(p_tab_index).SOURCE_ORGANIZATION_ID := cr.ATTRIBUTE_VALUE;
2893 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SOURCE_SUBINVENTORY' THEN
2894 x_item_table(p_tab_index).SOURCE_SUBINVENTORY := cr.ATTRIBUTE_VALUE;
2895 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SOURCE_TYPE' THEN
2896 x_item_table(p_tab_index).SOURCE_TYPE := cr.ATTRIBUTE_VALUE;
2897 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SO_TRANSACTIONS_FLAG' THEN
2898 x_item_table(p_tab_index).SO_TRANSACTIONS_FLAG := cr.ATTRIBUTE_VALUE;
2899 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.START_AUTO_LOT_NUMBER' THEN
2900 x_item_table(p_tab_index).START_AUTO_LOT_NUMBER := cr.ATTRIBUTE_VALUE;
2901 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.START_AUTO_SERIAL_NUMBER' THEN
2902 x_item_table(p_tab_index).START_AUTO_SERIAL_NUMBER := cr.ATTRIBUTE_VALUE;
2903 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.STD_LOT_SIZE' THEN
2904 x_item_table(p_tab_index).STD_LOT_SIZE := cr.ATTRIBUTE_VALUE;
2905 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.STOCK_ENABLED_FLAG' THEN
2906 x_item_table(p_tab_index).STOCK_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
2907 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.TAXABLE_FLAG' THEN
2908 x_item_table(p_tab_index).TAXABLE_FLAG := cr.ATTRIBUTE_VALUE;
2909 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PURCHASING_TAX_CODE' THEN
2910 x_item_table(p_tab_index).PURCHASING_TAX_CODE := cr.ATTRIBUTE_VALUE;
2911 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.TAX_CODE' THEN
2912 x_item_table(p_tab_index).TAX_CODE := cr.ATTRIBUTE_VALUE;
2913 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.UNIT_OF_ISSUE' THEN
2914 x_item_table(p_tab_index).UNIT_OF_ISSUE := cr.ATTRIBUTE_VALUE;
2915 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.UNIT_VOLUME' THEN
2916 x_item_table(p_tab_index).UNIT_VOLUME := cr.ATTRIBUTE_VALUE;
2917 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.UNIT_WEIGHT' THEN
2918 x_item_table(p_tab_index).UNIT_WEIGHT := cr.ATTRIBUTE_VALUE;
2919 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.UN_NUMBER_ID' THEN
2920 x_item_table(p_tab_index).UN_NUMBER_ID := cr.ATTRIBUTE_VALUE;
2921 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.VARIABLE_LEAD_TIME' THEN
2922 x_item_table(p_tab_index).VARIABLE_LEAD_TIME := cr.ATTRIBUTE_VALUE;
2923 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.VOLUME_UOM_CODE' THEN
2924 x_item_table(p_tab_index).VOLUME_UOM_CODE := cr.ATTRIBUTE_VALUE;
2925 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.WEIGHT_UOM_CODE' THEN
2926 x_item_table(p_tab_index).WEIGHT_UOM_CODE := cr.ATTRIBUTE_VALUE;
2927 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.WIP_SUPPLY_TYPE' THEN
2928 x_item_table(p_tab_index).WIP_SUPPLY_TYPE := cr.ATTRIBUTE_VALUE;
2929 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ATO_FORECAST_CONTROL' THEN
2930 x_item_table(p_tab_index).ATO_FORECAST_CONTROL := cr.ATTRIBUTE_VALUE;
2931 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DESCRIPTION' THEN
2932 x_item_table(p_tab_index).DESCRIPTION := cr.ATTRIBUTE_VALUE;
2933 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RELEASE_TIME_FENCE_CODE' THEN
2934 x_item_table(p_tab_index).RELEASE_TIME_FENCE_CODE := cr.ATTRIBUTE_VALUE;
2935 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RELEASE_TIME_FENCE_DAYS' THEN
2936 x_item_table(p_tab_index).RELEASE_TIME_FENCE_DAYS := cr.ATTRIBUTE_VALUE;
2937 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CONTAINER_ITEM_FLAG' THEN
2938 x_item_table(p_tab_index).CONTAINER_ITEM_FLAG := cr.ATTRIBUTE_VALUE;
2939 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CONTAINER_TYPE_CODE' THEN
2940 x_item_table(p_tab_index).CONTAINER_TYPE_CODE := cr.ATTRIBUTE_VALUE;
2941 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INTERNAL_VOLUME' THEN
2942 x_item_table(p_tab_index).INTERNAL_VOLUME := cr.ATTRIBUTE_VALUE;
2943 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MAXIMUM_LOAD_WEIGHT' THEN
2944 x_item_table(p_tab_index).MAXIMUM_LOAD_WEIGHT := cr.ATTRIBUTE_VALUE;
2945 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MINIMUM_FILL_PERCENT' THEN
2946 x_item_table(p_tab_index).MINIMUM_FILL_PERCENT := cr.ATTRIBUTE_VALUE;
2947 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.VEHICLE_ITEM_FLAG' THEN
2948 x_item_table(p_tab_index).VEHICLE_ITEM_FLAG := cr.ATTRIBUTE_VALUE;
2949 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CHECK_SHORTAGES_FLAG' THEN
2950 x_item_table(p_tab_index).CHECK_SHORTAGES_FLAG := cr.ATTRIBUTE_VALUE;
2951 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EFFECTIVITY_CONTROL' THEN
2952 x_item_table(p_tab_index).EFFECTIVITY_CONTROL := cr.ATTRIBUTE_VALUE;
2953 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.OVERCOMPLETION_TOLERANCE_TYPE' THEN
2954 x_item_table(p_tab_index).OVERCOMPLETION_TOLERANCE_TYPE := cr.ATTRIBUTE_VALUE;
2955 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.OVERCOMPLETION_TOLERANCE_VALUE' THEN
2956 x_item_table(p_tab_index).OVERCOMPLETION_TOLERANCE_VALUE := cr.ATTRIBUTE_VALUE;
2957 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.OVER_SHIPMENT_TOLERANCE' THEN
2958 x_item_table(p_tab_index).OVER_SHIPMENT_TOLERANCE := cr.ATTRIBUTE_VALUE;
2959 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.UNDER_SHIPMENT_TOLERANCE' THEN
2960 x_item_table(p_tab_index).UNDER_SHIPMENT_TOLERANCE := cr.ATTRIBUTE_VALUE;
2961 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.OVER_RETURN_TOLERANCE' THEN
2962 x_item_table(p_tab_index).OVER_RETURN_TOLERANCE := cr.ATTRIBUTE_VALUE;
2963 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.UNDER_RETURN_TOLERANCE' THEN
2964 x_item_table(p_tab_index).UNDER_RETURN_TOLERANCE := cr.ATTRIBUTE_VALUE;
2965 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EQUIPMENT_TYPE' THEN
2966 x_item_table(p_tab_index).EQUIPMENT_TYPE := cr.ATTRIBUTE_VALUE;
2967 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RECOVERED_PART_DISP_CODE' THEN
2968 x_item_table(p_tab_index).RECOVERED_PART_DISP_CODE := cr.ATTRIBUTE_VALUE;
2969 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DEFECT_TRACKING_ON_FLAG' THEN
2970 x_item_table(p_tab_index).DEFECT_TRACKING_ON_FLAG := cr.ATTRIBUTE_VALUE;
2971 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EVENT_FLAG' THEN
2972 x_item_table(p_tab_index).EVENT_FLAG := cr.ATTRIBUTE_VALUE;
2973 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ELECTRONIC_FLAG' THEN
2974 x_item_table(p_tab_index).ELECTRONIC_FLAG := cr.ATTRIBUTE_VALUE;
2975 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DOWNLOADABLE_FLAG' THEN
2976 x_item_table(p_tab_index).DOWNLOADABLE_FLAG := cr.ATTRIBUTE_VALUE;
2977 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.VOL_DISCOUNT_EXEMPT_FLAG' THEN
2978 x_item_table(p_tab_index).VOL_DISCOUNT_EXEMPT_FLAG := cr.ATTRIBUTE_VALUE;
2979 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.COUPON_EXEMPT_FLAG' THEN
2980 x_item_table(p_tab_index).COUPON_EXEMPT_FLAG := cr.ATTRIBUTE_VALUE;
2981 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.COMMS_NL_TRACKABLE_FLAG' THEN
2982 x_item_table(p_tab_index).COMMS_NL_TRACKABLE_FLAG := cr.ATTRIBUTE_VALUE;
2983 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ASSET_CREATION_CODE' THEN
2984 x_item_table(p_tab_index).ASSET_CREATION_CODE := cr.ATTRIBUTE_VALUE;
2985 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.COMMS_ACTIVATION_REQD_FLAG' THEN
2986 x_item_table(p_tab_index).COMMS_ACTIVATION_REQD_FLAG := cr.ATTRIBUTE_VALUE;
2987 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ORDERABLE_ON_WEB_FLAG' THEN
2988 x_item_table(p_tab_index).ORDERABLE_ON_WEB_FLAG := cr.ATTRIBUTE_VALUE;
2989 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.BACK_ORDERABLE_FLAG' THEN
2990 x_item_table(p_tab_index).BACK_ORDERABLE_FLAG := cr.ATTRIBUTE_VALUE;
2991 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.WEB_STATUS' THEN
2992 x_item_table(p_tab_index).WEB_STATUS := cr.ATTRIBUTE_VALUE;
2993 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INDIVISIBLE_FLAG' THEN
2994 x_item_table(p_tab_index).INDIVISIBLE_FLAG := cr.ATTRIBUTE_VALUE;
2995 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DIMENSION_UOM_CODE' THEN
2996 x_item_table(p_tab_index).DIMENSION_UOM_CODE := cr.ATTRIBUTE_VALUE;
2997 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.UNIT_LENGTH' THEN
2998 x_item_table(p_tab_index).UNIT_LENGTH := cr.ATTRIBUTE_VALUE;
2999 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.UNIT_WIDTH' THEN
3000 x_item_table(p_tab_index).UNIT_WIDTH := cr.ATTRIBUTE_VALUE;
3001 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.UNIT_HEIGHT' THEN
3002 x_item_table(p_tab_index).UNIT_HEIGHT := cr.ATTRIBUTE_VALUE;
3003 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.BULK_PICKED_FLAG' THEN
3004 x_item_table(p_tab_index).BULK_PICKED_FLAG := cr.ATTRIBUTE_VALUE;
3005 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.LOT_STATUS_ENABLED' THEN
3006 x_item_table(p_tab_index).LOT_STATUS_ENABLED := cr.ATTRIBUTE_VALUE;
3007 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DEFAULT_LOT_STATUS_ID' THEN
3008 x_item_table(p_tab_index).DEFAULT_LOT_STATUS_ID := cr.ATTRIBUTE_VALUE;
3009 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SERIAL_STATUS_ENABLED' THEN
3010 x_item_table(p_tab_index).SERIAL_STATUS_ENABLED := cr.ATTRIBUTE_VALUE;
3011 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DEFAULT_SERIAL_STATUS_ID' THEN
3012 x_item_table(p_tab_index).DEFAULT_SERIAL_STATUS_ID := cr.ATTRIBUTE_VALUE;
3013 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.LOT_SPLIT_ENABLED' THEN
3014 x_item_table(p_tab_index).LOT_SPLIT_ENABLED := cr.ATTRIBUTE_VALUE;
3015 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.LOT_MERGE_ENABLED' THEN
3016 x_item_table(p_tab_index).LOT_MERGE_ENABLED := cr.ATTRIBUTE_VALUE;
3017 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.INVENTORY_CARRY_PENALTY' THEN
3018 x_item_table(p_tab_index).INVENTORY_CARRY_PENALTY := cr.ATTRIBUTE_VALUE;
3019 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.OPERATION_SLACK_PENALTY' THEN
3020 x_item_table(p_tab_index).OPERATION_SLACK_PENALTY := cr.ATTRIBUTE_VALUE;
3021 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.FINANCING_ALLOWED_FLAG' THEN
3022 x_item_table(p_tab_index).FINANCING_ALLOWED_FLAG := cr.ATTRIBUTE_VALUE;
3023 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PRIMARY_UOM_CODE' THEN
3024 x_item_table(p_tab_index).PRIMARY_UOM_CODE := cr.ATTRIBUTE_VALUE;
3025 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EAM_ITEM_TYPE' THEN
3026 x_item_table(p_tab_index).EAM_ITEM_TYPE := cr.ATTRIBUTE_VALUE;
3027 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EAM_ACTIVITY_TYPE_CODE' THEN
3028 x_item_table(p_tab_index).EAM_ACTIVITY_TYPE_CODE := cr.ATTRIBUTE_VALUE;
3029 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EAM_ACTIVITY_CAUSE_CODE' THEN
3030 x_item_table(p_tab_index).EAM_ACTIVITY_CAUSE_CODE := cr.ATTRIBUTE_VALUE;
3031 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EAM_ACT_NOTIFICATION_FLAG' THEN
3032 x_item_table(p_tab_index).EAM_ACT_NOTIFICATION_FLAG := cr.ATTRIBUTE_VALUE;
3033 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EAM_ACT_SHUTDOWN_STATUS' THEN
3034 x_item_table(p_tab_index).EAM_ACT_SHUTDOWN_STATUS := cr.ATTRIBUTE_VALUE;
3035 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DUAL_UOM_CONTROL' THEN
3036 x_item_table(p_tab_index).DUAL_UOM_CONTROL := cr.ATTRIBUTE_VALUE;
3037 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SECONDARY_UOM_CODE' THEN
3038 x_item_table(p_tab_index).SECONDARY_UOM_CODE := cr.ATTRIBUTE_VALUE;
3039 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DUAL_UOM_DEVIATION_HIGH' THEN
3040 x_item_table(p_tab_index).DUAL_UOM_DEVIATION_HIGH := cr.ATTRIBUTE_VALUE;
3041 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DUAL_UOM_DEVIATION_LOW' THEN
3042 x_item_table(p_tab_index).DUAL_UOM_DEVIATION_LOW := cr.ATTRIBUTE_VALUE;
3043 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CONTRACT_ITEM_TYPE_CODE' THEN
3044 x_item_table(p_tab_index).CONTRACT_ITEM_TYPE_CODE := cr.ATTRIBUTE_VALUE;
3045 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SUBSCRIPTION_DEPEND_FLAG' THEN
3046 x_item_table(p_tab_index).SUBSCRIPTION_DEPEND_FLAG := cr.ATTRIBUTE_VALUE;
3047 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SERV_REQ_ENABLED_CODE' THEN
3048 x_item_table(p_tab_index).SERV_REQ_ENABLED_CODE := cr.ATTRIBUTE_VALUE;
3049 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SERV_BILLING_ENABLED_FLAG' THEN
3050 x_item_table(p_tab_index).SERV_BILLING_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
3051 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SERV_IMPORTANCE_LEVEL' THEN
3052 x_item_table(p_tab_index).SERV_IMPORTANCE_LEVEL := cr.ATTRIBUTE_VALUE;
3053 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PLANNED_INV_POINT_FLAG' THEN
3054 x_item_table(p_tab_index).PLANNED_INV_POINT_FLAG := cr.ATTRIBUTE_VALUE;
3055 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.LOT_TRANSLATE_ENABLED' THEN
3056 x_item_table(p_tab_index).LOT_TRANSLATE_ENABLED := cr.ATTRIBUTE_VALUE;
3057 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DEFAULT_SO_SOURCE_TYPE' THEN
3058 x_item_table(p_tab_index).DEFAULT_SO_SOURCE_TYPE := cr.ATTRIBUTE_VALUE;
3059 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CREATE_SUPPLY_FLAG' THEN
3060 x_item_table(p_tab_index).CREATE_SUPPLY_FLAG := cr.ATTRIBUTE_VALUE;
3061 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SUBSTITUTION_WINDOW_CODE' THEN
3062 x_item_table(p_tab_index).SUBSTITUTION_WINDOW_CODE := cr.ATTRIBUTE_VALUE;
3063 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.LOT_SUBSTITUTION_ENABLED' THEN
3064 x_item_table(p_tab_index).LOT_SUBSTITUTION_ENABLED := cr.ATTRIBUTE_VALUE;
3065 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MINIMUM_LICENSE_QUANTITY' THEN
3066 x_item_table(p_tab_index).MINIMUM_LICENSE_QUANTITY := cr.ATTRIBUTE_VALUE;
3067 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EAM_ACTIVITY_SOURCE_CODE' THEN
3068 x_item_table(p_tab_index).EAM_ACTIVITY_SOURCE_CODE := cr.ATTRIBUTE_VALUE;
3069 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.IB_ITEM_INSTANCE_CLASS' THEN
3070 x_item_table(p_tab_index).IB_ITEM_INSTANCE_CLASS := cr.ATTRIBUTE_VALUE;
3071 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CONFIG_MODEL_TYPE' THEN
3072 x_item_table(p_tab_index).CONFIG_MODEL_TYPE := cr.ATTRIBUTE_VALUE;
3073 --Start: 26 new attributes
3074 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.TRACKING_QUANTITY_IND' THEN
3075 x_item_table(p_tab_index).tracking_quantity_ind := cr.ATTRIBUTE_VALUE;
3076 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ONT_PRICING_QTY_SOURCE' THEN
3077 x_item_table(p_tab_index).ont_pricing_qty_source := cr.ATTRIBUTE_VALUE;
3078 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SECONDARY_DEFAULT_IND' THEN
3079 x_item_table(p_tab_index).secondary_default_ind := cr.ATTRIBUTE_VALUE;
3080 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.OPTION_SPECIFIC_SOURCED' THEN
3081 x_item_table(p_tab_index).option_specific_sourced := cr.ATTRIBUTE_VALUE;
3082 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.VMI_MINIMUM_UNITS' THEN
3083 x_item_table(p_tab_index).vmi_minimum_units := cr.ATTRIBUTE_VALUE;
3084 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.VMI_MINIMUM_DAYS' THEN
3085 x_item_table(p_tab_index).vmi_minimum_days := cr.ATTRIBUTE_VALUE;
3086 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.VMI_MAXIMUM_UNITS' THEN
3087 x_item_table(p_tab_index).vmi_maximum_units := cr.ATTRIBUTE_VALUE;
3088 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.VMI_MAXIMUM_DAYS' THEN
3089 x_item_table(p_tab_index).vmi_maximum_days := cr.ATTRIBUTE_VALUE;
3090 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.VMI_FIXED_ORDER_QUANTITY' THEN
3091 x_item_table(p_tab_index).vmi_fixed_order_quantity := cr.ATTRIBUTE_VALUE;
3092 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SO_AUTHORIZATION_FLAG' THEN
3093 x_item_table(p_tab_index).so_authorization_flag := cr.ATTRIBUTE_VALUE;
3094 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CONSIGNED_FLAG' THEN
3095 x_item_table(p_tab_index).consigned_flag := cr.ATTRIBUTE_VALUE;
3096 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ASN_AUTOEXPIRE_FLAG' THEN
3097 x_item_table(p_tab_index).asn_autoexpire_flag := cr.ATTRIBUTE_VALUE;
3098 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.VMI_FORECAST_TYPE' THEN
3099 x_item_table(p_tab_index).vmi_forecast_type := cr.ATTRIBUTE_VALUE;
3100 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.FORECAST_HORIZON' THEN
3101 x_item_table(p_tab_index).forecast_horizon := cr.ATTRIBUTE_VALUE;
3102 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EXCLUDE_FROM_BUDGET_FLAG' THEN
3103 x_item_table(p_tab_index).exclude_from_budget_flag := cr.ATTRIBUTE_VALUE;
3104 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DAYS_TGT_INV_SUPPLY' THEN
3105 x_item_table(p_tab_index).days_tgt_inv_supply := cr.ATTRIBUTE_VALUE;
3106 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DAYS_TGT_INV_WINDOW' THEN
3107 x_item_table(p_tab_index).days_tgt_inv_window := cr.ATTRIBUTE_VALUE;
3108 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DAYS_MAX_INV_SUPPLY' THEN
3109 x_item_table(p_tab_index).days_max_inv_supply := cr.ATTRIBUTE_VALUE;
3110 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DAYS_MAX_INV_WINDOW' THEN
3111 x_item_table(p_tab_index).days_max_inv_window := cr.ATTRIBUTE_VALUE;
3112 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DRP_PLANNED_FLAG' THEN
3113 x_item_table(p_tab_index).drp_planned_flag := cr.ATTRIBUTE_VALUE;
3114 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CRITICAL_COMPONENT_FLAG' THEN
3115 x_item_table(p_tab_index).critical_component_flag := cr.ATTRIBUTE_VALUE;
3116 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CONTINOUS_TRANSFER' THEN
3117 x_item_table(p_tab_index).continous_transfer := cr.ATTRIBUTE_VALUE;
3118 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CONVERGENCE' THEN
3119 x_item_table(p_tab_index).convergence := cr.ATTRIBUTE_VALUE;
3120 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DIVERGENCE' THEN
3121 x_item_table(p_tab_index).divergence := cr.ATTRIBUTE_VALUE;
3122 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CONFIG_ORGS' THEN
3123 x_item_table(p_tab_index).config_orgs := cr.ATTRIBUTE_VALUE;
3124 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CONFIG_MATCH' THEN
3125 x_item_table(p_tab_index).config_match := cr.ATTRIBUTE_VALUE;
3126 --End: 26 new attributes
3127 /* R12 Enhancement */
3128 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CAS_NUMBER' THEN
3129 x_item_table(p_tab_index).CAS_NUMBER := cr.ATTRIBUTE_VALUE;
3130 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CHILD_LOT_FLAG' THEN
3131 x_item_table(p_tab_index).CHILD_LOT_FLAG := cr.ATTRIBUTE_VALUE;
3132 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CHILD_LOT_PREFIX' THEN
3133 x_item_table(p_tab_index).CHILD_LOT_PREFIX := cr.ATTRIBUTE_VALUE;
3134 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CHILD_LOT_STARTING_NUMBER' THEN
3135 x_item_table(p_tab_index).CHILD_LOT_STARTING_NUMBER := cr.ATTRIBUTE_VALUE;
3136 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CHILD_LOT_VALIDATION_FLAG' THEN
3137 x_item_table(p_tab_index).CHILD_LOT_VALIDATION_FLAG := cr.ATTRIBUTE_VALUE;
3138 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.COPY_LOT_ATTRIBUTE_FLAG' THEN
3139 x_item_table(p_tab_index).COPY_LOT_ATTRIBUTE_FLAG := cr.ATTRIBUTE_VALUE;
3140 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.DEFAULT_GRADE ' THEN
3141 x_item_table(p_tab_index).DEFAULT_GRADE := cr.ATTRIBUTE_VALUE;
3142 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EXPIRATION_ACTION_CODE' THEN
3143 x_item_table(p_tab_index).EXPIRATION_ACTION_CODE := cr.ATTRIBUTE_VALUE;
3144 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EXPIRATION_ACTION_INTERVAL' THEN
3145 x_item_table(p_tab_index).EXPIRATION_ACTION_INTERVAL := cr.ATTRIBUTE_VALUE;
3146 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.GRADE_CONTROL_FLAG ' THEN
3147 x_item_table(p_tab_index).GRADE_CONTROL_FLAG := cr.ATTRIBUTE_VALUE;
3148 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.HAZARDOUS_MATERIAL_FLAG' THEN
3149 x_item_table(p_tab_index).HAZARDOUS_MATERIAL_FLAG := cr.ATTRIBUTE_VALUE;
3150 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.HOLD_DAYS' THEN
3151 x_item_table(p_tab_index).HOLD_DAYS := cr.ATTRIBUTE_VALUE;
3152 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.LOT_DIVISIBLE_FLAG' THEN
3153 x_item_table(p_tab_index).LOT_DIVISIBLE_FLAG := cr.ATTRIBUTE_VALUE;
3154 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.MATURITY_DAYS' THEN
3155 x_item_table(p_tab_index).MATURITY_DAYS := cr.ATTRIBUTE_VALUE;
3156 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PARENT_CHILD_GENERATION_FLAG' THEN
3157 x_item_table(p_tab_index).PARENT_CHILD_GENERATION_FLAG := cr.ATTRIBUTE_VALUE;
3158 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PROCESS_COSTING_ENABLED_FLAG' THEN
3159 x_item_table(p_tab_index).PROCESS_COSTING_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
3160 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PROCESS_EXECUTION_ENABLED_FLAG' THEN
3161 x_item_table(p_tab_index).PROCESS_EXECUTION_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
3162 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PROCESS_QUALITY_ENABLED_FLAG' THEN
3163 x_item_table(p_tab_index).PROCESS_QUALITY_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
3164 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PROCESS_SUPPLY_LOCATOR_ID' THEN
3165 x_item_table(p_tab_index).PROCESS_SUPPLY_LOCATOR_ID := cr.ATTRIBUTE_VALUE;
3166 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PROCESS_SUPPLY_SUBINVENTORY' THEN
3167 x_item_table(p_tab_index).PROCESS_SUPPLY_SUBINVENTORY := cr.ATTRIBUTE_VALUE;
3168 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PROCESS_YIELD_LOCATOR_ID' THEN
3169 x_item_table(p_tab_index).PROCESS_YIELD_LOCATOR_ID := cr.ATTRIBUTE_VALUE;
3170 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PROCESS_YIELD_SUBINVENTORY' THEN
3171 x_item_table(p_tab_index).PROCESS_YIELD_SUBINVENTORY := cr.ATTRIBUTE_VALUE;
3172 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RECIPE_ENABLED_FLAG ' THEN
3173 x_item_table(p_tab_index).RECIPE_ENABLED_FLAG := cr.ATTRIBUTE_VALUE;
3174 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.RETEST_INTERVAL' THEN
3175 x_item_table(p_tab_index).RETEST_INTERVAL := cr.ATTRIBUTE_VALUE;
3176 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.CHARGE_PERIODICITY_CODE ' THEN
3177 x_item_table(p_tab_index).CHARGE_PERIODICITY_CODE := cr.ATTRIBUTE_VALUE;
3178 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.REPAIR_LEADTIME' THEN
3179 x_item_table(p_tab_index).REPAIR_LEADTIME := cr.ATTRIBUTE_VALUE;
3180 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.REPAIR_YIELD' THEN
3181 x_item_table(p_tab_index).REPAIR_YIELD := cr.ATTRIBUTE_VALUE;
3182 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PREPOSITION_POINT ' THEN
3183 x_item_table(p_tab_index).PREPOSITION_POINT := cr.ATTRIBUTE_VALUE;
3184 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.REPAIR_PROGRAM' THEN
3185 x_item_table(p_tab_index).REPAIR_PROGRAM := cr.ATTRIBUTE_VALUE;
3186 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SUBCONTRACTING_COMPONENT' THEN
3187 x_item_table(p_tab_index).SUBCONTRACTING_COMPONENT := cr.ATTRIBUTE_VALUE;
3188 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.OUTSOURCED_ASSEMBLY' THEN
3189 x_item_table(p_tab_index).OUTSOURCED_ASSEMBLY := cr.ATTRIBUTE_VALUE;
3190
3191 END IF; -- cr.ATTRIBUTE_NAME
3192 END LOOP; -- cursor c_get_template_attributes
3193
3194 IF ( (l_org_id is NOT NULL) AND (l_org_id = p_organization_id) ) THEN
3195 FOR cr IN c_get_org_template_attributes (cp_template_id => p_template_id) LOOP
3196
3197 IF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.BASE_ITEM_ID' THEN
3198 x_item_table(p_tab_index).BASE_ITEM_ID := cr.ATTRIBUTE_VALUE;
3199 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.COST_OF_SALES_ACCOUNT' THEN
3200 x_item_table(p_tab_index).COST_OF_SALES_ACCOUNT := cr.ATTRIBUTE_VALUE;
3201 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.ENCUMBRANCE_ACCOUNT' THEN
3202 x_item_table(p_tab_index).ENCUMBRANCE_ACCOUNT := cr.ATTRIBUTE_VALUE;
3203 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.EXPENSE_ACCOUNT' THEN
3204 x_item_table(p_tab_index).EXPENSE_ACCOUNT := cr.ATTRIBUTE_VALUE;
3205 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PLANNER_CODE' THEN
3206 x_item_table(p_tab_index).PLANNER_CODE := cr.ATTRIBUTE_VALUE;
3207 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.PLANNING_EXCEPTION_SET' THEN
3208 x_item_table(p_tab_index).PLANNING_EXCEPTION_SET := cr.ATTRIBUTE_VALUE;
3209 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.SALES_ACCOUNT' THEN
3210 x_item_table(p_tab_index).SALES_ACCOUNT := cr.ATTRIBUTE_VALUE;
3211 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.WIP_SUPPLY_LOCATOR_ID' THEN
3212 x_item_table(p_tab_index).WIP_SUPPLY_LOCATOR_ID := cr.ATTRIBUTE_VALUE;
3213 ELSIF cr.ATTRIBUTE_NAME = 'MTL_SYSTEM_ITEMS.WIP_SUPPLY_SUBINVENTORY' THEN
3214 x_item_table(p_tab_index).WIP_SUPPLY_SUBINVENTORY := cr.ATTRIBUTE_VALUE;
3215 END IF;
3216 END LOOP; -- cursor c_get_org_template_attributes
3217 END IF; -- cursor c_get_org_template_attributes
3218
3219 -- setting the flexible attributes here.
3220 FOR cr IN c_get_global_flex_fields (cp_template_id => p_template_id) LOOP
3221 x_item_table(p_tab_index).Global_Attribute_Category := NVL(cr.Global_Attribute_Category,x_item_table(p_tab_index).Global_Attribute_Category);
3222 x_item_table(p_tab_index).Global_Attribute1 := NVL(cr.Global_Attribute1,x_item_table(p_tab_index).Global_Attribute1);
3223 x_item_table(p_tab_index).Global_Attribute2 := NVL(cr.Global_Attribute2,x_item_table(p_tab_index).Global_Attribute2);
3224 x_item_table(p_tab_index).Global_Attribute3 := NVL(cr.Global_Attribute3,x_item_table(p_tab_index).Global_Attribute3);
3225 x_item_table(p_tab_index).Global_Attribute4 := NVL(cr.Global_Attribute4,x_item_table(p_tab_index).Global_Attribute4);
3226 x_item_table(p_tab_index).Global_Attribute5 := NVL(cr.Global_Attribute5,x_item_table(p_tab_index).Global_Attribute5);
3227 x_item_table(p_tab_index).Global_Attribute6 := NVL(cr.Global_Attribute6,x_item_table(p_tab_index).Global_Attribute6);
3228 x_item_table(p_tab_index).Global_Attribute7 := NVL(cr.Global_Attribute7,x_item_table(p_tab_index).Global_Attribute7);
3229 x_item_table(p_tab_index).Global_Attribute8 := NVL(cr.Global_Attribute8,x_item_table(p_tab_index).Global_Attribute8);
3230 x_item_table(p_tab_index).Global_Attribute9 := NVL(cr.Global_Attribute9,x_item_table(p_tab_index).Global_Attribute9);
3231 x_item_table(p_tab_index).Global_Attribute10 := NVL(cr.Global_Attribute10,x_item_table(p_tab_index).Global_Attribute10);
3232 x_item_table(p_tab_index).Global_Attribute11 := NVL(cr.Global_Attribute11,x_item_table(p_tab_index).Global_Attribute11);
3233 x_item_table(p_tab_index).Global_Attribute12 := NVL(cr.Global_Attribute12,x_item_table(p_tab_index).Global_Attribute12);
3234 x_item_table(p_tab_index).Global_Attribute13 := NVL(cr.Global_Attribute13,x_item_table(p_tab_index).Global_Attribute13);
3235 x_item_table(p_tab_index).Global_Attribute14 := NVL(cr.Global_Attribute14,x_item_table(p_tab_index).Global_Attribute14);
3236 x_item_table(p_tab_index).Global_Attribute15 := NVL(cr.Global_Attribute15,x_item_table(p_tab_index).Global_Attribute15);
3237 x_item_table(p_tab_index).Global_Attribute16 := NVL(cr.Global_Attribute16,x_item_table(p_tab_index).Global_Attribute16);
3238 x_item_table(p_tab_index).Global_Attribute17 := NVL(cr.Global_Attribute17,x_item_table(p_tab_index).Global_Attribute17);
3239 x_item_table(p_tab_index).Global_Attribute18 := NVL(cr.Global_Attribute18,x_item_table(p_tab_index).Global_Attribute18);
3240 x_item_table(p_tab_index).Global_Attribute19 := NVL(cr.Global_Attribute19,x_item_table(p_tab_index).Global_Attribute19);
3241 x_item_table(p_tab_index).Global_Attribute20 := NVL(cr.Global_Attribute20,x_item_table(p_tab_index).Global_Attribute20);
3242 END LOOP;
3243
3244 x_return_status := G_RET_STS_SUCCESS;
3245
3246 EXCEPTION
3247 WHEN OTHERS THEN
3248 IF c_get_context_org%ISOPEN THEN
3249 CLOSE c_get_context_org;
3250 END IF;
3251 IF c_get_template_attributes%ISOPEN THEN
3252 CLOSE c_get_template_attributes;
3253 END IF;
3254 IF c_get_org_template_attributes%ISOPEN THEN
3255 CLOSE c_get_org_template_attributes;
3256 END IF;
3257 IF c_get_global_flex_fields%ISOPEN THEN
3258 CLOSE c_get_global_flex_fields;
3259 END IF;
3260 RAISE;
3261 END initialize_template_info;
3262
3263 ---------------------------------------------------------------------------
3264 Procedure Process_Item_Lifecycle(
3265 P_API_VERSION IN NUMBER,
3266 P_INIT_MSG_LIST IN VARCHAR2,
3267 P_INVENTORY_ITEM_ID IN NUMBER,
3268 P_ORGANIZATION_ID IN NUMBER,
3269 P_CATALOG_GROUP_ID IN NUMBER,
3270 P_LIFECYCLE_ID IN NUMBER,
3271 P_CURRENT_PHASE_ID IN NUMBER,
3272 P_ITEM_STATUS IN VARCHAR2,
3273 P_TRANSACTION_TYPE IN VARCHAR2,
3274 P_COMMIT IN VARCHAR2 DEFAULT G_FALSE,
3275 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
3276 X_MSG_COUNT OUT NOCOPY NUMBER) IS
3277 BEGIN
3278 -- create save point
3279 IF FND_API.To_Boolean(p_commit) THEN
3280 SAVEPOINT Process_Item_Lifecycle;
3281 END IF;
3282
3283 X_RETURN_STATUS := FND_API.g_RET_STS_SUCCESS;
3284 X_MSG_COUNT := 0;
3285
3286 IF (P_TRANSACTION_TYPE = G_TTYPE_CREATE) THEN
3287 Create_Item_Lifecycle(
3288 P_API_VERSION => P_API_VERSION,
3289 P_INIT_MSG_LIST => P_INIT_MSG_LIST,
3290 P_COMMIT => P_COMMIT,
3291 P_INVENTORY_ITEM_ID => P_INVENTORY_ITEM_ID,
3292 P_ORGANIZATION_ID => P_ORGANIZATION_ID,
3293 P_LIFECYCLE_ID => P_LIFECYCLE_ID,
3294 P_CURRENT_PHASE_ID => P_CURRENT_PHASE_ID,
3295 P_ITEM_STATUS => P_ITEM_STATUS,
3296 X_RETURN_STATUS => X_RETURN_STATUS,
3297 X_MSG_COUNT => X_MSG_COUNT);
3298 ELSIF (P_TRANSACTION_TYPE = G_TTYPE_UPDATE) THEN
3299 Update_Item_Lifecycle(
3300 P_API_VERSION => P_API_VERSION,
3301 P_INIT_MSG_LIST => P_INIT_MSG_LIST,
3302 P_COMMIT => P_COMMIT,
3303 P_INVENTORY_ITEM_ID => P_INVENTORY_ITEM_ID,
3304 P_ORGANIZATION_ID => P_ORGANIZATION_ID,
3305 P_CATALOG_GROUP_ID => P_CATALOG_GROUP_ID,
3306 P_LIFECYCLE_ID => P_LIFECYCLE_ID,
3307 P_CURRENT_PHASE_ID => P_CURRENT_PHASE_ID,
3308 P_ITEM_STATUS => P_ITEM_STATUS,
3309 X_RETURN_STATUS => X_RETURN_STATUS,
3310 X_MSG_COUNT => X_MSG_COUNT);
3311 END IF;
3312
3313 EXCEPTION
3314 WHEN FND_API.g_EXC_UNEXPECTED_ERROR THEN
3315 IF FND_API.To_Boolean(p_commit) THEN
3316 ROLLBACK TO Process_Item_Lifecycle;
3317 END IF;
3318 X_RETURN_STATUS := FND_API.G_RET_STS_UNEXP_ERROR;
3319 WHEN others THEN
3320 IF FND_API.To_Boolean(p_commit) THEN
3321 ROLLBACK TO Process_Item_Lifecycle;
3322 END IF;
3323 X_RETURN_STATUS := FND_API.G_RET_STS_UNEXP_ERROR;
3324 END Process_Item_Lifecycle;
3325
3326 ---------------------------------------------------------------------------
3327 Procedure Create_Item_Lifecycle(
3328 P_API_VERSION IN NUMBER,
3329 P_INIT_MSG_LIST IN VARCHAR2,
3330 P_INVENTORY_ITEM_ID IN NUMBER,
3331 P_ORGANIZATION_ID IN NUMBER,
3332 P_LIFECYCLE_ID IN NUMBER,
3333 P_CURRENT_PHASE_ID IN NUMBER,
3334 P_ITEM_STATUS IN VARCHAR2,
3335 P_COMMIT IN VARCHAR2 DEFAULT G_FALSE,
3336 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
3337 X_MSG_COUNT OUT NOCOPY NUMBER) IS
3338 BEGIN
3339 -- create save point
3340 IF FND_API.To_Boolean(p_commit) THEN
3341 SAVEPOINT Create_Item_Lifecycle;
3342 END IF;
3343 X_RETURN_STATUS := FND_API.g_RET_STS_SUCCESS;
3344 X_MSG_COUNT := 0;
3345
3346 UPDATE MTL_SYSTEM_ITEMS_B SET LIFECYCLE_ID = P_LIFECYCLE_ID
3347 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID
3348 AND ORGANIZATION_ID = P_ORGANIZATION_ID;
3349
3350 UPDATE MTL_SYSTEM_ITEMS_B SET CURRENT_PHASE_ID = P_CURRENT_PHASE_ID
3351 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID
3352 AND ORGANIZATION_ID = P_ORGANIZATION_ID;
3353
3354 UPDATE MTL_SYSTEM_ITEMS_B SET INVENTORY_ITEM_STATUS_CODE = P_ITEM_STATUS
3355 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID
3356 AND ORGANIZATION_ID = P_ORGANIZATION_ID;
3357
3358 UPDATE MTL_PENDING_ITEM_STATUS SET LIFECYCLE_ID = P_LIFECYCLE_ID
3359 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID
3360 AND ORGANIZATION_ID = P_ORGANIZATION_ID;
3361
3362 UPDATE MTL_PENDING_ITEM_STATUS SET PHASE_ID = P_CURRENT_PHASE_ID
3363 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID
3364 AND ORGANIZATION_ID = P_ORGANIZATION_ID;
3365
3366 UPDATE MTL_PENDING_ITEM_STATUS SET STATUS_CODE = P_ITEM_STATUS
3367 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID
3368 AND ORGANIZATION_ID = P_ORGANIZATION_ID;
3369
3370 IF FND_API.To_Boolean(p_commit) THEN
3371 COMMIT WORK;
3372 END IF;
3373
3374 EXCEPTION
3375 WHEN FND_API.g_EXC_UNEXPECTED_ERROR THEN
3376 IF FND_API.To_Boolean(p_commit) THEN
3377 ROLLBACK TO Create_Item_Lifecycle;
3378 END IF;
3379 X_RETURN_STATUS := FND_API.G_RET_STS_UNEXP_ERROR;
3380 WHEN others THEN
3381 IF FND_API.To_Boolean(p_commit) THEN
3382 ROLLBACK TO Create_Item_Lifecycle;
3383 END IF;
3384 X_RETURN_STATUS := FND_API.G_RET_STS_UNEXP_ERROR;
3385 END Create_Item_Lifecycle;
3386
3387 ---------------------------------------------------------------------------
3388 Procedure Update_Item_Lifecycle(
3389 P_API_VERSION IN NUMBER,
3390 P_INIT_MSG_LIST IN VARCHAR2,
3391 P_INVENTORY_ITEM_ID IN NUMBER,
3392 P_ORGANIZATION_ID IN NUMBER,
3393 P_CATALOG_GROUP_ID IN NUMBER,
3394 P_LIFECYCLE_ID IN NUMBER,
3395 P_CURRENT_PHASE_ID IN NUMBER,
3396 P_ITEM_STATUS IN VARCHAR2,
3397 P_COMMIT IN VARCHAR2 DEFAULT G_FALSE,
3398 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
3399 X_MSG_COUNT OUT NOCOPY NUMBER) IS
3400
3401 CURSOR ego_item_assigned_org_csr (
3402 v_inventory_item_id IN MTL_SYSTEM_ITEMS_B.INVENTORY_ITEM_ID%TYPE,
3403 v_master_organization_id IN MTL_SYSTEM_ITEMS_B.ORGANIZATION_ID%TYPE)
3404 IS
3405 SELECT ORGANIZATION_ID
3406 FROM MTL_SYSTEM_ITEMS_VL
3407 WHERE INVENTORY_ITEM_ID = v_inventory_item_id
3408 AND ORGANIZATION_ID <> v_master_organization_id;
3409
3410 L_SYSDATE DATE := Sysdate;
3411 L_LIFECYCLE_ID NUMBER;
3412 L_CURRENT_PHASE_ID NUMBER;
3413 L_MASTER_ORGANIZATION_ID NUMBER;
3414 L_ORGANIZATION_ID NUMBER;
3415 L_ITEM_ASSIGNED_ORG_REC ego_item_assigned_org_csr%ROWTYPE;
3416 L_CONTROL_LEVEL NUMBER;
3417
3418 BEGIN
3419 -- create save point
3420 IF FND_API.To_Boolean(p_commit) THEN
3421 SAVEPOINT Update_Item_Lifecycle;
3422 END IF;
3423 X_RETURN_STATUS := FND_API.g_RET_STS_SUCCESS;
3424 X_MSG_COUNT := 0;
3425
3426 L_MASTER_ORGANIZATION_ID := EGO_ITEM_PUB.Get_Master_Organization_Id(P_ORGANIZATION_ID => P_ORGANIZATION_ID);
3427
3428 IF (P_ORGANIZATION_ID = L_MASTER_ORGANIZATION_ID) THEN
3429 IF (P_CATALOG_GROUP_ID IS NULL) THEN
3430 UPDATE MTL_SYSTEM_ITEMS_B SET LIFECYCLE_ID = NULL
3431 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID;
3432
3433 UPDATE MTL_SYSTEM_ITEMS_B SET CURRENT_PHASE_ID = NULL
3434 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID;
3435 ELSE
3436 L_CONTROL_LEVEL := EGO_ITEM_PUB.Get_Item_Attr_Control_Level(P_ITEM_ATTRIBUTE => 'MTL_SYSTEM_ITEMS.INVENTORY_ITEM_STATUS_CODE');
3437
3438 -- Insert a row to Mtl_Pending_Item_Status table with master organization id
3439 -- and pending_flag = N.
3440 INSERT INTO MTL_PENDING_ITEM_STATUS(
3441 INVENTORY_ITEM_ID,
3442 ORGANIZATION_ID,
3443 EFFECTIVE_DATE,
3444 IMPLEMENTED_DATE,
3445 PENDING_FLAG,
3446 LAST_UPDATE_DATE,
3447 LAST_UPDATED_BY,
3448 CREATION_DATE,
3449 CREATED_BY,
3450 LIFECYCLE_ID,
3451 PHASE_ID,
3452 STATUS_CODE)
3453 VALUES(
3454 P_INVENTORY_ITEM_ID,
3455 L_MASTER_ORGANIZATION_ID,
3456 L_SYSDATE,
3457 L_SYSDATE,
3458 'N',
3459 L_SYSDATE,
3460 g_USER_ID,
3461 L_SYSDATE,
3462 g_USER_ID,
3463 P_LIFECYCLE_ID,
3464 P_CURRENT_PHASE_ID,
3465 P_ITEM_STATUS);
3466
3467 IF (L_CONTROL_LEVEL = 2) THEN
3468 -- Org Control
3469 UPDATE MTL_SYSTEM_ITEMS_B SET LIFECYCLE_ID = P_LIFECYCLE_ID
3470 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID
3471 AND ORGANIZATION_ID = L_MASTER_ORGANIZATION_ID;
3472
3473 UPDATE MTL_SYSTEM_ITEMS_B SET CURRENT_PHASE_ID = P_CURRENT_PHASE_ID
3474 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID
3475 AND ORGANIZATION_ID = L_MASTER_ORGANIZATION_ID;
3476
3477 OPEN ego_item_assigned_org_csr
3478 (v_inventory_item_id => P_INVENTORY_ITEM_ID,
3479 v_master_organization_id => L_MASTER_ORGANIZATION_ID);
3480 LOOP
3481 FETCH ego_item_assigned_org_csr INTO L_ITEM_ASSIGNED_ORG_REC;
3482 EXIT WHEN ego_item_assigned_org_csr%NOTFOUND;
3483
3484 INSERT INTO MTL_PENDING_ITEM_STATUS(
3485 INVENTORY_ITEM_ID,
3486 ORGANIZATION_ID,
3487 EFFECTIVE_DATE,
3488 PENDING_FLAG,
3489 LAST_UPDATE_DATE,
3490 LAST_UPDATED_BY,
3491 CREATION_DATE,
3492 CREATED_BY,
3493 LIFECYCLE_ID,
3494 PHASE_ID,
3495 STATUS_CODE)
3496 VALUES(
3497 P_INVENTORY_ITEM_ID,
3498 L_ITEM_ASSIGNED_ORG_REC.ORGANIZATION_ID,
3499 L_SYSDATE,
3500 'Y',
3501 L_SYSDATE,
3502 g_USER_ID,
3503 L_SYSDATE,
3504 g_USER_ID,
3505 P_LIFECYCLE_ID,
3506 P_CURRENT_PHASE_ID,
3507 P_ITEM_STATUS);
3508
3509 END LOOP;
3510 CLOSE ego_item_assigned_org_csr;
3511 ELSE
3512 -- Master Control
3513 UPDATE MTL_SYSTEM_ITEMS_B SET LIFECYCLE_ID = P_LIFECYCLE_ID
3514 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID;
3515
3516 UPDATE MTL_SYSTEM_ITEMS_B SET CURRENT_PHASE_ID = P_CURRENT_PHASE_ID
3517 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID;
3518
3519 OPEN ego_item_assigned_org_csr
3520 (v_inventory_item_id => P_INVENTORY_ITEM_ID,
3521 v_master_organization_id => L_MASTER_ORGANIZATION_ID);
3522 LOOP
3523 FETCH ego_item_assigned_org_csr INTO L_ITEM_ASSIGNED_ORG_REC;
3524 EXIT WHEN ego_item_assigned_org_csr%NOTFOUND;
3525
3526 INSERT INTO MTL_PENDING_ITEM_STATUS(
3527 INVENTORY_ITEM_ID,
3528 ORGANIZATION_ID,
3529 EFFECTIVE_DATE,
3530 IMPLEMENTED_DATE,
3531 PENDING_FLAG,
3532 LAST_UPDATE_DATE,
3533 LAST_UPDATED_BY,
3534 CREATION_DATE,
3535 CREATED_BY,
3536 LIFECYCLE_ID,
3537 PHASE_ID,
3538 STATUS_CODE)
3539 VALUES(
3540 P_INVENTORY_ITEM_ID,
3541 L_ITEM_ASSIGNED_ORG_REC.ORGANIZATION_ID,
3542 L_SYSDATE,
3543 L_SYSDATE,
3544 'N',
3545 L_SYSDATE,
3546 g_USER_ID,
3547 L_SYSDATE,
3548 g_USER_ID,
3549 P_LIFECYCLE_ID,
3550 P_CURRENT_PHASE_ID,
3551 P_ITEM_STATUS);
3552 END LOOP;
3553 CLOSE ego_item_assigned_org_csr;
3554 END IF;
3555 END IF;
3556 END IF;
3557
3558 Update_Item_Attr_Ext(
3559 P_API_VERSION => P_API_VERSION,
3560 P_INIT_MSG_LIST => P_INIT_MSG_LIST,
3561 P_COMMIT => P_COMMIT,
3562 P_INVENTORY_ITEM_ID => P_INVENTORY_ITEM_ID,
3563 P_ITEM_CATALOG_GROUP_ID => P_CATALOG_GROUP_ID,
3564 X_RETURN_STATUS => X_RETURN_STATUS,
3565 X_MSG_COUNT => X_MSG_COUNT);
3566
3567 IF FND_API.To_Boolean(p_commit) THEN
3568 COMMIT WORK;
3569 END IF;
3570
3571 EXCEPTION
3572 WHEN FND_API.g_EXC_UNEXPECTED_ERROR THEN
3573 IF FND_API.To_Boolean(p_commit) THEN
3574 ROLLBACK TO Update_Item_Lifecycle;
3575 END IF;
3576 X_RETURN_STATUS := FND_API.G_RET_STS_UNEXP_ERROR;
3577 WHEN others THEN
3578 IF FND_API.To_Boolean(p_commit) THEN
3579 ROLLBACK TO Update_Item_Lifecycle;
3580 END IF;
3581 X_RETURN_STATUS := FND_API.G_RET_STS_UNEXP_ERROR;
3582
3583 END Update_Item_Lifecycle;
3584
3585 ---------------------------------------------------------------------------
3586 Procedure Update_Item_Attr_Ext(
3587 P_API_VERSION IN NUMBER,
3588 P_INIT_MSG_LIST IN VARCHAR2,
3589 P_INVENTORY_ITEM_ID IN NUMBER,
3590 P_ITEM_CATALOG_GROUP_ID IN NUMBER,
3591 P_COMMIT IN VARCHAR2 DEFAULT G_FALSE,
3592 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
3593 X_MSG_COUNT OUT NOCOPY NUMBER) IS
3594
3595 BEGIN
3596
3597 -- create save point
3598 IF FND_API.To_Boolean(p_commit) THEN
3599 SAVEPOINT Update_Item_Attr_Ext;
3600 END IF;
3601
3602 X_RETURN_STATUS := FND_API.g_RET_STS_SUCCESS;
3603 X_MSG_COUNT := 0;
3604
3605 IF (P_ITEM_CATALOG_GROUP_ID IS NULL) THEN --delete query changed by absinha for Bug 3542129
3606 DELETE FROM EGO_MTL_SY_ITEMS_EXT_B WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID
3607 AND ATTR_GROUP_ID NOT IN (SELECT ATTR_GROUP_ID FROM EGO_ATTR_GROUPS_V WHERE APPLICATION_ID = 431
3608 AND ATTR_GROUP_TYPE = 'EGO_ITEMMGMT_GROUP' AND (ATTR_GROUP_NAME = 'ItemDetailDesc' OR ATTR_GROUP_NAME = 'ItemDetailImage'));
3609 DELETE FROM EGO_MTL_SY_ITEMS_EXT_TL WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID
3610 AND ATTR_GROUP_ID NOT IN (SELECT ATTR_GROUP_ID FROM EGO_ATTR_GROUPS_V WHERE APPLICATION_ID = 431
3611 AND ATTR_GROUP_TYPE = 'EGO_ITEMMGMT_GROUP' AND (ATTR_GROUP_NAME = 'ItemDetailDesc' OR ATTR_GROUP_NAME = 'ItemDetailImage'));
3612 ELSE
3613 UPDATE EGO_MTL_SY_ITEMS_EXT_B
3614 SET ITEM_CATALOG_GROUP_ID = P_ITEM_CATALOG_GROUP_ID
3615 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID;
3616
3617 UPDATE EGO_MTL_SY_ITEMS_EXT_TL
3618 SET ITEM_CATALOG_GROUP_ID = P_ITEM_CATALOG_GROUP_ID
3619 WHERE INVENTORY_ITEM_ID = P_INVENTORY_ITEM_ID;
3620 END IF;
3621
3622 IF FND_API.To_Boolean(p_commit) THEN
3623 COMMIT WORK;
3624 END IF;
3625
3626 EXCEPTION
3627 WHEN FND_API.g_EXC_UNEXPECTED_ERROR THEN
3628 IF FND_API.To_Boolean(p_commit) THEN
3629 ROLLBACK TO Update_Item_Attr_Ext;
3630 END IF;
3631 X_RETURN_STATUS := FND_API.G_RET_STS_UNEXP_ERROR;
3632 WHEN others THEN
3633 IF FND_API.To_Boolean(p_commit) THEN
3634 ROLLBACK TO Update_Item_Attr_Ext;
3635 END IF;
3636 X_RETURN_STATUS := FND_API.G_RET_STS_UNEXP_ERROR;
3637 END Update_Item_Attr_Ext;
3638
3639
3640 FUNCTION Get_Master_Organization_Id(P_ORGANIZATION_ID IN NUMBER) RETURN NUMBER IS
3641 L_MASTER_ORGANIZATION_ID NUMBER;
3642 BEGIN
3643 SELECT MP.MASTER_ORGANIZATION_ID INTO L_MASTER_ORGANIZATION_ID
3644 FROM MTL_PARAMETERS MP
3645 WHERE MP.ORGANIZATION_ID = P_ORGANIZATION_ID;
3646
3647 RETURN L_MASTER_ORGANIZATION_ID;
3648
3649 END Get_Master_Organization_Id;
3650
3651 FUNCTION Get_Item_Attr_Control_Level(P_ITEM_ATTRIBUTE IN VARCHAR2) RETURN NUMBER IS
3652 L_CONTROL_LEVEL NUMBER;
3653 BEGIN
3654 SELECT LOOKUP_CODE2 INTO L_CONTROL_LEVEL
3655 FROM MTL_ITEM_ATTRIBUTES_V
3656 WHERE ATTRIBUTE_NAME = P_ITEM_ATTRIBUTE;
3657
3658 RETURN L_CONTROL_LEVEL;
3659
3660 END Get_Item_Attr_Control_Level;
3661
3662 FUNCTION Get_Item_Count(
3663 p_catalog_group_id IN NUMBER
3664 ,p_organization_id IN NUMBER) RETURN NUMBER
3665 IS
3666 l_total_count NUMBER :=0;
3667 l_str_cat_id VARCHAR2(4000);
3668 l_sql VARCHAR2(15000);
3669 BEGIN
3670 l_str_cat_id := null;
3671 FOR i IN (SELECT item_catalog_group_id
3672 FROM mtl_item_catalog_groups_b b
3673 CONNECT BY PRIOR item_catalog_group_id = parent_catalog_group_id
3674 START WITH b.item_catalog_group_id = p_catalog_group_id)
3675 LOOP
3676 IF l_str_cat_id IS NULL THEN
3677 l_str_cat_id := l_str_cat_id || i.item_catalog_group_id;
3678 ELSE
3679 l_str_cat_id := l_str_cat_id || ',' || i.item_catalog_group_id;
3680 END IF;
3681 END LOOP;
3682
3683 IF l_str_cat_id IS NULL THEN
3684 l_sql := 'SELECT COUNT(1) FROM mtl_system_items_b a ' ||
3685 'WHERE a.organization_id = ' || p_organization_id;
3686 ELSE
3687 l_sql := 'SELECT COUNT(1) FROM mtl_system_items_b a ' ||
3688 'WHERE a.organization_id = ' || p_organization_id ||
3689 ' AND item_catalog_group_id in (' || l_str_cat_id || ')';
3690 END IF;
3691
3692 EXECUTE IMMEDIATE l_sql INTO l_total_count;
3693 RETURN l_total_count;
3694
3695 EXCEPTION WHEN OTHERS THEN
3696 NULL;
3697 END get_item_count;
3698
3699 FUNCTION Get_Category_Item_Count(
3700 P_CATEGORY_SET_ID IN NUMBER,
3701 P_CATEGORY_ID IN NUMBER,
3702 P_ORGANIZATION_ID IN NUMBER) RETURN NUMBER IS
3703
3704 l_total_count NUMBER := 0;
3705 BEGIN
3706 IF (P_CATEGORY_ID <> -1) THEN
3707 select count(*) into l_total_count
3708 from mtl_item_categories a
3709 where category_id in (
3710 select category_id
3711 from mtl_category_set_valid_cats
3712 start with category_id = P_CATEGORY_ID
3713 and category_set_id = P_CATEGORY_SET_ID --Corrected the connect clause in count query
3714 connect by prior category_id = parent_category_id
3715 and category_set_id = P_CATEGORY_SET_ID)
3716 and a.organization_id = P_ORGANIZATION_ID
3717 and a.category_set_id = P_CATEGORY_SET_ID;
3718 ELSE
3719 select count(*) into l_total_count
3720 from mtl_item_categories a
3721 where a.organization_id = P_ORGANIZATION_ID
3722 and a.category_set_id = P_CATEGORY_SET_ID;
3723 END IF;
3724
3725 return l_total_count;
3726
3727 EXCEPTION
3728 WHEN OTHERS THEN
3729 NULL;
3730 END Get_Category_Item_Count;
3731
3732 FUNCTION Get_Category_Hierarchy_Names(
3733 P_CATEGORY_SET_ID IN NUMBER,
3734 P_CATEGORY_ID IN NUMBER) RETURN VARCHAR2 IS
3735
3736 CURSOR get_parent_category_id_csr
3737 (p_category_set_id IN NUMBER,
3738 p_category_id IN NUMBER ) IS
3739 SELECT IC.CATEGORY_ID,
3740 IC.PARENT_CATEGORY_ID
3741 FROM MTL_CATEGORY_SET_VALID_CATS IC
3742 START WITH CATEGORY_ID = p_category_id --3030474
3743 AND CATEGORY_SET_ID = p_category_set_id
3744 CONNECT BY PRIOR PARENT_CATEGORY_ID = CATEGORY_ID
3745 AND CATEGORY_SET_ID = p_category_set_id;
3746
3747 l_parent_categories get_parent_category_id_csr%ROWTYPE;
3748 l_category_set_name VARCHAR2(30);
3749 l_category_name VARCHAR2(122);
3750 l_category_hierarchy_names VARCHAR2(1000);
3751 l_tmp_names VARCHAR2(1000);
3752
3753 BEGIN
3754
3755 SELECT CATEGORY_SET_NAME into l_category_set_name
3756 FROM MTL_CATEGORY_SETS_VL
3757 WHERE CATEGORY_SET_ID = P_CATEGORY_SET_ID;
3758
3759 OPEN get_parent_category_id_csr
3760 (p_category_set_id => P_CATEGORY_SET_ID,
3761 p_category_id => P_CATEGORY_ID);
3762 LOOP
3763 FETCH get_parent_category_id_csr into l_parent_categories;
3764 EXIT WHEN get_parent_category_id_csr%NOTFOUND;
3765
3766 SELECT C.CONCATENATED_SEGMENTS into l_category_name
3767 FROM MTL_CATEGORIES_KFV C
3768 WHERE C.CATEGORY_ID = l_parent_categories.CATEGORY_ID;
3769
3770 l_tmp_names := l_category_hierarchy_names;
3771 IF (l_tmp_names IS NULL) THEN
3772 l_category_hierarchy_names := l_category_name;
3773 ELSE
3774 l_category_hierarchy_names := l_category_name || ' > ' || l_tmp_names;
3775 END IF;
3776 END LOOP;
3777 CLOSE get_parent_category_id_csr;
3778
3779 l_tmp_names := l_category_hierarchy_names;
3780 --Bug: 3018903 Added If condition
3781 IF l_tmp_names IS NOT NULL THEN
3782 l_category_hierarchy_names := l_category_set_name || ' > ' || l_tmp_names;
3783 ELSE
3784 SELECT C.CONCATENATED_SEGMENTS into l_category_hierarchy_names
3785 FROM MTL_CATEGORIES_KFV C
3786 WHERE C.CATEGORY_ID = p_category_id;
3787 END IF;
3788
3789 RETURN l_category_hierarchy_names;
3790
3791 END Get_Category_Hierarchy_Names;
3792
3793 --------------------------------------------------------------------------------
3794 -- Added for bug 3781216
3795 PROCEDURE Apply_Templ_User_Attrs_To_Item (
3796 p_api_version IN NUMBER
3797 ,p_mode IN VARCHAR2 -- if CREATE, just apply. else check change policy
3798 ,p_item_id IN NUMBER
3799 ,p_organization_id IN NUMBER
3800 ,p_template_id IN NUMBER
3801 ,p_object_name IN VARCHAR2
3802 ,p_class_code_name_value_pairs IN EGO_COL_NAME_VALUE_PAIR_ARRAY
3803 ,p_data_level_name_value_pairs IN EGO_COL_NAME_VALUE_PAIR_ARRAY DEFAULT NULL
3804 ,x_return_status OUT NOCOPY VARCHAR2
3805 ,x_errorcode OUT NOCOPY NUMBER
3806 ,x_msg_count OUT NOCOPY NUMBER
3807 ,x_msg_data OUT NOCOPY VARCHAR2
3808 ) IS
3809
3810 l_api_name CONSTANT VARCHAR2(30) := 'Apply_Templ_User_Attrs_To_Item';
3811 l_api_version CONSTANT NUMBER := 1.0;
3812 l_policy_object_name CONSTANT VARCHAR2(30) := 'CATALOG_LIFECYCLE_PHASE';
3813 l_policy_code CONSTANT VARCHAR2(30) := 'CHANGE_POLICY';
3814 l_attr_object_name CONSTANT VARCHAR2(30) := 'EGO_CATALOG_GROUP';
3815 l_attr_code CONSTANT VARCHAR2(30) := 'ATTRIBUTE_GROUP';
3816 l_acceptable_policy CONSTANT VARCHAR2(30) := 'ALLOWED';
3817
3818 l_pk_column_name_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
3819 l_attr_group_ids EGO_NUMBER_TBL_TYPE := NULL;
3820 l_attr_group_ids_to_exclude EGO_NUMBER_TBL_TYPE := NULL;
3821 l_perform_dml BOOLEAN := TRUE;
3822 l_lc_catalog_cat_id NUMBER;
3823 l_catalog_category_id NUMBER;
3824 l_lifecycle_id NUMBER;
3825 l_current_phase_id NUMBER;
3826 l_policy_value VARCHAR2(100);
3827 l_dynamic_sql VARCHAR2(32767);
3828
3829
3830 -----------------------------------------------------------------------
3831 -- Variables used to query UCCnet Attr Groups to exclude from
3832 -- Template Application. (PPEDDAMA)
3833 -----------------------------------------------------------------------
3834 l_attr_grp_table DBMS_SQL.VARCHAR2_TABLE;
3835 l_attr_grp_cursor INTEGER;
3836 l_attr_grp_exec INTEGER;
3837 l_attr_grp_dyn_sql VARCHAR2(10000);
3838 l_attr_grp_rows_cnt NUMBER;
3839 -----------------------------------------------------------------------
3840
3841 CURSOR c_get_lc_catalog_cat_id (cp_catalog_category_id IN NUMBER
3842 ,cp_lifecycle_id IN NUMBER) IS
3843 --
3844 -- this code does not return the first catalog category id in the hierarchy
3845 --
3846 -- SELECT olc.object_classification_code
3847 -- FROM ego_obj_type_lifecycles olc, fnd_objects o
3848 -- WHERE o.obj_name = G_EGO_ITEM
3849 -- AND olc.object_id = o.object_id
3850 -- AND olc.lifecycle_id = cp_lifecycle_id
3851 -- AND olc.object_classification_code IN
3852 -- (SELECT TO_CHAR(ic.catalog_group_id)
3853 -- FROM ego_catalog_groups_v ic
3854 -- CONNECT BY PRIOR parent_catalog_group_id = catalog_group_id
3855 -- START WITH catalog_group_id = cp_catalog_category_id
3856 -- );
3857 --
3858 -- fix for bug 3681654
3859 -- using mtl_item_catalog_groups_b instead of ego_catalog_groups_v
3860 SELECT ic.item_catalog_group_id
3861 FROM mtl_item_catalog_groups_b ic
3862 WHERE EXISTS
3863 (
3864 SELECT olc.object_classification_code CatalogId
3865 FROM ego_obj_type_lifecycles olc, fnd_objects o
3866 WHERE o.obj_name = 'EGO_ITEM'
3867 AND olc.object_id = o.object_id
3868 AND olc.lifecycle_id = cp_lifecycle_id
3869 AND olc.object_classification_code = to_char(ic.item_catalog_group_id)
3870 )
3871 CONNECT BY PRIOR parent_catalog_group_id = item_catalog_group_id
3872 START WITH item_catalog_group_id = cp_catalog_category_id;
3873
3874 BEGIN
3875 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('Entered Apply_Templ_User_Attrs_To_Item ');
3876
3877 x_return_status := G_RET_STS_SUCCESS;
3878
3879 -- Check for call compatibility
3880 IF NOT FND_API.Compatible_API_Call ( l_api_version, p_api_version,
3881 l_api_name, G_PKG_NAME )
3882 THEN
3883 RAISE FND_API.g_EXC_UNEXPECTED_ERROR;
3884 END IF;
3885
3886 l_pk_column_name_value_pairs :=
3887 EGO_COL_NAME_VALUE_PAIR_ARRAY
3888 (EGO_COL_NAME_VALUE_PAIR_OBJ( 'INVENTORY_ITEM_ID'
3889 , to_char(p_item_id))
3890 ,EGO_COL_NAME_VALUE_PAIR_OBJ( 'ORGANIZATION_ID'
3891 , to_char(p_organization_id))
3892 );
3893
3894
3895 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('Apply_Templ_User_Attrs_To_Item: Template ID = '||p_template_id);
3896 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('Apply_Templ_User_Attrs_To_Item: p_mode = '||p_mode);
3897
3898 IF (p_mode <> G_TTYPE_CREATE) THEN
3899
3900 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('Apply_Templ_User_Attrs_To_Item: p_mode <> G_TTYPE_CREATE');
3901 -- check if CM exists
3902 IF (EGO_ITEM_AML_PUB.Check_CM_Existance() = G_RET_STS_SUCCESS) THEN
3903
3904 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('Apply_Templ_User_Attrs_To_Item: CM Exists!');
3905
3906 -- ENG exists
3907 -- check for policy control
3908 l_dynamic_sql :=
3909 ' SELECT item_catalog_group_id, lifecycle_id, current_phase_id' ||
3910 ' FROM mtl_system_items_b ' ||
3911 ' WHERE inventory_item_id = :1' ||
3912 ' AND organization_id = :2';
3913 EXECUTE IMMEDIATE l_dynamic_sql
3914 INTO l_catalog_category_id, l_lifecycle_id, l_current_phase_id
3915 USING p_item_id, p_organization_id;
3916
3917 -- check if the values are present.
3918 IF (l_catalog_category_id IS NOT NULL
3919 AND l_lifecycle_id IS NOT NULL
3920 AND l_current_phase_id IS NOT NULL
3921 ) THEN
3922
3923 -- get the catalog_group id from which the life cycle is associated
3924 OPEN c_get_lc_catalog_cat_id
3925 (cp_catalog_category_id => l_catalog_category_id
3926 ,cp_lifecycle_id => l_lifecycle_id
3927 );
3928 FETCH c_get_lc_catalog_cat_id INTO l_lc_catalog_cat_id;
3929 CLOSE c_get_lc_catalog_cat_id;
3930
3931 -- get list of attribute groups to check
3932 SELECT DISTINCT attribute_group_id
3933 BULK COLLECT INTO l_attr_group_ids
3934 FROM ego_templ_attributes
3935 WHERE template_id = p_template_id;
3936
3937 FOR a IN l_attr_group_ids.FIRST .. l_attr_group_ids.LAST
3938 LOOP
3939
3940 l_dynamic_sql :=
3941 ' BEGIN '||
3942 ' ENG_CHANGE_POLICY_PKG.GetChangePolicy '||
3943 ' ( '||
3944 ' p_policy_object_name => :l_policy_object_name '||
3945 ' , p_policy_code => :l_policy_code '||
3946 ' , p_policy_pk1_value => TO_CHAR(:l_lc_catalog_cat_id) '||
3947 ' , p_policy_pk2_value => TO_CHAR(:l_lifecycle_id) '||
3948 ' , p_policy_pk3_value => TO_CHAR(:l_current_phase_id) '||
3949 ' , p_policy_pk4_value => NULL '||
3950 ' , p_policy_pk5_value => NULL '||
3951 ' , p_attribute_object_name => :l_attr_object_name '||
3952 ' , p_attribute_code => :l_attr_code '||
3953 ' , p_attribute_value => :l_attr_group_id '||
3954 ' , x_policy_value => :l_policy_value '||
3955 ' ); '||
3956 ' END;';
3957
3958 EXECUTE IMMEDIATE l_dynamic_sql
3959 USING IN l_policy_object_name,
3960 IN l_policy_code,
3961 IN l_lc_catalog_cat_id,
3962 IN l_lifecycle_id,
3963 IN l_current_phase_id,
3964 IN l_attr_object_name,
3965 IN l_attr_code,
3966 IN l_attr_group_ids(a),
3967 OUT l_policy_value;
3968
3969 IF (l_policy_value IS NOT NULL AND
3970 l_policy_value <> l_acceptable_policy) THEN
3971
3972 IF l_attr_group_ids_to_exclude IS NULL THEN
3973
3974 l_attr_group_ids_to_exclude := EGO_NUMBER_TBL_TYPE();
3975
3976 END IF;
3977
3978 -- exclude this attribute group
3979 l_attr_group_ids_to_exclude.EXTEND();
3980 l_attr_group_ids_to_exclude(l_attr_group_ids_to_exclude.LAST)
3981 := l_attr_group_ids(a);
3982
3983 END IF;
3984
3985 END LOOP; -- loop through l_attr_group_ids
3986
3987 END IF; -- if cat, lifecycle, and phase are not null
3988
3989 END IF; -- if CM exists
3990
3991 END IF; -- if mode is not CREATE
3992
3993 -----------------------------------------------------------------
3994 -- PPEDDAMA (11th October 2004) --
3995 -- Append to the list of attribute group ids to exclude, the --
3996 -- UCCnet related Attribute groups, as the Template application--
3997 -- is taken care of in Java code for these Attrs. --
3998 -----------------------------------------------------------------
3999 EGO_USER_ATTRS_DATA_PVT.Debug_Msg(' About to call the UCCnet attrs exclude code');
4000 l_attr_grp_dyn_sql := '';
4001 l_attr_grp_dyn_sql := l_attr_grp_dyn_sql || 'SELECT DISTINCT ATTRIBUTE_GROUP_ID ';
4002 l_attr_grp_dyn_sql := l_attr_grp_dyn_sql || 'FROM EGO_TEMPL_ATTRIBUTES T ';
4003 l_attr_grp_dyn_sql := l_attr_grp_dyn_sql || 'WHERE T.TEMPLATE_ID = :TEMPL_ID ';
4004 l_attr_grp_dyn_sql := l_attr_grp_dyn_sql || 'AND ( ';
4005 l_attr_grp_dyn_sql := l_attr_grp_dyn_sql || ' SELECT E.DESCRIPTIVE_FLEXFIELD_NAME ';
4006 l_attr_grp_dyn_sql := l_attr_grp_dyn_sql || ' FROM EGO_FND_DSC_FLX_CTX_EXT E ';
4007 l_attr_grp_dyn_sql := l_attr_grp_dyn_sql || ' WHERE E.ATTR_GROUP_ID = T.ATTRIBUTE_GROUP_ID ';
4008 l_attr_grp_dyn_sql := l_attr_grp_dyn_sql || ' ) ';
4009 l_attr_grp_dyn_sql := l_attr_grp_dyn_sql || ' IN (''EGO_ITEM_GTIN_ATTRS'', ''EGO_ITEM_GTIN_MULTI_ATTRS'') ';
4010
4011 l_attr_grp_cursor := DBMS_SQL.OPEN_CURSOR;
4012 DBMS_SQL.PARSE(l_attr_grp_cursor, l_attr_grp_dyn_sql, DBMS_SQL.NATIVE);
4013
4014 LOOP -- Loop for every 2500 rows.
4015
4016 DBMS_SQL.DEFINE_ARRAY(
4017 c => l_attr_grp_cursor -- cursor --
4018 , position => 1 -- select position --
4019 , c_tab => l_attr_grp_table -- table of numbers --
4020 , cnt => 2500 -- rows requested --
4021 , lower_bound => 1 -- start at --
4022 );
4023
4024 DBMS_SQL.BIND_VARIABLE(l_attr_grp_cursor, ':TEMPL_ID', p_template_id);
4025
4026 l_attr_grp_exec := DBMS_SQL.EXECUTE(l_attr_grp_cursor);
4027 l_attr_grp_rows_cnt := DBMS_SQL.FETCH_ROWS(l_attr_grp_cursor);
4028
4029 DBMS_SQL.COLUMN_VALUE(l_attr_grp_cursor, 1, l_attr_grp_table);
4030
4031 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('load_item_oper_attr_values: Retrieved rows => '||To_char(l_attr_grp_rows_cnt));
4032
4033 FOR i IN 1..l_attr_grp_table.COUNT LOOP
4034
4035 -----------------------------------------------------------------------
4036 -- If the Exclusion Number table is NULL, then create new.
4037 -----------------------------------------------------------------------
4038 IF l_attr_group_ids_to_exclude IS NULL THEN
4039 l_attr_group_ids_to_exclude := EGO_NUMBER_TBL_TYPE();
4040 END IF;
4041
4042 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('Attr Grp ID => '|| l_attr_grp_table(i));
4043 -----------------------------------------------------------------------
4044 -- Add these retrieved Attr Grp IDs to the end of existing:
4045 -- Exclusion Attr Grp IDs table (l_attr_group_ids_to_exclude)
4046 -----------------------------------------------------------------------
4047 --l_attr_group_ids_to_exclude.EXTEND();
4048 --l_attr_group_ids_to_exclude(l_attr_group_ids_to_exclude.LAST) := l_attr_grp_table(i);
4049 --instead of plain appending, merge the entry, so that unique values exist.
4050 Merge_New_Entry(l_attr_group_ids_to_exclude, l_attr_grp_table(i));
4051
4052 END LOOP; --end: FOR (i:=0; i < l_attr_grp_table.COUNT; i++)
4053
4054 EXIT WHEN l_attr_grp_rows_cnt < 2500;
4055 END LOOP; --end: Loop for every 2500 rows.
4056 DBMS_SQL.Close_Cursor(l_attr_grp_cursor);
4057
4058 EGO_USER_ATTRS_DATA_PVT.Debug_Msg(' UCCnet exclusion code complete.');
4059
4060 -----------------------------------------------------------------
4061 -- END: PPEDDAMA (11th October 2004) --
4062 -----------------------------------------------------------------
4063
4064 IF (l_attr_group_ids_to_exclude IS NOT NULL AND
4065 l_attr_group_ids IS NOT NULL AND
4066 l_attr_group_ids_to_exclude.COUNT > 0 AND
4067 l_attr_group_ids.COUNT > 0 ) THEN
4068
4069 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('l_attr_group_ids_to_exclude.COUNT = '||l_attr_group_ids_to_exclude.COUNT);
4070 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('l_attr_group_ids.COUNT = '||l_attr_group_ids.COUNT);
4071
4072 -----------------------------------------------------------------
4073 -- don't issue perform dml if all attr grps are excluded
4074 -----------------------------------------------------------------
4075 IF (l_attr_group_ids_to_exclude.COUNT = l_attr_group_ids.COUNT) THEN
4076 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('l_perform_dml is FALSE ');
4077 l_perform_dml := FALSE;
4078 END IF; --end: IF (l_attr_group_ids_to_exclude.COUNT >= ...
4079
4080 END IF; --end: IF (l_attr_group_ids_to_exclude IS NOT NULL ...
4081
4082 IF (l_perform_dml = TRUE) THEN
4083
4084 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('l_perform_dml is TRUE ');
4085
4086 EGO_USER_ATTRS_DATA_PVT.Perform_DML_From_Template (
4087 p_api_version => 1.0
4088 ,p_template_id => p_template_id
4089 ,p_object_name => p_object_name
4090 ,p_pk_column_name_value_pairs => l_pk_column_name_value_pairs
4091 ,p_class_code_name_value_pairs => p_class_code_name_value_pairs
4092 ,p_data_level => 'ITEM_LEVEL'
4093 ,p_data_level_name_value_pairs => NULL
4094 ,p_attr_group_ids_to_exclude => l_attr_group_ids_to_exclude
4095 ,x_return_status => x_return_status
4096 ,x_errorcode => x_errorcode
4097 ,x_msg_count => x_msg_count
4098 ,x_msg_data => x_msg_data
4099 );
4100
4101 EGO_USER_ATTRS_DATA_PVT.Perform_DML_From_Template (
4102 p_api_version => 1.0
4103 ,p_template_id => p_template_id
4104 ,p_object_name => p_object_name
4105 ,p_pk_column_name_value_pairs => l_pk_column_name_value_pairs
4106 ,p_class_code_name_value_pairs => p_class_code_name_value_pairs
4107 ,p_data_level => 'ITEM_REVISION_LEVEL'
4108 ,p_data_level_name_value_pairs => p_data_level_name_value_pairs
4109 ,p_attr_group_ids_to_exclude => l_attr_group_ids_to_exclude
4110 ,x_return_status => x_return_status
4111 ,x_errorcode => x_errorcode
4112 ,x_msg_count => x_msg_count
4113 ,x_msg_data => x_msg_data
4114 );
4115
4116 EGO_USER_ATTRS_DATA_PVT.Perform_DML_From_Template (
4117 p_api_version => 1.0
4118 ,p_template_id => p_template_id
4119 ,p_object_name => p_object_name
4120 ,p_pk_column_name_value_pairs => l_pk_column_name_value_pairs
4121 ,p_class_code_name_value_pairs => p_class_code_name_value_pairs
4122 ,p_data_level => 'EGO_ITEM_GTIN_ATTRS'
4123 ,p_data_level_name_value_pairs => NULL
4124 ,p_attr_group_ids_to_exclude => l_attr_group_ids_to_exclude
4125 ,x_return_status => x_return_status
4126 ,x_errorcode => x_errorcode
4127 ,x_msg_count => x_msg_count
4128 ,x_msg_data => x_msg_data
4129 );
4130
4131 EGO_USER_ATTRS_DATA_PVT.Perform_DML_From_Template (
4132 p_api_version => 1.0
4133 ,p_template_id => p_template_id
4134 ,p_object_name => p_object_name
4135 ,p_pk_column_name_value_pairs => l_pk_column_name_value_pairs
4136 ,p_class_code_name_value_pairs => p_class_code_name_value_pairs
4137 ,p_data_level => 'EGO_ITEM_GTIN_MULTI_ATTRS'
4138 ,p_data_level_name_value_pairs => NULL
4139 ,p_attr_group_ids_to_exclude => l_attr_group_ids_to_exclude
4140 ,x_return_status => x_return_status
4141 ,x_errorcode => x_errorcode
4142 ,x_msg_count => x_msg_count
4143 ,x_msg_data => x_msg_data
4144 );
4145
4146 END IF;
4147
4148 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('Apply_Templ_User_Attrs_To_Item -- Done');
4149 EXCEPTION
4150 WHEN OTHERS THEN
4151 IF (l_attr_grp_cursor IS NOT NULL) THEN
4152 DBMS_SQL.Close_Cursor(l_attr_grp_cursor);
4153 END IF;
4154 EGO_USER_ATTRS_DATA_PVT.Debug_Msg('In Apply_Templ_User_Attrs_To_Item, got exception '||SQLERRM, 3);
4155
4156 END Apply_Templ_User_Attrs_To_Item;
4157
4158 ---------------------------------------------------------------------------
4159 PROCEDURE SYNC_IM_INDEX IS
4160 BEGIN
4161 INV_ITEM_PVT.SYNC_IM_INDEX;
4162 END SYNC_IM_INDEX;
4163
4164 ---------------------------------------------------------------------------
4165 PROCEDURE Process_item_role
4166 (p_api_version IN NUMBER
4167 ,p_commit IN VARCHAR2 DEFAULT G_FALSE
4168 ,p_init_msg_list IN VARCHAR2 DEFAULT G_FALSE
4169 ,p_transaction_type IN VARCHAR2 DEFAULT G_TTYPE_CREATE
4170 ,p_inventory_item_id IN NUMBER DEFAULT NULL
4171 ,p_item_number IN VARCHAR2 DEFAULT NULL
4172 ,p_organization_id IN NUMBER DEFAULT NULL
4173 ,p_organization_code IN VARCHAR2 DEFAULT NULL
4174 ,p_role_id IN NUMBER DEFAULT NULL
4175 ,p_role_name IN VARCHAR2 DEFAULT NULL
4176 ,p_instance_type IN VARCHAR2 DEFAULT G_INSTANCE_TYPE_INSTANCE
4177 ,p_instance_set_id IN NUMBER DEFAULT NULL
4178 ,p_instance_set_name IN VARCHAR2 DEFAULT NULL
4179 ,p_party_type IN VARCHAR2 DEFAULT G_USER_PARTY_TYPE
4180 ,p_party_id IN NUMBER DEFAULT NULL
4181 ,p_party_name IN VARCHAR2 DEFAULT NULL
4182 ,p_start_date IN DATE DEFAULT NULL
4183 ,p_end_date IN DATE DEFAULT NULL
4184 ,x_grant_guid IN OUT NOCOPY RAW
4185 ,x_return_status OUT NOCOPY VARCHAR2
4186 ,x_msg_count OUT NOCOPY NUMBER
4187 ,x_msg_data OUT NOCOPY VARCHAR2
4188 ) IS
4189 BEGIN
4190 EGO_ITEM_PVT.Process_item_role
4191 (p_api_version => p_api_version
4192 ,p_commit => p_commit
4193 ,p_init_msg_list => p_init_msg_list
4194 ,p_transaction_type => p_transaction_type
4195 ,p_inventory_item_id => p_inventory_item_id
4196 ,p_item_number => p_item_number
4197 ,p_organization_id => p_organization_id
4198 ,p_organization_code => p_organization_code
4199 ,p_role_id => p_role_id
4200 ,p_role_name => p_role_name
4201 ,p_instance_type => p_instance_type
4202 ,p_instance_set_id => p_instance_set_id
4203 ,p_instance_set_name => p_instance_set_name
4204 ,p_party_type => p_party_type
4205 ,p_party_id => p_party_id
4206 ,p_party_name => p_party_name
4207 ,p_start_date => p_start_date
4208 ,p_end_date => p_end_date
4209 ,x_grant_guid => x_grant_guid
4210 ,x_return_status => x_return_status
4211 ,x_msg_count => x_msg_count
4212 ,x_msg_data => x_msg_data
4213 );
4214
4215 END;
4216
4217 ---------------------------------------------------------------------------
4218 PROCEDURE Process_item_phase_and_status
4219 (p_api_version IN NUMBER
4220 ,p_commit IN VARCHAR2 DEFAULT G_FALSE
4221 ,p_init_msg_list IN VARCHAR2 DEFAULT G_FALSE
4222 ,p_transaction_type IN VARCHAR2 DEFAULT G_TTYPE_PROMOTE
4223 ,p_inventory_item_id IN NUMBER DEFAULT NULL
4224 ,p_item_number IN VARCHAR2 DEFAULT NULL
4225 ,p_organization_id IN NUMBER DEFAULT NULL
4226 ,p_organization_code IN VARCHAR2 DEFAULT NULL
4227 ,p_revision_id IN NUMBER DEFAULT NULL
4228 ,p_revision IN VARCHAR2 DEFAULT NULL
4229 ,p_implement_changes IN VARCHAR2 DEFAULT G_TRUE
4230 ,p_status IN VARCHAR2 DEFAULT NULL
4231 ,p_effective_date IN DATE DEFAULT NULL
4232 ,p_lifecycle_id IN NUMBER DEFAULT NULL
4233 ,p_phase_id IN NUMBER DEFAULT NULL
4234 ,p_new_effective_date IN DATE DEFAULT NULL
4235 ,x_return_status OUT NOCOPY VARCHAR2
4236 ,x_msg_count OUT NOCOPY NUMBER
4237 ,x_msg_data OUT NOCOPY VARCHAR2
4238 ) IS
4239 BEGIN
4240 EGO_ITEM_PVT.Process_item_phase_and_status
4241 (p_api_version => p_api_version
4242 ,p_commit => p_commit
4243 ,p_init_msg_list => p_init_msg_list
4244 ,p_transaction_type => p_transaction_type
4245 ,p_inventory_item_id => p_inventory_item_id
4246 ,p_item_number => p_item_number
4247 ,p_organization_id => p_organization_id
4248 ,p_organization_code => p_organization_code
4249 ,p_revision_id => p_revision_id
4250 ,p_revision => p_revision
4251 ,p_implement_changes => p_implement_changes
4252 ,p_status => p_status
4253 ,p_effective_date => p_effective_date
4254 ,p_lifecycle_id => p_lifecycle_id
4255 ,p_phase_id => p_phase_id
4256 ,p_new_effective_date => p_new_effective_date
4257 ,x_return_status => x_return_status
4258 ,x_msg_count => x_msg_count
4259 ,x_msg_data => x_msg_data
4260 );
4261 END;
4262
4263 ---------------------------------------------------------------------------
4264 PROCEDURE Implement_Item_Pending_Changes
4265 (p_api_version IN NUMBER
4266 ,p_commit IN VARCHAR2 DEFAULT G_FALSE
4267 ,p_init_msg_list IN VARCHAR2 DEFAULT G_FALSE
4268 ,p_inventory_item_id IN NUMBER DEFAULT NULL
4269 ,p_item_number IN VARCHAR2 DEFAULT NULL
4270 ,p_organization_id IN NUMBER DEFAULT NULL
4271 ,p_organization_code IN VARCHAR2 DEFAULT NULL
4272 ,p_revision_id IN NUMBER DEFAULT NULL
4273 ,p_revision IN VARCHAR2 DEFAULT NULL
4274 ,x_return_status OUT NOCOPY VARCHAR2
4275 ,x_msg_count OUT NOCOPY NUMBER
4276 ,x_msg_data OUT NOCOPY VARCHAR2
4277 ) IS
4278 BEGIN
4279 EGO_ITEM_PVT.Implement_Item_Pending_Changes
4280 (p_api_version => p_api_version
4281 ,p_commit => p_commit
4282 ,p_init_msg_list => p_init_msg_list
4283 ,p_inventory_item_id => p_inventory_item_id
4284 ,p_item_number => p_item_number
4285 ,p_organization_id => p_organization_id
4286 ,p_organization_code => p_organization_code
4287 ,p_revision_id => p_revision_id
4288 ,p_revision => p_revision
4289 ,x_return_status => x_return_status
4290 ,x_msg_count => x_msg_count
4291 ,x_msg_data => x_msg_data
4292 );
4293
4294 END;
4295
4296 ---------------------------------------------------------------------------
4297 PROCEDURE Process_Item_Revision(
4298 p_api_version IN NUMBER
4299 ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
4300 ,p_commit IN VARCHAR2 DEFAULT G_FALSE
4301 ,p_transaction_type IN VARCHAR2
4302 ,p_inventory_item_id IN NUMBER DEFAULT G_MISS_NUM
4303 ,p_item_number IN VARCHAR2 DEFAULT G_MISS_CHAR
4304 ,p_organization_id IN NUMBER DEFAULT G_MISS_NUM
4305 ,p_Organization_Code IN VARCHAR2 DEFAULT G_MISS_CHAR
4306 ,p_revision IN VARCHAR2
4307 ,p_description IN VARCHAR2 DEFAULT NULL
4308 ,p_effectivity_date IN DATE
4309 ,p_revision_label IN VARCHAR2 DEFAULT G_MISS_CHAR
4310 ,p_revision_reason IN VARCHAR2 DEFAULT NULL
4311 ,p_lifecycle_id IN NUMBER DEFAULT G_MISS_NUM
4312 ,p_current_phase_id IN NUMBER DEFAULT G_MISS_NUM
4313 -- 5208102: Supporting template for UDA's at revisions
4314 ,p_template_id IN NUMBER DEFAULT G_MISS_NUM
4315 ,p_template_name IN VARCHAR2 DEFAULT G_MISS_CHAR
4316
4317 ,p_attribute_category IN VARCHAR2 DEFAULT G_MISS_CHAR
4318 ,p_attribute1 IN VARCHAR2 DEFAULT G_MISS_CHAR
4319 ,p_attribute2 IN VARCHAR2 DEFAULT G_MISS_CHAR
4320 ,p_attribute3 IN VARCHAR2 DEFAULT G_MISS_CHAR
4321 ,p_attribute4 IN VARCHAR2 DEFAULT G_MISS_CHAR
4322 ,p_attribute5 IN VARCHAR2 DEFAULT G_MISS_CHAR
4323 ,p_attribute6 IN VARCHAR2 DEFAULT G_MISS_CHAR
4324 ,p_attribute7 IN VARCHAR2 DEFAULT G_MISS_CHAR
4325 ,p_attribute8 IN VARCHAR2 DEFAULT G_MISS_CHAR
4326 ,p_attribute9 IN VARCHAR2 DEFAULT G_MISS_CHAR
4327 ,p_attribute10 IN VARCHAR2 DEFAULT G_MISS_CHAR
4328 ,p_attribute11 IN VARCHAR2 DEFAULT G_MISS_CHAR
4329 ,p_attribute12 IN VARCHAR2 DEFAULT G_MISS_CHAR
4330 ,p_attribute13 IN VARCHAR2 DEFAULT G_MISS_CHAR
4331 ,p_attribute14 IN VARCHAR2 DEFAULT G_MISS_CHAR
4332 ,p_attribute15 IN VARCHAR2 DEFAULT G_MISS_CHAR
4333 ,x_Return_Status OUT NOCOPY VARCHAR2
4334 ,x_msg_count OUT NOCOPY NUMBER
4335 ,x_msg_data OUT NOCOPY VARCHAR2 ) is
4336
4337 p_debug_filename VARCHAR2(100);
4338 x_revision_id NUMBER DEFAULT G_MISS_NUM;
4339 x_object_version_number NUMBER DEFAULT G_MISS_NUM;
4340 l_inventory_item_id NUMBER;
4341 l_organization_id NUMBER;
4342 l_api_name CONSTANT VARCHAR2(30) := 'Process_Item_Revision';
4343 l_api_version CONSTANT NUMBER := 1.0;
4344
4345 INVALID_ORG EXCEPTION;
4346 INVALID_ITEM EXCEPTION;
4347 INVALID_ITEM_ORG EXCEPTION;
4348
4349 BEGIN
4350
4351 IF NOT FND_API.Compatible_API_Call ( l_api_version, p_api_version,
4352 l_api_name, G_PKG_NAME )
4353 THEN
4354 RAISE FND_API.g_EXC_UNEXPECTED_ERROR;
4355 END IF;
4356
4357 BEGIN
4358 IF p_organization_id IS NULL THEN
4359 IF p_organization_code IS NOT NULL THEN
4360 SELECT ORGANIZATION_ID INTO l_organization_id
4361 FROM MTL_PARAMETERS
4362 WHERE ORGANIZATION_CODE = p_organization_code;
4363 ELSE
4364 RAISE INVALID_ORG;
4365 END IF;
4366 ELSE
4367 SELECT ORGANIZATION_ID INTO l_organization_id
4368 FROM MTL_PARAMETERS
4369 WHERE ORGANIZATION_ID = p_organization_id;
4370 END IF;
4371
4372 EXCEPTION
4373 WHEN NO_DATA_FOUND THEN
4374 RAISE INVALID_ORG;
4375 END;
4376
4377 BEGIN
4378 IF p_inventory_item_id IS NULL THEN
4379 IF p_item_number IS NOT NULL THEN
4380 SELECT INVENTORY_ITEM_ID INTO l_inventory_item_id
4381 FROM MTL_SYSTEM_ITEMS_B_KFV
4382 WHERE ORGANIZATION_ID = l_organization_id
4383 AND CONCATENATED_SEGMENTS = p_item_number;
4384 ELSE
4385 RAISE INVALID_ITEM;
4386 END IF;
4387 ELSE
4388 SELECT INVENTORY_ITEM_ID INTO l_inventory_item_id
4389 FROM MTL_SYSTEM_ITEMS_B_KFV
4390 WHERE ORGANIZATION_ID = l_organization_id
4391 AND INVENTORY_ITEM_ID = p_inventory_item_id;
4392 END IF;
4393
4394 EXCEPTION
4395 WHEN NO_DATA_FOUND THEN
4396 RAISE INVALID_ITEM_ORG;
4397 END;
4398
4399 INV_ITEM_REVISION_PUB.Process_Item_Revision
4400 (
4401 p_inventory_item_id => l_inventory_item_id
4402 ,p_organization_id => l_organization_id
4403 ,p_revision => p_revision
4404 ,p_description => p_description
4405 ,p_effectivity_date => p_effectivity_date
4406 ,p_attribute_category => p_attribute_category
4407 ,p_attribute1 => p_attribute1
4408 ,p_attribute2 => p_attribute2
4409 ,p_attribute3 => p_attribute3
4410 ,p_attribute4 => p_attribute4
4411 ,p_attribute5 => p_attribute5
4412 ,p_attribute6 => p_attribute6
4413 ,p_attribute7 => p_attribute7
4414 ,p_attribute8 => p_attribute8
4415 ,p_attribute9 => p_attribute9
4416 ,p_attribute10 => p_attribute10
4417 ,p_attribute11 => p_attribute11
4418 ,p_attribute12 => p_attribute12
4419 ,p_attribute13 => p_attribute13
4420 ,p_attribute14 => p_attribute14
4421 ,p_attribute15 => p_attribute15
4422 ,p_revision_label => p_revision_label
4423 ,p_revision_reason => p_revision_reason
4424 ,p_lifecycle_id => p_lifecycle_id
4425 ,p_current_phase_id => p_current_phase_id
4426 ,p_template_id => p_template_id
4427 ,p_template_name => p_template_name
4428 ,p_transaction_type => p_transaction_type
4429 ,p_init_msg_list => p_init_msg_list
4430 ,x_Return_Status => x_Return_Status
4431 ,x_msg_count => x_msg_count
4432 ,x_revision_id => x_revision_id
4433 ,x_object_version_number => x_object_version_number
4434 ,p_message_api => 'BOM'
4435 ,p_object_version_number => NULL );
4436
4437 EXCEPTION
4438 WHEN INVALID_ORG THEN
4439 FND_MESSAGE.Set_Name('EGO', 'EGO_INVALID_ORGANIZATION');
4440 FND_MSG_PUB.Add;
4441 x_return_status := FND_API.g_RET_STS_ERROR;
4442 WHEN INVALID_ITEM THEN
4443 FND_MESSAGE.Set_Name('EGO', 'EGO_INVALID_ITEM');
4444 FND_MSG_PUB.Add;
4445 x_return_status := FND_API.g_RET_STS_ERROR;
4446 WHEN INVALID_ITEM_ORG THEN
4447 FND_MESSAGE.Set_Name('EGO', 'EGO_INVALID_ITEM_ORGANIZATION');
4448 FND_MSG_PUB.Add;
4449 x_return_status := FND_API.g_RET_STS_ERROR;
4450 WHEN OTHERS THEN
4451 x_return_status := G_RET_STS_UNEXP_ERROR;
4452 RAISE;
4453 END Process_Item_Revision;
4454
4455 ------------------------ Process_item_descr_elements ---------------------
4456 /*#
4457 * This API allows user to give the values of item catalog category descriptive elements.
4458 * This will verify whether user has edit item privilege on item.
4459 */
4460 PROCEDURE Process_item_descr_elements
4461 (
4462 p_api_version IN NUMBER
4463 , p_init_msg_list IN VARCHAR2
4464 , p_commit_flag IN VARCHAR2
4465 , p_validation_level IN NUMBER
4466 , p_inventory_item_id IN NUMBER
4467 , p_item_number IN VARCHAR2
4468 , p_item_desc_element_table IN INV_ITEM_CATALOG_ELEM_PUB.ITEM_DESC_ELEMENT_TABLE
4469 , x_generated_descr OUT NOCOPY VARCHAR2
4470 , x_return_status OUT NOCOPY VARCHAR2
4471 , x_msg_count OUT NOCOPY NUMBER
4472 , x_msg_data OUT NOCOPY VARCHAR2
4473 )
4474 IS
4475 l_api_name CONSTANT VARCHAR2(30) := 'Process_item_descr_elements';
4476 l_err_text VARCHAR2(2000);
4477 BEGIN
4478
4479 x_return_status := G_RET_STS_SUCCESS;
4480
4481 -- Initialize message list
4482 IF FND_API.To_Boolean (p_init_msg_list) THEN
4483 Error_Handler.Initialize;
4484 END IF;
4485
4486 -- Set business object identifier in the System Information record
4487 Error_Handler.Set_BO_Identifier ( p_bo_identifier => G_BO_Identifier );
4488
4489
4490 INV_EGO_REVISION_VALIDATE.Set_Process_Control('EGO_ITEM_BULKLOAD');
4491 INV_ITEM_CATALOG_ELEM_PUB.Process_item_descr_elements
4492 (
4493 p_api_version => p_api_version
4494 , p_init_msg_list => p_init_msg_list
4495 , p_commit_flag => p_commit_flag
4496 , p_validation_level => p_validation_level
4497 , p_inventory_item_id => p_inventory_item_id
4498 , p_item_number => p_item_number
4499 , p_item_desc_element_table => p_item_desc_element_table
4500 , x_generated_descr => x_generated_descr
4501 , x_return_status => x_return_status
4502 , x_msg_count => x_msg_count
4503 , x_msg_data => x_msg_data
4504 );
4505 INV_EGO_REVISION_VALIDATE.Set_Process_Control('NULL');
4506
4507 EXCEPTION
4508 WHEN others THEN
4509 l_err_text := SUBSTRB(SQLERRM, 1,240);
4510 x_return_status := fnd_api.g_RET_STS_UNEXP_ERROR;
4511 EGO_Item_Msg.Add_Error_Message ( EGO_Item_PVT.G_Item_indx,
4512 'INV', 'INV_ITEM_UNEXPECTED_ERROR',
4513 'PACKAGE_NAME', G_PKG_NAME, FALSE,
4514 'PROCEDURE_NAME', l_api_name, FALSE,
4515 'ERROR_TEXT', l_err_text, FALSE );
4516 FND_MSG_PUB.Count_And_Get
4517 ( p_count => x_msg_count,
4518 p_data => x_msg_data
4519 );
4520
4521 END Process_item_descr_elements;
4522 ------------------------------------------------------------------------------
4523
4524 ------------------------ Process_Item_Cat_Assignment ---------------------
4525 /*#
4526 * This API allows user to assign/remove a catalog/category to/from an item.
4527 * This will verify whether user has edit item privilege on item.
4528 */
4529 PROCEDURE Process_Item_Cat_Assignment
4530 (
4531 p_api_version IN NUMBER
4532 , p_init_msg_list IN VARCHAR2
4533 , p_commit IN VARCHAR2
4534 , p_category_id IN NUMBER
4535 , p_category_set_id IN NUMBER
4536 , p_inventory_item_id IN NUMBER
4537 , p_organization_id IN NUMBER
4538 , p_transaction_type IN VARCHAR2
4539 , x_return_status OUT NOCOPY VARCHAR2
4540 , x_errorcode OUT NOCOPY NUMBER
4541 , x_msg_count OUT NOCOPY NUMBER
4542 , x_msg_data OUT NOCOPY VARCHAR2
4543 )
4544 IS
4545 l_api_name CONSTANT VARCHAR2(30) := 'Process_Item_Cat_Assignment';
4546 l_err_text VARCHAR2(2000);
4547 BEGIN
4548
4549 x_return_status := G_RET_STS_SUCCESS;
4550
4551 -- Initialize message list
4552 IF FND_API.To_Boolean (p_init_msg_list) THEN
4553 Error_Handler.Initialize;
4554 END IF;
4555
4556 -- Set business object identifier in the System Information record
4557 Error_Handler.Set_BO_Identifier ( p_bo_identifier => G_BO_Identifier );
4558
4559 IF INV_EGO_REVISION_VALIDATE.check_data_security(
4560 p_function => 'EGO_EDIT_ITEM'
4561 ,p_object_name => 'EGO_ITEM'
4562 ,p_instance_pk1_value => p_inventory_item_id
4563 ,p_instance_pk2_value => p_organization_id
4564 ,P_User_Id => FND_GLOBAL.user_id) <> 'T'
4565 THEN
4566 EGO_Item_Msg.Add_Error_Message (p_Entity_Index => EGO_Item_PVT.G_Item_indx,
4567 p_Application_Short_Name =>'INV',
4568 p_Message_Name =>'INV_IOI_ITEM_UPDATE_PRIV');
4569 RAISE FND_API.g_EXC_ERROR;
4570 ELSE
4571 IF p_transaction_type = 'CREATE' THEN
4572 INV_ITEM_CATEGORY_PUB.Create_Category_Assignment
4573 (
4574 p_api_version => p_api_version
4575 , p_init_msg_list => p_init_msg_list
4576 , p_commit => p_commit
4577 , p_category_id => p_category_id
4578 , p_category_set_id => p_category_set_id
4579 , p_inventory_item_id=> p_inventory_item_id
4580 , p_organization_id => p_organization_id
4581 , x_return_status => x_return_status
4582 , x_errorcode => x_errorcode
4583 , x_msg_count => x_msg_count
4584 , x_msg_data => x_msg_data
4585 );
4586 ELSIF p_transaction_type = 'DELETE' THEN
4587 INV_ITEM_CATEGORY_PUB.Delete_Category_Assignment
4588 (
4589 p_api_version => p_api_version
4590 , p_init_msg_list => p_init_msg_list
4591 , p_commit => p_commit
4592 , p_category_id => p_category_id
4593 , p_category_set_id => p_category_set_id
4594 , p_inventory_item_id=> p_inventory_item_id
4595 , p_organization_id => p_organization_id
4596 , x_return_status => x_return_status
4597 , x_errorcode => x_errorcode
4598 , x_msg_count => x_msg_count
4599 , x_msg_data => x_msg_data
4600 );
4601
4602 END IF;
4603 END IF;
4604
4605 EXCEPTION
4606 WHEN FND_API.G_EXC_ERROR THEN
4607 x_return_status := FND_API.G_RET_STS_ERROR;
4608 FND_MSG_PUB.Count_And_Get
4609 ( p_count => x_msg_count,
4610 p_data => x_msg_data
4611 );
4612 WHEN others THEN
4613 l_err_text := SUBSTRB(SQLERRM, 1,240);
4614 x_return_status := fnd_api.g_RET_STS_UNEXP_ERROR;
4615 EGO_Item_Msg.Add_Error_Message ( EGO_Item_PVT.G_Item_indx,
4616 'INV', 'INV_ITEM_UNEXPECTED_ERROR',
4617 'PACKAGE_NAME', G_PKG_NAME, FALSE,
4618 'PROCEDURE_NAME', l_api_name, FALSE,
4619 'ERROR_TEXT', l_err_text, FALSE );
4620 FND_MSG_PUB.Count_And_Get
4621 ( p_count => x_msg_count,
4622 p_data => x_msg_data
4623 );
4624
4625 END Process_Item_Cat_Assignment;
4626 ------------------------------------------------------------------------------
4627 /*
4628 * dsakalle - Public API to upload UCCnet Attributes
4629 * IREP comments need to be added
4630 */
4631 PROCEDURE Process_UCCnet_Attrs_For_Item (
4632 p_api_version IN NUMBER
4633 ,p_inventory_item_id IN NUMBER
4634 ,p_organization_id IN NUMBER
4635 ,p_single_row_attrs_rec IN UCCnet_Attrs_Singl_Row_Rec_Typ
4636 ,p_multi_row_attrs_table IN UCCnet_Attrs_Multi_Row_Tbl_Typ
4637 ,p_entity_id IN NUMBER DEFAULT NULL
4638 ,p_entity_index IN NUMBER DEFAULT NULL
4639 ,p_entity_code IN VARCHAR2 DEFAULT NULL
4640 ,p_init_error_handler IN VARCHAR2 DEFAULT FND_API.G_TRUE
4641 ,p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE
4642 ,x_return_status OUT NOCOPY VARCHAR2
4643 ,x_errorcode OUT NOCOPY NUMBER
4644 ,x_msg_count OUT NOCOPY NUMBER
4645 ,x_msg_data OUT NOCOPY VARCHAR2) IS
4646 BEGIN
4647 EGO_GTIN_ATTRS_PVT.Process_UCCnet_Attrs_For_Item(
4648 p_api_version => p_api_version
4649 ,p_inventory_item_id => p_inventory_item_id
4650 ,p_organization_id => p_organization_id
4651 ,p_single_row_attrs_rec => p_single_row_attrs_rec
4652 ,p_multi_row_attrs_table => p_multi_row_attrs_table
4653 ,p_entity_id => p_entity_id
4654 ,p_entity_index => p_entity_index
4655 ,p_entity_code => p_entity_code
4656 ,p_init_error_handler => p_init_error_handler
4657 ,p_commit => p_commit
4658 ,x_return_status => x_return_status
4659 ,x_errorcode => x_errorcode
4660 ,x_msg_count => x_msg_count
4661 ,x_msg_data => x_msg_data);
4662 END Process_UCCnet_Attrs_For_Item;
4663
4664 ------------------------------------------------------------------------------
4665
4666 PROCEDURE Validate_Required_Attrs(
4667 p_api_version IN NUMBER
4668 ,p_inventory_item_id IN NUMBER
4669 ,p_organization_id IN NUMBER
4670 ,p_revision_id IN NUMBER
4671 ,x_attributes_req_table OUT NOCOPY EGO_USER_ATTR_TABLE
4672 ,x_return_status OUT NOCOPY VARCHAR2
4673 ,x_errorcode OUT NOCOPY NUMBER
4674 ,x_msg_count OUT NOCOPY NUMBER
4675 ,x_msg_data OUT NOCOPY VARCHAR2
4676 ) IS
4677
4678 BEGIN
4679
4680 EGO_ITEM_PVT.Validate_Required_Attrs(
4681 p_api_version => p_api_version
4682 ,p_inventory_item_id => p_inventory_item_id
4683 ,p_organization_id => p_organization_id
4684 ,p_revision_id => p_revision_id
4685 ,x_attributes_req_table => x_attributes_req_table
4686 ,x_return_status => x_return_status
4687 ,x_errorcode => x_errorcode
4688 ,x_msg_count => x_msg_count
4689 ,x_msg_data => x_msg_data
4690 );
4691
4692 END Validate_Required_Attrs;
4693
4694
4695 ------------------------------------------------------------------------------
4696
4697 PROCEDURE Prep_Batch_Data_For_Import_UI
4698 ( p_api_version IN NUMBER
4699 , p_batch_id IN NUMBER
4700 , x_return_status OUT NOCOPY VARCHAR2
4701 , x_errorcode OUT NOCOPY NUMBER
4702 , x_msg_count OUT NOCOPY NUMBER
4703 , x_msg_data OUT NOCOPY VARCHAR2
4704 )
4705 IS
4706 l_api_name CONSTANT VARCHAR2(30) := 'Complete_Import_Data_Load';
4707 l_err_text VARCHAR2(2000);
4708 BEGIN
4709 x_return_status := G_RET_STS_SUCCESS;
4710
4711 EGO_IMPORT_PVT.Resolve_SSXRef_On_Data_Load
4712 ( p_data_set_id => p_batch_id
4713 , p_commit => FND_API.G_TRUE
4714 );
4715
4716 EXCEPTION
4717 WHEN OTHERS THEN
4718 l_err_text := SUBSTRB(SQLERRM, 1,240);
4719 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4720 EGO_ITEM_MSG.Add_Error_Message ( EGO_ITEM_PVT.G_ITEM_INDX,
4721 'EGO', 'EGO_ITEM_UNEXPECTED_ERROR',
4722 'PACKAGE_NAME', G_PKG_NAME, FALSE,
4723 'PROCEDURE_NAME', l_api_name, FALSE,
4724 'ERROR_TEXT', l_err_text, FALSE );
4725 FND_MSG_PUB.Count_And_Get
4726 ( p_count => x_msg_count
4727 , p_data => x_msg_data
4728 );
4729 END Prep_Batch_Data_For_Import_UI;
4730
4731 END EGO_ITEM_PUB;