[Home] [Help]
PACKAGE BODY: APPS.HXC_RET_UPLOAD_PKG
Source
1 PACKAGE BODY hxc_ret_upload_pkg AS
2 /* $Header: hxcretupl.pkb 115.5 2002/06/10 13:30:33 pkm ship $ */
3
4 FUNCTION get_time_recipient_id ( p_time_recipient VARCHAR2 ) RETURN NUMBER IS
5
6 CURSOR csr_get_time_recipient_id IS
7 SELECT time_recipient_id
8 FROM hxc_time_recipients
9 WHERE name = p_time_recipient;
10
11 l_time_recipient_id hxc_time_recipients.time_recipient_id%TYPE;
12
13 BEGIN
14
15 OPEN csr_get_time_recipient_id;
16 FETCH csr_get_time_recipient_id INTO l_time_recipient_id;
17 CLOSE csr_get_time_recipient_id;
18
19 RETURN l_time_recipient_id;
20
21 END get_time_recipient_id;
22
23
24 PROCEDURE load_retrieval_process_row (
25 p_name IN VARCHAR2
26 , p_time_recipient IN VARCHAR2
27 , p_mapping_name IN VARCHAR2
28 , p_owner IN VARCHAR2
29 , p_custom_mode IN VARCHAR2 ) IS
30
31 l_retrieval_process_id hxc_retrieval_processes.retrieval_process_id%TYPE;
32 l_time_recipient_id hxc_time_recipients.time_recipient_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_recipient_id := get_time_recipient_id ( p_time_recipient );
40 l_mapping_id := hxc_mcu_upload_pkg.get_mapping_id ( p_mapping_name );
41
42 SELECT retrieval_process_id
43 , object_version_number
44 , DECODE( NVL(last_updated_by,-1), 1, 'SEED', 'CUSTOM')
45 INTO l_retrieval_process_id
46 , l_ovn
47 , l_owner
48 FROM hxc_retrieval_processes
49 WHERE name = P_NAME;
50
51 IF ( p_custom_mode = 'FORCE' OR l_owner = 'SEED' )
52 THEN
53
54 hxc_retrieval_processes_api.update_retrieval_processes (
55 p_name => p_name
56 , p_time_recipient_id => l_time_recipient_id
57 , p_mapping_id => l_mapping_id
58 , p_retrieval_process_id => l_retrieval_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_retrieval_processes_api.create_retrieval_processes (
67 p_name => p_name
68 , p_time_recipient_id => l_time_recipient_id
69 , p_mapping_id => l_mapping_id
70 , p_retrieval_process_id => l_retrieval_process_id
71 , p_object_version_number => l_ovn );
72
73 END load_retrieval_process_row;
74
75 END hxc_ret_upload_pkg;