DBA Data[Home] [Help]

PACKAGE BODY: APPS.HXC_MCU_UPLOAD_PKG

Source


1 PACKAGE BODY hxc_mcu_upload_pkg AS
2 /* $Header: hxcmcuupl.pkb 115.6 2002/06/10 13:30:19 pkm ship      $ */
3 
4 FUNCTION get_mapping_id ( p_mapping_name IN VARCHAR2 ) RETURN NUMBER IS
5 
6 CURSOR	csr_get_mapping_id IS
7 SELECT	mapping_id
8 FROM	hxc_mappings
9 WHERE	name = p_mapping_name;
10 
11 l_mapping_id hxc_mappings.mapping_id%TYPE;
12 
13 BEGIN
14 
15 OPEN  csr_get_mapping_id;
16 FETCH csr_get_mapping_id INTO l_mapping_id;
17 CLOSE csr_get_mapping_id;
18 
19 RETURN l_mapping_id;
20 
21 END get_mapping_id;
22 
23 FUNCTION get_mapping_component_id ( p_name IN VARCHAR2 ) RETURN NUMBER IS
24 
25 CURSOR	csr_get_mapping_component_id IS
26 SELECT	mapping_component_id
27 FROM	hxc_mapping_components
28 WHERE	name = p_name;
29 
30 l_mapping_component_id hxc_mapping_components.mapping_component_id%TYPE;
31 
32 BEGIN
33 
34 OPEN  csr_get_mapping_component_id;
35 FETCH csr_get_mapping_component_id INTO l_mapping_component_id;
36 CLOSE csr_get_mapping_component_id;
37 
38 RETURN l_mapping_component_id;
39 
40 END get_mapping_component_id;
41 
42 
43 PROCEDURE load_mapping_comp_usage_row (
44           p_name                IN VARCHAR2
45         , p_mapping_name        IN VARCHAR2
46 	, p_owner		IN VARCHAR2
47 	, p_custom_mode		IN VARCHAR2 ) IS
48 
49 l_mapping_comp_usage_id	hxc_mapping_comp_usages.mapping_comp_usage_id%TYPE;
50 l_mapping_component_id	hxc_mapping_components.mapping_component_id%TYPE;
51 l_mapping_id		hxc_mappings.mapping_id%TYPE;
52 l_ovn			hxc_mapping_comp_usages.object_version_number%TYPE;
53 l_owner			VARCHAR2(6);
54 
55 BEGIN
56 
57 l_mapping_id	:= get_mapping_id ( p_mapping_name => p_mapping_name );
58 
59 l_mapping_component_id := get_mapping_component_id ( p_name => p_name );
60 
61 	SELECT	mcu.mapping_comp_usage_id
62 	,	mcu.object_version_number
63 	,	DECODE( NVL( mcu.last_updated_by,-1), 1, 'SEED', 'CUSTOM')
64 	INTO	l_mapping_comp_usage_id
65 	,	l_ovn
66 	,	l_owner
67 	FROM	hxc_mapping_comp_usages mcu
68 	,	hxc_mapping_components mpc
69 	WHERE	mpc.name	= P_NAME
70 	AND	mcu.mapping_component_id = mpc.mapping_component_id
71 	AND	mcu.mapping_id		 = l_mapping_id;
72 
73 
74 -- NOTE - there is no update section since updating the intersection table changes nothing
75 
76 EXCEPTION WHEN NO_DATA_FOUND
77 THEN
78 
79 	hxc_mcu_ins.ins ( p_mapping_comp_usage_id => l_mapping_comp_usage_id
80 	,		  p_object_version_number => l_ovn
81 	,		  p_mapping_component_id  => l_mapping_component_id
82 	,		  p_mapping_id            => l_mapping_id );
83 
84 END load_mapping_comp_usage_row;
85 
86 END hxc_mcu_upload_pkg;