[Home] [Help]
PACKAGE BODY: APPS.IEM_ACQ_PVT
Source
1 PACKAGE BODY IEM_ACQ_PVT AS
2 /* $Header: iemacqvb.pls 120.1 2005/10/26 16:34:03 rtripath noship $ */
3
4 PROCEDURE ENUMERATE_ACQUIRED_NODES
5 (P_RESOURCE_ID IN NUMBER
6 ,P_LANGUAGE IN VARCHAR2
7 ,P_SOURCE_LANG IN VARCHAR2
8 ,P_SEL_ENUM_ID IN NUMBER
9 )
10 AS
11
12 l_node_counter NUMBER;
13 l_node_pid NUMBER;
14 l_node_label VARCHAR2(100);
15 l_def_where VARCHAR2(20000);
16 l_tk_list IEU_PUB.EnumeratorDataRecordList;
17 l_bind_list IEU_PUB.BindVariableRecordList;
18
19
20 CURSOR c_inb_nodes_1 IS
21 select a.from_name,b.resource_id,b.email_account_id
22 from iem_mstemail_accounts a,iem_agents b
23 where a.email_account_id=b.email_account_id
24 and b.resource_id=p_resource_id
25 order by 1;
26
27 BEGIN
28
29 IF (FND_PROFILE.VALUE('IEU_QEN_INB_EMAIL') = 'N' ) THEN
30 RETURN;
31 END IF;
32
33 l_node_counter := 0;
34
35 SAVEPOINT start_enumeration;
36
37 l_def_where := ieu_pub.get_enum_res_cat(p_sel_enum_id);
38
39 Select meaning into l_node_label
40 from fnd_lookups
41 where lookup_type = 'IEM_UWQ_EMAIL_LABELS'
42 and lookup_code = 'IEM_ACQUIRED_EMAIL_LBL';
43
44 l_tk_list(l_node_counter).NODE_LABEL := l_node_label;
45 l_tk_list(l_node_counter).VIEW_NAME := 'IEM_ACQEMAIL_DTL_V';
46 l_tk_list(l_node_counter).DATA_SOURCE := 'IEM_ACQD_EMAIL_DS';
47 l_tk_list(l_node_counter).MEDIA_TYPE_ID := 10008;
48 l_tk_list(l_node_counter).WHERE_CLAUSE := '';
49 l_tk_list(l_node_counter).NODE_TYPE := 0;
50 l_tk_list(l_node_counter).HIDE_IF_EMPTY := '';
51 l_tk_list(l_node_counter).NODE_DEPTH := 1;
52 l_tk_list(l_node_counter).BIND_VARS := '';
53 l_tk_list(l_node_counter).RES_CAT_ENUM_FLAG := 'N';
54 l_tk_list(l_node_counter).REFRESH_VIEW_NAME := 'IEM_REFACQEMAIL_ACCOUNTS_V';
55 l_tk_list(l_node_counter).REFRESH_VIEW_SUM_COL := 'Total';
56
57 l_node_counter := l_node_counter + 1;
58
59 --Now build the subnodes
60
61 FOR cur_rec IN c_inb_nodes_1 LOOP
62 l_bind_list(1).bind_var_name := ':resource_id';
63 l_bind_list(1).bind_var_value := p_resource_id;
64 l_bind_list(1).bind_var_data_type := 'NUMBER';
65 l_bind_list(2).bind_var_name := ':ACCOUNT_ID';
66 l_bind_list(2).bind_var_value := cur_rec.email_account_id;
67 l_bind_list(2).bind_var_data_type := 'CHAR';
68
69 l_tk_list(l_node_counter).NODE_LABEL := cur_rec.from_name;
70 l_tk_list(l_node_counter).VIEW_NAME := 'IEM_ACQEMAIL_DTL_V';
71 -- l_tk_list(l_node_counter).DATA_SOURCE := 'IEM_ACQ_EMAIL_DS';
72 l_tk_list(l_node_counter).DATA_SOURCE := 'IEM_ACQ_ACCOUNT_DS';
73 l_tk_list(l_node_counter).MEDIA_TYPE_ID := 10008;
74 l_tk_list(l_node_counter).WHERE_CLAUSE := l_def_where ||'and EMAIL_ACCOUNT_ID = ' || ':ACCOUNT_ID';
75 l_tk_list(l_node_counter).NODE_TYPE := 0;
76 l_tk_list(l_node_counter).HIDE_IF_EMPTY := '';
77 l_tk_list(l_node_counter).NODE_DEPTH := 2;
78 l_tk_list(l_node_counter).BIND_VARS := ieu_pub.set_bind_var_data(l_bind_list);
79 l_tk_list(l_node_counter).RES_CAT_ENUM_FLAG := 'N';
80 l_tk_list(l_node_counter).REFRESH_VIEW_NAME := 'IEM_REFACQEMAIL_ACCOUNTS_V';
81 l_tk_list(l_node_counter).REFRESH_VIEW_SUM_COL := 'Total';
82
83 l_node_counter := l_node_counter + 1;
84
85 END LOOP;
86
87 IEU_PUB.ADD_UWQ_NODE_DATA
88 (P_RESOURCE_ID,
89 P_SEL_ENUM_ID,
90 l_tk_list
91 );
92
93 EXCEPTION
94 WHEN OTHERS THEN
95 ROLLBACK TO start_enumeration;
96 RAISE;
97
98 END ENUMERATE_ACQUIRED_NODES;
99
100 END IEM_ACQ_PVT;