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