[Home] [Help]
1: PACKAGE BODY INV_EBI_ITEM_HELPER AS
2: /* $Header: INVEIHITB.pls 120.35.12010000.9 2009/02/13 09:42:50 prepatel ship $ */
3: /************************************************************************************
4: -- API name : populate_err_msg
5: -- Type : Public
53: -- Function :
54: ************************************************************************************/
55: FUNCTION id_col_value(
56: p_col_name IN VARCHAR2
57: ,p_pk_col_name_val_pairs IN INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl
58: ) RETURN VARCHAR2 IS
59: l_pkval varchar2(150);
60: BEGIN
61: IF ( (p_pk_col_name_val_pairs IS NOT NULL AND p_pk_col_name_val_pairs.COUNT >0)
78: -- Type : Public
79: -- Function :
80: ************************************************************************************/
81: FUNCTION value_to_id(
82: p_pk_col_name_val_pairs IN INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl
83: ,p_entity_name IN VARCHAR2
84: ) RETURN NUMBER IS
85: l_table_name VARCHAR2(30);
86: l_col_name VARCHAR2(30);
160: -- Type : Public
161: -- Function : returns the code equivalent of a given id
162: ************************************************************************************/
163: FUNCTION id_to_value(
164: p_pk_col_name_val_pairs IN INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl
165: ,p_entity_name IN VARCHAR2
166: ) RETURN VARCHAR2 IS
167: l_table_name VARCHAR2(30);
168: l_col_name VARCHAR2(30);
252: p_item IN inv_ebi_item_obj
253: ,x_out OUT NOCOPY inv_ebi_item_output_obj
254: ,x_item OUT NOCOPY inv_ebi_item_obj
255: ) IS
256: l_pk_col_name_val_pairs INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl;
257: l_output_status inv_ebi_output_status;
258: BEGIN
259: x_item := p_item;
260: l_output_status := inv_ebi_output_status(fnd_api.g_ret_sts_success,NULL,NULL,NULL);
258: BEGIN
259: x_item := p_item;
260: l_output_status := inv_ebi_output_status(fnd_api.g_ret_sts_success,NULL,NULL,NULL);
261: x_out := inv_ebi_item_output_obj(NULL,NULL,NULL,NULL,l_output_status,NULL,NULL,NULL,NULL,NULL);
262: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
263: IF ( (p_item.main_obj_type.organization_id IS NULL OR p_item.main_obj_type.organization_id = fnd_api.g_miss_num)
264: AND p_item.main_obj_type.organization_code IS NOT NULL ) THEN
265: l_pk_col_name_val_pairs.EXTEND(1);
266: l_pk_col_name_val_pairs(1).name := 'organization_code';
264: AND p_item.main_obj_type.organization_code IS NOT NULL ) THEN
265: l_pk_col_name_val_pairs.EXTEND(1);
266: l_pk_col_name_val_pairs(1).name := 'organization_code';
267: l_pk_col_name_val_pairs(1).value := p_Item.main_obj_type.organization_code;
268: x_item.main_obj_type.organization_id := INV_EBI_ITEM_HELPER.value_to_id(
269: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
270: ,p_entity_name => INV_EBI_ITEM_HELPER.G_ORGANIZATION
271: );
272: l_pk_col_name_val_pairs.TRIM(1);
266: l_pk_col_name_val_pairs(1).name := 'organization_code';
267: l_pk_col_name_val_pairs(1).value := p_Item.main_obj_type.organization_code;
268: x_item.main_obj_type.organization_id := INV_EBI_ITEM_HELPER.value_to_id(
269: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
270: ,p_entity_name => INV_EBI_ITEM_HELPER.G_ORGANIZATION
271: );
272: l_pk_col_name_val_pairs.TRIM(1);
273: IF (x_item.main_obj_type.organization_id IS NULL) THEN
274: FND_MESSAGE.set_name('INV','INV_EBI_ORG_CODE_INVALID');
283: l_pk_col_name_val_pairs(1).name := 'concatenated_segments';
284: l_pk_col_name_val_pairs(1).value := p_item.main_obj_type.item_number;
285: l_pk_col_name_val_pairs(2).name := 'organization_id';
286: l_pk_col_name_val_pairs(2).value := p_item.main_obj_type.organization_id;
287: x_item.main_obj_type.inventory_item_id := INV_EBI_ITEM_HELPER.value_to_id(
288: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
289: ,p_entity_name => INV_EBI_ITEM_HELPER.G_INVENTORY_ITEM
290: );
291: l_pk_col_name_val_pairs.TRIM(2);
285: l_pk_col_name_val_pairs(2).name := 'organization_id';
286: l_pk_col_name_val_pairs(2).value := p_item.main_obj_type.organization_id;
287: x_item.main_obj_type.inventory_item_id := INV_EBI_ITEM_HELPER.value_to_id(
288: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
289: ,p_entity_name => INV_EBI_ITEM_HELPER.G_INVENTORY_ITEM
290: );
291: l_pk_col_name_val_pairs.TRIM(2);
292: END IF;
293: IF ( (p_item.main_obj_type.template_id IS NULL OR p_item.main_obj_type.template_id =fnd_api.g_miss_num)
294: AND p_item.main_obj_type.template_name IS NOT NULL) THEN
295: l_pk_col_name_val_pairs.EXTEND(1);
296: l_pk_col_name_val_pairs(1).name := 'template_name';
297: l_pk_col_name_val_pairs(1).value := p_Item.main_obj_type.template_name;
298: x_item.main_obj_type.template_id := INV_EBI_ITEM_HELPER.value_to_id(
299: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
300: ,p_entity_name => INV_EBI_ITEM_HELPER.G_TEMPLATE
301: );
302: l_pk_col_name_val_pairs.TRIM(1);
296: l_pk_col_name_val_pairs(1).name := 'template_name';
297: l_pk_col_name_val_pairs(1).value := p_Item.main_obj_type.template_name;
298: x_item.main_obj_type.template_id := INV_EBI_ITEM_HELPER.value_to_id(
299: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
300: ,p_entity_name => INV_EBI_ITEM_HELPER.G_TEMPLATE
301: );
302: l_pk_col_name_val_pairs.TRIM(1);
303: END IF;
304: IF (p_item.org_id_obj_type IS NOT NULL AND p_item.org_id_obj_type.COUNT > 0 ) THEN
306: IF (p_item.org_id_obj_type(i).org_id IS NULL AND p_item.org_id_obj_type(i).org_code IS NOT NULL) THEN
307: l_pk_col_name_val_pairs.EXTEND(1);
308: l_pk_col_name_val_pairs(1).name := 'organization_code';
309: l_pk_col_name_val_pairs(1).value := p_item.org_id_obj_type(i).org_code;
310: x_item.org_id_obj_type(i).org_id := INV_EBI_ITEM_HELPER.value_to_id(
311: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
312: ,p_entity_name => INV_EBI_ITEM_HELPER.G_ORGANIZATION
313: );
314: l_pk_col_name_val_pairs.TRIM(1);
308: l_pk_col_name_val_pairs(1).name := 'organization_code';
309: l_pk_col_name_val_pairs(1).value := p_item.org_id_obj_type(i).org_code;
310: x_item.org_id_obj_type(i).org_id := INV_EBI_ITEM_HELPER.value_to_id(
311: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
312: ,p_entity_name => INV_EBI_ITEM_HELPER.G_ORGANIZATION
313: );
314: l_pk_col_name_val_pairs.TRIM(1);
315: IF (x_item.org_id_obj_type(i).org_id IS NULL) THEN
316: FND_MESSAGE.set_name('INV','INV_EBI_ORG_CODE_INVALID');
326: AND p_item.main_obj_type.item_catalog_group_code <> fnd_api.g_miss_char) THEN
327: l_pk_col_name_val_pairs.EXTEND(1);
328: l_pk_col_name_val_pairs(1).name := 'concatenated_segments';
329: l_pk_col_name_val_pairs(1).value := p_item.main_obj_type.item_catalog_group_code;
330: x_item.main_obj_type.item_catalog_group_id := INV_EBI_ITEM_HELPER.value_to_id(
331: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
332: ,p_entity_name => INV_EBI_ITEM_HELPER.G_ITEM_CATALOG_GROUP
333: );
334: l_pk_col_name_val_pairs.TRIM(1);
328: l_pk_col_name_val_pairs(1).name := 'concatenated_segments';
329: l_pk_col_name_val_pairs(1).value := p_item.main_obj_type.item_catalog_group_code;
330: x_item.main_obj_type.item_catalog_group_id := INV_EBI_ITEM_HELPER.value_to_id(
331: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
332: ,p_entity_name => INV_EBI_ITEM_HELPER.G_ITEM_CATALOG_GROUP
333: );
334: l_pk_col_name_val_pairs.TRIM(1);
335: IF (x_item.main_obj_type.item_catalog_group_id IS NULL ) THEN
336: FND_MESSAGE.set_name('INV','INV_EBI_ITEM_INVALID');
343: AND p_item.main_obj_type.lifecycle_name IS NOT NULL) THEN
344: l_pk_col_name_val_pairs.EXTEND(1);
345: l_pk_col_name_val_pairs(1).name := 'name';
346: l_pk_col_name_val_pairs(1).value := p_item.main_obj_type.lifecycle_name;
347: x_item.main_obj_type.lifecycle_id := INV_EBI_ITEM_HELPER.value_to_id (
348: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
349: ,p_entity_name => INV_EBI_ITEM_HELPER.G_LIFECYCLE
350: );
351: l_pk_col_name_val_pairs.TRIM(1);
345: l_pk_col_name_val_pairs(1).name := 'name';
346: l_pk_col_name_val_pairs(1).value := p_item.main_obj_type.lifecycle_name;
347: x_item.main_obj_type.lifecycle_id := INV_EBI_ITEM_HELPER.value_to_id (
348: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
349: ,p_entity_name => INV_EBI_ITEM_HELPER.G_LIFECYCLE
350: );
351: l_pk_col_name_val_pairs.TRIM(1);
352: END IF;
353: IF ( (p_item.main_obj_type.current_phase_id IS NULL OR p_item.main_obj_type.current_phase_id=fnd_api.g_miss_num)
356: l_pk_col_name_val_pairs(1).name := 'name';
357: l_pk_col_name_val_pairs(1).value := p_item.main_obj_type.current_phase_name;
358: l_pk_col_name_val_pairs(2).name := 'parent_structure_id';
359: l_pk_col_name_val_pairs(2).value := x_item.main_obj_type.lifecycle_id ;
360: x_item.main_obj_type.current_phase_id := INV_EBI_ITEM_HELPER.value_to_id(
361: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
362: ,p_entity_name => INV_EBI_ITEM_HELPER.G_CURRENT_PHASE
363: );
364: l_pk_col_name_val_pairs.TRIM(2);
358: l_pk_col_name_val_pairs(2).name := 'parent_structure_id';
359: l_pk_col_name_val_pairs(2).value := x_item.main_obj_type.lifecycle_id ;
360: x_item.main_obj_type.current_phase_id := INV_EBI_ITEM_HELPER.value_to_id(
361: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
362: ,p_entity_name => INV_EBI_ITEM_HELPER.G_CURRENT_PHASE
363: );
364: l_pk_col_name_val_pairs.TRIM(2);
365: END IF;
366: IF ( (p_item.main_obj_type.revision_id IS NULL OR p_item.main_obj_type.revision_id= fnd_api.g_miss_num)
370: l_pk_col_name_val_pairs(1).name := 'organization_id';
371: l_pk_col_name_val_pairs(1).value := p_item.main_obj_type.organization_id;
372: l_pk_col_name_val_pairs(2).name := 'inventory_item_id';
373: l_pk_col_name_val_pairs(2).value := x_item.main_obj_type.inventory_item_id;
374: x_item.main_obj_type.revision_id := INV_EBI_ITEM_HELPER.value_to_id(
375: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
376: ,p_entity_name => INV_EBI_ITEM_HELPER.G_REVISION
377: );
378: l_pk_col_name_val_pairs.TRIM(2);
372: l_pk_col_name_val_pairs(2).name := 'inventory_item_id';
373: l_pk_col_name_val_pairs(2).value := x_item.main_obj_type.inventory_item_id;
374: x_item.main_obj_type.revision_id := INV_EBI_ITEM_HELPER.value_to_id(
375: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
376: ,p_entity_name => INV_EBI_ITEM_HELPER.G_REVISION
377: );
378: l_pk_col_name_val_pairs.TRIM(2);
379: END IF;
380: IF ( (p_item.purchasing_obj_type.hazard_class_id IS NULL OR p_item.purchasing_obj_type.hazard_class_id = fnd_api.g_miss_num)
381: AND p_item.purchasing_obj_type.hazard_class_code IS NOT NULL) THEN
382: l_pk_col_name_val_pairs.EXTEND(1);
383: l_pk_col_name_val_pairs(1).name := 'hazard_class';
384: l_pk_col_name_val_pairs(1).value := p_item.purchasing_obj_type.hazard_class_code ;
385: x_item.purchasing_obj_type.hazard_class_id := INV_EBI_ITEM_HELPER.value_to_id(
386: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
387: ,p_entity_name => INV_EBI_ITEM_HELPER.G_HAZARD_CLASS
388: );
389: l_pk_col_name_val_pairs.TRIM(1);
383: l_pk_col_name_val_pairs(1).name := 'hazard_class';
384: l_pk_col_name_val_pairs(1).value := p_item.purchasing_obj_type.hazard_class_code ;
385: x_item.purchasing_obj_type.hazard_class_id := INV_EBI_ITEM_HELPER.value_to_id(
386: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
387: ,p_entity_name => INV_EBI_ITEM_HELPER.G_HAZARD_CLASS
388: );
389: l_pk_col_name_val_pairs.TRIM(1);
390: END IF;
391: IF ( (p_item.purchasing_obj_type.asset_category_id IS NULL OR p_item.purchasing_obj_type.asset_category_id =fnd_api.g_miss_num)
392: AND p_item.purchasing_obj_type.asset_category_code IS NOT NULL ) THEN
393: l_pk_col_name_val_pairs.EXTEND(1);
394: l_pk_col_name_val_pairs(1).name := 'concatenated_segments';
395: l_pk_col_name_val_pairs(1).value := p_item.purchasing_obj_type.asset_category_code;
396: x_item.purchasing_obj_type.asset_category_id := INV_EBI_ITEM_HELPER.value_to_id(
397: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
398: ,p_entity_name => INV_EBI_ITEM_HELPER.G_ASSET_CATEGORY
399: );
400: l_pk_col_name_val_pairs.TRIM(1);
394: l_pk_col_name_val_pairs(1).name := 'concatenated_segments';
395: l_pk_col_name_val_pairs(1).value := p_item.purchasing_obj_type.asset_category_code;
396: x_item.purchasing_obj_type.asset_category_id := INV_EBI_ITEM_HELPER.value_to_id(
397: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
398: ,p_entity_name => INV_EBI_ITEM_HELPER.G_ASSET_CATEGORY
399: );
400: l_pk_col_name_val_pairs.TRIM(1);
401: END IF;
402: IF ( (p_item.bom_obj_type.base_item_id IS NULL OR p_item.bom_obj_type.base_item_id= fnd_api.g_miss_num)
405: l_pk_col_name_val_pairs(1).name := 'concatenated_segments';
406: l_pk_col_name_val_pairs(1).value := p_item.bom_obj_type.base_item_number;
407: l_pk_col_name_val_pairs(2).name := 'organization_id';
408: l_pk_col_name_val_pairs(2).value := p_item.main_obj_type.organization_id;
409: x_item.bom_obj_type.base_item_id := INV_EBI_ITEM_HELPER.value_to_id(
410: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
411: ,p_entity_name => INV_EBI_ITEM_HELPER.G_INVENTORY_ITEM
412: );
413: l_pk_col_name_val_pairs.TRIM(2);
407: l_pk_col_name_val_pairs(2).name := 'organization_id';
408: l_pk_col_name_val_pairs(2).value := p_item.main_obj_type.organization_id;
409: x_item.bom_obj_type.base_item_id := INV_EBI_ITEM_HELPER.value_to_id(
410: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
411: ,p_entity_name => INV_EBI_ITEM_HELPER.G_INVENTORY_ITEM
412: );
413: l_pk_col_name_val_pairs.TRIM(2);
414: END IF;
415: IF ( p_item.part_num_obj_tbl_type IS NOT NULL AND p_item.part_num_obj_tbl_type.COUNT > 0 ) THEN
418: AND (p_item.part_num_obj_tbl_type(i).manufacturer_name IS NOT NULL OR p_item.part_num_obj_tbl_type(i).manufacturer_name <> fnd_api.g_miss_char))THEN
419: l_pk_col_name_val_pairs.EXTEND(1);
420: l_pk_col_name_val_pairs(1).name := 'manufacturer_name';
421: l_pk_col_name_val_pairs(1).value := p_item.part_num_obj_tbl_type(i).manufacturer_name;
422: x_item.part_num_obj_tbl_type(i).manufacturer_id := INV_EBI_ITEM_HELPER.value_to_id (
423: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
424: ,p_entity_name => INV_EBI_ITEM_HELPER.G_MANUFACTURER
425: );
426: l_pk_col_name_val_pairs.TRIM(1);
420: l_pk_col_name_val_pairs(1).name := 'manufacturer_name';
421: l_pk_col_name_val_pairs(1).value := p_item.part_num_obj_tbl_type(i).manufacturer_name;
422: x_item.part_num_obj_tbl_type(i).manufacturer_id := INV_EBI_ITEM_HELPER.value_to_id (
423: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
424: ,p_entity_name => INV_EBI_ITEM_HELPER.G_MANUFACTURER
425: );
426: l_pk_col_name_val_pairs.TRIM(1);
427: END IF;
428: END LOOP;
433: AND (p_item.category_id_obj_tbl_type(i).cat_set_name IS NOT NULL OR p_item.category_id_obj_tbl_type(i).cat_set_name <> fnd_api.g_miss_char) ) THEN
434: l_pk_col_name_val_pairs.EXTEND(1);
435: l_pk_col_name_val_pairs(1).name := 'category_set_name';
436: l_pk_col_name_val_pairs(1).value := p_item.category_id_obj_tbl_type(i).cat_set_name;
437: x_item.category_id_obj_tbl_type(i).cat_set_id := INV_EBI_ITEM_HELPER.value_to_id(
438: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
439: ,p_entity_name => INV_EBI_ITEM_HELPER.G_CATEGORY_SET
440: );
441: l_pk_col_name_val_pairs.TRIM(1);
435: l_pk_col_name_val_pairs(1).name := 'category_set_name';
436: l_pk_col_name_val_pairs(1).value := p_item.category_id_obj_tbl_type(i).cat_set_name;
437: x_item.category_id_obj_tbl_type(i).cat_set_id := INV_EBI_ITEM_HELPER.value_to_id(
438: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
439: ,p_entity_name => INV_EBI_ITEM_HELPER.G_CATEGORY_SET
440: );
441: l_pk_col_name_val_pairs.TRIM(1);
442: END IF;
443: IF ( (p_item.category_id_obj_tbl_type(i).cat_id IS NULL OR p_item.category_id_obj_tbl_type(i).cat_id =fnd_api.g_miss_num)
444: AND ( p_item.category_id_obj_tbl_type(i).cat_name IS NOT NULL OR p_item.category_id_obj_tbl_type(i).cat_name <> fnd_api.g_miss_char)) THEN
445: l_pk_col_name_val_pairs.EXTEND(1);
446: l_pk_col_name_val_pairs(1).name := 'concatenated_segments';
447: l_pk_col_name_val_pairs(1).value := p_item.category_id_obj_tbl_type(i).cat_name;
448: x_item.category_id_obj_tbl_type(i).cat_id := INV_EBI_ITEM_HELPER.value_to_id (
449: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
450: ,p_entity_name => INV_EBI_ITEM_HELPER.G_CATEGORY
451: );
452: l_pk_col_name_val_pairs.TRIM(1);
446: l_pk_col_name_val_pairs(1).name := 'concatenated_segments';
447: l_pk_col_name_val_pairs(1).value := p_item.category_id_obj_tbl_type(i).cat_name;
448: x_item.category_id_obj_tbl_type(i).cat_id := INV_EBI_ITEM_HELPER.value_to_id (
449: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
450: ,p_entity_name => INV_EBI_ITEM_HELPER.G_CATEGORY
451: );
452: l_pk_col_name_val_pairs.TRIM(1);
453: END IF;
454: END LOOP;
457: AND p_item.main_obj_type.rev_lifecycle_name IS NOT NULL) THEN
458: l_pk_col_name_val_pairs.EXTEND(1);
459: l_pk_col_name_val_pairs(1).name := 'name';
460: l_pk_col_name_val_pairs(1).value := p_item.main_obj_type.rev_lifecycle_name;
461: x_item.main_obj_type.rev_lifecycle_id := INV_EBI_ITEM_HELPER.value_to_id(
462: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
463: ,p_entity_name => INV_EBI_ITEM_HELPER.G_LIFECYCLE
464: );
465: l_pk_col_name_val_pairs.TRIM(1);
459: l_pk_col_name_val_pairs(1).name := 'name';
460: l_pk_col_name_val_pairs(1).value := p_item.main_obj_type.rev_lifecycle_name;
461: x_item.main_obj_type.rev_lifecycle_id := INV_EBI_ITEM_HELPER.value_to_id(
462: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
463: ,p_entity_name => INV_EBI_ITEM_HELPER.G_LIFECYCLE
464: );
465: l_pk_col_name_val_pairs.TRIM(1);
466: END IF;
467: IF ( (p_item.main_obj_type.rev_current_phase_id IS NULL OR p_item.main_obj_type.rev_current_phase_id= fnd_api.g_miss_num)
471: l_pk_col_name_val_pairs(1).name := 'name';
472: l_pk_col_name_val_pairs(1).value := p_item.main_obj_type.rev_current_phase_name;
473: l_pk_col_name_val_pairs(2).name := 'parent_structure_id';
474: l_pk_col_name_val_pairs(2).value := x_item.main_obj_type.rev_lifecycle_id;
475: x_item.main_obj_type.rev_current_phase_id := INV_EBI_ITEM_HELPER.value_to_id(
476: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
477: ,p_entity_name => INV_EBI_ITEM_HELPER.G_CURRENT_PHASE
478: );
479: l_pk_col_name_val_pairs.TRIM(2);
473: l_pk_col_name_val_pairs(2).name := 'parent_structure_id';
474: l_pk_col_name_val_pairs(2).value := x_item.main_obj_type.rev_lifecycle_id;
475: x_item.main_obj_type.rev_current_phase_id := INV_EBI_ITEM_HELPER.value_to_id(
476: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
477: ,p_entity_name => INV_EBI_ITEM_HELPER.G_CURRENT_PHASE
478: );
479: l_pk_col_name_val_pairs.TRIM(2);
480: END IF;
481: EXCEPTION
1181: l_eng_item_flag VARCHAR2(3);
1182: l_output_status inv_ebi_output_status;
1183: l_count NUMBER;
1184: l_master_org NUMBER;
1185: l_pk_col_name_val_pairs INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl;
1186: l_apply_template_update VARCHAR2(2000);
1187: l_validate_revised_itm_rev VARCHAR2(1);
1188: l_revised_item_exists NUMBER := 0;
1189: l_effectivity_date DATE;
1196: WHERE concatenated_segments = p_item_number
1197: AND organization_id = p_organization_id;
1198: BEGIN
1199: SAVEPOINT inv_ebi_pvt_item_save_pnt;
1200: INV_EBI_UTIL.debug_line('STEP: 10 '||'START INSIDE INV_EBI_ITEM_HELPER.process_item_pvt ');
1201: l_item := p_item;
1202: l_output_status := inv_ebi_output_status(fnd_api.g_ret_sts_success,NULL,NULL,NULL);
1203: x_out := inv_ebi_item_output_obj(NULL,NULL,NULL,NULL,l_output_status,NULL,NULL,NULL,NULL,NULL);
1204: l_item_number := l_item.main_obj_type.item_number;
1201: l_item := p_item;
1202: l_output_status := inv_ebi_output_status(fnd_api.g_ret_sts_success,NULL,NULL,NULL);
1203: x_out := inv_ebi_item_output_obj(NULL,NULL,NULL,NULL,l_output_status,NULL,NULL,NULL,NULL,NULL);
1204: l_item_number := l_item.main_obj_type.item_number;
1205: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
1206: IF(l_item_number IS NULL OR l_item_number = fnd_api.g_miss_char) THEN
1207: l_item_number := get_item_num(
1208: p_segment1 => l_item.main_obj_type.segment1
1209: ,p_segment2 => l_item.main_obj_type.segment2
1259: ,p_item_number => l_item_number
1260: ) = FND_API.g_true )
1261: THEN
1262: IF( l_item.main_obj_type.inventory_item_id IS NULL) THEN
1263: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
1264: l_pk_col_name_val_pairs.EXTEND(2);
1265: l_pk_col_name_val_pairs(1).name := 'organization_id';
1266: l_pk_col_name_val_pairs(1).value := l_item.main_obj_type.organization_id;
1267: l_pk_col_name_val_pairs(2).name := 'concatenated_segments';
1265: l_pk_col_name_val_pairs(1).name := 'organization_id';
1266: l_pk_col_name_val_pairs(1).value := l_item.main_obj_type.organization_id;
1267: l_pk_col_name_val_pairs(2).name := 'concatenated_segments';
1268: l_pk_col_name_val_pairs(2).value := l_item.main_obj_type.item_number;
1269: l_item.main_obj_type.inventory_item_id := INV_EBI_ITEM_HELPER.value_to_id (
1270: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
1271: ,p_entity_name=> INV_EBI_ITEM_HELPER.G_INVENTORY_ITEM
1272: );
1273: END IF;
1267: l_pk_col_name_val_pairs(2).name := 'concatenated_segments';
1268: l_pk_col_name_val_pairs(2).value := l_item.main_obj_type.item_number;
1269: l_item.main_obj_type.inventory_item_id := INV_EBI_ITEM_HELPER.value_to_id (
1270: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
1271: ,p_entity_name=> INV_EBI_ITEM_HELPER.G_INVENTORY_ITEM
1272: );
1273: END IF;
1274:
1275: SELECT COUNT(1) into l_revised_item_exists
1901: END IF;
1902: IF FND_API.to_boolean( p_commit ) THEN
1903: COMMIT;
1904: END IF;
1905: INV_EBI_UTIL.debug_line('STEP: 40 '||'END INSIDE INV_EBI_ITEM_HELPER.process_item_pvt ');
1906: EXCEPTION
1907: WHEN FND_API.g_exc_error THEN
1908: ROLLBACK TO inv_ebi_pvt_item_save_pnt;
1909: x_out.output_status.return_status := FND_API.g_ret_sts_error;
1927: WHEN OTHERS THEN
1928: ROLLBACK TO inv_ebi_pvt_item_save_pnt;
1929: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
1930: IF (x_out.output_status.msg_data IS NOT NULL) THEN
1931: x_out.output_status.msg_data := x_out.output_status.msg_data ||' -> INV_EBI_ITEM_HELPER.process_item_pvt ';
1932: ELSE
1933: x_out.output_status.msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.process_item_pvt ';
1934: END IF;
1935: END process_item_pvt;
1929: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
1930: IF (x_out.output_status.msg_data IS NOT NULL) THEN
1931: x_out.output_status.msg_data := x_out.output_status.msg_data ||' -> INV_EBI_ITEM_HELPER.process_item_pvt ';
1932: ELSE
1933: x_out.output_status.msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.process_item_pvt ';
1934: END IF;
1935: END process_item_pvt;
1936: /************************************************************************************
1937: -- API name : process_item_uda
2075: WHEN OTHERS THEN
2076: ROLLBACK TO inv_ebi_item_uda_save_pnt;
2077: x_uda_output_obj.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2078: IF (x_uda_output_obj.output_status.msg_data IS NOT NULL) THEN
2079: x_uda_output_obj.output_status.msg_data := x_uda_output_obj.output_status.msg_data ||' -> INV_EBI_ITEM_HELPER.process_item_uda ';
2080: ELSE
2081: x_uda_output_obj.output_status.msg_data := SQLERRM||' at INV_EBI_ITEM_HELPER.process_item_uda ';
2082: END IF;
2083: END process_item_uda;
2077: x_uda_output_obj.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2078: IF (x_uda_output_obj.output_status.msg_data IS NOT NULL) THEN
2079: x_uda_output_obj.output_status.msg_data := x_uda_output_obj.output_status.msg_data ||' -> INV_EBI_ITEM_HELPER.process_item_uda ';
2080: ELSE
2081: x_uda_output_obj.output_status.msg_data := SQLERRM||' at INV_EBI_ITEM_HELPER.process_item_uda ';
2082: END IF;
2083: END process_item_uda;
2084: /************************************************************************************
2085: -- API name : process_org_id_assignments
2101: l_api_version NUMBER:=1.0;
2102: l_item_org_tbl_count NUMBER := 1;
2103: BEGIN
2104: SAVEPOINT inv_ebi_org_id_save_pnt;
2105: INV_EBI_UTIL.debug_line('STEP: 10 '||'START INSIDE INV_EBI_ITEM_HELPER.process_org_id_assignments ');
2106: l_output_status := inv_ebi_output_status(fnd_api.g_ret_sts_success,NULL,NULL,NULL);
2107: x_out := inv_ebi_item_output_obj(NULL,NULL,NULL,NULL,l_output_status,NULL,NULL,NULL,NULL,NULL);
2108: IF p_org_id_tbl.COUNT > 0 THEN
2109: FOR i IN 1..p_org_id_tbl.COUNT LOOP
2128: END IF;
2129: IF FND_API.to_boolean( p_commit ) THEN
2130: COMMIT;
2131: END IF;
2132: INV_EBI_UTIL.debug_line('STEP: 40 '||'END INSIDE INV_EBI_ITEM_HELPER.process_org_id_assignments ');
2133: EXCEPTION
2134: WHEN FND_API.g_exc_unexpected_error THEN
2135: ROLLBACK TO inv_ebi_org_id_save_pnt;
2136: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2144: WHEN OTHERS THEN
2145: ROLLBACK TO inv_ebi_org_id_save_pnt;
2146: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2147: IF (x_out.output_status.msg_data IS NOT NULL) THEN
2148: x_out.output_status.msg_data := x_out.output_status.msg_data||' -> INV_EBI_ITEM_HELPER.process_org_id_assignments ';
2149: ELSE
2150: x_out.output_status.msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.process_org_id_assignments ';
2151: END IF;
2152: END process_org_id_assignments;
2146: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2147: IF (x_out.output_status.msg_data IS NOT NULL) THEN
2148: x_out.output_status.msg_data := x_out.output_status.msg_data||' -> INV_EBI_ITEM_HELPER.process_org_id_assignments ';
2149: ELSE
2150: x_out.output_status.msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.process_org_id_assignments ';
2151: END IF;
2152: END process_org_id_assignments;
2153: /************************************************************************************
2154: -- API name : process_category_assignments
2170: l_category_output inv_ebi_category_output_obj;
2171: l_output_status inv_ebi_output_status;
2172: BEGIN
2173: SAVEPOINT inv_ebi_cat_id_save_pnt;
2174: INV_EBI_UTIL.debug_line('STEP: 10 '||'START INSIDE INV_EBI_ITEM_HELPER.process_category_assignments ');
2175: l_category_output := inv_ebi_category_output_obj(NULL);
2176: l_output_status := inv_ebi_output_status(fnd_api.g_ret_sts_success,NULL,NULL,NULL);
2177: x_out := inv_ebi_item_output_obj(NULL,NULL,NULL,NULL,l_output_status,NULL,l_category_output,NULL,NULL,NULL);
2178: INV_EBI_UTIL.debug_line('STEP: 20 '||'START CALLING EGO_ITEM_PUB.process_item_cat_assignment ');
2198: END IF;
2199: IF FND_API.to_boolean( p_commit ) THEN
2200: COMMIT;
2201: END IF;
2202: INV_EBI_UTIL.debug_line('STEP: 40 '||'END INSIDE INV_EBI_ITEM_HELPER.process_category_assignments ');
2203: EXCEPTION
2204: WHEN FND_API.g_exc_unexpected_error THEN
2205: ROLLBACK TO inv_ebi_cat_id_save_pnt;
2206: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2214: WHEN OTHERS THEN
2215: ROLLBACK TO inv_ebi_cat_id_save_pnt;
2216: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2217: IF (x_out.output_status.msg_data IS NOT NULL) THEN
2218: x_out.output_status.msg_data := x_out.output_status.msg_data ||' -> INV_EBI_ITEM_HELPER.process_category_assignments ';
2219: ELSE
2220: x_out.output_status.msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.process_category_assignments ';
2221: END IF;
2222: END process_category_assignments;
2216: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2217: IF (x_out.output_status.msg_data IS NOT NULL) THEN
2218: x_out.output_status.msg_data := x_out.output_status.msg_data ||' -> INV_EBI_ITEM_HELPER.process_category_assignments ';
2219: ELSE
2220: x_out.output_status.msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.process_category_assignments ';
2221: END IF;
2222: END process_category_assignments;
2223: /************************************************************************************
2224: -- API name : process_part_num_association
2294: AND organization_id = p_organization_id
2295: AND inventory_item_id = p_inventory_item_id;
2296: BEGIN
2297: SAVEPOINT inv_ebi_part_num_save_pnt;
2298: INV_EBI_UTIL.debug_line('STEP: 10 '||'START INSIDE INV_EBI_ITEM_HELPER.process_part_num_association ');
2299: l_output_status := inv_ebi_output_status(fnd_api.g_ret_sts_success,NULL,NULL,NULL);
2300: x_out := inv_ebi_item_output_obj(NULL,NULL,NULL,NULL,l_output_status,NULL,NULL,NULL,NULL,NULL);
2301: IF p_mfg_part_obj.mfg_part_num IS NOT NULL THEN
2302: OPEN c_mfg_part_num(
2526: END IF;
2527: IF FND_API.to_boolean( p_commit ) THEN
2528: COMMIT;
2529: END IF;
2530: INV_EBI_UTIL.debug_line('STEP: 120 '||'END INSIDE INV_EBI_ITEM_HELPER.process_part_num_association ');
2531: EXCEPTION
2532: WHEN FND_API.g_exc_error THEN
2533: ROLLBACK TO inv_ebi_part_num_save_pnt;
2534: x_out.output_status.return_status := FND_API.g_ret_sts_error;
2552: WHEN OTHERS THEN
2553: ROLLBACK TO inv_ebi_part_num_save_pnt;
2554: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2555: IF (x_out.output_status.msg_data IS NOT NULL) THEN
2556: x_out.output_status.msg_data := x_out.output_status.msg_data||' -> INV_EBI_ITEM_HELPER.process_part_num_association ';
2557: ELSE
2558: x_out.output_status.msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.process_part_num_association ';
2559: END IF;
2560: END process_part_num_association;
2554: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2555: IF (x_out.output_status.msg_data IS NOT NULL) THEN
2556: x_out.output_status.msg_data := x_out.output_status.msg_data||' -> INV_EBI_ITEM_HELPER.process_part_num_association ';
2557: ELSE
2558: x_out.output_status.msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.process_part_num_association ';
2559: END IF;
2560: END process_part_num_association;
2561:
2562: /************************************************************************************
2585:
2586: l_mfg_part_num_obj inv_ebi_manufacturer_part_obj;
2587: l_master_org_id NUMBER;
2588: l_manufacturer_count NUMBER := 0;
2589: l_pk_col_name_val_pairs INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl;
2590: l_operating_unit VARCHAR2(240);
2591: l_operating_unit_id NUMBER;
2592: BEGIN
2593: SAVEPOINT inv_ebi_sync_item_save_pnt;
2592: BEGIN
2593: SAVEPOINT inv_ebi_sync_item_save_pnt;
2594: l_output_status := inv_ebi_output_status(fnd_api.g_ret_sts_success,NULL,NULL,NULL);
2595: x_out := inv_ebi_item_output_obj(NULL,NULL,NULL,NULL,l_output_status,NULL,NULL,NULL,NULL,NULL);
2596: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
2597:
2598: --Create or update item
2599: INV_EBI_UTIL.debug_line('STEP: 10 '||'START INSIDE INV_EBI_ITEM_HELPER.sync_item '||
2600: 'ORGANIZATION CODE: '||p_item.main_obj_type.organization_code||
2595: x_out := inv_ebi_item_output_obj(NULL,NULL,NULL,NULL,l_output_status,NULL,NULL,NULL,NULL,NULL);
2596: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
2597:
2598: --Create or update item
2599: INV_EBI_UTIL.debug_line('STEP: 10 '||'START INSIDE INV_EBI_ITEM_HELPER.sync_item '||
2600: 'ORGANIZATION CODE: '||p_item.main_obj_type.organization_code||
2601: 'Item Number: '||p_item.main_obj_type.item_number
2602: );
2603: INV_EBI_UTIL.debug_line('STEP: 20 '||'START CALLING INV_EBI_ITEM_HELPER.process_item_pvt ');
2599: INV_EBI_UTIL.debug_line('STEP: 10 '||'START INSIDE INV_EBI_ITEM_HELPER.sync_item '||
2600: 'ORGANIZATION CODE: '||p_item.main_obj_type.organization_code||
2601: 'Item Number: '||p_item.main_obj_type.item_number
2602: );
2603: INV_EBI_UTIL.debug_line('STEP: 20 '||'START CALLING INV_EBI_ITEM_HELPER.process_item_pvt ');
2604: process_item_pvt (
2605: p_item => p_item
2606: ,p_operation => p_operation
2607: ,p_commit => FND_API.g_false
2606: ,p_operation => p_operation
2607: ,p_commit => FND_API.g_false
2608: ,x_out => l_out
2609: );
2610: INV_EBI_UTIL.debug_line('STEP: 30 '||'END CALLING INV_EBI_ITEM_HELPER.process_item_pvt ');
2611: IF (l_out.output_status.return_status <> fnd_api.g_ret_sts_success) THEN
2612: x_out.output_status.msg_data := l_out.output_status.msg_data;
2613: RAISE fnd_api.g_exc_unexpected_error;
2614: END IF;
2619: l_operating_unit := l_out.operating_unit;
2620: l_operating_unit_id := l_out.operating_unit_id;
2621: --Assign item to all the orgs sent in the list.
2622: IF (p_item.org_id_obj_type IS NOT NULL AND p_item.org_id_obj_type.COUNT > 0) THEN
2623: INV_EBI_UTIL.debug_line('STEP: 40 '||'START CALLING INV_EBI_ITEM_HELPER.process_org_id_assignments ');
2624: process_org_id_assignments(
2625: p_init_msg_list => p_item.main_obj_type.init_msg_list
2626: ,p_commit => fnd_api.g_false
2627: ,p_inventory_item_id => l_inventory_item_id
2628: ,p_item_number => p_item.main_obj_type.item_number
2629: ,p_org_id_tbl => p_item.org_id_obj_type
2630: ,x_out => l_out
2631: );
2632: INV_EBI_UTIL.debug_line('STEP: 40 '||'END CALLING INV_EBI_ITEM_HELPER.process_org_id_assignments ');
2633: END IF;
2634: IF (l_out.output_status.return_status <> FND_API.g_ret_sts_success) THEN
2635: x_out.output_status.msg_data := l_out.output_status.msg_data;
2636: RAISE fnd_api.g_exc_unexpected_error;
2636: RAISE fnd_api.g_exc_unexpected_error;
2637: END IF;
2638: --Catalog Category assignment
2639: IF (p_item.category_id_obj_tbl_type IS NOT NULL AND p_item.category_id_obj_tbl_type.COUNT > 0) THEN
2640: INV_EBI_UTIL.debug_line('STEP: 50 '||'START CALLING INV_EBI_ITEM_HELPER.process_category_assignments ');
2641: process_category_assignments(
2642: p_api_version => l_api_version
2643: ,p_init_msg_list => p_item.main_obj_type.init_msg_list
2644: ,p_commit => fnd_api.g_false
2646: ,p_organization_id => p_item.main_obj_type.organization_id
2647: ,p_category_id_tbl => p_item.category_id_obj_tbl_type
2648: ,x_out => l_out
2649: );
2650: INV_EBI_UTIL.debug_line('STEP: 60 '||'END CALLING INV_EBI_ITEM_HELPER.process_category_assignments ');
2651: END IF;
2652: IF (l_out.output_status.return_status <> FND_API.g_ret_sts_success) THEN
2653: x_out.output_status.msg_data := l_out.output_status.msg_data;
2654: RAISE fnd_api.g_exc_unexpected_error;
2660:
2661: --Manufacturer Part Num association needs to be done for master org only.
2662: IF(l_master_org_id = p_item.main_obj_type.organization_id) THEN
2663: IF (p_item.part_num_obj_tbl_type IS NOT NULL AND p_item.part_num_obj_tbl_type.COUNT > 0) THEN
2664: INV_EBI_UTIL.debug_line('STEP: 70 '||'START CALLING INV_EBI_ITEM_HELPER.process_part_num_association');
2665: FOR i IN p_item.part_num_obj_tbl_type.FIRST..p_item.part_num_obj_tbl_type.LAST
2666: LOOP
2667: l_mfg_part_num_obj := p_item.part_num_obj_tbl_type(i);
2668: IF(l_mfg_part_num_obj.manufacturer_id IS NOT NULL AND l_mfg_part_num_obj.manufacturer_id <> fnd_api.g_miss_num) THEN
2700: x_out.output_status.msg_data := l_out.output_status.msg_data ;
2701: RAISE FND_API.g_exc_unexpected_error;
2702: END IF;
2703: END LOOP;
2704: INV_EBI_UTIL.debug_line('STEP: 80 '||'END CALLING INV_EBI_ITEM_HELPER.process_part_num_association');
2705: END IF;
2706: END IF;
2707: x_out := inv_ebi_item_output_obj(l_inventory_item_id,l_organization_id,l_organization_code,l_item_number,l_out.output_status,NULL,l_category_output,NULL,l_operating_unit,l_operating_unit_id);
2708:
2710:
2711: IF fnd_api.to_boolean(p_commit) THEN
2712: COMMIT;
2713: END IF;
2714: INV_EBI_UTIL.debug_line('STEP: 90 '||'END INSIDE INV_EBI_ITEM_HELPER.sync_item '||
2715: 'ORGANIZATION CODE: '||p_item.main_obj_type.organization_code||
2716: 'Item Number: '||p_item.main_obj_type.item_number
2717: );
2718: EXCEPTION
2739: WHEN OTHERS THEN
2740: ROLLBACK TO inv_ebi_sync_item_save_pnt;
2741: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2742: IF (x_out.output_status.msg_data IS NOT NULL) THEN
2743: x_out.output_status.msg_data := l_out.output_status.msg_data ||' -> INV_EBI_ITEM_HELPER.sync_item ';
2744: ELSE
2745: x_out.output_status.msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.sync_item ';
2746: END IF;
2747: END sync_item;
2741: x_out.output_status.return_status := FND_API.g_ret_sts_unexp_error;
2742: IF (x_out.output_status.msg_data IS NOT NULL) THEN
2743: x_out.output_status.msg_data := l_out.output_status.msg_data ||' -> INV_EBI_ITEM_HELPER.sync_item ';
2744: ELSE
2745: x_out.output_status.msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.sync_item ';
2746: END IF;
2747: END sync_item;
2748: /************************************************************************************
2749: -- API name : get_item_balance
2784: l_sec_avail_to_transact NUMBER;
2785: l_sec_avail_to_reserve NUMBER;
2786: l_organization_code VARCHAR2(3000);
2787: l_item_name VARCHAR2(30);
2788: l_pk_col_name_val_pairs INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl;
2789: CURSOR c_locator_id(p_inventory_item_id IN NUMBER, p_organization_id IN NUMBER,
2790: p_revision IN VARCHAR2, p_subinventory_code IN VARCHAR2
2791: )IS
2792: SELECT
2878: ,l_sec_qty_suggested
2879: ,l_sec_avail_to_transact
2880: ,l_sec_avail_to_reserve
2881: );
2882: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
2883: l_pk_col_name_val_pairs.EXTEND(1);
2884: l_pk_col_name_val_pairs(1).name := 'organization_id';
2885: l_pk_col_name_val_pairs(1).value := p_item_balance_input.item_input_table(i).organization_id;
2886: l_organization_code := INV_EBI_ITEM_HELPER.id_to_value (
2882: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
2883: l_pk_col_name_val_pairs.EXTEND(1);
2884: l_pk_col_name_val_pairs(1).name := 'organization_id';
2885: l_pk_col_name_val_pairs(1).value := p_item_balance_input.item_input_table(i).organization_id;
2886: l_organization_code := INV_EBI_ITEM_HELPER.id_to_value (
2887: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
2888: ,p_entity_name=> G_ORGANIZATION
2889: );
2890: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
2886: l_organization_code := INV_EBI_ITEM_HELPER.id_to_value (
2887: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
2888: ,p_entity_name=> G_ORGANIZATION
2889: );
2890: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
2891: l_pk_col_name_val_pairs.EXTEND(1);
2892: l_pk_col_name_val_pairs(1).name := 'organization_id';
2893: l_pk_col_name_val_pairs(1).value := p_item_balance_input.item_input_table(i).organization_id;
2894: l_pk_col_name_val_pairs.EXTEND(1);
2893: l_pk_col_name_val_pairs(1).value := p_item_balance_input.item_input_table(i).organization_id;
2894: l_pk_col_name_val_pairs.EXTEND(1);
2895: l_pk_col_name_val_pairs(2).name := 'inventory_item_id';
2896: l_pk_col_name_val_pairs(2).value := p_item_balance_input.item_input_table(i).inventory_item_id;
2897: l_item_name := INV_EBI_ITEM_HELPER.id_to_value(
2898: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
2899: ,p_entity_name=> G_INVENTORY_ITEM
2900: );
2901: l_item_balance_output_obj := inv_ebi_item_bal_output_obj(
3027: populate_err_msg(p_orgid => p_item_balance_input.item_input_table(i).organization_id
3028: ,p_invid => p_item_balance_input.item_input_table(i).inventory_item_id
3029: ,p_org_code => l_organization_code
3030: ,p_item_name => l_item_name
3031: ,p_part_err_msg => SQLERRM||'-> at inv_ebi_item_helper.get_item_balance'
3032: ,x_err_msg => x_msg_data
3033: );
3034: END;
3035:
3039: EXCEPTION
3040: WHEN OTHERS THEN
3041: x_return_status := FND_API.g_ret_sts_error;
3042: IF (x_msg_data IS NOT NULL) THEN
3043: x_msg_data := x_msg_data ||' -> at INV_EBI_ITEM_HELPER.get_item_balance';
3044: ELSE
3045: x_msg_data := SQLERRM||' at INV_EBI_ITEM_HELPER.get_item_balance ';
3046: END IF;
3047: END get_item_balance;
3041: x_return_status := FND_API.g_ret_sts_error;
3042: IF (x_msg_data IS NOT NULL) THEN
3043: x_msg_data := x_msg_data ||' -> at INV_EBI_ITEM_HELPER.get_item_balance';
3044: ELSE
3045: x_msg_data := SQLERRM||' at INV_EBI_ITEM_HELPER.get_item_balance ';
3046: END IF;
3047: END get_item_balance;
3048: /************************************************************************************
3049: -- API name : validate_get_item_request
3084: );
3085: WHEN OTHERS THEN
3086: x_status := FND_API.G_RET_STS_ERROR;
3087: IF (x_msg_data IS NOT NULL) THEN
3088: x_msg_data := x_msg_data||' -> INV_EBI_ITEM_HELPER.validate_get_item_request ';
3089: ELSE
3090: x_msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.validate_get_item_request ';
3091: END IF;
3092: END validate_get_item_request;
3086: x_status := FND_API.G_RET_STS_ERROR;
3087: IF (x_msg_data IS NOT NULL) THEN
3088: x_msg_data := x_msg_data||' -> INV_EBI_ITEM_HELPER.validate_get_item_request ';
3089: ELSE
3090: x_msg_data := SQLERRM||' INV_EBI_ITEM_HELPER.validate_get_item_request ';
3091: END IF;
3092: END validate_get_item_request;
3093: /************************************************************************************
3094: -- API name : get_uda_attributes
3410: END IF;
3411:
3412: x_return_status := FND_API.g_ret_sts_unexp_error;
3413: IF (x_msg_data IS NOT NULL) THEN
3414: x_msg_data := x_msg_data||' ->INV_EBI_ITEM_HELPER.get_item_uda ';
3415: ELSE
3416: x_msg_data := SQLERRM||'INV_EBI_ITEM_HELPER.get_item_uda';
3417: END IF;
3418: END get_item_uda;
3412: x_return_status := FND_API.g_ret_sts_unexp_error;
3413: IF (x_msg_data IS NOT NULL) THEN
3414: x_msg_data := x_msg_data||' ->INV_EBI_ITEM_HELPER.get_item_uda ';
3415: ELSE
3416: x_msg_data := SQLERRM||'INV_EBI_ITEM_HELPER.get_item_uda';
3417: END IF;
3418: END get_item_uda;
3419: /************************************************************************************
3420: -- API name : get_item_attributes
3476: l_item_attr_tbl inv_ebi_item_attr_tbl;
3477: l_mfr_part_table inv_ebi_mfg_part_obj_tbl_type;
3478: l_return_status VARCHAR2(1);
3479: l_msg VARCHAR2(100);
3480: l_pk_col_name_val_pairs INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl;
3481: ctr NUMBER;
3482: l_error_code NUMBER;
3483: l_default_cost_group_id VARCHAR2(2000) :=NULL;
3484: l_default_cost_type_id VARCHAR2(2000) :=NULL;
3641: IF(l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
3642: RAISE FND_API.G_EXC_ERROR;
3643: END IF;
3644: IF((l_org_id IS NULL) )THEN
3645: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
3646: l_pk_col_name_val_pairs.EXTEND(1);
3647: l_pk_col_name_val_pairs(1).name := 'organization_code';
3648: l_pk_col_name_val_pairs(1).value := p_get_item_inp_obj.p_get_opr_attrs_tbl_type(i).organization_code;
3649: l_org_id := INV_EBI_ITEM_HELPER.value_to_id (
3645: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
3646: l_pk_col_name_val_pairs.EXTEND(1);
3647: l_pk_col_name_val_pairs(1).name := 'organization_code';
3648: l_pk_col_name_val_pairs(1).value := p_get_item_inp_obj.p_get_opr_attrs_tbl_type(i).organization_code;
3649: l_org_id := INV_EBI_ITEM_HELPER.value_to_id (
3650: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
3651: ,p_entity_name=> INV_EBI_ITEM_HELPER.G_ORGANIZATION
3652: );
3653: IF (l_org_id IS NULL) THEN
3647: l_pk_col_name_val_pairs(1).name := 'organization_code';
3648: l_pk_col_name_val_pairs(1).value := p_get_item_inp_obj.p_get_opr_attrs_tbl_type(i).organization_code;
3649: l_org_id := INV_EBI_ITEM_HELPER.value_to_id (
3650: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
3651: ,p_entity_name=> INV_EBI_ITEM_HELPER.G_ORGANIZATION
3652: );
3653: IF (l_org_id IS NULL) THEN
3654: FND_MESSAGE.set_name('INV','INV_EBI_ORG_CODE_INVALID');
3655: FND_MESSAGE.set_token('COL_VALUE', p_get_item_inp_obj.p_get_opr_attrs_tbl_type(i).organization_code);
3657: RAISE FND_API.G_EXC_ERROR;
3658: END IF;
3659: END IF;
3660: IF( l_item_id IS NULL) THEN
3661: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
3662: l_pk_col_name_val_pairs.EXTEND(2);
3663: l_pk_col_name_val_pairs(1).name := 'organization_id';
3664: l_pk_col_name_val_pairs(1).value := l_org_id;
3665: l_pk_col_name_val_pairs(2).name := 'concatenated_segments';
3663: l_pk_col_name_val_pairs(1).name := 'organization_id';
3664: l_pk_col_name_val_pairs(1).value := l_org_id;
3665: l_pk_col_name_val_pairs(2).name := 'concatenated_segments';
3666: l_pk_col_name_val_pairs(2).value := p_get_item_inp_obj.p_get_opr_attrs_tbl_type(i).item_name;
3667: l_item_id := INV_EBI_ITEM_HELPER.value_to_id (
3668: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
3669: ,p_entity_name=> INV_EBI_ITEM_HELPER.G_INVENTORY_ITEM
3670: );
3671: IF (l_item_id IS NULL ) THEN
3665: l_pk_col_name_val_pairs(2).name := 'concatenated_segments';
3666: l_pk_col_name_val_pairs(2).value := p_get_item_inp_obj.p_get_opr_attrs_tbl_type(i).item_name;
3667: l_item_id := INV_EBI_ITEM_HELPER.value_to_id (
3668: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
3669: ,p_entity_name=> INV_EBI_ITEM_HELPER.G_INVENTORY_ITEM
3670: );
3671: IF (l_item_id IS NULL ) THEN
3672: FND_MESSAGE.set_name('INV','INV_EBI_ITEM_INVALID');
3673: FND_MESSAGE.set_token('COL_VALUE', p_get_item_inp_obj.p_get_opr_attrs_tbl_type(i).item_name);
4264:
4265: IF ( (l_item_core_obj.revision_id IS NULL OR l_item_core_obj.revision_id= fnd_api.g_miss_num)
4266: AND (l_org_id IS NOT NULL AND l_item_id IS NOT NULL)
4267: ) THEN
4268: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4269: l_pk_col_name_val_pairs.EXTEND(2);
4270: l_pk_col_name_val_pairs(1).name := 'organization_id';
4271: l_pk_col_name_val_pairs(1).value := l_org_id;
4272: l_pk_col_name_val_pairs(2).name := 'inventory_item_id';
4270: l_pk_col_name_val_pairs(1).name := 'organization_id';
4271: l_pk_col_name_val_pairs(1).value := l_org_id;
4272: l_pk_col_name_val_pairs(2).name := 'inventory_item_id';
4273: l_pk_col_name_val_pairs(2).value := l_item_id;
4274: l_item_core_obj.revision_id := INV_EBI_ITEM_HELPER.value_to_id(
4275: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4276: ,p_entity_name => INV_EBI_ITEM_HELPER.G_REVISION
4277: );
4278: l_pk_col_name_val_pairs.TRIM(2);
4272: l_pk_col_name_val_pairs(2).name := 'inventory_item_id';
4273: l_pk_col_name_val_pairs(2).value := l_item_id;
4274: l_item_core_obj.revision_id := INV_EBI_ITEM_HELPER.value_to_id(
4275: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4276: ,p_entity_name => INV_EBI_ITEM_HELPER.G_REVISION
4277: );
4278: l_pk_col_name_val_pairs.TRIM(2);
4279: END IF;
4280: ctr := 1;
4284: ,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
4285: l_mfr_part_table.extend();
4286: l_item_mfr_part_obj.manufacturer_id := c.manufacturer_id;
4287: l_item_mfr_part_obj.mfg_part_num := c.mfg_part_num;
4288: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4289: l_pk_col_name_val_pairs.EXTEND(1);
4290: l_pk_col_name_val_pairs(1).name := 'manufacturer_id';
4291: l_pk_col_name_val_pairs(1).value := l_item_mfr_part_obj.manufacturer_id;
4292: l_item_mfr_part_obj.manufacturer_name := INV_EBI_ITEM_HELPER.id_to_value (
4288: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4289: l_pk_col_name_val_pairs.EXTEND(1);
4290: l_pk_col_name_val_pairs(1).name := 'manufacturer_id';
4291: l_pk_col_name_val_pairs(1).value := l_item_mfr_part_obj.manufacturer_id;
4292: l_item_mfr_part_obj.manufacturer_name := INV_EBI_ITEM_HELPER.id_to_value (
4293: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4294: ,p_entity_name=> G_MANUFACTURER
4295: );
4296: l_mfr_part_table(ctr) := l_item_mfr_part_obj;
4322: p_cost_type_id => l_default_cost_type_id
4323: );
4324:
4325: IF(l_item_core_obj.organization_id IS NOT NULL) THEN
4326: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4327: l_pk_col_name_val_pairs.EXTEND(1);
4328: l_pk_col_name_val_pairs(1).name := 'organization_id';
4329: l_pk_col_name_val_pairs(1).value := l_item_core_obj.organization_id;
4330: l_item_core_obj.organization_code := INV_EBI_ITEM_HELPER.id_to_value (
4326: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4327: l_pk_col_name_val_pairs.EXTEND(1);
4328: l_pk_col_name_val_pairs(1).name := 'organization_id';
4329: l_pk_col_name_val_pairs(1).value := l_item_core_obj.organization_id;
4330: l_item_core_obj.organization_code := INV_EBI_ITEM_HELPER.id_to_value (
4331: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4332: ,p_entity_name=> G_ORGANIZATION
4333: );
4334: END IF;
4333: );
4334: END IF;
4335:
4336: IF(l_item_core_obj.template_id IS NOT NULL) THEN
4337: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4338: l_pk_col_name_val_pairs.EXTEND(1);
4339: l_pk_col_name_val_pairs(1).name := 'template_id';
4340: l_pk_col_name_val_pairs(1).value := l_item_core_obj.template_id;
4341: l_item_core_obj.template_name := INV_EBI_ITEM_HELPER.id_to_value(
4337: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4338: l_pk_col_name_val_pairs.EXTEND(1);
4339: l_pk_col_name_val_pairs(1).name := 'template_id';
4340: l_pk_col_name_val_pairs(1).value := l_item_core_obj.template_id;
4341: l_item_core_obj.template_name := INV_EBI_ITEM_HELPER.id_to_value(
4342: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4343: ,p_entity_name=> G_TEMPLATE
4344: );
4345: END IF;
4344: );
4345: END IF;
4346:
4347: IF(l_item_core_obj.item_catalog_group_id IS NOT NULL) THEN
4348: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4349: l_pk_col_name_val_pairs.EXTEND(1);
4350: l_pk_col_name_val_pairs(1).name := 'item_catalog_group_id';
4351: l_pk_col_name_val_pairs(1).value := l_item_core_obj.item_catalog_group_id;
4352: l_item_core_obj.item_catalog_group_code := INV_EBI_ITEM_HELPER.id_to_value(
4348: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4349: l_pk_col_name_val_pairs.EXTEND(1);
4350: l_pk_col_name_val_pairs(1).name := 'item_catalog_group_id';
4351: l_pk_col_name_val_pairs(1).value := l_item_core_obj.item_catalog_group_id;
4352: l_item_core_obj.item_catalog_group_code := INV_EBI_ITEM_HELPER.id_to_value(
4353: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4354: ,p_entity_name=> G_ITEM_CATALOG_GROUP
4355: );
4356: END IF;
4355: );
4356: END IF;
4357:
4358: IF(l_item_core_obj.lifecycle_id IS NOT NULL) THEN
4359: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4360: l_pk_col_name_val_pairs.EXTEND(1);
4361: l_pk_col_name_val_pairs(1).name := 'proj_element_id'; -- Column name not available project_element_id
4362: l_pk_col_name_val_pairs(1).value := l_item_core_obj.lifecycle_id;
4363: l_item_core_obj.lifecycle_name := INV_EBI_ITEM_HELPER.id_to_value(
4359: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4360: l_pk_col_name_val_pairs.EXTEND(1);
4361: l_pk_col_name_val_pairs(1).name := 'proj_element_id'; -- Column name not available project_element_id
4362: l_pk_col_name_val_pairs(1).value := l_item_core_obj.lifecycle_id;
4363: l_item_core_obj.lifecycle_name := INV_EBI_ITEM_HELPER.id_to_value(
4364: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4365: ,p_entity_name=> G_LIFECYCLE
4366: );
4367: END IF;
4365: ,p_entity_name=> G_LIFECYCLE
4366: );
4367: END IF;
4368: IF(l_item_core_obj.current_phase_id IS NOT NULL) THEN
4369: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4370: l_pk_col_name_val_pairs.EXTEND(1);
4371: l_pk_col_name_val_pairs(1).name := 'proj_element_id';
4372: l_pk_col_name_val_pairs(1).value := l_item_core_obj.current_phase_id;
4373: l_item_core_obj.current_phase_name := INV_EBI_ITEM_HELPER.id_to_value(
4369: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4370: l_pk_col_name_val_pairs.EXTEND(1);
4371: l_pk_col_name_val_pairs(1).name := 'proj_element_id';
4372: l_pk_col_name_val_pairs(1).value := l_item_core_obj.current_phase_id;
4373: l_item_core_obj.current_phase_name := INV_EBI_ITEM_HELPER.id_to_value(
4374: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4375: ,p_entity_name=> G_CURRENT_PHASE
4376: );
4377: END IF;
4375: ,p_entity_name=> G_CURRENT_PHASE
4376: );
4377: END IF;
4378: IF (l_item_core_obj.revision_id IS NOT NULL) THEN
4379: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4380: l_pk_col_name_val_pairs.EXTEND(1);
4381: l_pk_col_name_val_pairs(1).name := 'revision_id';
4382: l_pk_col_name_val_pairs(1).value := l_item_core_obj.revision_id ;
4383: l_item_core_obj.revision_code := INV_EBI_ITEM_HELPER.id_to_value(
4379: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4380: l_pk_col_name_val_pairs.EXTEND(1);
4381: l_pk_col_name_val_pairs(1).name := 'revision_id';
4382: l_pk_col_name_val_pairs(1).value := l_item_core_obj.revision_id ;
4383: l_item_core_obj.revision_code := INV_EBI_ITEM_HELPER.id_to_value(
4384: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4385: ,p_entity_name=> G_REVISION
4386: );
4387: END IF;
4385: ,p_entity_name=> G_REVISION
4386: );
4387: END IF;
4388: IF(l_item_pur_obj.hazard_class_id IS NOT NULL) THEN
4389: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4390: l_pk_col_name_val_pairs.EXTEND(1);
4391: l_pk_col_name_val_pairs(1).name := 'hazard_class_id';
4392: l_pk_col_name_val_pairs(1).value := l_item_pur_obj.hazard_class_id;
4393: l_item_pur_obj.hazard_class_code := INV_EBI_ITEM_HELPER.id_to_value(
4389: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4390: l_pk_col_name_val_pairs.EXTEND(1);
4391: l_pk_col_name_val_pairs(1).name := 'hazard_class_id';
4392: l_pk_col_name_val_pairs(1).value := l_item_pur_obj.hazard_class_id;
4393: l_item_pur_obj.hazard_class_code := INV_EBI_ITEM_HELPER.id_to_value(
4394: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4395: ,p_entity_name=> G_HAZARD_CLASS
4396: );
4397: END IF;
4395: ,p_entity_name=> G_HAZARD_CLASS
4396: );
4397: END IF;
4398: IF (l_item_pur_obj.asset_category_id IS NOT NULL) THEN
4399: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4400: l_pk_col_name_val_pairs.EXTEND(1);
4401: l_pk_col_name_val_pairs(1).name := 'category_id';
4402: l_pk_col_name_val_pairs(1).value := l_item_pur_obj.asset_category_id ;
4403: l_item_pur_obj.asset_category_code := INV_EBI_ITEM_HELPER.id_to_value(
4399: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4400: l_pk_col_name_val_pairs.EXTEND(1);
4401: l_pk_col_name_val_pairs(1).name := 'category_id';
4402: l_pk_col_name_val_pairs(1).value := l_item_pur_obj.asset_category_id ;
4403: l_item_pur_obj.asset_category_code := INV_EBI_ITEM_HELPER.id_to_value(
4404: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4405: ,p_entity_name=> G_ASSET_CATEGORY
4406: );
4407: END IF;
4405: ,p_entity_name=> G_ASSET_CATEGORY
4406: );
4407: END IF;
4408: IF (l_item_bom_obj.base_item_id IS NOT NULL) THEN
4409: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4410: l_pk_col_name_val_pairs.EXTEND(2);
4411: l_pk_col_name_val_pairs(1).name := 'inventory_item_id';
4412: l_pk_col_name_val_pairs(1).value := l_item_bom_obj.base_item_id;
4413: l_pk_col_name_val_pairs(2).name := 'organization_id';
4411: l_pk_col_name_val_pairs(1).name := 'inventory_item_id';
4412: l_pk_col_name_val_pairs(1).value := l_item_bom_obj.base_item_id;
4413: l_pk_col_name_val_pairs(2).name := 'organization_id';
4414: l_pk_col_name_val_pairs(2).value := l_item_core_obj.organization_id;
4415: l_item_bom_obj.base_item_number := INV_EBI_ITEM_HELPER.id_to_value(
4416: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4417: ,p_entity_name=> G_INVENTORY_ITEM
4418: );
4419: END IF;
4417: ,p_entity_name=> G_INVENTORY_ITEM
4418: );
4419: END IF;
4420: -- gets the item number
4421: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4422: l_pk_col_name_val_pairs.EXTEND(1);
4423: l_pk_col_name_val_pairs(1).name := 'organization_id';
4424: l_pk_col_name_val_pairs(1).value := l_item_core_obj.organization_id;
4425: l_pk_col_name_val_pairs.EXTEND(1);
4424: l_pk_col_name_val_pairs(1).value := l_item_core_obj.organization_id;
4425: l_pk_col_name_val_pairs.EXTEND(1);
4426: l_pk_col_name_val_pairs(2).name := 'inventory_item_id';
4427: l_pk_col_name_val_pairs(2).value := l_item_core_obj.inventory_item_id;
4428: l_item_core_obj.item_name := INV_EBI_ITEM_HELPER.id_to_value(
4429: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4430: ,p_entity_name=> G_INVENTORY_ITEM
4431: );
4432: SELECT MASTER_ORGANIZATION_ID INTO l_item_core_obj.MASTER_ORGANIZATION_ID
4431: );
4432: SELECT MASTER_ORGANIZATION_ID INTO l_item_core_obj.MASTER_ORGANIZATION_ID
4433: FROM mtl_parameters WHERE organization_id=l_org_id;
4434: -- converts the master org id to master org code
4435: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4436: l_pk_col_name_val_pairs.EXTEND(1);
4437: l_pk_col_name_val_pairs(1).name := 'organization_id';
4438: l_pk_col_name_val_pairs(1).value := l_item_core_obj.master_organization_id;
4439: l_item_core_obj.master_organization_code := INV_EBI_ITEM_HELPER.id_to_value(
4435: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4436: l_pk_col_name_val_pairs.EXTEND(1);
4437: l_pk_col_name_val_pairs(1).name := 'organization_id';
4438: l_pk_col_name_val_pairs(1).value := l_item_core_obj.master_organization_id;
4439: l_item_core_obj.master_organization_code := INV_EBI_ITEM_HELPER.id_to_value(
4440: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4441: ,p_entity_name=> INV_EBI_ITEM_HELPER.G_ORGANIZATION
4442: );
4443: IF(NOT (l_getassetmgmtattrs = FND_API.G_TRUE) AND NOT(l_getitemoprattrs = FND_API.G_TRUE )) THEN
4437: l_pk_col_name_val_pairs(1).name := 'organization_id';
4438: l_pk_col_name_val_pairs(1).value := l_item_core_obj.master_organization_id;
4439: l_item_core_obj.master_organization_code := INV_EBI_ITEM_HELPER.id_to_value(
4440: p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4441: ,p_entity_name=> INV_EBI_ITEM_HELPER.G_ORGANIZATION
4442: );
4443: IF(NOT (l_getassetmgmtattrs = FND_API.G_TRUE) AND NOT(l_getitemoprattrs = FND_API.G_TRUE )) THEN
4444: l_item_asset_obj := NULL;
4445: END IF;
4546: populate_err_msg(p_orgid => l_org_id
4547: ,p_invid => l_item_id
4548: ,p_org_code => p_get_item_inp_obj.p_get_opr_attrs_tbl_type(i).organization_code
4549: ,p_item_name => p_get_item_inp_obj.p_get_opr_attrs_tbl_type(i).item_name
4550: ,p_part_err_msg => SQLERRM||' -> at inv_ebi_item_helper.get_item_attributes'
4551: ,x_err_msg => x_msg_data
4552: );
4553: END;
4554: END LOOP;
4556: EXCEPTION
4557: WHEN OTHERS THEN
4558: x_return_status := FND_API.G_RET_STS_ERROR;
4559: IF (x_msg_data IS NOT NULL) THEN
4560: x_msg_data := x_msg_data ||' -> at INV_EBI_ITEM_HELPER.get_item_attributes';
4561: ELSE
4562: x_msg_data := SQLERRM||' at INV_EBI_ITEM_HELPER.get_item_attributes';
4563: END IF;
4564: END get_item_attributes;
4558: x_return_status := FND_API.G_RET_STS_ERROR;
4559: IF (x_msg_data IS NOT NULL) THEN
4560: x_msg_data := x_msg_data ||' -> at INV_EBI_ITEM_HELPER.get_item_attributes';
4561: ELSE
4562: x_msg_data := SQLERRM||' at INV_EBI_ITEM_HELPER.get_item_attributes';
4563: END IF;
4564: END get_item_attributes;
4565:
4566:
4710:
4711: EXCEPTION
4712: WHEN OTHERS THEN
4713: x_return_status := FND_API.g_ret_sts_unexp_error;
4714: x_msg_data := SQLERRM ||' at INV_EBI_ITEM_HELPER.filter_items_based_on_org';
4715: END filter_items_based_on_org;
4716:
4717: /************************************************************************************
4718: -- API name : parse_and_get_item
4740: l_item_tbl FND_TABLE_OF_VARCHAR2_255;
4741: l_org_tbl FND_TABLE_OF_VARCHAR2_255;
4742: l_valid_item_tbl FND_TABLE_OF_VARCHAR2_255;
4743: l_valid_org_tbl FND_TABLE_OF_VARCHAR2_255;
4744: l_pk_col_name_val_pairs INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl ;
4745: CURSOR c_get_all_orgs(p_item_name VARCHAR2) IS
4746: SELECT msik.inventory_item_id,msik.organization_id,mp.organization_code
4747: FROM mtl_system_items_kfv msik,mtl_parameters mp
4748: WHERE msik.concatenated_segments = p_item_name
4786: );
4787: x_msg_data := x_msg_data || l_msg_data ||' , ' ;
4788: WHEN OTHERS THEN
4789: x_return_status := FND_API.g_ret_sts_error;
4790: x_msg_data := SQLERRM ||' at INV_EBI_ITEM_HELPER.parse_and_get_item';
4791: END;
4792: END LOOP;
4793: END IF;
4794: IF l_org_tbl IS NOT NULL AND l_org_tbl.COUNT > 0 THEN
4819: );
4820: x_msg_data := x_msg_data || l_msg_data ||' , ' ;
4821: WHEN OTHERS THEN
4822: x_return_status := FND_API.g_ret_sts_error;
4823: x_msg_data := SQLERRM ||' at INV_EBI_ITEM_HELPER.parse_and_get_item';
4824: END;
4825: END LOOP;
4826: END IF;
4827: IF l_valid_item_tbl IS NOT NULL AND l_valid_item_tbl.COUNT > 0 THEN
4830: FND_MSG_PUB.initialize();
4831: l_count :=0;
4832: IF l_valid_org_tbl IS NOT NULL AND l_valid_org_tbl.COUNT > 0 THEN
4833: FOR j in l_valid_org_tbl.FIRST..l_valid_org_tbl.LAST LOOP
4834: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4835: l_pk_col_name_val_pairs.EXTEND();
4836: l_pk_col_name_val_pairs(1).name := 'organization_code';
4837: l_pk_col_name_val_pairs(1).value := l_valid_org_tbl(j);
4838: l_org_id := INV_EBI_ITEM_HELPER.value_to_id( p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4834: l_pk_col_name_val_pairs := INV_EBI_ITEM_HELPER.inv_ebi_name_value_pair_tbl();
4835: l_pk_col_name_val_pairs.EXTEND();
4836: l_pk_col_name_val_pairs(1).name := 'organization_code';
4837: l_pk_col_name_val_pairs(1).value := l_valid_org_tbl(j);
4838: l_org_id := INV_EBI_ITEM_HELPER.value_to_id( p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4839: ,p_entity_name => INV_EBI_ITEM_HELPER.G_ORGANIZATION
4840: );
4841: l_pk_col_name_val_pairs.TRIM(1);
4842: l_pk_col_name_val_pairs.EXTEND(2);
4835: l_pk_col_name_val_pairs.EXTEND();
4836: l_pk_col_name_val_pairs(1).name := 'organization_code';
4837: l_pk_col_name_val_pairs(1).value := l_valid_org_tbl(j);
4838: l_org_id := INV_EBI_ITEM_HELPER.value_to_id( p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4839: ,p_entity_name => INV_EBI_ITEM_HELPER.G_ORGANIZATION
4840: );
4841: l_pk_col_name_val_pairs.TRIM(1);
4842: l_pk_col_name_val_pairs.EXTEND(2);
4843: l_pk_col_name_val_pairs(1).name := 'concatenated_segments';
4843: l_pk_col_name_val_pairs(1).name := 'concatenated_segments';
4844: l_pk_col_name_val_pairs(1).value := l_valid_item_tbl(i);
4845: l_pk_col_name_val_pairs(2).name := 'organization_id';
4846: l_pk_col_name_val_pairs(2).value := l_org_id;
4847: l_item_id := INV_EBI_ITEM_HELPER.value_to_id( p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4848: ,p_entity_name => INV_EBI_ITEM_HELPER.G_INVENTORY_ITEM
4849: );
4850: l_pk_col_name_val_pairs.TRIM(2);
4851:
4844: l_pk_col_name_val_pairs(1).value := l_valid_item_tbl(i);
4845: l_pk_col_name_val_pairs(2).name := 'organization_id';
4846: l_pk_col_name_val_pairs(2).value := l_org_id;
4847: l_item_id := INV_EBI_ITEM_HELPER.value_to_id( p_pk_col_name_val_pairs => l_pk_col_name_val_pairs
4848: ,p_entity_name => INV_EBI_ITEM_HELPER.G_INVENTORY_ITEM
4849: );
4850: l_pk_col_name_val_pairs.TRIM(2);
4851:
4852: IF l_item_id IS NOT NULL THEN
4883: );
4884: x_msg_data := x_msg_data || l_msg_data ;
4885: WHEN OTHERS THEN
4886: x_return_status := FND_API.g_ret_sts_unexp_error;
4887: x_msg_data := SQLERRM ||' at INV_EBI_ITEM_HELPER.parse_and_get_item';
4888: END;
4889: END LOOP;
4890: END IF;
4891: x_item_tbl := l_item_output_tbl;
4891: x_item_tbl := l_item_output_tbl;
4892: EXCEPTION
4893: WHEN OTHERS THEN
4894: x_return_status := FND_API.g_ret_sts_unexp_error;
4895: x_msg_data := SQLERRM ||' at INV_EBI_ITEM_HELPER.parse_and_get_item';
4896: END parse_and_get_item;
4897:
4898: /************************************************************************************
4899: -- API name : get_item_attributes_list
5031:
5032: -- If all the parameter values are null then fetch items that got updated
5033: -- from the last successfull completiopn date of CP
5034: IF (l_item_string IS NULL AND l_from_date IS NULL AND l_to_date IS NULL AND l_last_x_hrs IS NULL) THEN
5035: l_from_date :=INV_EBI_ITEM_HELPER.get_last_run_date( p_conc_prog_id => p_prog_id
5036: ,p_appl_id => p_appl_id
5037: );
5038: l_to_date := SYSDATE;
5039: END IF;
5110: END IF;
5111: EXCEPTION
5112: WHEN OTHERS THEN
5113: x_return_status := FND_API.g_ret_sts_unexp_error;
5114: x_msg_data := SQLERRM ||' at INV_EBI_ITEM_HELPER.get_item_attributes_list';
5115: IF (c_get_item_flist%ISOPEN) THEN
5116: CLOSE c_get_item_flist;
5117: END IF;
5118: IF (c_get_item_list%ISOPEN) THEN
5290: END IF;
5291: EXCEPTION
5292: WHEN OTHERS THEN
5293: x_return_status := FND_API.g_ret_sts_unexp_error;
5294: x_msg_data := SQLERRM ||' at INV_EBI_ITEM_HELPER.get_item_balance_list';
5295: IF (c_get_bal_item_flst%ISOPEN) THEN
5296: CLOSE c_get_bal_item_flst;
5297: END IF;
5298: IF (c_get_bal_item_lst%ISOPEN) THEN
5341: l_server_tz VARCHAR2(50);
5342: l_tzoffset VARCHAR2(10);
5343: BEGIN
5344:
5345: INV_EBI_ITEM_HELPER.G_TIME_ZONE_OFFSET := NULL;
5346:
5347: SELECT timezone_code
5348: INTO l_server_tz
5349: FROM fnd_timezones_b
5353: SELECT TZ_OFFSET(l_server_tz)
5354: INTO l_tzoffset
5355: FROM DUAL;
5356:
5357: INV_EBI_ITEM_HELPER.G_TIME_ZONE_OFFSET := l_tzoffset;
5358:
5359: EXCEPTION
5360: WHEN OTHERS THEN
5361: NULL;
5370: IS
5371: l_ret_tz VARCHAR2(50);
5372: BEGIN
5373: IF(p_datetime IS NOT NULL AND p_datetime<>FND_API.G_MISS_DATE) THEN
5374: l_ret_tz := SUBSTR(TO_CHAR(p_datetime,'YYYY-MM-DD"T"HH24:MI:SS')||INV_EBI_ITEM_HELPER.G_TIME_ZONE_OFFSET,1,25);
5375: END IF;
5376: RETURN l_ret_tz;
5377: EXCEPTION
5378: WHEN OTHERS THEN
5377: EXCEPTION
5378: WHEN OTHERS THEN
5379: NULL;
5380: END convert_date_str;
5381: END INV_EBI_ITEM_HELPER;