[Home] [Help]
PACKAGE BODY: APPS.ONT_SOLD_TO_ORG_DEF_UTIL
Source
1 PACKAGE BODY ONT_SOLD_TO_ORG_Def_Util AS
2 /* $Header: OEXDFWKB.pls 115.0 30-MAR-09 23:23:31 appldev ship $ */
3
4 --
5 -- Copyright (c) 1996 Oracle Corporation, Redwood Shores, CA, USA
6 -- All rights reserved.
7 --
8 -- FILENAME
9 --
10 -- ONT_SOLD_TO_ORG_Def_Util
11 --
12 -- DESCRIPTION
13 --
14 -- Body of package ONT_SOLD_TO_ORG_Def_Util
15 --
16 -- NOTES
17 --
18 -- HISTORY
19 --
20 -- 30-MAR-09 Created
21 --
22
23 -- Global constant holding the package name
24 G_PKG_NAME CONSTANT VARCHAR2(30) := 'ONT_SOLD_TO_ORG_Def_Util';
25
26
27 g_database_object_name varchar2(30) :='OE_AK_SOLD_TO_ORGS_V';
28
29
30 FUNCTION Get_Attr_Val_Varchar2
31 ( p_attr_code IN VARCHAR2
32 , p_record IN OE_AK_SOLD_TO_ORGS_V%ROWTYPE
33 ) RETURN VARCHAR2
34 IS
35 BEGIN
36
37 IF p_attr_code =('DEFAULT_LINE_SET') THEN
38 IF NVL(p_record.DEFAULT_LINE_SET, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
39 RETURN p_record.DEFAULT_LINE_SET;
40 ELSE
41 RETURN NULL;
42 END IF;
43 ELSIF p_attr_code =('DELIVER_TO_ORG_ID') THEN
44 IF NVL(p_record.DELIVER_TO_ORG_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
45 RETURN p_record.DELIVER_TO_ORG_ID;
46 ELSE
47 RETURN NULL;
48 END IF;
49 ELSIF p_attr_code =('EARLIEST_SCHEDULE_LIMIT') THEN
50 IF NVL(p_record.EARLIEST_SCHEDULE_LIMIT, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
51 RETURN p_record.EARLIEST_SCHEDULE_LIMIT;
52 ELSE
53 RETURN NULL;
54 END IF;
55 ELSIF p_attr_code =('FOB_POINT_CODE') THEN
56 IF NVL(p_record.FOB_POINT_CODE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
57 RETURN p_record.FOB_POINT_CODE;
58 ELSE
59 RETURN NULL;
60 END IF;
61 ELSIF p_attr_code =('FREIGHT_TERMS_CODE') THEN
62 IF NVL(p_record.FREIGHT_TERMS_CODE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
63 RETURN p_record.FREIGHT_TERMS_CODE;
64 ELSE
65 RETURN NULL;
66 END IF;
67 ELSIF p_attr_code =('INVOICE_TO_ORG_ID') THEN
68 IF NVL(p_record.INVOICE_TO_ORG_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
69 RETURN p_record.INVOICE_TO_ORG_ID;
70 ELSE
71 RETURN NULL;
72 END IF;
73 ELSIF p_attr_code =('ITEM_IDENTIFIER_TYPE') THEN
74 IF NVL(p_record.ITEM_IDENTIFIER_TYPE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
75 RETURN p_record.ITEM_IDENTIFIER_TYPE;
76 ELSE
77 RETURN NULL;
78 END IF;
79 ELSIF p_attr_code =('LATEST_SCHEDULE_LIMIT') THEN
80 IF NVL(p_record.LATEST_SCHEDULE_LIMIT, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
81 RETURN p_record.LATEST_SCHEDULE_LIMIT;
82 ELSE
83 RETURN NULL;
84 END IF;
85 ELSIF p_attr_code =('ORDER_DATE_TYPE_CODE') THEN
86 IF NVL(p_record.ORDER_DATE_TYPE_CODE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
87 RETURN p_record.ORDER_DATE_TYPE_CODE;
88 ELSE
89 RETURN NULL;
90 END IF;
91 ELSIF p_attr_code =('ORDER_TYPE_ID') THEN
92 IF NVL(p_record.ORDER_TYPE_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
93 RETURN p_record.ORDER_TYPE_ID;
94 ELSE
95 RETURN NULL;
96 END IF;
97 ELSIF p_attr_code =('ORGANIZATION_ID') THEN
98 IF NVL(p_record.ORGANIZATION_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
99 RETURN p_record.ORGANIZATION_ID;
100 ELSE
101 RETURN NULL;
102 END IF;
103 ELSIF p_attr_code =('OVER_RETURN_TOLERANCE') THEN
104 IF NVL(p_record.OVER_RETURN_TOLERANCE, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
105 RETURN p_record.OVER_RETURN_TOLERANCE;
106 ELSE
107 RETURN NULL;
108 END IF;
109 ELSIF p_attr_code =('OVER_SHIPMENT_TOLERANCE') THEN
110 IF NVL(p_record.OVER_SHIPMENT_TOLERANCE, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
111 RETURN p_record.OVER_SHIPMENT_TOLERANCE;
112 ELSE
113 RETURN NULL;
114 END IF;
115 ELSIF p_attr_code =('PAYMENT_TERM_ID') THEN
116 IF NVL(p_record.PAYMENT_TERM_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
117 RETURN p_record.PAYMENT_TERM_ID;
118 ELSE
119 RETURN NULL;
120 END IF;
121 ELSIF p_attr_code =('PRICE_LIST_ID') THEN
122 IF NVL(p_record.PRICE_LIST_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
123 RETURN p_record.PRICE_LIST_ID;
124 ELSE
125 RETURN NULL;
126 END IF;
127 ELSIF p_attr_code =('SALESREP_ID') THEN
128 IF NVL(p_record.SALESREP_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
129 RETURN p_record.SALESREP_ID;
130 ELSE
131 RETURN NULL;
132 END IF;
133 ELSIF p_attr_code =('SALES_CHANNEL_CODE') THEN
134 IF NVL(p_record.SALES_CHANNEL_CODE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
135 RETURN p_record.SALES_CHANNEL_CODE;
136 ELSE
137 RETURN NULL;
138 END IF;
139 ELSIF p_attr_code =('SHIPPING_METHOD_CODE') THEN
140 IF NVL(p_record.SHIPPING_METHOD_CODE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
141 RETURN p_record.SHIPPING_METHOD_CODE;
142 ELSE
143 RETURN NULL;
144 END IF;
145 ELSIF p_attr_code =('SHIP_FROM_ORG_ID') THEN
146 IF NVL(p_record.SHIP_FROM_ORG_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
147 RETURN p_record.SHIP_FROM_ORG_ID;
148 ELSE
149 RETURN NULL;
150 END IF;
151 ELSIF p_attr_code =('SHIP_PARTIAL_ALLOWED') THEN
152 IF NVL(p_record.SHIP_PARTIAL_ALLOWED, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
153 RETURN p_record.SHIP_PARTIAL_ALLOWED;
154 ELSE
155 RETURN NULL;
156 END IF;
157 ELSIF p_attr_code =('SHIP_TO_ORG_ID') THEN
158 IF NVL(p_record.SHIP_TO_ORG_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
159 RETURN p_record.SHIP_TO_ORG_ID;
160 ELSE
161 RETURN NULL;
162 END IF;
163 ELSIF p_attr_code =('UNDER_RETURN_TOLERANCE') THEN
164 IF NVL(p_record.UNDER_RETURN_TOLERANCE, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
165 RETURN p_record.UNDER_RETURN_TOLERANCE;
166 ELSE
167 RETURN NULL;
168 END IF;
169 ELSIF p_attr_code =('UNDER_SHIPMENT_TOLERANCE') THEN
170 IF NVL(p_record.UNDER_SHIPMENT_TOLERANCE, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
171 RETURN p_record.UNDER_SHIPMENT_TOLERANCE;
172 ELSE
173 RETURN NULL;
174 END IF;
175 ELSE
176 RETURN NULL;
177 END IF;
178 END Get_Attr_Val_Varchar2;
179
180
181 FUNCTION Get_Attr_Val_Date
182 ( p_attr_code IN VARCHAR2
183 , p_record IN OE_AK_SOLD_TO_ORGS_V%ROWTYPE
184 ) RETURN DATE
185 IS
186 BEGIN
187
188 IF p_attr_code =('DEFAULT_LINE_SET') THEN
189 IF NVL(p_record.DEFAULT_LINE_SET, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
190 RETURN to_date(p_record.DEFAULT_LINE_SET,'RRRR/MM/DD HH24:MI:SS');
191 ELSE
192 RETURN NULL;
193 END IF;
194 ELSIF p_attr_code =('DELIVER_TO_ORG_ID') THEN
195 IF NVL(p_record.DELIVER_TO_ORG_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
196 RETURN to_date(p_record.DELIVER_TO_ORG_ID,'RRRR/MM/DD HH24:MI:SS');
197 ELSE
198 RETURN NULL;
199 END IF;
200 ELSIF p_attr_code =('EARLIEST_SCHEDULE_LIMIT') THEN
201 IF NVL(p_record.EARLIEST_SCHEDULE_LIMIT, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
202 RETURN to_date(p_record.EARLIEST_SCHEDULE_LIMIT,'RRRR/MM/DD HH24:MI:SS');
203 ELSE
204 RETURN NULL;
205 END IF;
206 ELSIF p_attr_code =('FOB_POINT_CODE') THEN
207 IF NVL(p_record.FOB_POINT_CODE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
208 RETURN to_date(p_record.FOB_POINT_CODE,'RRRR/MM/DD HH24:MI:SS');
209 ELSE
210 RETURN NULL;
211 END IF;
212 ELSIF p_attr_code =('FREIGHT_TERMS_CODE') THEN
213 IF NVL(p_record.FREIGHT_TERMS_CODE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
214 RETURN to_date(p_record.FREIGHT_TERMS_CODE,'RRRR/MM/DD HH24:MI:SS');
215 ELSE
216 RETURN NULL;
217 END IF;
218 ELSIF p_attr_code =('INVOICE_TO_ORG_ID') THEN
219 IF NVL(p_record.INVOICE_TO_ORG_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
220 RETURN to_date(p_record.INVOICE_TO_ORG_ID,'RRRR/MM/DD HH24:MI:SS');
221 ELSE
222 RETURN NULL;
223 END IF;
224 ELSIF p_attr_code =('ITEM_IDENTIFIER_TYPE') THEN
225 IF NVL(p_record.ITEM_IDENTIFIER_TYPE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
226 RETURN to_date(p_record.ITEM_IDENTIFIER_TYPE,'RRRR/MM/DD HH24:MI:SS');
227 ELSE
228 RETURN NULL;
229 END IF;
230 ELSIF p_attr_code =('LATEST_SCHEDULE_LIMIT') THEN
231 IF NVL(p_record.LATEST_SCHEDULE_LIMIT, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
232 RETURN to_date(p_record.LATEST_SCHEDULE_LIMIT,'RRRR/MM/DD HH24:MI:SS');
233 ELSE
234 RETURN NULL;
235 END IF;
236 ELSIF p_attr_code =('ORDER_DATE_TYPE_CODE') THEN
237 IF NVL(p_record.ORDER_DATE_TYPE_CODE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
238 RETURN to_date(p_record.ORDER_DATE_TYPE_CODE,'RRRR/MM/DD HH24:MI:SS');
239 ELSE
240 RETURN NULL;
241 END IF;
242 ELSIF p_attr_code =('ORDER_TYPE_ID') THEN
243 IF NVL(p_record.ORDER_TYPE_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
244 RETURN to_date(p_record.ORDER_TYPE_ID,'RRRR/MM/DD HH24:MI:SS');
245 ELSE
246 RETURN NULL;
247 END IF;
248 ELSIF p_attr_code =('ORGANIZATION_ID') THEN
249 IF NVL(p_record.ORGANIZATION_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
250 RETURN to_date(p_record.ORGANIZATION_ID,'RRRR/MM/DD HH24:MI:SS');
251 ELSE
252 RETURN NULL;
253 END IF;
254 ELSIF p_attr_code =('OVER_RETURN_TOLERANCE') THEN
255 IF NVL(p_record.OVER_RETURN_TOLERANCE, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
256 RETURN to_date(p_record.OVER_RETURN_TOLERANCE,'RRRR/MM/DD HH24:MI:SS');
257 ELSE
258 RETURN NULL;
259 END IF;
260 ELSIF p_attr_code =('OVER_SHIPMENT_TOLERANCE') THEN
261 IF NVL(p_record.OVER_SHIPMENT_TOLERANCE, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
262 RETURN to_date(p_record.OVER_SHIPMENT_TOLERANCE,'RRRR/MM/DD HH24:MI:SS');
263 ELSE
264 RETURN NULL;
265 END IF;
266 ELSIF p_attr_code =('PAYMENT_TERM_ID') THEN
267 IF NVL(p_record.PAYMENT_TERM_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
268 RETURN to_date(p_record.PAYMENT_TERM_ID,'RRRR/MM/DD HH24:MI:SS');
269 ELSE
270 RETURN NULL;
271 END IF;
272 ELSIF p_attr_code =('PRICE_LIST_ID') THEN
273 IF NVL(p_record.PRICE_LIST_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
274 RETURN to_date(p_record.PRICE_LIST_ID,'RRRR/MM/DD HH24:MI:SS');
275 ELSE
276 RETURN NULL;
277 END IF;
278 ELSIF p_attr_code =('SALESREP_ID') THEN
279 IF NVL(p_record.SALESREP_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
280 RETURN to_date(p_record.SALESREP_ID,'RRRR/MM/DD HH24:MI:SS');
281 ELSE
282 RETURN NULL;
283 END IF;
284 ELSIF p_attr_code =('SALES_CHANNEL_CODE') THEN
285 IF NVL(p_record.SALES_CHANNEL_CODE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
286 RETURN to_date(p_record.SALES_CHANNEL_CODE,'RRRR/MM/DD HH24:MI:SS');
287 ELSE
288 RETURN NULL;
289 END IF;
290 ELSIF p_attr_code =('SHIPPING_METHOD_CODE') THEN
291 IF NVL(p_record.SHIPPING_METHOD_CODE, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
292 RETURN to_date(p_record.SHIPPING_METHOD_CODE,'RRRR/MM/DD HH24:MI:SS');
293 ELSE
294 RETURN NULL;
295 END IF;
296 ELSIF p_attr_code =('SHIP_FROM_ORG_ID') THEN
297 IF NVL(p_record.SHIP_FROM_ORG_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
298 RETURN to_date(p_record.SHIP_FROM_ORG_ID,'RRRR/MM/DD HH24:MI:SS');
299 ELSE
300 RETURN NULL;
301 END IF;
302 ELSIF p_attr_code =('SHIP_PARTIAL_ALLOWED') THEN
303 IF NVL(p_record.SHIP_PARTIAL_ALLOWED, FND_API.G_MISS_CHAR) <> FND_API.G_MISS_CHAR THEN
304 RETURN to_date(p_record.SHIP_PARTIAL_ALLOWED,'RRRR/MM/DD HH24:MI:SS');
305 ELSE
306 RETURN NULL;
307 END IF;
308 ELSIF p_attr_code =('SHIP_TO_ORG_ID') THEN
309 IF NVL(p_record.SHIP_TO_ORG_ID, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
310 RETURN to_date(p_record.SHIP_TO_ORG_ID,'RRRR/MM/DD HH24:MI:SS');
311 ELSE
312 RETURN NULL;
313 END IF;
314 ELSIF p_attr_code =('UNDER_RETURN_TOLERANCE') THEN
315 IF NVL(p_record.UNDER_RETURN_TOLERANCE, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
316 RETURN to_date(p_record.UNDER_RETURN_TOLERANCE,'RRRR/MM/DD HH24:MI:SS');
317 ELSE
318 RETURN NULL;
319 END IF;
320 ELSIF p_attr_code =('UNDER_SHIPMENT_TOLERANCE') THEN
321 IF NVL(p_record.UNDER_SHIPMENT_TOLERANCE, FND_API.G_MISS_NUM) <> FND_API.G_MISS_NUM THEN
322 RETURN to_date(p_record.UNDER_SHIPMENT_TOLERANCE,'RRRR/MM/DD HH24:MI:SS');
323 ELSE
324 RETURN NULL;
325 END IF;
326 ELSE
327 RETURN NULL;
328 END IF;
329
330 END Get_Attr_Val_Date;
331
332
333 PROCEDURE Clear_SOLD_TO_ORG_Cache
334 IS
335 BEGIN
336 g_cached_record.ORGANIZATION_ID := null;
337 g_cached_record.ORG_ID := null;
338 END Clear_SOLD_TO_ORG_Cache;
339
340
341 FUNCTION Sync_SOLD_TO_ORG_Cache
342 ( p_ORGANIZATION_ID IN NUMBER
343 , p_ORG_ID IN NUMBER
344
345
346 ) RETURN NUMBER
347 IS
348 CURSOR cache IS
349 SELECT * FROM OE_AK_SOLD_TO_ORGS_V
350 WHERE ORGANIZATION_ID = p_ORGANIZATION_ID
351 AND ORG_ID = p_ORG_ID
352 ;
353 BEGIN
354
355 IF (NVL(p_ORGANIZATION_ID,FND_API.G_MISS_NUM) = FND_API.G_MISS_NUM)
356 OR (NVL(p_ORG_ID,FND_API.G_MISS_NUM) = FND_API.G_MISS_NUM)
357 THEN
358 RETURN 0 ;
359 ELSIF (NVL(g_cached_record.ORGANIZATION_ID,FND_API.G_MISS_NUM) <> p_ORGANIZATION_ID)
360 OR (NVL(g_cached_record.ORG_ID,FND_API.G_MISS_NUM) <> p_ORG_ID)
361 THEN
362 Clear_SOLD_TO_ORG_Cache;
363 Open cache;
364 FETCH cache into g_cached_record;
365 IF cache%NOTFOUND THEN
366 RETURN 0;
367 END IF;
368 Close cache;
369 RETURN 1 ;
370 END IF;
371
372 RETURN 1 ;
373 EXCEPTION
374 WHEN OTHERS THEN
375 RETURN 0 ;
376 END Sync_SOLD_TO_ORG_Cache;
377
378
379 END ONT_SOLD_TO_ORG_Def_Util;