[Home] [Help]
PACKAGE BODY: APPS.OE_CREDIT_CHECK_PVT
Source
1 PACKAGE BODY OE_Credit_Check_PVT AS
2 -- $Header: OEXVCRCB.pls 120.1 2005/06/21 02:16:02 appldev ship $
3
4 --------------------
5 -- TYPE DECLARATIONS
6 --------------------
7
8 ------------
9 -- CONSTANTS
10 ------------
11 G_PKG_NAME CONSTANT VARCHAR2(30) := 'OE_Credit_Check_PVT';
12 G_DBG_MSG VARCHAR2(200) := NULL;
13 G_ORG_ID NUMBER := mo_global.get_current_org_id;--MOAC Changes FND_PROFILE.value('ORG_ID') ;
14 --- G_PROFILE VARCHAR2(30) := 'MULTI' ;
15 G_PROFILE VARCHAR2(30) :=
16 FND_PROFILE.VALUE('AR_CREDIT_LIMIT_SELECTION') ;
17 G_category_set_id NUMBER ;
18
19 TYPE category_tmp_rec IS RECORD
20 ( item_category_id NUMBER
21 , profile_exist VARCHAR2(1)
22 );
23
24
25 TYPE category_tmp_tbl_type IS TABLE OF category_tmp_rec
26 INDEX BY BINARY_INTEGER;
27
28
29 -------------------
30 -- PUBLIC VARIABLES
31 -------------------
32
33 ---------------------------
34 -- PROCEDURES AND FUNCTIONS
35 ---------------------------
36
37 -----------------------------------------------------------------------------
38 -- PROCEDURE : GET_Item_Limit PUBLIC
39 -- COMMENT : Returns the limit associated with the Items.
40 --
41 ------------------------------------------------------------------------------
42 PROCEDURE GET_Item_Limit
43 ( p_header_id IN NUMBER
44 , p_trx_curr_code IN VARCHAR2
45 , p_site_use_id IN NUMBER
46 , x_item_limits_tbl OUT NOCOPY
47
48 OE_CREDIT_CHECK_GLOBALS.item_limits_tbl_type
49 , x_lines_tbl OUT NOCOPY
50
51 OE_CREDIT_CHECK_GLOBALS.lines_Rec_tbl_type
52 )
53 IS
54 l_item_limits_tbl OE_CREDIT_CHECK_UTIL.item_limits_tbl_type ;
55 l_lines_tbl OE_CREDIT_CHECK_UTIL.lines_Rec_tbl_type;
56
57 --
58 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
59 --
60 BEGIN
61 IF l_debug_level > 0 THEN
62 oe_debug_pub.add( 'OEXVCRCB: IN GET_ITEM_LIMIT ' ) ;
63 END IF;
64 IF l_debug_level > 0 THEN
65 oe_debug_pub.add( 'CALLING OE_CREDIT_CHECK_UTIL.GET_ITEM_LIMIT ' ) ;
66 END IF;
67
68 OE_CREDIT_CHECK_UTIL.GET_Item_Limit
69 ( p_header_id => p_header_id
70 , p_trx_curr_code => p_trx_curr_code
71 , p_site_use_id => p_site_use_id
72 , p_include_tax_flag => 'N'
73 , x_item_limits_tbl => l_item_limits_tbl
74 , x_lines_tbl => l_lines_tbl
75 );
76
77 FOR I IN 1 .. l_item_limits_tbl.COUNT
78 LOOP
79
80 x_item_limits_tbl(I) := l_item_limits_tbl(I) ;
81 END LOOP;
82
83 FOR J IN 1..l_lines_tbl.COUNT
84 LOOP
85 x_lines_tbl(J) := l_lines_tbl(J) ;
86
87 END LOOP;
88
89 IF l_debug_level > 0 THEN
90 oe_debug_pub.add( 'OEXVCRCB: OUT NOCOPY GET_ITEM_LIMIT ' ) ;
91
92 END IF;
93
94 EXCEPTION
95 WHEN OTHERS THEN
96 G_DBG_MSG := SUBSTR(sqlerrm,1,200);
97 ---DBMS_OUTPUT.PUT_LINE(G_DBG_MSG );
98
99 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
100 THEN
101 FND_MSG_PUB.Add_Exc_Msg
102 ( G_PKG_NAME
103 , ' GET_Item_Limit '
104 );
105 END IF;
106 RAISE;
107
108
109 END GET_Item_Limit ;
110
111
112
113 ------------------------------------------------------------------------------
114 -- PROCEDURE : Get_Limit_Info PUBLIC
115 -- COMMENT : Returns the credit limit info of a customer or a site
116 ------------------------------------------------------------------------------
117 PROCEDURE get_limit_info (
118 p_header_id IN NUMBER
119 , p_entity_type IN VARCHAR2
120 , p_entity_id IN NUMBER
121 , p_trx_curr_code IN
122 HZ_CREDIT_PROFILE_AMTS.currency_code%TYPE
123 , p_suppress_unused_usages_flag IN VARCHAR2 DEFAULT 'Y'
124 , x_limit_curr_code OUT NOCOPY
125
126 HZ_CREDIT_PROFILE_AMTS.currency_code%TYPE
127 , x_trx_limit OUT NOCOPY NUMBER
128
129 , x_overall_limit OUT NOCOPY NUMBER
130
131 , x_credit_check_flag OUT NOCOPY VARCHAR2
132
133 , x_include_all_flag OUT NOCOPY VARCHAR2
134
135 , x_usage_curr_tbl OUT NOCOPY
136
137 OE_CREDIT_CHECK_GLOBALS.usage_curr_tbl_type
138 , x_default_limit_flag OUT NOCOPY VARCHAR2
139
140 )
141 IS
142 l_usage_curr_tbl OE_CREDIT_CHECK_UTIL.CURR_TBL_TYPE ;
143 l_global_exposure_flag VARCHAR2(1);
144
145 --
146 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
147 --
148 BEGIN
149 IF l_debug_level > 0 THEN
150 oe_debug_pub.add( 'OEXVCRCB: IN GET_LIMIT_INFO ' ) ;
151 END IF;
152 IF l_debug_level > 0 THEN
153 oe_debug_pub.add( 'CALLING GET_LIMIT_INFO ' ) ;
154 END IF;
155
156 /*
157 OE_CREDIT_CHECK_UTIL.get_limit_info (
158 p_header_id => p_header_id
159 , p_entity_type => p_entity_type
160 , p_entity_id => p_entity_id
161 , p_trx_curr_code => p_trx_curr_code
162 , p_suppress_unused_usages_flag => 'Y'
163 , x_limit_curr_code => x_limit_curr_code
164 , x_trx_limit => x_trx_limit
165 , x_overall_limit => x_overall_limit
166 , x_credit_check_flag => x_credit_check_flag
167 , x_include_all_flag => x_include_all_flag
168 , x_usage_curr_tbl => l_usage_curr_tbl
169 , x_default_limit_flag => x_default_limit_flag
170 , x_global_exposure_flag => l_global_exposure_flag
171 );
172
173 FOR I IN 1..l_usage_curr_tbl.COUNT
174 LOOP
175 x_usage_curr_tbl(I) := l_usage_curr_tbl(I) ;
176 END LOOP ;
177 */
178
179 IF l_debug_level > 0 THEN
180 oe_debug_pub.add( 'OEXVCRCB: OUT NOCOPY GET_LIMIT_INFO ' ) ;
181
182 END IF;
183
184 END get_limit_info ;
185
186
187
188 ------------------------------------------------------------------------------
189 -- PROCEDURE : Get_Usages PUBLIC
190 -- COMMENT : Returns the Usages
191 --
192 ------------------------------------------------------------------------------
193 PROCEDURE Get_Usages (
194 p_entity_type IN VARCHAR2
195 , p_entity_id IN NUMBER
196 , p_limit_curr_code IN
197 HZ_CREDIT_PROFILE_AMTS.currency_code%TYPE
198 , p_suppress_unused_usages_flag IN VARCHAR2 DEFAULT 'Y'
199 , p_default_limit_flag IN VARCHAR2 DEFAULT 'N'
200 , x_include_all_flag OUT NOCOPY VARCHAR2
201
202 , x_usage_curr_tbl OUT NOCOPY
203
204 OE_CREDIT_CHECK_GLOBALS.usage_curr_tbl_type
205 )
206 IS
207 l_usage_curr_tbl OE_CREDIT_CHECK_UTIL.CURR_TBL_TYPE ;
208
209 --
210 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
211 --
212 BEGIN
213
214 IF l_debug_level > 0 THEN
215 oe_debug_pub.add( 'OEXVCRCB: IN GET_USAGES ' ) ;
216 END IF;
217 IF l_debug_level > 0 THEN
218 oe_debug_pub.add( 'CALLING .OE_CREDIT_CHECK_UTIL.GET_USAGES' ) ;
219 END IF;
220 /*
221 OE_CREDIT_CHECK_UTIL.Get_Usages (
222 p_entity_type => p_entity_type
223 , p_entity_id => p_entity_id
224 , p_limit_curr_code => p_limit_curr_code
225 , p_suppress_unused_usages_flag => p_suppress_unused_usages_flag
226 , p_default_limit_flag => p_default_limit_flag
227 , x_include_all_flag => x_include_all_flag
228 , x_usage_curr_tbl => l_usage_curr_tbl
229 );
230
231 FOR I IN 1 .. l_usage_curr_tbl.COUNT
232 LOOP
233
234 x_usage_curr_tbl(I) := l_usage_curr_tbl(I) ;
235 END LOOP;
236 */
237
238 IF l_debug_level > 0 THEN
239 oe_debug_pub.add( 'OEXVCRCB: OUT NOCOPY GET_USAGES ' ) ;
240
241 END IF;
242 END get_usages ;
243
244 --========================================================================
245 -- PROCEDURE : Currency_List
246 -- Comments : This procedure is used by the credit snapshot report to derive
247 -- a comma delimited string of currencies defined in credit usage
248 -- Parameters: c_entity_type IN 'CUSTOMER' or 'SITE'
249 -- c_entity_id IN Customer_Id or Site_Id
250 -- c_trx_curr_code IN Transaction Currency
251 -- l_limit_curr_code OUT Currency Limit used for credit checking
252 -- Curr_list OUT Comma delimited string of currencies
253 -- covered by limit currency code
254 --========================================================================
255 Procedure currency_list (
256 c_entity_type IN VARCHAR2
257 , c_entity_id IN NUMBER
258 , c_trx_curr_code IN VARCHAR2
259 , l_limit_curr_code OUT NOCOPY VARCHAR2
260
261 , l_default_limit_flag OUT NOCOPY VARCHAR2
262
263 , Curr_list OUT NOCOPY VARCHAR2) IS
264
265
266 i NUMBER;
267 l_return_status NUMBER;
268 l_CREDIT_CHECK_FLAG VARCHAR2(1);
269 l_OVERALL_CREDIT_LIMIT NUMBER;
270 l_TRX_CREDIT_LIMIT NUMBER;
271 l_include_all_flag VARCHAR2(1);
272 l_usage_curr_tbl OE_CREDIT_CHECK_GLOBALS.usage_curr_tbl_type;
273
274 --
275 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
276 --
277 Begin
278 /*
279 oe_credit_check_pvt.get_limit_info
280 ( p_header_id => NULL
281 , p_entity_type => c_entity_type
282 , p_entity_id => c_entity_id
283 , p_trx_curr_code => c_trx_curr_code
284 , p_suppress_unused_usages_flag => 'Y'
285 , x_limit_curr_code => l_limit_curr_code
286 , x_trx_limit => l_trx_credit_limit
287 , x_overall_limit => l_overall_credit_limit
288 , x_credit_check_flag => l_credit_check_flag
289 , x_include_all_flag => l_include_all_flag
290 , x_usage_curr_tbl => l_usage_curr_tbl
291 , x_default_limit_flag => l_default_limit_flag
292 );
293
294 for i in 1 .. l_usage_curr_tbl.COUNT
295 LOOP
296 if i = 1 then null;
297 else
298 curr_list := concat(curr_list,',');
299 end if;
300 curr_list := concat(curr_list, l_usage_curr_tbl(i).usage_curr_code);
301 END LOOP;
302 */
303 null ;
304 END Currency_List;
305
306
307
308 END OE_Credit_Check_PVT;