1 PACKAGE AMS_Ps_Rule_PVT AUTHID CURRENT_USER AS
2 /* $Header: amsvruls.pls 115.7 2002/11/25 20:48:32 ryedator ship $ */
3 -- ===============================================================
4 -- Start of Comments
5 -- Package name
6 -- AMS_Ps_Rule_PVT
7 -- Purpose
8 --
9 -- History
10 --
11 -- NOTE
12 --
13 -- End of Comments
14 -- ===============================================================
15
16 -- Default number of records fetch per call
17 G_DEFAULT_NUM_REC_FETCH NUMBER := 30;
18
19 --================================================================
20 -- Start of Comments
21 -- -------------------------------------------------------
22 -- Record name
23 -- ps_rules_tuple_rec_type
24 -- -------------------------------------------------------
25 -- Parameters:
26 -- name
27 -- value
28 --
29 -- End of Comments
30 TYPE ps_rules_tuple_rec_type IS RECORD
31 (
32 name VARCHAR2(30) := FND_API.G_MISS_CHAR,
33 value VARCHAR2(30) := FND_API.G_MISS_CHAR
34 );
35
36 g_miss_ps_rules_tuple_rec ps_rules_tuple_rec_type;
37 TYPE ps_rules_tuple_tbl_type IS TABLE OF ps_rules_tuple_rec_type INDEX BY BINARY_INTEGER;
38 g_miss_ps_rules_tuple_tbl ps_rules_tuple_tbl_type;
39
40 --===============================================================
41 -- Start of Comments
42 -- -------------------------------------------------------
43 -- Record name
44 -- ps_rules_rec_type
45 -- -------------------------------------------------------
46 -- Parameters:
47 -- created_by
48 -- creation_date
49 -- last_updated_by
50 -- last_update_date
51 -- last_update_login
52 -- object_version_number
53 -- rule_id
54 -- rulegroup_id
55 -- posting_id
56 -- strategy_id
57 -- bus_priority_code
58 -- bus_priority_disp_order
59 -- filter table
60 -- strategy table
61 -- clausevalue1
62 -- clausevalue2
63 -- clausevalue3
64 -- clausevalue4
65 -- clausevalue5
66 -- clausevalue6
67 -- clausevalue7
68 -- clausevalue8
69 -- clausevalue9
70 -- clausevalue10
71 --
72 -- Required
73 --
74 -- Defaults
75 --
76 -- Note: This is automatic generated record definition, it includes all columns
77 -- defined in the table, developer must manually add or delete some of the attributes.
78 --
79 -- End of Comments
80 --===================================================================
81 TYPE visitor_type_rec IS RECORD
82 (
83 anon BOOLEAN := false,
84 rgoh BOOLEAN := false,
85 rgnoh BOOLEAN := false
86 );
87
88 TYPE ps_rules_rec_type IS RECORD
89 (
90 created_by NUMBER := FND_API.G_MISS_NUM,
91 creation_date DATE := FND_API.G_MISS_DATE,
92 last_updated_by NUMBER := FND_API.G_MISS_NUM,
93 last_update_date DATE := FND_API.G_MISS_DATE,
94 last_update_login NUMBER := FND_API.G_MISS_NUM,
95 object_version_number NUMBER := FND_API.G_MISS_NUM,
96 rule_id NUMBER := FND_API.G_MISS_NUM,
97 rulegroup_id NUMBER := FND_API.G_MISS_NUM,
98 posting_id NUMBER := FND_API.G_MISS_NUM,
99 strategy_id NUMBER := FND_API.G_MISS_NUM,
100 exec_priority NUMBER := FND_API.G_MISS_NUM,
101 bus_priority_code VARCHAR2(30) := FND_API.G_MISS_CHAR,
102 bus_priority_disp_order VARCHAR2(30) := FND_API.G_MISS_CHAR,
103 clausevalue1 VARCHAR2(30) := FND_API.G_MISS_CHAR,
104 clausevalue2 NUMBER := FND_API.G_MISS_NUM,
105 clausevalue3 VARCHAR2(30) := FND_API.G_MISS_CHAR,
106 clausevalue4 VARCHAR2(30) := FND_API.G_MISS_CHAR,
107 clausevalue5 NUMBER := FND_API.G_MISS_NUM,
108 clausevalue6 VARCHAR2(30) := FND_API.G_MISS_CHAR,
109 clausevalue7 VARCHAR2(30) := FND_API.G_MISS_CHAR,
110 clausevalue8 VARCHAR2(30) := FND_API.G_MISS_CHAR,
111 clausevalue9 VARCHAR2(30) := FND_API.G_MISS_CHAR,
112 clausevalue10 VARCHAR2(30) := FND_API.G_MISS_CHAR,
113 use_clause6 VARCHAR2(1) := FND_API.G_MISS_CHAR,
114 use_clause7 VARCHAR2(1) := FND_API.G_MISS_CHAR,
115 use_clause8 VARCHAR2(1) := FND_API.G_MISS_CHAR,
116 use_clause9 VARCHAR2(1) := FND_API.G_MISS_CHAR,
117 use_clause10 VARCHAR2(1) := FND_API.G_MISS_CHAR
118 );
119
120 g_miss_ps_rules_rec ps_rules_rec_type;
121 TYPE ps_rules_tbl_type IS TABLE OF ps_rules_rec_type INDEX BY BINARY_INTEGER;
122 g_miss_ps_rules_tbl ps_rules_tbl_type;
123
124 -- ====================================================================
125 -- Start of Comments
126 -- ====================================================================
127 -- API Name
128 -- Create_Ps_Rule
129 -- Type
130 -- Private
131 -- Pre-Req
132 --
133 -- Parameters
134 --
135 -- IN
136 -- p_api_version_number IN NUMBER Required
137 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
138 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
139 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
140 -- p_ps_rules_rec IN ps_rules_rec_type Required
141 --
142 -- OUT
143 -- x_return_status OUT VARCHAR2
144 -- x_msg_count OUT NUMBER
145 -- x_msg_data OUT VARCHAR2
146 -- Version : Current version 1.0
147 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
148 -- and basic operation, developer must manually add parameters and business logic as necessary.
149 --
150 -- End of Comments
151 -- ===============================================================
152 --
153
154 PROCEDURE Create_Ps_Rule(
155 p_api_version_number IN NUMBER,
156 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
157 p_commit IN VARCHAR2 := FND_API.G_FALSE,
158 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
159
160 x_return_status OUT NOCOPY VARCHAR2,
161 x_msg_count OUT NOCOPY NUMBER,
162 x_msg_data OUT NOCOPY VARCHAR2,
163
164 p_ps_rules_rec IN ps_rules_rec_type := g_miss_ps_rules_rec,
165 p_visitor_rec IN visitor_type_rec := NULL,
166 x_rule_id OUT NOCOPY NUMBER
167 );
168
169 -- ================================================================
170 -- Start of Comments
171 -- ================================================================
172 -- API Name
173 -- Update_Ps_Rule
174 -- Type
175 -- Private
176 -- Pre-Req
177 --
178 -- Parameters
179 --
180 -- IN
181 -- p_api_version_number IN NUMBER Required
182 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
183 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
184 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
185 -- p_ps_rules_rec IN ps_rules_rec_type Required
186 --
187 -- OUT
188 -- x_return_status OUT VARCHAR2
189 -- x_msg_count OUT NUMBER
190 -- x_msg_data OUT VARCHAR2
191 -- Version : Current version 1.0
192 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
193 -- and basic operation, developer must manually add parameters and business logic as necessary.
194 --
195 -- End of Comments
196 -- ==============================================================
197 --
198
199 PROCEDURE Update_Ps_Rule(
200 p_api_version_number IN NUMBER,
201 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
202 p_commit IN VARCHAR2 := FND_API.G_FALSE,
203 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
204
205 x_return_status OUT NOCOPY VARCHAR2,
206 x_msg_count OUT NOCOPY NUMBER,
207 x_msg_data OUT NOCOPY VARCHAR2,
208
209 p_ps_rules_rec IN ps_rules_rec_type,
210 p_visitor_rec IN visitor_type_rec,
211 p_ps_filter_tbl IN ps_rules_tuple_tbl_type,
212 p_ps_strategy_tbl IN ps_rules_tuple_tbl_type,
213 x_object_version_number OUT NOCOPY NUMBER
214 );
215
216
217 PROCEDURE Update_Ps_Rule_Alt(
218 p_api_version_number IN NUMBER,
219 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
220 p_commit IN VARCHAR2 := FND_API.G_FALSE,
221 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
222
223 x_return_status OUT NOCOPY VARCHAR2,
224 x_msg_count OUT NOCOPY NUMBER,
225 x_msg_data OUT NOCOPY VARCHAR2,
226
227 p_ps_rules_rec IN ps_rules_rec_type,
228 p_visitor_rec IN visitor_type_rec,
229 p_ps_filter_tbl IN ps_rules_tuple_tbl_type,
230 p_ps_strategy_tbl IN ps_rules_tuple_tbl_type,
231 p_vistype_change IN BOOLEAN,
232 p_rem_change IN BOOLEAN,
233
234 x_object_version_number OUT NOCOPY NUMBER
235 );
236
237
238 -- ============================================================
239 -- Start of Comments
240 -- ============================================================
241 -- API Name
242 -- Delete_Ps_Rule
243 -- Type
244 -- Private
245 -- Pre-Req
246 --
247 -- Parameters
248 --
249 -- IN
250 -- p_api_version_number IN NUMBER Required
251 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
252 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
253 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
254 -- p_RULE_ID IN NUMBER
255 -- p_object_version_number IN NUMBER Optional Default = NULL
256 --
257 -- OUT
258 -- x_return_status OUT VARCHAR2
259 -- x_msg_count OUT NUMBER
260 -- x_msg_data OUT VARCHAR2
261 -- Version : Current version 1.0
262 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
263 -- and basic operation, developer must manually add parameters and business logic as necessary.
264 --
265 -- End of Comments
266 -- ===========================================================
267 --
268
269 PROCEDURE Delete_Ps_Rule(
270 p_api_version_number IN NUMBER,
271 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
272 p_commit IN VARCHAR2 := FND_API.G_FALSE,
273 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
274 x_return_status OUT NOCOPY VARCHAR2,
275 x_msg_count OUT NOCOPY NUMBER,
276 x_msg_data OUT NOCOPY VARCHAR2,
277 p_rule_id IN NUMBER,
278 p_object_version_number IN NUMBER
279 );
280
281 PROCEDURE Delete_Ps_Rule_Alt(
282 p_api_version_number IN NUMBER,
283 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
284 p_commit IN VARCHAR2 := FND_API.G_FALSE,
285 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
286 x_return_status OUT NOCOPY VARCHAR2,
287 x_msg_count OUT NOCOPY NUMBER,
288 x_msg_data OUT NOCOPY VARCHAR2,
289 p_ps_rules_rec IN ps_rules_rec_type,
290 p_object_version_number IN NUMBER
291 );
292
293 -- ===============================================================
294 -- Start of Comments
295 -- ===============================================================
296 -- API Name
297 -- Lock_Ps_Rule
298 -- Type
299 -- Private
300 -- Pre-Req
301 --
302 -- Parameters
303 --
304 -- IN
305 -- p_api_version_number IN NUMBER Required
306 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
307 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
308 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
309 -- p_ps_rules_rec IN ps_rules_rec_type Required
310 --
311 -- OUT
312 -- x_return_status OUT VARCHAR2
313 -- x_msg_count OUT NUMBER
314 -- x_msg_data OUT VARCHAR2
315 -- Version : Current version 1.0
316 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
317 -- and basic operation, developer must manually add parameters and business logic as necessary.
318 --
319 -- End of Comments
320 -- ===============================================================
321 --
322
323 PROCEDURE Lock_Ps_Rule(
324 p_api_version_number IN NUMBER,
325 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
326
327 x_return_status OUT NOCOPY VARCHAR2,
328 x_msg_count OUT NOCOPY NUMBER,
329 x_msg_data OUT NOCOPY VARCHAR2,
330
331 p_rule_id IN NUMBER,
332 p_object_version IN NUMBER
333 );
334
335
336 -- Start of Comments
337 --
338 -- validation procedures
339 --
340 -- p_validation_mode is a constant defined in AMS_UTILITY_PVT package
341 -- For create: G_CREATE, for update: G_UPDATE
342 -- Note: 1. This is automated generated item level validation procedure.
343 -- The actual validation detail is needed to be added.
344 -- 2. We can also validate table instead of record. There will be an option for user to choose.
345 -- End of Comments
346
347
348 PROCEDURE Validate_ps_rule(
349 p_api_version_number IN NUMBER,
350 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
351 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
352 p_ps_rules_rec IN ps_rules_rec_type,
353 x_return_status OUT NOCOPY VARCHAR2,
354 x_msg_count OUT NOCOPY NUMBER,
355 x_msg_data OUT NOCOPY VARCHAR2
356 );
357
358 -- Start of Comments
359 --
360 -- validation procedures
361 --
362 -- p_validation_mode is a constant defined in AMS_UTILITY_PVT package
363 -- For create: G_CREATE, for update: G_UPDATE
364 -- Note: 1. This is automated generated item level validation procedure.
365 -- The actual validation detail is needed to be added.
366 -- 2. Validate the unique keys, lookups here
367 -- End of Comments
368
369 PROCEDURE Check_ps_rules_Items (
370 P_ps_rules_rec IN ps_rules_rec_type,
371 p_validation_mode IN VARCHAR2,
372 x_return_status OUT NOCOPY VARCHAR2
373 );
374
375
376 -- Start of Comments
377 -- Updates Filter information in ams_iba_ps_filters
378 -- End of Comments
379 PROCEDURE update_filters(
380 p_rulegroup_id IN NUMBER,
381 p_ps_filter_tbl IN ps_rules_tuple_tbl_type,
382 x_return_status OUT NOCOPY VARCHAR2
383 );
384
385
386 -- Start of Comments
387 -- updates strategy parameter information in ams_iba_ps_strat_params
388 -- End of Comments
389 PROCEDURE update_strategy_params(
390 p_rulegroup_id IN NUMBER,
391 p_ps_strategy_tbl IN ps_rules_tuple_tbl_type,
392 x_return_status OUT NOCOPY VARCHAR2
393 );
394
395
396 -- Start of Comments
397 --
398 -- Record level validation procedures
399 --
400 -- p_validation_mode is a constant defined in AMS_UTILITY_PVT package
401 -- For create: G_CREATE, for update: G_UPDATE
402 -- Note: 1. This is automated generated item level validation procedure.
403 -- The actual validation detail is needed to be added.
404 -- 2. Developer can manually added inter-field level validation.
405 -- End of Comments
406
407 PROCEDURE Validate_ps_rules_rec(
408 p_api_version_number IN NUMBER,
409 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
410 x_return_status OUT NOCOPY VARCHAR2,
411 x_msg_count OUT NOCOPY NUMBER,
412 x_msg_data OUT NOCOPY VARCHAR2,
413 p_ps_rules_rec IN ps_rules_rec_type
414 );
415 END AMS_Ps_Rule_PVT;
416