[Home] [Help]
PACKAGE: APPS.OZF_OFFER_PUB
Source
1 PACKAGE OZF_Offer_PUB AUTHID CURRENT_USER AS
2 /* $Header: ozfpofrs.pls 120.8 2011/10/28 15:09:45 bkunjan ship $ */
3 /*#
4 * Use the Offers Public API to create non-offer modules such as Referral.
5 * This API provides a single location for managing offers.
6 * You can modify budget requests and discount rules with just one call to the method public.
7 * @rep:scope public
8 * @rep:product OZF
9 * @rep:lifecycle active
10 * @rep:displayname Offer Public API
11 * @rep:category BUSINESS_ENTITY OZF_OFFERS
12 */
13 G_PKG_NAME CONSTANT VARCHAR2(30) := 'OZF_OFFER_PUB';
14
15 TYPE act_product_line_rec_type IS RECORD
16 (
17 activity_product_id NUMBER
18 ,object_version_number NUMBER(9)
19 ,act_product_used_by_id NUMBER
20 ,arc_act_product_used_by VARCHAR2(30)
21 ,product_sale_type VARCHAR2(30)
22 ,primary_product_flag VARCHAR2(1)
23 ,enabled_flag VARCHAR2(1)
24 ,inventory_item_id NUMBER(38)
25 ,organization_id NUMBER(32)
26 ,category_id NUMBER
27 ,category_set_id NUMBER
28 ,attribute_category VARCHAR2(30)
29 ,level_type_code VARCHAR2(30)
30 ,excluded_flag VARCHAR2(1)
31 ,line_lumpsum_amount NUMBER
32 ,line_lumpsum_qty NUMBER
33 ,scan_value NUMBER
34 ,uom_code VARCHAR2(3)
35 ,adjustment_flag VARCHAR2(1)
36 ,scan_unit_forecast NUMBER
37 ,channel_id NUMBER
38 ,quantity NUMBER
39 ,operation VARCHAR2(30)
40 );
41 TYPE act_product_tbl_type IS TABLE OF act_product_line_rec_type INDEX BY BINARY_INTEGER;
42
43 TYPE discount_line_rec_type IS RECORD
44 (
45 offer_discount_line_id NUMBER,
46 parent_discount_line_id NUMBER,
47 volume_from NUMBER,
48 volume_to NUMBER,
49 volume_operator VARCHAR2(30),
50 volume_type VARCHAR2(30),
51 volume_break_type VARCHAR2(30),
52 discount NUMBER,
53 discount_type VARCHAR2(30),
54 tier_type VARCHAR2(30),
55 tier_level VARCHAR2(30),
56 incompatibility_group VARCHAR2(30),
57 precedence NUMBER,
58 bucket VARCHAR2(30),
59 scan_value NUMBER,
60 scan_data_quantity NUMBER,
61 scan_unit_forecast NUMBER,
62 channel_id NUMBER,
63 adjustment_flag VARCHAR2(1),
64 start_date_active DATE,
65 end_date_active DATE,
66 uom_code VARCHAR2(30),
67 creation_date DATE,
68 created_by NUMBER,
69 last_update_date DATE,
70 last_updated_by NUMBER,
71 last_update_login NUMBER,
72 object_version_number NUMBER,
73 offer_id NUMBER,
74 off_discount_product_id NUMBER,
75 parent_off_disc_prod_id NUMBER,
76 product_level VARCHAR2(30),
77 product_id NUMBER,
78 excluder_flag VARCHAR2(1),
79 operation VARCHAR2(30)
80 );
81 TYPE discount_line_tbl_type IS TABLE OF discount_line_rec_type INDEX BY BINARY_INTEGER;
82
83 TYPE prod_rec_type IS RECORD
84 (
85 off_discount_product_id NUMBER,
86 parent_off_disc_prod_id NUMBER,
87 product_level VARCHAR2(30),
88 product_id NUMBER,
89 excluder_flag VARCHAR2(1),
90 uom_code VARCHAR2(30),
91 start_date_active DATE,
92 end_date_active DATE,
93 offer_discount_line_id NUMBER,
94 offer_id NUMBER,
95 creation_date DATE,
96 created_by NUMBER,
97 last_update_date DATE,
98 last_updated_by NUMBER,
99 last_update_login NUMBER,
100 object_version_number NUMBER,
101 operation VARCHAR2(30)
102 );
103 TYPE prod_rec_tbl_type IS TABLE OF prod_rec_type INDEX BY BINARY_INTEGER;
104
105 TYPE excl_rec_type IS RECORD
106 (
107 off_discount_product_id NUMBER,
108 parent_off_disc_prod_id NUMBER,
109 product_level VARCHAR2(30),
110 product_id NUMBER,
111 object_version_number NUMBER,
112 start_date_active DATE,
113 end_date_active DATE,
114 operation VARCHAR2(30)
115 );
116 TYPE excl_rec_tbl_type IS TABLE OF excl_rec_type INDEX BY BINARY_INTEGER;
117
118 TYPE offer_tier_rec_type IS RECORD
119 (
120 offer_discount_line_id NUMBER,
121 parent_discount_line_id NUMBER,
122 offer_id NUMBER,
123 volume_from NUMBER,
124 volume_to NUMBER,
125 volume_operator VARCHAR2(30),
126 volume_type VARCHAR2(30),
127 volume_break_type VARCHAR2(30),
128 discount NUMBER,
129 discount_type VARCHAR2(30),
130 start_date_active DATE,
131 end_date_active DATE,
132 uom_code VARCHAR2(30),
133 object_version_number NUMBER,
134 operation VARCHAR2(30)
135 );
136 TYPE offer_tier_tbl_type IS TABLE OF offer_tier_rec_type INDEX BY BINARY_INTEGER;
137
138 TYPE na_qualifier_rec_type IS RECORD
139 (
140 qualifier_id NUMBER,
141 creation_date DATE,
142 created_by NUMBER,
143 last_update_date DATE,
144 last_updated_by NUMBER,
145 last_update_login NUMBER,
146 qualifier_grouping_no NUMBER,
147 qualifier_context VARCHAR2(30),
148 qualifier_attribute VARCHAR2(30),
149 qualifier_attr_value VARCHAR2(240),
150 start_date_active DATE,
151 end_date_active DATE,
152 offer_id NUMBER,
153 offer_discount_line_id NUMBER,
154 context VARCHAR2(30),
155 attribute1 VARCHAR2(240),
156 attribute2 VARCHAR2(240),
157 attribute3 VARCHAR2(240),
158 attribute4 VARCHAR2(240),
159 attribute5 VARCHAR2(240),
160 attribute6 VARCHAR2(240),
161 attribute7 VARCHAR2(240),
162 attribute8 VARCHAR2(240),
163 attribute9 VARCHAR2(240),
164 attribute10 VARCHAR2(240),
165 attribute11 VARCHAR2(240),
166 attribute12 VARCHAR2(240),
167 attribute13 VARCHAR2(240),
168 attribute14 VARCHAR2(240),
169 attribute15 VARCHAR2(240),
170 active_flag VARCHAR2(1),
171 object_version_number NUMBER,
172 operation VARCHAR2(30)
173 );
174 TYPE na_qualifier_tbl_type IS TABLE OF na_qualifier_rec_type INDEX BY BINARY_INTEGER;
175
176 TYPE budget_rec_type IS RECORD
177 (
178 act_budget_id NUMBER
179 ,budget_id NUMBER
180 ,budget_amount NUMBER
181 ,operation VARCHAR2(30)
182 );
183 TYPE budget_tbl_type IS TABLE OF budget_rec_type INDEX BY BINARY_INTEGER;
184
185 TYPE Modifier_LIST_Rec_Type IS RECORD
186 (
187 offer_id NUMBER := Fnd_Api.g_miss_num
188 ,qp_list_header_id NUMBER := Fnd_Api.g_miss_num
189 ,offer_type VARCHAR2(30) := Fnd_Api.g_miss_char
190 ,offer_code VARCHAR2(100) := Fnd_Api.g_miss_char
191 ,activity_media_id NUMBER := Fnd_Api.g_miss_num
192 ,reusable VARCHAR2(1) := Fnd_Api.g_miss_char
193 ,user_status_id NUMBER := Fnd_Api.g_miss_num
194 ,owner_id NUMBER := Fnd_Api.g_miss_num
195 ,wf_item_key VARCHAR2(120) := Fnd_Api.g_miss_char
196 ,customer_reference VARCHAR2(240) := Fnd_Api.g_miss_char
197 ,buying_group_contact_id NUMBER := Fnd_Api.g_miss_num
198 ,object_version_number NUMBER := Fnd_Api.g_miss_num
199 ,perf_date_from DATE := Fnd_Api.g_miss_date
200 ,perf_date_to DATE := Fnd_Api.g_miss_date
201 ,status_code VARCHAR2(30) := Fnd_Api.g_miss_char
202 ,status_date DATE := Fnd_Api.g_miss_date
203 ,modifier_level_code VARCHAR2(30) := Fnd_Api.g_miss_char
204 ,order_value_discount_type VARCHAR2(30) := Fnd_Api.g_miss_char
205 ,lumpsum_amount NUMBER := Fnd_Api.g_miss_num
206 ,lumpsum_payment_type VARCHAR2(30) := Fnd_Api.g_miss_char
207 ,custom_setup_id NUMBER := Fnd_Api.g_miss_num
208 ,offer_amount NUMBER := FND_API.g_miss_num
209 ,budget_amount_tc NUMBER := Fnd_Api.g_miss_num
210 ,budget_amount_fc NUMBER := Fnd_Api.g_miss_num
211 ,transaction_currency_code VARCHAR2(15) := Fnd_Api.g_miss_char
212 ,functional_currency_code VARCHAR2(15) := Fnd_Api.g_miss_char
213 ,context VARCHAR2(30) := Fnd_Api.g_miss_char
214 ,attribute1 VARCHAR2(240) := Fnd_Api.g_miss_char
215 ,attribute2 VARCHAR2(240) := Fnd_Api.g_miss_char
216 ,attribute3 VARCHAR2(240) := Fnd_Api.g_miss_char
217 ,attribute4 VARCHAR2(240) := Fnd_Api.g_miss_char
218 ,attribute5 VARCHAR2(240) := Fnd_Api.g_miss_char
219 ,attribute6 VARCHAR2(240) := Fnd_Api.g_miss_char
220 ,attribute7 VARCHAR2(240) := Fnd_Api.g_miss_char
221 ,attribute8 VARCHAR2(240) := Fnd_Api.g_miss_char
222 ,attribute9 VARCHAR2(240) := Fnd_Api.g_miss_char
223 ,attribute10 VARCHAR2(240) := Fnd_Api.g_miss_char
224 ,attribute11 VARCHAR2(240) := Fnd_Api.g_miss_char
225 ,attribute12 VARCHAR2(240) := Fnd_Api.g_miss_char
226 ,attribute13 VARCHAR2(240) := Fnd_Api.g_miss_char
227 ,attribute14 VARCHAR2(240) := Fnd_Api.g_miss_char
228 ,attribute15 VARCHAR2(240) := Fnd_Api.g_miss_char
229 ,currency_code VARCHAR2(30) := Fnd_Api.g_miss_char
230 ,start_date_active DATE := Fnd_Api.g_miss_date
231 ,end_date_active DATE := Fnd_Api.g_miss_date
232 ,list_type_code VARCHAR2(30) := Fnd_Api.g_miss_char
233 ,discount_lines_flag VARCHAR2(1) := Fnd_Api.g_miss_char
234 ,name VARCHAR2(240) := Fnd_Api.g_miss_char
235 ,description VARCHAR2(2000) := Fnd_Api.g_miss_char
236 ,comments VARCHAR2(2000) := Fnd_Api.g_miss_char
237 ,ask_for_flag VARCHAR2(1) := Fnd_Api.g_miss_char
238 ,start_date_active_first DATE := Fnd_Api.g_miss_date
239 ,end_date_active_first DATE := Fnd_Api.g_miss_date
240 ,active_date_first_type VARCHAR2(30) := Fnd_Api.g_miss_char
241 ,start_date_active_second DATE := Fnd_Api.g_miss_date
242 ,end_date_active_second DATE := Fnd_Api.g_miss_date
243 ,active_date_second_type VARCHAR2(30) := Fnd_Api.g_miss_char
244 ,active_flag VARCHAR2(1) := Fnd_Api.g_miss_char
245 ,max_no_of_uses NUMBER := Fnd_Api.g_miss_num
246 ,budget_source_id NUMBER := Fnd_Api.g_miss_num
247 ,budget_source_type VARCHAR2(30) := Fnd_Api.g_miss_char
248 ,offer_used_by_id NUMBER := Fnd_Api.g_miss_num
249 ,offer_used_by VARCHAR2(30) := Fnd_Api.g_miss_char
250 ,ql_qualifier_type VARCHAR2(30) := Fnd_Api.g_miss_char
251 ,ql_qualifier_id NUMBER := Fnd_Api.g_miss_num
252 ,distribution_type VARCHAR2(30) := FND_API.g_miss_char
253 ,amount_limit_id NUMBER := FND_API.g_miss_num
254 ,uses_limit_id NUMBER := FND_API.g_miss_num
255 ,offer_operation VARCHAR2(30) := FND_API.g_miss_char
256 ,modifier_operation VARCHAR2(30) := FND_API.g_miss_char
257 ,budget_offer_yn VARCHAR2(1) := FND_API.g_miss_char
258 ,break_type VARCHAR2(30) := FND_API.g_miss_char
259 ,retroactive VARCHAR2(1) := FND_API.g_miss_char
260 ,volume_offer_type VARCHAR2(30) := FND_API.g_miss_char
264 ,buyer_name VARCHAR2(240) := FND_API.g_miss_char
261 ,confidential_flag VARCHAR2(1) := FND_API.g_miss_char
262 ,committed_amount_eq_max VARCHAR2(1) := FND_API.g_miss_char
263 ,source_from_parent VARCHAR2(1) := FND_API.g_miss_char
265 ,tier_level VARCHAR2(30) := FND_API.g_miss_char
266 ,na_rule_header_id NUMBER := FND_API.g_miss_num
267 ,sales_method_flag VARCHAR2(1) := FND_API.g_miss_char
268 ,global_flag VARCHAR2(1) := FND_API.g_miss_char
269 ,orig_org_id NUMBER := FND_API.g_miss_num
270 );
271
272 TYPE Modifier_Line_Rec_Type IS RECORD
273 (
274 offer_line_type VARCHAR2(30) := Fnd_Api.g_miss_char
275 ,operation VARCHAR2(30) := FND_API.g_miss_char
276 ,list_line_id NUMBER := Fnd_Api.g_miss_num
277 ,list_header_id NUMBER := Fnd_Api.g_miss_num
278 ,list_line_type_code VARCHAR2(30) := Fnd_Api.g_miss_char
279 ,operand NUMBER := Fnd_Api.g_miss_num
280 ,start_date_active DATE := FND_API.g_miss_date
281 ,end_date_active DATE := FND_API.g_miss_date
282 ,arithmetic_operator VARCHAR2(30) := Fnd_Api.g_miss_char
283 ,active_flag VARCHAR2(1) := Fnd_Api.g_miss_char
284 ,qd_operand NUMBER := Fnd_Api.g_miss_num
285 ,qd_arithmetic_operator VARCHAR2(30) := Fnd_Api.g_miss_char
286 ,qd_related_deal_lines_id NUMBER := Fnd_Api.g_miss_num
287 ,qd_object_version_number NUMBER := Fnd_Api.g_miss_num
288 ,qd_estimated_qty_is_max VARCHAR2(1) := Fnd_Api.g_miss_char
289 ,qd_list_line_id NUMBER := Fnd_Api.g_miss_num
290 ,qd_estimated_amount_is_max VARCHAR2(1) := Fnd_Api.g_miss_char
291 ,estim_gl_value NUMBER := Fnd_Api.g_miss_num
292 ,benefit_price_list_line_id NUMBER := Fnd_Api.g_miss_num
296 ,substitution_context VARCHAR2(30) := Fnd_Api.g_miss_char
293 ,benefit_limit NUMBER := Fnd_Api.g_miss_num
294 ,benefit_qty NUMBER := Fnd_Api.g_miss_num
295 ,benefit_uom_code VARCHAR2(3) := Fnd_Api.g_miss_char
297 ,substitution_attr VARCHAR2(30) := Fnd_Api.g_miss_char
298 ,substitution_val VARCHAR2(240) := Fnd_Api.g_miss_char
299 ,price_break_type_code VARCHAR2(30) := Fnd_Api.g_miss_char
300 ,pricing_attribute_id NUMBER := Fnd_Api.g_miss_num
301 ,product_attribute_context VARCHAR2(30) := Fnd_Api.g_miss_char
302 ,product_attr VARCHAR2(30) := Fnd_Api.g_miss_char
303 ,product_attr_val VARCHAR2(240) := Fnd_Api.g_miss_char
304 ,product_uom_code VARCHAR2(3) := Fnd_Api.g_miss_char
305 ,pricing_attribute_context VARCHAR2(30) := Fnd_Api.g_miss_char
306 ,pricing_attr VARCHAR2(30) := Fnd_Api.g_miss_char
307 ,pricing_attr_value_from VARCHAR2(240) := Fnd_Api.g_miss_char
308 ,pricing_attr_value_to VARCHAR2(240) := Fnd_Api.g_miss_char
309 ,excluder_flag VARCHAR2(1) := Fnd_Api.g_miss_char
310 ,order_value_from VARCHAR2(240) := Fnd_Api.g_miss_char
311 ,order_value_to VARCHAR2(240) := Fnd_Api.g_miss_char
312 ,qualifier_id NUMBER := FND_API.g_miss_num
313 ,comments VARCHAR2(2000) := Fnd_Api.g_miss_char
314 ,context VARCHAR2(30) := Fnd_Api.g_miss_char
315 ,attribute1 VARCHAR2(240) := Fnd_Api.g_miss_char
316 ,attribute2 VARCHAR2(240) := Fnd_Api.g_miss_char
317 ,attribute3 VARCHAR2(240) := Fnd_Api.g_miss_char
318 ,attribute4 VARCHAR2(240) := Fnd_Api.g_miss_char
319 ,attribute5 VARCHAR2(240) := Fnd_Api.g_miss_char
320 ,attribute6 VARCHAR2(240) := Fnd_Api.g_miss_char
321 ,attribute7 VARCHAR2(240) := Fnd_Api.g_miss_char
322 ,attribute8 VARCHAR2(240) := Fnd_Api.g_miss_char
323 ,attribute9 VARCHAR2(240) := Fnd_Api.g_miss_char
324 ,attribute10 VARCHAR2(240) := Fnd_Api.g_miss_char
325 ,attribute11 VARCHAR2(240) := Fnd_Api.g_miss_char
326 ,attribute12 VARCHAR2(240) := Fnd_Api.g_miss_char
327 ,attribute13 VARCHAR2(240) := Fnd_Api.g_miss_char
328 ,attribute14 VARCHAR2(240) := Fnd_Api.g_miss_char
329 ,attribute15 VARCHAR2(240) := Fnd_Api.g_miss_char
330 ,max_qty_per_order NUMBER := Fnd_Api.g_miss_num
331 ,max_qty_per_order_id NUMBER := Fnd_Api.g_miss_num
332 ,max_qty_per_customer NUMBER := Fnd_Api.g_miss_num
333 ,max_qty_per_customer_id NUMBER := Fnd_Api.g_miss_num
334 ,max_qty_per_rule NUMBER := Fnd_Api.g_miss_num
335 ,max_qty_per_rule_id NUMBER := Fnd_Api.g_miss_num
336 ,max_orders_per_customer NUMBER := Fnd_Api.g_miss_num
337 ,max_orders_per_customer_id NUMBER := Fnd_Api.g_miss_num
338 ,max_amount_per_rule NUMBER := Fnd_Api.g_miss_num
339 ,max_amount_per_rule_id NUMBER := Fnd_Api.g_miss_num
340 ,estimate_qty_uom VARCHAR2(3) := Fnd_Api.g_miss_char
341 ,generate_using_formula_id NUMBER := FND_API.G_MISS_NUM
342 ,price_by_formula_id NUMBER := FND_API.G_MISS_NUM
343 ,generate_using_formula VARCHAR2(240) := FND_API.G_MISS_CHAR
344 ,price_by_formula VARCHAR2(240) := FND_API.G_MISS_CHAR
345 ,list_line_no VARCHAR2(30) := Fnd_Api.g_miss_char
346 );
347 TYPE modifier_line_tbl_type IS TABLE OF MODIFIER_LINE_REC_TYPE INDEX BY BINARY_INTEGER;
348
349 TYPE qualifiers_Rec_Type IS RECORD
350 (
351 qualifier_context VARCHAR2(30) := Fnd_Api.g_miss_char
352 ,qualifier_attribute VARCHAR2(30) := Fnd_Api.g_miss_char
353 ,qualifier_attr_value VARCHAR2(240) := Fnd_Api.g_miss_char
354 ,qualifier_attr_value_to VARCHAR2(240) := Fnd_Api.g_miss_char
355 ,comparison_operator_code VARCHAR2(30) := Fnd_Api.g_miss_char
356 ,qualifier_grouping_no NUMBER := Fnd_Api.g_miss_num
357 ,list_line_id NUMBER := Fnd_Api.g_miss_num
358 ,list_header_id NUMBER := Fnd_Api.g_miss_num
359 ,qualifier_id NUMBER := Fnd_Api.g_miss_num
360 ,start_date_active DATE := Fnd_Api.g_miss_date
361 ,end_date_active DATE := Fnd_Api.g_miss_date
362 ,activity_market_segment_id NUMBER := Fnd_Api.g_miss_num
363 ,operation VARCHAR2(30) := Fnd_Api.g_miss_char
364 ,context VARCHAR2(30) := Fnd_Api.g_miss_char
365 ,attribute1 VARCHAR2(240) := Fnd_Api.g_miss_char
369 ,attribute5 VARCHAR2(240) := Fnd_Api.g_miss_char
366 ,attribute2 VARCHAR2(240) := Fnd_Api.g_miss_char
367 ,attribute3 VARCHAR2(240) := Fnd_Api.g_miss_char
368 ,attribute4 VARCHAR2(240) := Fnd_Api.g_miss_char
370 ,attribute6 VARCHAR2(240) := Fnd_Api.g_miss_char
371 ,attribute7 VARCHAR2(240) := Fnd_Api.g_miss_char
372 ,attribute8 VARCHAR2(240) := Fnd_Api.g_miss_char
373 ,attribute9 VARCHAR2(240) := Fnd_Api.g_miss_char
374 ,attribute10 VARCHAR2(240) := Fnd_Api.g_miss_char
375 ,attribute11 VARCHAR2(240) := Fnd_Api.g_miss_char
376 ,attribute12 VARCHAR2(240) := Fnd_Api.g_miss_char
377 ,attribute13 VARCHAR2(240) := Fnd_Api.g_miss_char
378 ,attribute14 VARCHAR2(240) := Fnd_Api.g_miss_char
379 ,attribute15 VARCHAR2(240) := Fnd_Api.g_miss_char
380 );
381 TYPE qualifiers_tbl_type IS TABLE OF qualifiers_rec_type INDEX BY BINARY_INTEGER;
382
383 TYPE vo_disc_rec_type IS RECORD
384 (
385 offer_discount_line_id NUMBER
389 ,volume_operator VARCHAR2(30)
386 ,parent_discount_line_id NUMBER
387 ,volume_from NUMBER
388 ,volume_to NUMBER
390 ,volume_type VARCHAR2(30)
391 ,volume_break_type VARCHAR2(30)
392 ,discount NUMBER
393 ,discount_type VARCHAR2(30)
394 ,tier_type VARCHAR2(30)
395 ,tier_level VARCHAR2(30)
396 ,uom_code VARCHAR2(30)
397 ,object_version_number NUMBER
398 ,offer_id NUMBER
399 ,discount_by_code VARCHAR2(30)
400 ,formula_id NUMBER
401 ,offr_disc_struct_name_id NUMBER
402 ,name VARCHAR2(240)
403 ,description VARCHAR2(2000)
404 ,operation VARCHAR2(30)
405 ,pbh_index NUMBER
406 );
407 TYPE vo_disc_tbl_type IS TABLE OF vo_disc_rec_type INDEX BY BINARY_INTEGER;
408
409 TYPE vo_prod_rec_type IS RECORD
410 (
411 off_discount_product_id NUMBER
412 ,excluder_flag VARCHAR2(1)
413 ,offer_discount_line_id NUMBER
414 ,offer_id NUMBER
415 ,object_version_number NUMBER
416 ,product_context VARCHAR2(30)
417 ,product_attribute VARCHAR2(30)
418 ,product_attr_value VARCHAR2(240)
419 ,apply_discount_flag VARCHAR2(1)
420 ,include_volume_flag VARCHAR2(1)
421 ,operation VARCHAR2(30)
422 ,pbh_index NUMBER
423 );
424 TYPE vo_prod_tbl_type IS TABLE OF vo_prod_rec_type INDEX BY BINARY_INTEGER;
425
426 TYPE vo_mo_rec_type IS RECORD
427 (
428 offer_market_option_id NUMBER
429 ,offer_id NUMBER
430 ,qp_list_header_id NUMBER
431 ,group_number NUMBER
432 ,retroactive_flag VARCHAR2(1)
433 ,beneficiary_party_id NUMBER
434 ,combine_schedule_flag VARCHAR2(1)
435 ,volume_tracking_level_code VARCHAR2(30)
436 ,accrue_to_code VARCHAR2(30)
437 ,precedence NUMBER
438 ,object_version_number NUMBER
439 ,security_group_id NUMBER
440 ,operation VARCHAR2(30)
441 );
442 TYPE vo_mo_tbl_type IS TABLE OF vo_mo_rec_type INDEX BY BINARY_INTEGER;
443
444
445 --//12764004 - TPM Integration ER
446 TYPE list_line_type is RECORD --used for both fund and promotion to return list line Id to create Xref.
447 (
448 list_line_id NUMBER
449 ,list_line_number VARCHAR2(30)
450 );
451
452 TYPE list_line_tbl_type IS TABLE OF list_line_type
453 INDEX BY BINARY_INTEGER;
454
455 /*#
456 * This procedure accepts detailed offer infomation, discrete data, and processes the data by calling private APIs.
457 * @param p_init_msg_list Indicates whether to initialize the message stack.
458 * @param p_api_version Indicates the API version number.
459 * @param p_commit Indicates whether to commit within the program.
460 * @param x_return_status This is the program status.
461 * @param x_msg_count Indicates the number of messages the program returns.
462 * @param x_msg_data Message returned by the program.
463 * @param p_offer_type Determines the offer type.
464 * @param p_modifier_list_rec offer header detail.
465 * @param p_modifier_line_tbl Stores discount rules for Advanced Pricing (QP) offer types. Net Accrual, Scan Data, and Lumpsum offers are not QP offers.
466 * @param p_qualifier_tbl Stores the market eligibility values for QP offer types.
467 * @param p_budget_tbl Stores budget request details related to offers for all offer types.
468 * @param p_act_product_tbl Stores discount rules for Scan Data and Lumpsum offer types.
469 * @param p_discount_tbl Stores discount and product related information for Net Accrual offers(for tier_level='LINE').
470 * @param p_excl_tbl Stores product exclusion detauls for Net Accrual offers(for tier_level='LINE').
471 * @param p_offer_tier_tbl Stores discount tier information for Net Accrual offers(for tier_level='HEADER').
472 * @param p_prod_tbl Stores discount and products related information for Net Accrual offers(for tier_level='HEADER').
473 * @param p_na_qualifier_tbl Stores market eligibility information for Net Accrual offers.
474 * @param x_qp_list_header_id Advanced Pricing list header id of the new offer.
475 * @param x_error_location This parameter is reserved for future use.
476 * @rep:displayname Process Modifiers
477 * @rep:scope public
478 * @rep:lifecycle active
479 * @rep:compatibility S
480 */
481 PROCEDURE process_modifiers(
482 p_init_msg_list IN VARCHAR2
483 ,p_api_version IN NUMBER
484 ,p_commit IN VARCHAR2
485 ,x_return_status OUT NOCOPY VARCHAR2
486 ,x_msg_count OUT NOCOPY NUMBER
487 ,x_msg_data OUT NOCOPY VARCHAR2
488 ,p_offer_type IN VARCHAR2
489 ,p_modifier_list_rec IN modifier_list_rec_type
490 ,p_modifier_line_tbl IN modifier_line_tbl_type
491 ,p_qualifier_tbl IN qualifiers_tbl_type
492 ,p_budget_tbl IN budget_tbl_type
493 ,p_act_product_tbl IN act_product_tbl_type
494 ,p_discount_tbl IN discount_line_tbl_type
495 ,p_excl_tbl IN excl_rec_tbl_type
496 ,p_offer_tier_tbl IN offer_tier_tbl_type
497 ,p_prod_tbl IN prod_rec_tbl_type
498 ,p_na_qualifier_tbl IN na_qualifier_tbl_type
499 ,x_qp_list_header_id OUT NOCOPY NUMBER
500 ,x_error_location OUT NOCOPY NUMBER);
501
502 /*#
503 * This procedure accepts detailed offer infomation, discrete data, and processes the data by calling private APIs.
504 * @param p_init_msg_list Indicates whether to initialize the message stack.
505 * @param p_api_version API version number.
509 * @param x_msg_data Return message by the program
506 * @param p_commit Indicator whether to commit within the program.
507 * @param x_return_status Program status.
508 * @param x_msg_count This number indicates the number of messages the program returned.
510 * @param p_modifier_list_rec offer header detail.
511 * @param p_vo_pbh_tbl Stores discount structure information for volume offer types.
512 * @param p_vo_dis_tbl Stores discount tier information for volume offer types.
513 * @param p_vo_prod_tbl Stores discount product information for volume offer types.
514 * @param p_qualifier_tbl Stores the market eligibility values for volume offer types.
515 * @param p_vo_mo_tbl Stores market option information for volume offer types.
516 * @param p_budget_tbl Stores budget request details related to offers for all offer types.
517 * @param x_qp_list_header_id Advanced Pricing list header id of the new offer.
518 * @param x_error_location Reserved for future use.
519 * @rep:displayname Process VO
520 * @rep:scope public
521 * @rep:lifecycle active
522 * @rep:compatibility S
523 */
524 PROCEDURE process_vo(
525 p_init_msg_list IN VARCHAR2
526 ,p_api_version IN NUMBER
527 ,p_commit IN VARCHAR2
528 ,x_return_status OUT NOCOPY VARCHAR2
529 ,x_msg_count OUT NOCOPY NUMBER
530 ,x_msg_data OUT NOCOPY VARCHAR2
531 ,p_modifier_list_rec IN modifier_list_rec_type
532 ,p_vo_pbh_tbl IN vo_disc_tbl_type
533 ,p_vo_dis_tbl IN vo_disc_tbl_type
534 ,p_vo_prod_tbl IN vo_prod_tbl_type
535 ,p_qualifier_tbl IN qualifiers_tbl_type
536 ,p_vo_mo_tbl IN vo_mo_tbl_type
537 ,p_budget_tbl IN budget_tbl_type
538 ,x_qp_list_header_id OUT NOCOPY NUMBER
539 ,x_error_location OUT NOCOPY NUMBER
540 );
541
542
543 --//12764004 - TPM Integration ER
544 /*#
545 * This procedure processes an offer from adapter.
546 * @param p_api_version Indicates API version number.
547 * @param p_init_msg_list Indicates whether to initialize the message stack.
548 * @param p_commit Indicates whether to commit within the program.
549 * @param p_validation_level Indicates validation level.
550 * @param x_return_status Indicates program status.
551 * @param x_msg_count Provides the number of the messages returned by the program.
552 * @param x_msg_data Messages data.
553 * @param p_source Identifies the adapter.
554 * @param p_modifier_rec modifier record. The following are the parameters in p_modifier_rec,
555 * <br>qp_list_header_id - QP List Header Identifier p_modifier_rec
556 * <br>offer_type - Offer type
557 * <br>offer_code - Offer Code
558 * <br>activity_media_id - Activity Media Identifier
559 * <br>reusable - Reusable
560 * <br>user_status_id - User status Identifier
561 * <br>owner_id - Owner Identifier
562 * <br>status_code - Status Code
563 * <br>modifier_level_code - Modifier Level code
564 * <br>order_value_discount_type - Order Value discount type
565 * <br>lumpsum_amount - Lumpsum Amount
566 * <br>lumpsum_payment_type - Lumpsum Payment type
567 * <br>custom_setup_id - Custom setup Identifier
568 * <br>offer_amount - Offer Amount
569 * <br>budget_amount_tc - Budget Amount in Transaction Currency
570 * <br>budget_amount_fc - Budget Amount in Functional Currency
571 * <br>transaction_currency_code - Transaction Currency code
572 * <br>functional_currency_code - Functional Cureency code
573 * <br>context - Attrbute context
574 * <br>attribute1 to attribute15 - DFF Attribute values from 1 to 15
575 * <br>currency_code - Currency code
576 * <br>start_date_active - Start date active
577 * <br>end_date_active - End date Active
578 * <br>name - Offer name
579 * <br>description - Description
580 * <br>comments - Comments
581 * <br>ask_for_flag - Ask for Flah
582 * <br>budget_source_id - Budget Sourece Identifier
583 * <br>budget_source_type - Budget Source Type
584 * <br>offer_used_by_id - Offer Used by Identifier
585 * <br>offer_used_by - Offer Used bug
586 * <br>ql_qualifier_type - Qualifier type
587 * <br>ql_qualifier_id - Qualifier Identifier
588 * <br>distribution_type - Distribution type
589 * <br>offer_operation - Offer Operation
590 * <br>modifier_operation - Modifier Operation
591 * <br>global_flag - Global flag of offer
592 * <br>orig_org_id - Original Organization Identifier.
593 * @param p_modifier_line_tbl p_modifier_line_tbl Stores discount rules. The following are the parameters in p_modifier_line_tbl;
594 * <br>offer_line_type - Offer line type
595 * <br>operation - Opereation, CREATE/UPDATE
596 * <br>list_line_id - List Line Identifier
597 * <br>list_header_id - List Header Identifier
598 * <br>list_line_type_code - List Line type code
599 * <br>operand - Operand
600 * <br>start_date_active - Start date
601 * <br>end_date_active - End date Active
602 * <br>arithmetic_operator - Arithmatic Operator
603 * <br>active_flag - Active flag
604 * <br>pricing_attribute_id - Pricing Attribute Identifier
605 * <br>product_attribute_context - Product Attribute Context
606 * <br>product_attr - Product Attribute
607 * <br>product_attr_val - Product Attribute Value
608 * <br>product_uom_code - Product UOM Code
609 * <br>pricing_attribute_context - Pricing Attribute Context
610 * <br>qualifier_id - Qualifier Identifier
611 * <br>comments - Comments
612 * <br>attribute1-15 - DFF Attribute values
613 * <br>list_line_no - List line No
614 * @param x_qp_list_header_id Returns the ID of the list header.
615 * @param x_error_location error location
616 * @param x_msg_tbl Messages returned by the program.
617 * @param x_line_tbl Returns the list line of source product.
618 * @rep:scope public
619 * @rep:lifecycle active
620 * @rep:displayname Process offer from adapter
621 * @rep:compatibility S
622 * @rep:businessevent None
623 */
624
625
626 PROCEDURE process_offer_from_adapter(
627 p_api_version IN NUMBER
628 ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
629 ,p_commit IN VARCHAR2 := fnd_api.g_false
630 ,p_validation_level IN NUMBER := fnd_api.G_VALID_LEVEL_FULL
631 ,x_return_status OUT NOCOPY VARCHAR2
632 ,x_msg_count OUT NOCOPY NUMBER
633 ,x_msg_data OUT NOCOPY VARCHAR2
634 ,p_source IN VARCHAR2 := 'SIEBEL'
635 ,p_modifier_rec IN modifier_list_rec_type
636 ,p_modifier_line_tbl IN modifier_line_tbl_type
637 ,x_qp_list_header_id OUT NOCOPY NUMBER
638 ,x_error_location OUT NOCOPY NUMBER
639 ,x_msg_tbl OUT NOCOPY OZF_Utility_PVT.ozf_msg_tbl_type
640 ,x_line_tbl OUT NOCOPY list_line_tbl_type
641 );
642
643 END OZF_Offer_PUB;