[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;