[Home] [Help]
PACKAGE: APPS.AMS_DM_MODEL_PVT
Source
1 PACKAGE AMS_DM_MODEL_PVT AUTHID CURRENT_USER as
2 /* $Header: amsvdmms.pls 115.22 2002/12/09 11:07:09 choang noship $ */
3 -- Start of Comments
4 -- Package name : AMS_DM_MODEL_PVT
5 -- Purpose : PACKAGE SPECIFICATION FOR PRIVATE API
6 -- History : 11/10/00 JIE LI CREATED
7 -- 11/16/00 SVEERAVE@US Commented defaulting of results_flag in dm_model_rec_type record,
8 -- and defaulted with FND_G_MISS_CHAR
9 -- 21-Jan-2001 choang Added target_field, target_type, target_value, use_weights_fla
10 -- to record delcaration.
11 -- 02-Feb-2001 choang Added new columns.
12 -- 16-Feb-2001 choang Replaced top_down_flag with row_selection_type.
13 -- 21-Feb-2001 choang Added validation_mode to validate_rec.
14 -- 26-Feb-2001 choang Added custom_setup_id, country_id and best_subtree.
15 -- 06-Mar-2001 choang Added expire_models for oncurrent processing.
16 -- 08-Mar-2001 choang 1) Added wf_revert. 2) Added wf_itemkey to rec type. 3) Added
17 -- process_build_success. 4) added unexpire_model
18 -- 11-Mar-2001 choang Added handle_preview_request
19 -- 05-Apr-2001 choang Added copy_model
20 -- 11-Apr-2001 choang 1) changed spec of wf_revert 2) added wf_build
21 -- 17-Aug-2001 choang Added custom_setup_id in out param of create api.
22 -- 07-Jan-2002 choang removed security group id
23 -- 24-Apr-2002 choang Added target_id
24 -- 23-Sep-2002 nyostos Added handle_preview_request that takes two parameters only.
25 -- NOTE :
26 -- End of Comments
27
28
29 -- Default number of records fetch per call
30 G_DEFAULT_NUM_REC_FETCH NUMBER := 30;
31 -- *******************************************************
32 -- Start of Comments
33 -- -------------------------------------------------------
34 -- Record name:DM_MODEL_Rec_Type
35 -- -------------------------------------------------------
36 -- Parameters:
37 -- MODEL_ID
38 -- LAST_UPDATE_DATE
39 -- LAST_UPDATED_BY
40 -- CREATION_DATE
41 -- CREATED_BY
42 -- LAST_UPDATE_LOGIN
43 -- ORG_ID
44 -- OBJECT_VERSION_NUMBER
45 -- MODEL_TYPE
46 -- USER_STATUS_ID
47 -- STATUS_CODE
48 -- STATUS_DATE
49 -- OWNER_USER_ID
50 -- LAST_BUILD_DATE
51 -- SCHEDULED_DATE
52 -- SCHEDULED_TIMEZONE_ID
53 -- EXPIRATION_DATE
54 -- RESULTS_FLAG
55 -- LOGS_FLAG
56 -- TARGET_FIELD
57 -- TARGET_TYPE
58 -- TARGET_POSITIVE_VALUE
59 -- TOTAL_RECORDS
60 -- TOTAL_POSITIVES
61 -- MIN_RECORDS
62 -- MAX_RECORDS
63 -- row_selection_type
64 -- EVERY_NTH_ROW
65 -- PCT_RANDOM
66 -- PERFORMANCE
67 -- TARGET_GROUP_TYPE
68 -- DARWIN_MODEL_REF
69 -- model_name
70 -- description
71 -- best_subtree
72 -- custom_setup_id
73 -- country_id
74 -- wf_itemkey
75 -- target_id
76 -- ATTRIBUTE_CATEGORY
77 -- ATTRIBUTE1
78 -- ATTRIBUTE2
79 -- ATTRIBUTE3
80 -- ATTRIBUTE4
81 -- ATTRIBUTE5
82 -- ATTRIBUTE6
83 -- ATTRIBUTE7
84 -- ATTRIBUTE8
85 -- ATTRIBUTE9
86 -- ATTRIBUTE10
87 -- ATTRIBUTE11
88 -- ATTRIBUTE12
89 -- ATTRIBUTE13
90 -- ATTRIBUTE14
91 -- ATTRIBUTE15
92 --
93 -- Required:
94 -- Defaults:
95 -- Note: This is automatic generated record definition, it includes all columns
96 -- defined in the table, developer must manually add or delete some of the attributes.
97 --
98 -- End of Comments
99
100 TYPE DM_MODEL_Rec_Type IS RECORD
101 (
102 MODEL_ID NUMBER := FND_API.G_MISS_NUM,
103 LAST_UPDATE_DATE DATE := FND_API.G_MISS_DATE,
104 LAST_UPDATED_BY NUMBER := FND_API.G_MISS_NUM,
105 CREATION_DATE DATE := FND_API.G_MISS_DATE,
106 CREATED_BY NUMBER := FND_API.G_MISS_NUM,
107 LAST_UPDATE_LOGIN NUMBER := FND_API.G_MISS_NUM,
108 ORG_ID NUMBER := FND_API.G_MISS_NUM,
109 OBJECT_VERSION_NUMBER NUMBER := FND_API.G_MISS_NUM,
110 MODEL_TYPE VARCHAR2(30) := FND_API.G_MISS_CHAR,
111 USER_STATUS_ID NUMBER := FND_API.G_MISS_NUM,
112 STATUS_CODE VARCHAR2(30) := FND_API.G_MISS_CHAR,
113 STATUS_DATE DATE := FND_API.G_MISS_DATE,
114 OWNER_USER_ID NUMBER := FND_API.G_MISS_NUM,
115 LAST_BUILD_DATE DATE := FND_API.G_MISS_DATE,
116 SCHEDULED_DATE DATE := FND_API.G_MISS_DATE,
117 SCHEDULED_TIMEZONE_ID NUMBER := FND_API.G_MISS_NUM,
118 EXPIRATION_DATE DATE := FND_API.G_MISS_DATE,
119 RESULTS_FLAG VARCHAR2(1) := FND_API.G_MISS_CHAR,
120 LOGS_FLAG VARCHAR2(1) := FND_API.G_MISS_CHAR,
121 TARGET_FIELD VARCHAR2(30) := FND_API.G_MISS_CHAR,
122 TARGET_TYPE VARCHAR2(30) := FND_API.G_MISS_CHAR,
123 TARGET_POSITIVE_VALUE VARCHAR2(30) := FND_API.G_MISS_CHAR,
124 TOTAL_RECORDS NUMBER := FND_API.G_MISS_NUM,
125 TOTAL_POSITIVES NUMBER := FND_API.G_MISS_NUM,
126 MIN_RECORDS NUMBER := FND_API.G_MISS_NUM,
127 MAX_RECORDS NUMBER := FND_API.G_MISS_NUM,
128 row_selection_type VARCHAR2(30) := FND_API.G_MISS_CHAR,
129 EVERY_NTH_ROW NUMBER := FND_API.G_MISS_NUM,
130 PCT_RANDOM NUMBER := FND_API.G_MISS_NUM,
131 PERFORMANCE NUMBER := FND_API.G_MISS_NUM,
132 TARGET_GROUP_TYPE VARCHAR2(30) := FND_API.G_MISS_CHAR,
133 DARWIN_MODEL_REF VARCHAR2(4000) := FND_API.G_MISS_CHAR,
134 model_name VARCHAR2(120) := FND_API.G_MISS_CHAR,
135 description VARCHAR2(4000) := FND_API.G_MISS_CHAR,
136 best_subtree NUMBER := FND_API.G_MISS_NUM,
137 custom_setup_id NUMBER := FND_API.G_MISS_NUM,
138 country_id NUMBER := FND_API.G_MISS_NUM,
139 wf_itemkey VARCHAR2(240) := FND_API.G_MISS_CHAR,
140 target_id NUMBER := FND_API.G_MISS_NUM,
141 ATTRIBUTE_CATEGORY VARCHAR2(30) := FND_API.G_MISS_CHAR,
142 ATTRIBUTE1 VARCHAR2(150) := FND_API.G_MISS_CHAR,
143 ATTRIBUTE2 VARCHAR2(150) := FND_API.G_MISS_CHAR,
144 ATTRIBUTE3 VARCHAR2(150) := FND_API.G_MISS_CHAR,
145 ATTRIBUTE4 VARCHAR2(150) := FND_API.G_MISS_CHAR,
146 ATTRIBUTE5 VARCHAR2(150) := FND_API.G_MISS_CHAR,
147 ATTRIBUTE6 VARCHAR2(150) := FND_API.G_MISS_CHAR,
148 ATTRIBUTE7 VARCHAR2(150) := FND_API.G_MISS_CHAR,
149 ATTRIBUTE8 VARCHAR2(150) := FND_API.G_MISS_CHAR,
150 ATTRIBUTE9 VARCHAR2(150) := FND_API.G_MISS_CHAR,
151 ATTRIBUTE10 VARCHAR2(150) := FND_API.G_MISS_CHAR,
152 ATTRIBUTE11 VARCHAR2(150) := FND_API.G_MISS_CHAR,
153 ATTRIBUTE12 VARCHAR2(150) := FND_API.G_MISS_CHAR,
154 ATTRIBUTE13 VARCHAR2(150) := FND_API.G_MISS_CHAR,
155 ATTRIBUTE14 VARCHAR2(150) := FND_API.G_MISS_CHAR,
156 ATTRIBUTE15 VARCHAR2(150) := FND_API.G_MISS_CHAR
157 );
158
159 G_MISS_DM_MODEL_REC DM_MODEL_Rec_Type;
160 TYPE DM_MODEL_Tbl_Type IS TABLE OF DM_MODEL_Rec_Type INDEX BY BINARY_INTEGER;
161 G_MISS_DM_MODEL_TBL DM_MODEL_Tbl_Type;
162
163
164 -- Start of Comments
165 --
166 -- validation procedures
167 --
168 -- p_validation_mode is a constant defined in AMS_UTILITY_PVT package
169 -- For create: G_CREATE, for update: G_UPDATE
170 -- Note: 1. This is automated generated item level validation procedure.
171 -- The actual validation detail is needed to be added.
172 -- 2. Validate the unique keys, lookups here
173 -- End of Comments
174
175 PROCEDURE Check_DM_MODEL_Items (
176 P_DM_MODEL_Rec IN DM_MODEL_Rec_Type,
177 p_validation_mode IN VARCHAR2,
178 x_return_status OUT NOCOPY VARCHAR2
179 );
180 -- *******************************************************
181 -- Start of Comments
182 -- *******************************************************
183 -- API Name: Lock_dm_model
184 -- Type : Private
185 -- Pre-Req :
186 -- Parameters:
187 -- IN
188 -- p_api_version_number IN NUMBER Required
189 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
190 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
191 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
192 -- P_DM_MODEL_Rec IN DM_MODEL_Rec_Type Required
193 --
194 -- OUT:
195 -- x_return_status OUT VARCHAR2
196 -- x_msg_count OUT NUMBER
197 -- x_msg_data OUT VARCHAR2
198 -- Version : Current version 1.0
199 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
200 -- and basic operation, developer must manually add parameters and business logic as necessary.
201 --
202 -- End of Comments
203 --
204 PROCEDURE Lock_dm_model(
205 P_Api_Version_Number IN NUMBER,
206 P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
207
208 X_Return_Status OUT NOCOPY VARCHAR2,
209 X_Msg_Count OUT NOCOPY NUMBER,
210 X_Msg_Data OUT NOCOPY VARCHAR2,
211
212 p_MODEL_ID IN NUMBER,
213 p_object_version IN NUMBER
214 );
215
216 -- *******************************************************
217 -- Start of Comments
218 -- *******************************************************
219 -- API Name: Create_dm_model
220 -- Type : Private
221 -- Pre-Req :
222 -- Parameters:
223 -- IN
224 -- p_api_version_number IN NUMBER Required
225 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
226 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
227 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
228 -- P_DM_MODEL_Rec IN DM_MODEL_Rec_Type Required
229 --
230 -- OUT:
231 -- x_return_status OUT VARCHAR2
232 -- x_msg_count OUT NUMBER
233 -- x_msg_data OUT VARCHAR2
234 -- Version : Current version 1.0
235 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
236 -- and basic operation, developer must manually add parameters and business logic as necessary.
237 --
238 -- End of Comments
239 --
240 PROCEDURE Create_dm_model(
241 P_Api_Version_Number IN NUMBER,
242 P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
243 P_Commit IN VARCHAR2 := FND_API.G_FALSE,
244 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
245
246 X_Return_Status OUT NOCOPY VARCHAR2,
247 X_Msg_Count OUT NOCOPY NUMBER,
248 X_Msg_Data OUT NOCOPY VARCHAR2,
249
250 P_DM_MODEL_Rec IN DM_MODEL_Rec_Type := G_MISS_DM_MODEL_REC,
251 x_custom_setup_id OUT NOCOPY NUMBER,
252 X_MODEL_ID OUT NOCOPY NUMBER
253 );
254
255 -- *******************************************************
256 -- Start of Comments
257 -- *******************************************************
258 -- API Name: Update_dm_model
259 -- Type : Private
260 -- Pre-Req :
261 -- Parameters:
262 -- IN
263 -- p_api_version_number IN NUMBER Required
264 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
265 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
266 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
267 -- P_DM_MODEL_Rec IN DM_MODEL_Rec_Type Required
268 --
269 -- OUT:
270 -- x_return_status OUT VARCHAR2
271 -- x_msg_count OUT NUMBER
272 -- x_msg_data OUT VARCHAR2
273 -- Version : Current version 1.0
274 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
275 -- and basic operation, developer must manually add parameters and business logic as necessary.
276 --
277 -- End of Comments
278 --
279 PROCEDURE Update_dm_model(
280 P_Api_Version_Number IN NUMBER,
281 P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
282 P_Commit IN VARCHAR2 := FND_API.G_FALSE,
283 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
284
285 X_Return_Status OUT NOCOPY VARCHAR2,
286 X_Msg_Count OUT NOCOPY NUMBER,
287 X_Msg_Data OUT NOCOPY VARCHAR2,
288
289 P_DM_MODEL_Rec IN DM_MODEL_Rec_Type,
290 X_Object_Version_Number OUT NOCOPY NUMBER
291 );
292
293 -- *******************************************************
294 -- Start of Comments
295 -- *******************************************************
296 -- API Name: Delete_dm_model
297 -- Type : Private
298 -- Pre-Req :
299 -- Parameters:
300 -- IN
301 -- p_api_version_number IN NUMBER Required
302 -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
303 -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
304 -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
305 -- p_MODEL_ID IN NUMBER
306 -- p_object_version_number IN NUMBER Optional Default = NULL
307 --
308 -- OUT:
309 -- x_return_status OUT VARCHAR2
310 -- x_msg_count OUT NUMBER
311 -- x_msg_data OUT VARCHAR2
312 -- Version : Current version 1.0
313 -- Note: This automatic generated procedure definition, it includes standard IN/OUT parameters
314 -- and basic operation, developer must manually add parameters and business logic as necessary.
315 --
316 -- End of Comments
317 --
318 PROCEDURE Delete_dm_model(
319 P_Api_Version_Number IN NUMBER,
320 P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
321 P_Commit IN VARCHAR2 := FND_API.G_FALSE,
322 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
323 X_Return_Status OUT NOCOPY VARCHAR2,
324 X_Msg_Count OUT NOCOPY NUMBER,
325 X_Msg_Data OUT NOCOPY VARCHAR2,
326 P_MODEL_ID IN NUMBER,
327 P_Object_Version_Number IN NUMBER
328 );
329
330
331 -- Start of Comments
332 --
333 -- Record level validation procedures
334 --
335 -- p_validation_mode is a constant defined in AMS_UTILITY_PVT package
336 -- For create: G_CREATE, for update: G_UPDATE
337 -- Note: 1. This is automated generated item level validation procedure.
338 -- The actual validation detail is needed to be added.
339 -- 2. Developer can manually added inter-field level validation.
340 -- End of Comments
341
342 PROCEDURE Validate_DM_MODEL_rec(
343 P_Api_Version_Number IN NUMBER,
344 P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
345 p_validation_mode IN VARCHAR2 := FND_API.G_FALSE,
346 X_Return_Status OUT NOCOPY VARCHAR2,
347 X_Msg_Count OUT NOCOPY NUMBER,
348 X_Msg_Data OUT NOCOPY VARCHAR2,
349 P_DM_MODEL_Rec IN DM_MODEL_Rec_Type
350 );
351
352 -- Start of Comments
353 --
354 -- validation procedures
355 --
356 -- p_validation_mode is a constant defined in AMS_UTILITY_PVT package
357 -- For create: G_CREATE, for update: G_UPDATE
358 -- Note: 1. This is automated generated item level validation procedure.
359 -- The actual validation detail is needed to be added.
360 -- 2. We can also validate table instead of record. There will be an option for user to choose.
361 -- End of Comments
362
363 PROCEDURE Validate_dm_model(
364 P_Api_Version_Number IN NUMBER,
365 P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
366 P_Validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
367 P_Validation_mode IN VARCHAR2,
368 P_DM_MODEL_Rec IN DM_MODEL_Rec_Type,
369 X_Return_Status OUT NOCOPY VARCHAR2,
370 X_Msg_Count OUT NOCOPY NUMBER,
371 X_Msg_Data OUT NOCOPY VARCHAR2
372 );
373
374 PROCEDURE Validate_next_status(
375 p_curr_status IN VARCHAR2,
376 p_next_status IN VARCHAR2,
377 p_system_status_type IN VARCHAR2,
378 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
379 x_return_status OUT NOCOPY VARCHAR2,
380 x_msg_count OUT NOCOPY NUMBER,
381 x_msg_data OUT NOCOPY VARCHAR2);
382
383
384 --
385 -- Purpose
386 -- Expires models which have reached the specified
387 -- expiration date.
388 --
389 PROCEDURE expire_models (
390 errbuf OUT NOCOPY VARCHAR2,
391 retcode OUT NOCOPY VARCHAR2
392 );
393
394
395 --
396 -- Purpose
397 -- Reverts status and resets the scheduled date
398 -- if Workflow fails.
399 --
400 PROCEDURE wf_revert (
401 p_model_id IN NUMBER,
402 p_status_code IN VARCHAR2,
403 x_return_status OUT NOCOPY VARCHAR2
404 );
405
406
407 --
408 -- Purpose
409 -- Un-expire the model and make it available for use.
410 --
411 PROCEDURE unexpire_model (
412 p_model_id IN NUMBER,
413 x_return_status OUT NOCOPY VARCHAR2
414 );
415
416
417 --
418 -- Purpose
419 -- Process a success message
420 --
421 PROCEDURE process_build_success (
422 p_model_id IN NUMBER,
423 p_status_code IN VARCHAR2,
424 x_return_status OUT NOCOPY VARCHAR2
425 );
426
427
428 --
429 -- Purpose
430 -- Submit a concurrent request to initiate the preview process
431 --
432 -- Parameters
433 -- p_model_id - ID of the model to preview
434 -- x_request_id - ID of the concurrent request
435 -- x_return_status - standard return status
436 --
437 PROCEDURE handle_preview_request (
438 p_model_id IN NUMBER,
439 x_request_id OUT NOCOPY NUMBER,
440 x_return_status OUT NOCOPY VARCHAR2
441 );
442
443 -- History
444 -- 23-Sep-2002 nyostos Created.
445 -- Overloaded procedure. New implementation in 11.5.9 to start
446 -- the Build/Score/Preview Workflow process to handle Preview instead of
447 -- starting the AMS_DM_PREVIEW concurrent program.
448
449 PROCEDURE handle_preview_request (
450 p_model_id IN NUMBER,
451 x_monitor_url OUT NOCOPY VARCHAR2,
452 x_return_status OUT NOCOPY VARCHAR2
453 );
454
455
456 PROCEDURE copy_model (
457 p_api_version IN NUMBER,
458 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
459 p_commit IN VARCHAR2 := FND_API.G_FALSE,
460 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
461 x_return_status OUT NOCOPY VARCHAR2,
462 x_msg_count OUT NOCOPY NUMBER,
463 x_msg_data OUT NOCOPY VARCHAR2,
464 p_source_object_id IN NUMBER,
465 p_attributes_table IN AMS_CpyUtility_PVT.copy_attributes_table_type,
466 p_copy_columns_table IN AMS_CpyUtility_PVT.copy_columns_table_type,
467 x_new_object_id OUT NOCOPY NUMBER,
468 x_custom_setup_id OUT NOCOPY NUMBER
469 );
470
471
472 PROCEDURE wf_build (
473 p_model_id IN NUMBER,
474 x_return_status OUT NOCOPY VARCHAR2
475 );
476
477 PROCEDURE cancel_build_request (
478 p_model_id IN NUMBER,
479 x_return_status OUT NOCOPY VARCHAR2
480 );
481
482 --
483 -- Purpose
484 -- Procedure to handle data selection changes
485 -- This would INVALIDate a AVAILABLE Model.
486 --
487 -- History
488 -- 14-Oct-2002 nyostos Created.
489 PROCEDURE handle_data_selection_changes(
490 p_model_id IN NUMBER
491 );
492
493 --
494 -- Purpose
495 -- Procedure to handle data source changes
496 -- This would INVALIDate a AVAILABLE Model.
497 --
498 -- History
499 -- 14-Oct-2002 nyostos Created.
500 PROCEDURE handle_data_source_changes(
501 p_datasource_id IN NUMBER
502 );
503
504 --
505 -- Purpose
506 -- To check if Model is using a Seeded data source.
507 --
508 -- History
509 -- 23-Sep-2002 nyostos Created.
510 PROCEDURE seededDataSource(
511 p_model_id IN NUMBER,
512 x_seeded_flag OUT NOCOPY VARCHAR2
513 );
514
515 End AMS_DM_MODEL_PVT;