DBA Data[Home] [Help]

PACKAGE: APPS.ASL_EXCEL_UTIL_PVT

Source


1 PACKAGE ASL_EXCEL_UTIL_PVT as
2 /* $Header: aslvxlus.pls 120.1 2005/11/11 02:11:50 vjayamoh noship $ */
3 
4 /*
5 ** Server Side Primary Key ID MAX. Any number larger than this,
6 ** is considered as records created by mobile sales/laptop.
7 ** Temporary consider them to be NEW always.
8 */
9 M_SERVER_PK_ID_MAX NUMBER := 2147483647;
10 /*
11 ** Define the NEW_RECORD caches
12 ** Because it might contain parties that not qualified with download preference
13 ** default it is 'N'.
14 */
15 /* BLAM */
16 TYPE ASL_NEW_CUST_REC_TYPE IS RECORD
17 (CUSTOMER_ID   NUMBER
18 ,DOWNLOAD_FLAG VARCHAR2(1)
19 );
20 /* BLAM */
21 
22 TYPE ASL_NEW_LEAD_REC_TYPE IS RECORD
23 (SALES_LEAD_ID     NUMBER
24 ,CUSTOMER_ID NUMBER
25 ,DOWNLOAD_FLAG VARCHAR2(1)
26 );
27 
28 TYPE ASL_NEW_OPPORTUNITY_REC_TYPE IS RECORD
29 (OPPORTUNITY_ID     NUMBER
30 ,CUSTOMER_ID NUMBER
31 ,DOWNLOAD_FLAG VARCHAR2(1)
32 );
33 
34 TYPE ASL_NEW_OPP_LINE_REC_TYPE IS RECORD
35 (OPPORTUNITY_ID  NUMBER
36 ,OPPORTUNITY_LINE_ID NUMBER
37 );
38 
39 /* agmoore - changes for opportunity classifications 2744023 */
40 TYPE ASL_NEW_OPP_CLASS_REC_TYPE IS RECORD
41 (OPPORTUNITY_ID  NUMBER
42 ,OPPORTUNITY_CLASS_ID NUMBER
43 );
44 
45 /* lcooper - record type for opportunity issues 2675493 */
46 TYPE ASL_NEW_OPP_ISSUES_REC_TYPE IS RECORD
47 (OPPORTUNITY_ID         NUMBER,
48  OPPORTUNITY_ISSUE_ID   NUMBER
49 );
50 
51 TYPE ASL_NEW_CONTACT_REC_TYPE IS RECORD
52 (CONTACT_PARTY_ID NUMBER
53 ,CONTACT_PERSON_ID NUMBER
54 ,CUSTOMER_ID NUMBER
55 );
56 
57 /*
58 ** QUOTE RECORD TYPES
59 */
60 TYPE ASL_NEW_QUOTE_REC_TYPE IS RECORD
61 (QUOTE_HEADER_ID NUMBER
62 ,DOWNLOAD_FLAG VARCHAR2(1)
63 );
64 
65 TYPE ASL_NEW_QUOTE_DET_REC_TYPE IS RECORD
66 (QUOTE_HEADER_ID NUMBER
67 ,QUOTE_LINE_ID NUMBER
68 ,QUOTE_LINE_DETAIL_ID NUMBER
69 );
70 
71 TYPE ASL_OLD_INV_CATEGORY_REC_TYPE IS RECORD
72 (CATEGORY_ID NUMBER
73 );
74 
75 TYPE ASL_OLD_PRICE_LIST_REC_TYPE IS RECORD
76 (LIST_HEADER_ID NUMBER
77 );
78 
79 TYPE ASL_NEW_QUOTE_TBL_TYPE IS TABLE OF ASL_NEW_QUOTE_REC_TYPE INDEX BY BINARY_INTEGER;
80 TYPE ASL_NEW_QUOTE_DET_TBL_TYPE IS TABLE OF ASL_NEW_QUOTE_DET_REC_TYPE INDEX BY BINARY_INTEGER;
81 TYPE ASL_OLD_INV_CATEGORY_TBL_TYPE IS TABLE OF ASL_OLD_INV_CATEGORY_REC_TYPE INDEX BY BINARY_INTEGER;
82 TYPE ASL_OLD_PRICE_LIST_TBL_TYPE IS TABLE OF ASL_OLD_PRICE_LIST_REC_TYPE INDEX BY BINARY_INTEGER;
83 
84 M_NEW_QOT_TBL ASL_NEW_QUOTE_TBL_TYPE;
85 M_NEW_QOT_DET_TBL ASL_NEW_QUOTE_DET_TBL_TYPE;
86 M_OLD_INV_TBL ASL_OLD_INV_CATEGORY_TBL_TYPE;
87 M_OLD_PRICE_LIST_TBL ASL_OLD_PRICE_LIST_TBL_TYPE;
88 
89 /*
90 **END OF QUOTE RECORD TYPES
91 */
92 /* BLAM */
93 TYPE ASL_NEW_CUST_TBL_TYPE IS TABLE OF ASL_NEW_CUST_REC_TYPE INDEX BY BINARY_INTEGER;
94 /* BLAM */
95 TYPE ASL_NEW_CNT_TBL_TYPE IS TABLE OF ASL_NEW_CONTACT_REC_TYPE INDEX BY BINARY_INTEGER;
96 TYPE ASL_NEW_OPP_TBL_TYPE IS TABLE OF ASL_NEW_OPPORTUNITY_REC_TYPE INDEX BY BINARY_INTEGER;
97 TYPE ASL_NEW_OPP_LINE_TBL_TYPE IS TABLE OF ASL_NEW_OPP_LINE_REC_TYPE INDEX BY BINARY_INTEGER;
98 /* agmoore - changes for opportunity classifications  2744023 */
99 TYPE ASL_NEW_OPP_CLASS_TBL_TYPE IS TABLE OF ASL_NEW_OPP_CLASS_REC_TYPE INDEX BY BINARY_INTEGER;
100 /* lcooper - table type for opportunity issues 2675493 */
101 TYPE ASL_NEW_OPP_ISSUES_TBL_TYPE IS TABLE OF ASL_NEW_OPP_ISSUES_REC_TYPE INDEX BY BINARY_INTEGER;
102 TYPE ASL_NEW_LEAD_TBL_TYPE IS TABLE OF ASL_NEW_LEAD_REC_TYPE INDEX BY BINARY_INTEGER;
103 
104 /* BLAM */
105 M_NEW_CUST_TBL ASL_NEW_CUST_TBL_TYPE;
106 /* BLAM */
107 M_NEW_CNT_TBL ASL_NEW_CNT_TBL_TYPE;
108 M_NEW_OPP_TBL ASL_NEW_OPP_TBL_TYPE;
109 M_NEW_OPP_LINE_TBL ASL_NEW_OPP_LINE_TBL_TYPE;
110 /* agmoore - changes for opportunity classifications 2744023 */
111 M_NEW_OPP_CLASS_TBL ASL_NEW_OPP_CLASS_TBL_TYPE;
112 /* lcooper - table variable for opportunity issues 2675493 */
113 M_NEW_OPP_ISSUES_TBL ASL_NEW_OPP_ISSUES_TBL_TYPE;
114 M_NEW_LEAD_TBL ASL_NEW_LEAD_TBL_TYPE;
115 
116 /*
117 ** Customer Account Record Types
118 ** No longer defaulting any values in PL/SQL Record
119 */
120 TYPE ASL_CUSTOMER_ACCOUNT_REC_TYPE IS RECORD
121 (CUST_ACCOUNT_ID NUMBER
122 );
123 
124 
125 
126 TYPE ASL_NEW_CUST_ACCOUNT_TBL_TYPE IS TABLE OF ASL_CUSTOMER_ACCOUNT_REC_TYPE INDEX BY BINARY_INTEGER;
127 
128 M_NEW_CUST_ACCOUNT_TBL ASL_NEW_CUST_ACCOUNT_TBL_TYPE;
129 
130 /*
131 ** The flag to indicate whether a full sync will be operated.
132 */
133 M_FULL_SYNC BOOLEAN := TRUE;
134 
135 /*
136 ** Hard code the Date to VARCHAR2 conversion Format. Precision is to seconds.
137 */
138 M_CONVERSION_DATE_FORMAT VARCHAR2(60) := 'YYYY-MM-DD:HH24:MI:SS';
139 /*
140 ** Save Sync Context for a particular sales rep.
141 ** It doesn't do any validation on the passed in values. Assumeably ASF_PAGE
142 ** Already done that.
143 */
144 PROCEDURE SAVE_SYNC_CONTEXT
145 (  p_salesforce_id IN NUMBER,
146    p_salesgroup_id IN NUMBER,
147    p_person_id     IN NUMBER,
148    p_user_id       IN NUMBER,
149    p_full_sync     IN NUMBER,
150    x_curr_sync_time_str OUT NOCOPY VARCHAR2
151 );
152 
153 PROCEDURE SET_ACCESS_PROFILE_VALUES
154 (p_cust_access       IN VARCHAR2
155 ,p_lead_access     IN VARCHAR2
156 ,p_opp_access IN VARCHAR2
157 ,p_mgr_update IN VARCHAR2
158 ,p_admin_update IN VARCHAR2
159 );
160 
161 PROCEDURE SET_DEFAUL_ORG_ID
162 (p_default_org_id IN NUMBER
163 );
164 
165 PROCEDURE SET_ENABLED_MODULES
166 (p_module_name VARCHAR2
167 );
168 
169 /*
170 ** Given the de-normalized customer information, figure out
171 ** whether this record is newer than last update, and meanwhile,
172 ** do the security check
173 */
174 FUNCTION Check_Organization_Download
175 (p_customer_id IN NUMBER
176 ,p_org_creation_date IN DATE
177 ,p_org_update_date   IN DATE
178 ,p_profile_creation_date IN DATE
179 ,p_ploc_update_date  IN DATE
180 ,p_sloc_update_date  IN DATE
181 ,p_bloc_update_date  IN DATE
182 ,p_phone_update_date IN DATE
183 ,p_email_update_date IN DATE
184 ) RETURN VARCHAR2;
185 
186 /* BLAM -- Remain separate functions just in case any client schema change */
187 FUNCTION Check_Person_Download
188 (p_customer_id IN NUMBER
189 ,p_per_creation_date IN DATE
190 ,p_per_update_date   IN DATE
191 ,p_profile_creation_date IN DATE
192 ,p_phone_update_date IN DATE
193 ,p_email_update_date IN DATE
194 ) RETURN VARCHAR2;
195 /* BLAM */
196 
197 FUNCTION Check_Opp_Download
198 (p_opp_creation_date IN DATE
199 ,p_opp_update_date IN DATE
200 ,p_opportunity_id  IN NUMBER
201 ,p_customer_id     IN NUMBER
202 ,p_customer_update_date IN DATE
203 ,p_contact_party_update_date  IN DATE
204 ,p_contact_person_update_date  IN DATE
205 ,p_rel_update_date IN DATE
206 ) RETURN VARCHAR2;
207 
208 FUNCTION Check_Opp_Det_Download
209 (p_line_creation_date IN DATE
210 ,p_line_update_date IN DATE
211 ,p_opportunity_id IN NUMBER
212 ,p_opp_line_id    IN NUMBER
213 ) RETURN VARCHAR2;
214 
215 /* created by agmoore for opportunity classifications 2744023 */
216 FUNCTION Check_Opp_Class_Download
217 (p_class_creation_date IN DATE
218 ,p_class_update_date IN DATE
219 ,p_opportunity_id IN NUMBER
220 ,p_opp_class_id    IN NUMBER
221 ) RETURN VARCHAR2;
222 
223 /* lcooper - created for opportunity win/loss other issues 2744023 */
224 FUNCTION Check_Opp_Issues_Download
225 (p_issue_creation_date  IN DATE,
226  p_issue_update_date    IN DATE,
227  p_opportunity_id       IN NUMBER,
228  p_opp_issue_id         IN NUMBER
229 ) RETURN VARCHAR2;
230 
231 FUNCTION Check_Opp_Credit_Download
232 (p_credit_creation_date  IN DATE
233 ,p_credit_last_update_date     IN DATE
234 ,p_lead_line_id             IN NUMBER
235 ,p_group_last_update_date     IN DATE
236 ,p_resource_last_update_date  IN DATE
237 ) RETURN VARCHAR2;
238 
239 FUNCTION Check_Contact_Download
240 (p_contact_creation_date IN DATE
241 ,p_contact_party_id      IN NUMBER
242 ,p_contact_person_id     IN NUMBER
243 ,p_customer_id           IN NUMBER
244 ,p_person_update_date    IN DATE
245 ,p_contact_update_date   IN DATE
246 ,p_loc_update_date       IN DATE
247 ,p_phone_update_date     IN DATE
248 ,p_email_update_date     IN DATE
249 ) RETURN VARCHAR2;
250 
251 FUNCTION Check_Notes_Download
252 (p_note_creation_date  IN DATE
253 ,p_note_source_object_code IN VARCHAR2
254 ,p_note_source_object_id    IN NUMBER
255 ,p_tl_update_date  IN DATE
256 ) RETURN VARCHAR2;
257 
258 FUNCTION Check_Lead_Download
259 (p_lead_CREATION_DATE  IN DATE
260 ,p_lead_last_update_date   IN DATE
261 ,p_sales_lead_id           IN NUMBER
262 ,p_customer_id             IN NUMBER
263 ,p_customer_update_date IN DATE
264 ,p_cnt_party_update_date    IN DATE
265 ,p_rel_last_update_date  IN DATE
266 ,p_cnt_person_update_date   IN  DATE
267 ) RETURN VARCHAR2;
268 
269 FUNCTION Check_Lead_Det_Download
270 (p_line_creation_date  IN DATE
271 ,p_line_last_update_date   IN DATE
272 ,p_sales_lead_id  IN NUMBER
273 ) RETURN VARCHAR2;
274 
275 FUNCTION Check_CST_SalesTeam_Download
276 (p_team_creation_date  IN DATE
277 ,p_team_last_update_date  IN DATE
278 ,p_customer_id     IN NUMBER
279 ,p_group_last_update_date IN DATE
280 ,p_resource_last_update_date IN DATE
281 ) RETURN VARCHAR2;
282 
283 FUNCTION Check_Opp_SalesTeam_Download
284 (p_team_creation_date  IN DATE
285 ,p_team_last_update_date  IN DATE
286 ,p_opportunity_id     IN NUMBER
287 ,p_group_last_update_date IN DATE
288 ,p_resource_last_update_date IN DATE
289 ) RETURN VARCHAR2;
290 
291 
292 FUNCTION Check_Lead_SalesTeam_Download
293 (p_team_creation_date  IN DATE
294 ,p_team_last_update_date  IN DATE
295 ,p_lead_id     IN NUMBER
296 ,p_group_last_update_date IN DATE
297 ,p_resource_last_update_date IN DATE
298 ) RETURN VARCHAR2;
299 
300 
301 FUNCTION Check_Address_Download
302 (p_customer_id IN NUMBER
303 ,p_add_creation_date IN DATE
304 ,p_add_update_date   IN DATE
305 ) RETURN VARCHAR2;
306 
307 /*
308 ** Quote Incremental Sync Functions
309 */
310 FUNCTION Check_Quote_Download
311 (p_qot_creation_date       IN DATE
312 ,p_qot_update_date         IN DATE
313 ,p_qot_header_id           IN NUMBER
314 ,p_cust_accnt_update_date  IN DATE
315 ,p_customer_update_date    IN DATE
316 ,p_org_contact_update_date IN DATE
317 ,p_rel_update_date         IN DATE
318 ,p_contact_party_update_date IN DATE
319 ,p_sold_to_party_update_date IN DATE
320 ,p_related_obj_update_date IN DATE
321 ,p_related_opp_update_date IN DATE
322 ) RETURN VARCHAR2;
323 
324 FUNCTION Check_Quote_Det_Download
325 (p_quote_line_creation_date IN DATE
326 ,p_quote_line_update_date   IN DATE
327 ,p_quote_line_det_update_date IN DATE
328 ,p_quote_header_id IN NUMBER
329 ,p_quote_line_id   IN NUMBER
330 ,p_quote_line_detail_id       IN NUMBER
331 ) RETURN VARCHAR2;
332 
333 FUNCTION Check_Quote_Shipment_Download
334 (p_quote_shipment_creation_date IN DATE
335 ,p_quote_shipment_update_date   IN DATE
336 ,p_quote_header_id   IN NUMBER
337 ,p_quote_shipment_id IN NUMBER
338 ,p_ship_to_site_update_date     IN DATE
339 ,p_ship_to_relation_update_date IN DATE
340 ,p_ship_to_contact_update_date  IN DATE
341 ) RETURN VARCHAR2;
342 
343 FUNCTION Check_Quote_Payment_Download
344 (p_quote_payment_creation_date IN DATE
345 ,p_quote_payment_update_date   IN DATE
346 ,p_quote_header_id   IN NUMBER
347 ,p_quote_payment_id IN NUMBER
348 
349 ) RETURN VARCHAR2;
350 
351 FUNCTION Check_Quote_Price_Adj_Download
352 (p_price_Adj_creation_date IN DATE
353 ,p_price_Adj_update_date   IN DATE
354 ,p_quote_header_id   IN NUMBER
355 ,p_quote_line_id   IN NUMBER
356 ,p_price_adjustment_id IN NUMBER
357 ) RETURN VARCHAR2;
358 
359 FUNCTION Check_Quote_Salesteam_Download
360 (p_qot_Salesteam_creation_date IN DATE
361 ,p_qot_Salesteam_update_date   IN DATE
362 ,p_quote_header_id   IN NUMBER
363 ,p_quote_access_id   IN NUMBER
364 ) RETURN VARCHAR2;
365 
366 FUNCTION Check_Qot_Salescredit_Download
367 (p_qot_scredit_creation_date IN DATE
368 ,p_qot_scredit_update_date   IN DATE
369 ,p_quote_header_id   IN NUMBER
370 ,p_quote_sales_credit_id   IN NUMBER
371 ) RETURN VARCHAR2;
372 
373 FUNCTION Check_Inv_Item_Download
374 (p_inv_item_creation_date  IN DATE
375 ,p_inv_item_b_update_date  IN DATE
376 ,p_inv_item_tl_update_date IN DATE
377 ,p_inv_catgry_update_date  IN DATE
378 ,p_inv_uom_update_date     IN DATE
379 ,p_inv_category_id   IN NUMBER
380 ,p_inv_item_id       IN NUMBER
381 ) RETURN VARCHAR2;
382 
383 FUNCTION Check_Price_List_Download
384 (p_list_line_creation_date IN DATE
385 ,p_list_line_update_date   IN DATE
386 ,p_line_attr_update_date   IN DATE
387 ,p_list_header_id   IN NUMBER
388 ,p_inv_category_id  IN NUMBER
389 ) RETURN VARCHAR2;
390 
391 FUNCTION Check_Cust_Account_Download
392 (p_customer_id IN NUMBER
393 ,p_cust_accnt_id IN NUMBER
394 ,p_cust_accnt_creation_date IN DATE
395 ,p_cust_update_date   IN DATE
396 ,p_cust_accnt_update_date   IN DATE
397 ,p_loc_update_date      IN DATE
398 ,p_site_update_date     IN DATE
399 ,p_site_use_update_date IN DATE
400 ) RETURN VARCHAR2;
401 
402 FUNCTION Check_Rel_Cust_Addr_Download
403 (p_cust_accnt_id IN NUMBER
404 ,p_cust_rel_creation_date IN DATE
405 ,p_cust_update_date   IN DATE
406 ,p_loc_update_date      IN DATE
407 ,p_site_update_date     IN DATE
408 ) RETURN VARCHAR2;
409 
410 FUNCTION Check_Rel_Cust_Cont_Download
411 (p_cust_accnt_id IN NUMBER
412 ,p_cust_rel_creation_date IN DATE
413 ,p_cust_update_date   IN DATE
414 ,p_contact_update_date   IN DATE
415 ) RETURN VARCHAR2;
416 
417 /*
418 ** Passing in a customer, check if it is updateable by this particular
419 ** resource
420 ** For contact access priv, the sql will pass in the object_id to check.
421 ** because contact's updateable belongs to its object that it relates to.
422 */
423 FUNCTION CHECK_CUSTOMER_UPDATEBLE
424 (p_api_version_number IN NUMBER
425 ,p_init_msg_list      IN VARCHAR2
426 ,p_validation_level IN NUMBER
427 ,p_customer_id IN NUMBER
428 ,p_party_type IN VARCHAR2 DEFAULT NULL
429 ) RETURN VARCHAR2 ;
430 
434 ,p_validation_level IN NUMBER
431 FUNCTION CHECK_OPPORTUNITY_UPDATEBLE
432 (p_api_version_number IN NUMBER
433 ,p_init_msg_list      IN VARCHAR2
435 ,p_opportunity_id IN NUMBER
436 ) RETURN VARCHAR2 ;
437 
438 FUNCTION CHECK_LEAD_UPDATEBLE
439 (p_api_version_number IN NUMBER
440 ,p_init_msg_list      IN VARCHAR2
441 ,p_validation_level IN NUMBER
442 ,p_sales_lead_id IN NUMBER
443 ) RETURN VARCHAR2 ;
444 
445 /*FUNCTION CHECK_CUSTOMER_UPDATEBLE(p_customer_id IN NUMBER) RETURN VARCHAR2;
446 */
447 FUNCTION CHECK_MANAGER_FLAG(p_group_id IN NUMBER) RETURN VARCHAR2;
448 
449 FUNCTION GET_SOURCE_NAME(p_source_code_id IN NUMBER) RETURN VARCHAR2;
450 
451 /*
452 *Overload lead/opp dirty flag for incremental sync home page
453 *display problem caused by a change in the related org.
454 */
455 FUNCTION GET_LEAD_DIRTY
456 (p_lead_creation_date IN DATE
457 ,p_lead_last_update_date IN DATE
458 ,p_customer_update_date    IN DATE
459 ) RETURN VARCHAR2;
460 
461 FUNCTION GET_OPPORTUNITY_DIRTY
462 (p_opp_creation_date IN DATE
463 ,p_opp_update_date IN DATE
464 ,p_customer_update_date IN DATE
465 ) RETURN VARCHAR2;
466 
467 END ASL_EXCEL_UTIL_PVT;
468