[Home] [Help]
PACKAGE BODY: APPS.HXC_DEP_UPLOAD_PKG
Source
1 PACKAGE BODY hxc_dep_upload_pkg AS
2 /* $Header: hxcdepupl.pkb 115.5 2002/06/10 00:36:37 pkm ship $ */
3
4 FUNCTION get_time_source_id ( p_time_source VARCHAR2 ) RETURN NUMBER IS
5
6 CURSOR csr_get_time_source_id IS
7 SELECT time_source_id
8 FROM hxc_time_sources
9 WHERE name = p_time_source;
10
11 l_time_source_id hxc_time_sources.time_source_id%TYPE;
12
13 BEGIN
14
15 OPEN csr_get_time_source_id;
16 FETCH csr_get_time_source_id INTO l_time_source_id;
17 CLOSE csr_get_time_source_id;
18
19 RETURN l_time_source_id;
20
21 END get_time_source_id;
22
23
24 PROCEDURE load_deposit_process_row (
25 p_name IN VARCHAR2
26 , p_time_source IN VARCHAR2
27 , p_mapping_name IN VARCHAR2
28 , p_owner IN VARCHAR2
29 , p_custom_mode IN VARCHAR2 ) IS
30
31 l_deposit_process_id hxc_deposit_processes.deposit_process_id%TYPE;
32 l_time_source_id hxc_time_sources.time_source_id%TYPE;
33 l_mapping_id hxc_mappings.mapping_id%TYPE;
34 l_ovn hxc_deposit_processes.object_version_number%TYPE;
35 l_owner VARCHAR2(6);
36
37 BEGIN
38
39 l_time_source_id := get_time_source_id ( p_time_source );
40 l_mapping_id := hxc_mcu_upload_pkg.get_mapping_id ( p_mapping_name );
41
42 SELECT deposit_process_id
43 , object_version_number
44 , DECODE( NVL(last_updated_by,-1), 1, 'SEED', 'CUSTOM')
45 INTO l_deposit_process_id
46 , l_ovn
47 , l_owner
48 FROM hxc_deposit_processes
49 WHERE name = P_NAME;
50
51 IF ( p_custom_mode = 'FORCE' OR p_owner = 'SEED' )
52 THEN
53 hxc_deposit_processes_api.update_deposit_processes (
54 p_effective_date => sysdate
55 , p_name => p_name
56 , p_time_source_id => l_time_source_id
57 , p_mapping_id => l_mapping_id
58 , p_deposit_process_id => l_deposit_process_id
59 , p_object_version_number => l_ovn );
60
61 END IF;
62
63 EXCEPTION WHEN NO_DATA_FOUND
64 THEN
65
66 hxc_deposit_processes_api.create_deposit_processes (
67 p_effective_date => sysdate
68 , p_name => p_name
69 , p_time_source_id => l_time_source_id
70 , p_mapping_id => l_mapping_id
71 , p_deposit_process_id => l_deposit_process_id
72 , p_object_version_number => l_ovn );
73
74 END load_deposit_process_row;
75
76 END hxc_dep_upload_pkg;