DBA Data[Home] [Help]

PACKAGE: APPS.QP_QUALIFIER_RULES_PUB

Source


1 PACKAGE QP_Qualifier_Rules_PUB AUTHID CURRENT_USER AS
2 /* $Header: QPXPQRQS.pls 120.2 2005/08/31 17:50:53 srashmi noship $*/
3 /*#
4  * This package consists of entities to set up qualifiers.
5  *
6  * @rep:scope public
7  * @rep:product QP
8  * @rep:displayname Qualifier Setup
9  * @rep:category BUSINESS_ENTITY QP_PRICE_QUALIFIER
10  */
11 
12 --  Qualifier_Rules record type
13 
14 TYPE Qualifier_Rules_Rec_Type IS RECORD
15 (   attribute1                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
16 ,   attribute10                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
17 ,   attribute11                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
18 ,   attribute12                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
19 ,   attribute13                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
20 ,   attribute14                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
21 ,   attribute15                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
22 ,   attribute2                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
23 ,   attribute3                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
24 ,   attribute4                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
25 ,   attribute5                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
26 ,   attribute6                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
27 ,   attribute7                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
28 ,   attribute8                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
29 ,   attribute9                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
30 ,   context                       VARCHAR2(30)   := FND_API.G_MISS_CHAR
31 ,   created_by                    NUMBER         := FND_API.G_MISS_NUM
32 ,   creation_date                 DATE           := FND_API.G_MISS_DATE
33 ,   description                   VARCHAR2(2000) := FND_API.G_MISS_CHAR
34 ,   last_updated_by               NUMBER         := FND_API.G_MISS_NUM
35 ,   last_update_date              DATE           := FND_API.G_MISS_DATE
36 ,   last_update_login             NUMBER         := FND_API.G_MISS_NUM
37 ,   name                          VARCHAR2(240)  := FND_API.G_MISS_CHAR
38 ,   program_application_id        NUMBER         := FND_API.G_MISS_NUM
39 ,   program_id                    NUMBER         := FND_API.G_MISS_NUM
40 ,   program_update_date           DATE           := FND_API.G_MISS_DATE
41 ,   qualifier_rule_id             NUMBER         := FND_API.G_MISS_NUM
42 ,   request_id                    NUMBER         := FND_API.G_MISS_NUM
43 ,   return_status                 VARCHAR2(1)    := FND_API.G_MISS_CHAR
44 ,   db_flag                       VARCHAR2(1)    := FND_API.G_MISS_CHAR
45 ,   operation                     VARCHAR2(30)   := FND_API.G_MISS_CHAR
46 );
47 
48 TYPE Qualifier_Rules_Tbl_Type IS TABLE OF Qualifier_Rules_Rec_Type
49     INDEX BY BINARY_INTEGER;
50 
51 --  Qualifier_Rules value record type
52 
53 TYPE Qualifier_Rules_Val_Rec_Type IS RECORD
54 (   qualifier_rule                VARCHAR2(240)  := FND_API.G_MISS_CHAR
55 );
56 
57 TYPE Qualifier_Rules_Val_Tbl_Type IS TABLE OF Qualifier_Rules_Val_Rec_Type
58     INDEX BY BINARY_INTEGER;
59 
60 --  Qualifiers record type
61 
62 TYPE Qualifiers_Rec_Type IS RECORD
63 (   attribute1                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
64 ,   attribute10                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
65 ,   attribute11                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
66 ,   attribute12                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
67 ,   attribute13                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
68 ,   attribute14                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
69 ,   attribute15                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
70 ,   attribute2                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
71 ,   attribute3                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
72 ,   attribute4                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
73 ,   attribute5                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
74 ,   attribute6                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
75 ,   attribute7                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
76 ,   attribute8                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
77 ,   attribute9                    VARCHAR2(240)  := FND_API.G_MISS_CHAR
78 ,   comparison_operator_code      VARCHAR2(30)   := FND_API.G_MISS_CHAR
79 ,   context                       VARCHAR2(30)   := FND_API.G_MISS_CHAR
80 ,   created_by                    NUMBER         := FND_API.G_MISS_NUM
81 ,   created_from_rule_id          NUMBER         := FND_API.G_MISS_NUM
82 ,   creation_date                 DATE           := FND_API.G_MISS_DATE
83 ,   end_date_active               DATE           := FND_API.G_MISS_DATE
84 ,   excluder_flag                 VARCHAR2(1)    := FND_API.G_MISS_CHAR
85 ,   last_updated_by               NUMBER         := FND_API.G_MISS_NUM
86 ,   last_update_date              DATE           := FND_API.G_MISS_DATE
87 ,   last_update_login             NUMBER         := FND_API.G_MISS_NUM
88 ,   list_header_id                NUMBER         := FND_API.G_MISS_NUM
89 ,   list_line_id                  NUMBER         := FND_API.G_MISS_NUM
90 ,   program_application_id        NUMBER         := FND_API.G_MISS_NUM
91 ,   program_id                    NUMBER         := FND_API.G_MISS_NUM
92 ,   program_update_date           DATE           := FND_API.G_MISS_DATE
93 ,   qualifier_attribute           VARCHAR2(30)   := FND_API.G_MISS_CHAR
94 ,   qualifier_attr_value          VARCHAR2(240)  := FND_API.G_MISS_CHAR
95 ,   qualifier_attr_value_to       VARCHAR2(240)  := FND_API.G_MISS_CHAR
96 ,   qualifier_context             VARCHAR2(30)   := FND_API.G_MISS_CHAR
97 ,   qualifier_datatype            VARCHAR2(10)   := FND_API.G_MISS_CHAR
98 ,   qualifier_grouping_no         NUMBER         := FND_API.G_MISS_NUM
99 ,   qualifier_id                  NUMBER         := FND_API.G_MISS_NUM
100 ,   qualifier_precedence          NUMBER         := FND_API.G_MISS_NUM
101 ,   qualifier_rule_id             NUMBER         := FND_API.G_MISS_NUM
102 ,   request_id                    NUMBER         := FND_API.G_MISS_NUM
103 ,   start_date_active             DATE           := FND_API.G_MISS_DATE
104 ,   list_type_code			    VARCHAR2(30)   := FND_API.G_MISS_CHAR
105 ,   qual_attr_value_from_number   NUMBER	    := FND_API.G_MISS_NUM
106 ,   qual_attr_value_to_number     NUMBER	    := FND_API.G_MISS_NUM
107 ,   active_flag     		    VARCHAR2(1)    := FND_API.G_MISS_CHAR
108 ,   search_ind				    NUMBER         := FND_API.G_MISS_NUM
109 ,   qualifier_group_cnt		    NUMBER	    := FND_API.G_MISS_NUM
110 ,   header_quals_exist_flag	    VARCHAR2(1)    := FND_API.G_MISS_CHAR
111 ,   distinct_row_count		    NUMBER	    := FND_API.G_MISS_NUM
112 ,   return_status                 VARCHAR2(1)    := FND_API.G_MISS_CHAR
113 ,   db_flag                       VARCHAR2(1)    := FND_API.G_MISS_CHAR
114 ,   operation                     VARCHAR2(30)   := FND_API.G_MISS_CHAR
115 ,   qualify_hier_descendent_flag  VARCHAR2(1)    := FND_API.G_MISS_CHAR -- Added for TCA
116 );
117 
118 TYPE Qualifiers_Tbl_Type IS TABLE OF Qualifiers_Rec_Type
119     INDEX BY BINARY_INTEGER;
120 
121 --  Qualifiers value record type
122 
123 /*TYPE Qualifiers_Val_Rec_Type IS RECORD
124 (   comparison_operator           VARCHAR2(240)  := FND_API.G_MISS_CHAR
125 ,   created_from_rule             VARCHAR2(240)  := FND_API.G_MISS_CHAR
126 ,   excluder                      VARCHAR2(240)  := FND_API.G_MISS_CHAR
127 ,   list_header                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
128 ,   list_line                     VARCHAR2(240)  := FND_API.G_MISS_CHAR
129 ,   qualifier                     VARCHAR2(240)  := FND_API.G_MISS_CHAR
130 ,   qualifier_rule                VARCHAR2(240)  := FND_API.G_MISS_CHAR
131 );*/
132 
133 TYPE Qualifiers_Val_Rec_Type IS RECORD
134 (   created_from_rule             VARCHAR2(240)  := FND_API.G_MISS_CHAR
135 ,   list_header                   VARCHAR2(240)  := FND_API.G_MISS_CHAR
136 ,   list_line                     VARCHAR2(240)  := FND_API.G_MISS_CHAR
137 ,   qualifier_rule                VARCHAR2(240)  := FND_API.G_MISS_CHAR
138 ,   qualifier_attribute_desc      VARCHAR2(240)  := FND_API.G_MISS_CHAR
139 ,   qualifier_attr_value_desc     VARCHAR2(240)  := FND_API.G_MISS_CHAR
140 ,   qualifier_attr_value_to_desc  VARCHAR2(240)  := FND_API.G_MISS_CHAR
141 );
142 
143 TYPE Qualifiers_Val_Tbl_Type IS TABLE OF Qualifiers_Val_Rec_Type
144     INDEX BY BINARY_INTEGER;
145 
146 --  Variables representing missing records and tables
147 
148 G_MISS_QUALIFIER_RULES_REC    Qualifier_Rules_Rec_Type;
149 G_MISS_QUALIFIER_RULES_VAL_REC Qualifier_Rules_Val_Rec_Type;
150 G_MISS_QUALIFIER_RULES_TBL    Qualifier_Rules_Tbl_Type;
151 G_MISS_QUALIFIER_RULES_VAL_TBL Qualifier_Rules_Val_Tbl_Type;
152 G_MISS_QUALIFIERS_REC         Qualifiers_Rec_Type;
153 G_MISS_QUALIFIERS_VAL_REC     Qualifiers_Val_Rec_Type;
154 G_MISS_QUALIFIERS_TBL         Qualifiers_Tbl_Type;
155 G_MISS_QUALIFIERS_VAL_TBL     Qualifiers_Val_Tbl_Type;
156 
157 
158 -- Added on Jan-20-00 for 'delayed request' functionality'.
159 
160 
161 TYPE Request_Rec_Type IS RECORD
162   (
163    -- Object for which the delayed request has been logged.
164    -- Examples could be QP_GLOBAL>G_ENTITY_PRICE_LIST  .
165    Entity_code         Varchar2(30):= NULL,
166 
167    -- Primary key for the object as in entity_code
168    Entity_id          Number := NULL,
169 
170    Entity_index	      Number := NULL,
171    -- Request types as defined in qp_globals
172    request_type       Varchar2(30) := NULL,
173 
174    return_status	VARCHAR2(1)    := FND_API.G_MISS_CHAR,
175 
176    -- Keys to identify a unique request.
177    request_unique_key1	VARCHAR2(30) := NULL,
178    request_unique_key2  VARCHAR2(30) := NULL,
179    request_unique_key3  VARCHAR2(30) := NULL,
180    request_unique_key4  VARCHAR2(30) := NULL,
181    request_unique_key5  VARCHAR2(30) := NULL,
182 
183    -- Parameters (param - param10) for the delayed request
184    param1             Varchar2(2000) := NULL,
185    param2             Varchar2(240) := NULL,
186    param3             Varchar2(240) := NULL,
187    param4             Varchar2(240) := NULL,
188    param5             Varchar2(240) := NULL,
189    param6             Varchar2(240) := NULL,
190    param7             Varchar2(240) := NULL,
191    param8             Varchar2(240) := NULL,
192    param9             Varchar2(240) := NULL,
193    param10            Varchar2(240) := NULL,
194    param11            Varchar2(240) := NULL,
195    param12            Varchar2(240) := NULL,
196    param13            Varchar2(240) := NULL,
197    param14            Varchar2(240) := NULL,
198    param15            Varchar2(240) := NULL,
199    param16            Varchar2(240) := NULL,
200    param17            Varchar2(240) := NULL,
201    param18            Varchar2(240) := NULL,
202    param19            Varchar2(240) := NULL,
203    param20            Varchar2(240) := NULL,
204    param21            Varchar2(240) := NULL,
205    param22            Varchar2(240) := NULL,
206    param23            Varchar2(240) := NULL,
207    param24            Varchar2(240) := NULL,
208    param25            Varchar2(240) := NULL,
209    long_param1        Varchar2(2000) := NULL,
210    date_param1		  DATE := NULL,
211    date_param2		  DATE := NULL,
212    date_param3		  DATE := NULL,
213    date_param4		  DATE := NULL,
214    date_param5		  DATE := NULL,
215    processed		  VARCHAR2(1)	:= 'N'
216 );
217 
218 --  API Request table type.
219 
220 TYPE Request_Tbl_Type IS TABLE OF Request_Rec_Type
221     INDEX BY BINARY_INTEGER;
222 
223 -- Record to store the entity that is logging the request. Is used
224 -- in deleting delayed requests logged by an entity that is being
225 -- cleared or deleted.
226 TYPE Requesting_Entity_Rec_Type IS RECORD
227   (
228    -- Object which is logging the delayed request
229    -- ie MODIFIERS,PRICE_LIST
230    Entity_code         Varchar2(30):= NULL,
231    -- Primary key for the entity e.g. list_line_id
232    Entity_id          Number := NULL,
233    -- Index of the request being logged in the request table
234    request_index	NUMBER := NULL
235 );
236 
237 --  API Requesting entity table type.
238 TYPE Requesting_Entity_Tbl_Type IS TABLE OF Requesting_Entity_Rec_Type
239     INDEX BY BINARY_INTEGER;
240 
241 
242 -- End of additions for 'Delayed Request'
243 
244 
245 
246 
247 
248 
249 
250 
251 
252 
253 --  Start of Comments
254 --  API name    Process_Qualifier_Rules
255 --  Type        Public
256 --  Function
257 --
258 --  Pre-reqs
259 --
260 --  Parameters
261 --
262 --  Version     Current version = 1.0
263 --              Initial version = 1.0
264 --
265 --  Notes
266 --
267 --  End of Comments
268 
269 /*#
270  * Creates, updates, and deletes pricing qualifier rules and pricing qualifiers
271  * belonging to those rules.
272  *
273  * @param p_api_version_number the api version number
274  * @param p_init_msg_list true or false if there is an initial message list
275  * @param p_return_values true or false if there are return values
276  * @param p_commit true or false if the modifier should be committed
277  * @param x_return_status the return status
278  * @param x_msg_count the message count
279  * @param x_msg_data the message data
280  * @param p_QUALIFIER_RULES_rec the input record of the operation that the
281  *        process should perform
282  * @param p_QUALIFIER_RULES_val_rec the input record containing the values of the
283  *        operation that the process should perform
284  * @param p_QUALIFIERS_tbl the input table containing the qualifier definitions
285  * @param p_QUALIFIERS_val_tbl the input table containing the qualifier values
286  * @param x_QUALIFIER_RULES_rec the output record containing the operation
287  * @param x_QUALIFIER_RULES_val_rec the output record containing the operation
288  *        values
289  * @param x_QUALIFIERS_tbl the output table containing the qualifier definitions
290  * @param x_QUALIFIERS_val_tbl the output table containing the qualifier values
291  *
292  * @rep:displayname Process Qualifier Rule
293  */
294 PROCEDURE Process_Qualifier_Rules
295 (   p_api_version_number            IN  NUMBER
296 ,   p_init_msg_list                 IN  VARCHAR2 := FND_API.G_FALSE
297 ,   p_return_values                 IN  VARCHAR2 := FND_API.G_FALSE
298 ,   p_commit                        IN  VARCHAR2 := FND_API.G_FALSE
299 ,   x_return_status                 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
300 ,   x_msg_count                     OUT NOCOPY /* file.sql.39 change */ NUMBER
301 ,   x_msg_data                      OUT NOCOPY /* file.sql.39 change */ VARCHAR2
302 ,   p_QUALIFIER_RULES_rec           IN  Qualifier_Rules_Rec_Type :=
303                                         G_MISS_QUALIFIER_RULES_REC
304 ,   p_QUALIFIER_RULES_val_rec       IN  Qualifier_Rules_Val_Rec_Type :=
305                                         G_MISS_QUALIFIER_RULES_VAL_REC
306 ,   p_QUALIFIERS_tbl                IN  Qualifiers_Tbl_Type :=
307                                         G_MISS_QUALIFIERS_TBL
308 ,   p_QUALIFIERS_val_tbl            IN  Qualifiers_Val_Tbl_Type :=
309                                         G_MISS_QUALIFIERS_VAL_TBL
310 ,   x_QUALIFIER_RULES_rec           OUT NOCOPY /* file.sql.39 change */ Qualifier_Rules_Rec_Type
311 ,   x_QUALIFIER_RULES_val_rec       OUT NOCOPY /* file.sql.39 change */ Qualifier_Rules_Val_Rec_Type
312 ,   x_QUALIFIERS_tbl                OUT NOCOPY /* file.sql.39 change */ Qualifiers_Tbl_Type
313 ,   x_QUALIFIERS_val_tbl            OUT NOCOPY /* file.sql.39 change */ Qualifiers_Val_Tbl_Type
314 );
315 
316 --  Start of Comments
317 --  API name    Lock_Qualifier_Rules
318 --  Type        Public
319 --  Function
320 --
321 --  Pre-reqs
322 --
323 --  Parameters
324 --
325 --  Version     Current version = 1.0
326 --              Initial version = 1.0
327 --
328 --  Notes
329 --
330 --  End of Comments
331 
332 PROCEDURE Lock_Qualifier_Rules
333 (   p_api_version_number            IN  NUMBER
334 ,   p_init_msg_list                 IN  VARCHAR2 := FND_API.G_FALSE
335 ,   p_return_values                 IN  VARCHAR2 := FND_API.G_FALSE
339 ,   p_QUALIFIER_RULES_rec           IN  Qualifier_Rules_Rec_Type :=
336 ,   x_return_status                 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
337 ,   x_msg_count                     OUT NOCOPY /* file.sql.39 change */ NUMBER
338 ,   x_msg_data                      OUT NOCOPY /* file.sql.39 change */ VARCHAR2
340                                         G_MISS_QUALIFIER_RULES_REC
341 ,   p_QUALIFIER_RULES_val_rec       IN  Qualifier_Rules_Val_Rec_Type :=
342                                         G_MISS_QUALIFIER_RULES_VAL_REC
343 ,   p_QUALIFIERS_tbl                IN  Qualifiers_Tbl_Type :=
344                                         G_MISS_QUALIFIERS_TBL
345 ,   p_QUALIFIERS_val_tbl            IN  Qualifiers_Val_Tbl_Type :=
346                                         G_MISS_QUALIFIERS_VAL_TBL
347 ,   x_QUALIFIER_RULES_rec           OUT NOCOPY /* file.sql.39 change */ Qualifier_Rules_Rec_Type
348 ,   x_QUALIFIER_RULES_val_rec       OUT NOCOPY /* file.sql.39 change */ Qualifier_Rules_Val_Rec_Type
349 ,   x_QUALIFIERS_tbl                OUT NOCOPY /* file.sql.39 change */ Qualifiers_Tbl_Type
350 ,   x_QUALIFIERS_val_tbl            OUT NOCOPY /* file.sql.39 change */ Qualifiers_Val_Tbl_Type
351 );
352 
353 --  Start of Comments
354 --  API name    Get_Qualifier_Rules
355 --  Type        Public
356 --  Function
357 --
358 --  Pre-reqs
359 --
360 --  Parameters
361 --
362 --  Version     Current version = 1.0
363 --              Initial version = 1.0
364 --
365 --  Notes
366 --
367 --  End of Comments
368 
369 PROCEDURE Get_Qualifier_Rules
370 (   p_api_version_number            IN  NUMBER
371 ,   p_init_msg_list                 IN  VARCHAR2 := FND_API.G_FALSE
372 ,   p_return_values                 IN  VARCHAR2 := FND_API.G_FALSE
373 ,   x_return_status                 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
374 ,   x_msg_count                     OUT NOCOPY /* file.sql.39 change */ NUMBER
375 ,   x_msg_data                      OUT NOCOPY /* file.sql.39 change */ VARCHAR2
376 ,   p_qualifier_rule_id             IN  NUMBER :=
377                                         FND_API.G_MISS_NUM
378 ,   p_qualifier_rule                IN  VARCHAR2 :=
379                                         FND_API.G_MISS_CHAR
380 ,   x_QUALIFIER_RULES_rec           OUT NOCOPY /* file.sql.39 change */ Qualifier_Rules_Rec_Type
381 ,   x_QUALIFIER_RULES_val_rec       OUT NOCOPY /* file.sql.39 change */ Qualifier_Rules_Val_Rec_Type
382 ,   x_QUALIFIERS_tbl                OUT NOCOPY /* file.sql.39 change */ Qualifiers_Tbl_Type
383 ,   x_QUALIFIERS_val_tbl            OUT NOCOPY /* file.sql.39 change */ Qualifiers_Val_Tbl_Type
384 );
385 
386 
387 PROCEDURE Copy_Qualifier_rule
388 (  p_api_version_number            IN NUMBER
389 ,  p_init_msg_list                 IN VARCHAR2 :=FND_API.G_FALSE
390 ,   p_return_values                 IN  VARCHAR2 := FND_API.G_FALSE
391 ,   p_commit                        IN  VARCHAR2 := FND_API.G_FALSE
392 ,   x_return_status                 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
393 ,   x_msg_count                     OUT NOCOPY /* file.sql.39 change */ NUMBER
394 ,   x_msg_data                      OUT NOCOPY /* file.sql.39 change */ VARCHAR2
395 ,   p_qualifier_rule_id             IN  NUMBER :=
396                                         FND_API.G_MISS_NUM
397 ,   p_qualifier_rule                IN  VARCHAR2 :=
398                                         FND_API.G_MISS_CHAR
399 ,   p_to_qualifier_rule             IN VARCHAR2
400 ,   p_to_description                IN VARCHAR2 :=FND_API.G_MISS_CHAR
401 ,   x_qualifier_rule_id             OUT NOCOPY /* file.sql.39 change */ NUMBER
402 );
403 
404 
405 END QP_Qualifier_Rules_PUB;