[Home] [Help]
PACKAGE BODY: APPS.OKC_XPRT_IMPORT_CLAUSES_PVT
Source
1 PACKAGE BODY OKC_XPRT_IMPORT_CLAUSES_PVT AS
2 /* $Header: OKCVXCLAB.pls 120.2 2006/02/17 02:33:48 asingam noship $ */
3
4 ---------------------------------------------------------------------------
5 -- GLOBAL VARIABLES
6 ---------------------------------------------------------------------------
7 G_RUN_ID NUMBER;
8 G_ORGANIZATION_NAME VARCHAR2(240);
9
10 ------------------------------------------------------------------------------
11 -- GLOBAL CONSTANTS
12 ------------------------------------------------------------------------------
13 G_PKG_NAME CONSTANT VARCHAR2(200) := 'OKC_XPRT_IMPORT_CLAUSES_PVT';
14 G_APP_NAME CONSTANT VARCHAR2(3) := OKC_API.G_APP_NAME;
15
16 G_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
17 G_MODULE CONSTANT VARCHAR2(250) := 'okc.plsql.'||g_pkg_name||'.';
18 G_APPLICATION_ID CONSTANT NUMBER :=510; -- OKC Application
19
20 G_FALSE CONSTANT VARCHAR2(1) := FND_API.G_FALSE;
21 G_TRUE CONSTANT VARCHAR2(1) := FND_API.G_TRUE;
22
23 G_RET_STS_SUCCESS CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
24 G_RET_STS_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_ERROR;
25 G_RET_STS_UNEXP_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_UNEXP_ERROR;
26
27 G_UNEXPECTED_ERROR CONSTANT VARCHAR2(200) := 'OKC_UNEXPECTED_ERROR';
28 G_SQLERRM_TOKEN CONSTANT VARCHAR2(200) := 'ERROR_MESSAGE';
29 G_SQLCODE_TOKEN CONSTANT VARCHAR2(200) := 'ERROR_CODE';
30 G_UNABLE_TO_RESERVE_REC CONSTANT VARCHAR2(200) := OKC_API.G_UNABLE_TO_RESERVE_REC;
31
32
33 ------------------------------------------------------------------------------
34 -- Orig_sys_ref
35 ------------------------------------------------------------------------------
36
37 G_CLAUSE_MODEL_OSR CONSTANT VARCHAR2(255) := 'OKC:CLAUSEMODEL:';
38 G_CLAUSE_MODEL_TOPNODE_OSR CONSTANT VARCHAR2(255) := 'OKC:CLAUSEMODELTOPNODE:' ;
39 G_CLAUSE_MODEL_FEATURE_OSR CONSTANT VARCHAR2(255) := 'OKC:CLAUSEMODELFEATURE:' ;
40 G_CLAUSE_MODEL_OPTION_OSR CONSTANT VARCHAR2(255) := 'OKC:CLAUSEMODELOPTION:' ;
41 G_CLAUSE_MODEL_VM_REF_NODE_OSR CONSTANT VARCHAR2(255) := 'OKC:CLAUSEMODEL-VARIABLEMODEL-REFNODE:' ;
42 G_VARIABLE_MODEL_TOPNODE_OSR CONSTANT VARCHAR2(255) := 'OKC:VARIABLEMODELTOPNODE:-99:' ;
43 G_CLAUSE_FOLDER_OSR CONSTANT VARCHAR2(255) := 'OKC:CLAUSEFOLDER:';
44
45 /*
46 ---------------------------------------------------
47 -- PRIVATE Procedures and Functions
48 ---------------------------------------------------
49 */
50 /*====================================================================+
51 Procedure Name : create_clause_model
52 Description : This is a private API that creates the Clause Model
53 Clause Model is created for Org and Intent
54 Parameters:
55 p_intent - Intent of the variable model
56 p_model_id - If model exists then refresh the model
57 p_org_id - Organization Id of the Clause Model
58
59 +====================================================================*/
60
61 PROCEDURE create_clause_model
62 (
63 p_intent IN VARCHAR2,
64 p_model_id IN NUMBER,
65 p_org_id IN NUMBER,
66 x_return_status OUT NOCOPY VARCHAR2,
67 x_msg_data OUT NOCOPY VARCHAR2,
68 x_msg_count OUT NOCOPY NUMBER
69 ) IS
70
71 l_cz_imp_devl_project_rec CZ_IMP_DEVL_PROJECT%ROWTYPE;
72 l_api_name CONSTANT VARCHAR2(30) := 'create_clause_model';
73 l_model_desc CZ_IMP_DEVL_PROJECT.DESC_TEXT%TYPE;
74
75 BEGIN
76
77 -- start debug log
78 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
79 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
80 G_MODULE||l_api_name,
81 '100: Entered '||G_PKG_NAME ||'.'||l_api_name);
82 END IF;
83
84 x_return_status := G_RET_STS_SUCCESS;
85
86 -- Get the Clause Model Name
87 FND_MESSAGE.set_name('OKC','OKC_EXPRT_ART_MODEL_TITLE');
88 FND_MESSAGE.set_token('ORG_NAME',G_ORGANIZATION_NAME);
89 FND_MESSAGE.set_token('INTENT_MEANING',okc_util.decode_lookup('OKC_ARTICLE_INTENT',p_intent));
90 l_model_desc := FND_MESSAGE.get;
91
92
93 -- populate the l_cz_imp_devl_project_rec
94 l_cz_imp_devl_project_rec.DEVL_PROJECT_ID:= NULL;
95 l_cz_imp_devl_project_rec.INTL_TEXT_ID:= NULL;
96 l_cz_imp_devl_project_rec.ORGANIZATION_ID:= p_org_id;
97 l_cz_imp_devl_project_rec.NAME:= G_CLAUSE_MODEL_OSR||p_org_id||':'||p_intent ;
98 l_cz_imp_devl_project_rec.GSL_FILENAME:= NULL;
99 l_cz_imp_devl_project_rec.TOP_ITEM_ID:= 1;
100 l_cz_imp_devl_project_rec.VERSION:= NULL;
101 l_cz_imp_devl_project_rec.EXPLOSION_TYPE:= NULL;
102 l_cz_imp_devl_project_rec.DESC_TEXT:= l_model_desc;
103 l_cz_imp_devl_project_rec.ORIG_SYS_REF:= G_CLAUSE_MODEL_OSR||p_org_id||':'||p_intent ;
104 l_cz_imp_devl_project_rec.CREATION_DATE:= SYSDATE;
105 l_cz_imp_devl_project_rec.LAST_UPDATE_DATE:= SYSDATE;
106 l_cz_imp_devl_project_rec.DELETED_FLAG:= '0'; -- '0' Not deleted
107 l_cz_imp_devl_project_rec.EFF_FROM:= NULL;
108 l_cz_imp_devl_project_rec.EFF_TO:= NULL;
109 l_cz_imp_devl_project_rec.CREATED_BY:= FND_GLOBAL.USER_ID;
110 l_cz_imp_devl_project_rec.LAST_UPDATED_BY:= FND_GLOBAL.USER_ID;
111 l_cz_imp_devl_project_rec.SECURITY_MASK:= NULL;
112 l_cz_imp_devl_project_rec.EFF_MASK:= NULL;
113 l_cz_imp_devl_project_rec.CHECKOUT_USER:= NULL;
114 l_cz_imp_devl_project_rec.RUN_ID:= G_RUN_ID;
115 l_cz_imp_devl_project_rec.REC_STATUS:= NULL;
116 l_cz_imp_devl_project_rec.DISPOSITION:= NULL;
117 l_cz_imp_devl_project_rec.FSK_INTLTEXT_1_1:= NULL;
118 l_cz_imp_devl_project_rec.MODEL_ID:= p_model_id;
119 l_cz_imp_devl_project_rec.PLAN_LEVEL:= 0;
120 l_cz_imp_devl_project_rec.PERSISTENT_PROJECT_ID:= NULL;
121 l_cz_imp_devl_project_rec.MODEL_TYPE:= 'C'; -- non BOM Model
122 l_cz_imp_devl_project_rec.INVENTORY_ITEM_ID:= NULL;
123 l_cz_imp_devl_project_rec.PRODUCT_KEY:= NULL;
124 l_cz_imp_devl_project_rec.LAST_UPDATE_LOGIN:= FND_GLOBAL.LOGIN_ID;
125 l_cz_imp_devl_project_rec.BOM_CAPTION_RULE_ID:= NULL;
126 l_cz_imp_devl_project_rec.NONBOM_CAPTION_RULE_ID:= OKC_XPRT_CZ_INT_PVT.G_CAPTION_RULE_DESC; -- display desc in runtime UIs
127 l_cz_imp_devl_project_rec.SEEDED_FLAG:= '1'; -- '0' unseeded , '1' seeded
128
129 --
130
131 -- insert the Clause Model Record into cz_devl_project
132 INSERT INTO cz_imp_devl_project
133 (
134 DEVL_PROJECT_ID,
135 INTL_TEXT_ID,
136 ORGANIZATION_ID,
137 NAME,
138 GSL_FILENAME,
139 TOP_ITEM_ID,
140 VERSION,
141 EXPLOSION_TYPE,
142 DESC_TEXT,
143 ORIG_SYS_REF,
144 CREATION_DATE,
145 LAST_UPDATE_DATE,
146 DELETED_FLAG,
147 EFF_FROM,
148 EFF_TO,
149 CREATED_BY,
150 LAST_UPDATED_BY,
151 SECURITY_MASK,
152 EFF_MASK,
153 CHECKOUT_USER,
154 RUN_ID,
155 REC_STATUS,
156 DISPOSITION,
157 FSK_INTLTEXT_1_1,
158 MODEL_ID,
159 PLAN_LEVEL,
160 PERSISTENT_PROJECT_ID,
161 MODEL_TYPE,
162 INVENTORY_ITEM_ID,
163 PRODUCT_KEY,
164 LAST_UPDATE_LOGIN,
165 BOM_CAPTION_RULE_ID,
166 NONBOM_CAPTION_RULE_ID,
167 SEEDED_FLAG
168 )
169 VALUES
170 (
171 l_cz_imp_devl_project_rec.DEVL_PROJECT_ID,
172 l_cz_imp_devl_project_rec.INTL_TEXT_ID,
173 l_cz_imp_devl_project_rec.ORGANIZATION_ID,
174 l_cz_imp_devl_project_rec.NAME,
175 l_cz_imp_devl_project_rec.GSL_FILENAME,
176 l_cz_imp_devl_project_rec.TOP_ITEM_ID,
177 l_cz_imp_devl_project_rec.VERSION,
178 l_cz_imp_devl_project_rec.EXPLOSION_TYPE,
179 l_cz_imp_devl_project_rec.DESC_TEXT,
180 l_cz_imp_devl_project_rec.ORIG_SYS_REF,
181 l_cz_imp_devl_project_rec.CREATION_DATE,
182 l_cz_imp_devl_project_rec.LAST_UPDATE_DATE,
183 l_cz_imp_devl_project_rec.DELETED_FLAG,
184 l_cz_imp_devl_project_rec.EFF_FROM,
185 l_cz_imp_devl_project_rec.EFF_TO,
186 l_cz_imp_devl_project_rec.CREATED_BY,
187 l_cz_imp_devl_project_rec.LAST_UPDATED_BY,
188 l_cz_imp_devl_project_rec.SECURITY_MASK,
189 l_cz_imp_devl_project_rec.EFF_MASK,
190 l_cz_imp_devl_project_rec.CHECKOUT_USER,
191 l_cz_imp_devl_project_rec.RUN_ID,
192 l_cz_imp_devl_project_rec.REC_STATUS,
193 l_cz_imp_devl_project_rec.DISPOSITION,
194 l_cz_imp_devl_project_rec.FSK_INTLTEXT_1_1,
195 l_cz_imp_devl_project_rec.MODEL_ID,
196 l_cz_imp_devl_project_rec.PLAN_LEVEL,
197 l_cz_imp_devl_project_rec.PERSISTENT_PROJECT_ID,
198 l_cz_imp_devl_project_rec.MODEL_TYPE,
199 l_cz_imp_devl_project_rec.INVENTORY_ITEM_ID,
200 l_cz_imp_devl_project_rec.PRODUCT_KEY,
201 l_cz_imp_devl_project_rec.LAST_UPDATE_LOGIN,
202 l_cz_imp_devl_project_rec.BOM_CAPTION_RULE_ID,
203 l_cz_imp_devl_project_rec.NONBOM_CAPTION_RULE_ID,
204 l_cz_imp_devl_project_rec.SEEDED_FLAG
205 );
206
207
208 -- Standard call to get message count and if count is 1, get message info.
209 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
210
211 -- end debug log
212 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
213 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
214 G_MODULE||l_api_name,
215 '1000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
216 END IF;
217
218 EXCEPTION
219 WHEN OTHERS THEN
220 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
221 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
222 G_MODULE||l_api_name,
223 '2000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
224 END IF;
225
226 x_return_status := G_RET_STS_UNEXP_ERROR ;
227
228 IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
229 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
230 END IF;
231
232 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
233
234
235 END create_clause_model;
236
237 /*====================================================================+
238 Procedure Name : create_clause_component
239 Description : This is a private API that creates the dummy Clause Component
240 Parameters:
241 p_intent - Intent of the variable model
242 p_org_id - Organization Id of the Clause Model
243
244 +====================================================================*/
245
246 PROCEDURE create_clause_component
247 (
248 p_intent IN VARCHAR2,
249 p_org_id IN NUMBER,
250 x_return_status OUT NOCOPY VARCHAR2,
251 x_msg_data OUT NOCOPY VARCHAR2,
252 x_msg_count OUT NOCOPY NUMBER
253 ) IS
254
255 CURSOR csr_installed_languages IS
256 SELECT L.LANGUAGE_CODE
257 FROM FND_LANGUAGES L
258 WHERE L.INSTALLED_FLAG IN ('I', 'B');
259
260 l_language FND_LANGUAGES.LANGUAGE_CODE%TYPE;
261
262 l_cz_imp_ps_nodes_rec CZ_IMP_PS_NODES%ROWTYPE;
263 l_api_name CONSTANT VARCHAR2(30) := 'create_clause_component';
264 l_model_component_name CZ_IMP_LOCALIZED_TEXTS.LOCALIZED_STR%TYPE;
265
266 BEGIN
267
268 -- start debug log
269 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
270 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
271 G_MODULE||l_api_name,
272 '100: Entered '||G_PKG_NAME ||'.'||l_api_name);
273 END IF;
274
275 x_return_status := G_RET_STS_SUCCESS;
276
277 -- Get the Clause Model Component Name
278 FND_MESSAGE.set_name('OKC','OKC_EXPRT_ART_MODEL_TNOD_TITLE');
279 FND_MESSAGE.set_token('ORG_NAME',G_ORGANIZATION_NAME);
280 FND_MESSAGE.set_token('INTENT_MEANING',okc_util.decode_lookup('OKC_ARTICLE_INTENT',p_intent));
281 l_model_component_name := FND_MESSAGE.get;
282
283
284 -- Put the Name in the description Column of cz_ps_nodes
285
286 OPEN csr_installed_languages;
287 LOOP
288 FETCH csr_installed_languages INTO l_language;
289 EXIT WHEN csr_installed_languages%NOTFOUND;
290
291 -- Insert into cz_imp_localized_text
292
293 INSERT INTO CZ_IMP_LOCALIZED_TEXTS
294 (
295 LAST_UPDATE_LOGIN,
296 LOCALE_ID,
297 LOCALIZED_STR,
298 INTL_TEXT_ID,
299 CREATION_DATE,
300 LAST_UPDATE_DATE,
301 DELETED_FLAG,
302 EFF_FROM,
303 EFF_TO,
304 CREATED_BY,
305 LAST_UPDATED_BY,
306 SECURITY_MASK,
307 EFF_MASK,
308 CHECKOUT_USER,
309 LANGUAGE,
310 ORIG_SYS_REF,
311 SOURCE_LANG,
312 RUN_ID,
313 REC_STATUS,
314 DISPOSITION,
315 MODEL_ID,
316 FSK_DEVLPROJECT_1_1,
317 MESSAGE,
318 SEEDED_FLAG
319 )
320 VALUES
321 (
322 FND_GLOBAL.LOGIN_ID, --LAST_UPDATE_LOGIN
323 NULL, -- LOCALE_ID
324 l_model_component_name, --LOCALIZED_STR
325 NULL, -- INTL_TEXT_ID
326 SYSDATE, -- CREATION_DATE
327 SYSDATE, -- LAST_UPDATE_DATE
328 '0', -- DELETED_FLAG
329 NULL, -- EFF_FROM
330 NULL, -- EFF_TO
331 FND_GLOBAL.USER_ID, -- CREATED_BY
332 FND_GLOBAL.USER_ID, -- LAST_UPDATED_BY
333 NULL, -- SECURITY_MASK
334 NULL, -- EFF_MASK
335 NULL, -- CHECKOUT_USER
336 l_language, --LANGUAGE
337 G_CLAUSE_MODEL_TOPNODE_OSR||p_org_id||':'||p_intent, -- ORIG_SYS_REF
338 USERENV('LANG'), --SOURCE_LANG
339 G_RUN_ID, -- RUN_ID
340 NULL, -- REC_STATUS
341 NULL, -- DISPOSITION
342 NULL, -- MODEL_ID
343 G_CLAUSE_MODEL_OSR||p_org_id||':'||p_intent, -- FSK_DEVLPROJECT_1_1
344 NULL, -- MESSAGE
345 NULL -- SEEDED_FLAG
346 );
347
348 END LOOP; -- for all installed languages
349 CLOSE csr_installed_languages;
350
351
352 -- Populate the cz_imp_ps_nodes record
353
354 l_cz_imp_ps_nodes_rec.PS_NODE_ID:= NULL;
355 l_cz_imp_ps_nodes_rec.DEVL_PROJECT_ID:= NULL;
356 l_cz_imp_ps_nodes_rec.FROM_POPULATOR_ID:= NULL;
357 l_cz_imp_ps_nodes_rec.PROPERTY_BACKPTR:= NULL;
358 l_cz_imp_ps_nodes_rec.ITEM_TYPE_BACKPTR:= NULL;
359 l_cz_imp_ps_nodes_rec.INTL_TEXT_ID:= NULL;
360 l_cz_imp_ps_nodes_rec.SUB_CONS_ID:= NULL;
361 l_cz_imp_ps_nodes_rec.ORGANIZATION_ID:= p_org_id;
362 l_cz_imp_ps_nodes_rec.ITEM_ID:= NULL;
363 l_cz_imp_ps_nodes_rec.EXPLOSION_TYPE:= NULL;
364 l_cz_imp_ps_nodes_rec.NAME:= G_CLAUSE_MODEL_TOPNODE_OSR||p_org_id||':'||p_intent;
365 l_cz_imp_ps_nodes_rec.ORIG_SYS_REF:= G_CLAUSE_MODEL_TOPNODE_OSR||p_org_id||':'||p_intent;
366 l_cz_imp_ps_nodes_rec.RESOURCE_FLAG:= NULL;
367 l_cz_imp_ps_nodes_rec.TOP_ITEM_ID:= 1; -- same value as in cz_imp_devl_projects
368 l_cz_imp_ps_nodes_rec.INITIAL_VALUE:= NULL;
369 l_cz_imp_ps_nodes_rec.PARENT_ID:= NULL;
370 l_cz_imp_ps_nodes_rec.MINIMUM:= 1;
371 l_cz_imp_ps_nodes_rec.MAXIMUM:= 1;
372 l_cz_imp_ps_nodes_rec.PS_NODE_TYPE:= 259; -- Component
373 l_cz_imp_ps_nodes_rec.FEATURE_TYPE:= NULL;
374 l_cz_imp_ps_nodes_rec.PRODUCT_FLAG:= '0';
375 l_cz_imp_ps_nodes_rec.REFERENCE_ID:= NULL;
376 l_cz_imp_ps_nodes_rec.MULTI_CONFIG_FLAG:= NULL;
377 l_cz_imp_ps_nodes_rec.ORDER_SEQ_FLAG:= NULL;
378 l_cz_imp_ps_nodes_rec.SYSTEM_NODE_FLAG:= NULL;
379 l_cz_imp_ps_nodes_rec.TREE_SEQ:= 1;
380 l_cz_imp_ps_nodes_rec.COUNTED_OPTIONS_FLAG:= '0';
381 l_cz_imp_ps_nodes_rec.UI_OMIT:= '0'; -- 0 for Root Node
382 l_cz_imp_ps_nodes_rec.UI_SECTION:= 0;
383 l_cz_imp_ps_nodes_rec.BOM_TREATMENT:= NULL;
384 l_cz_imp_ps_nodes_rec.RUN_ID:= G_RUN_ID;
385 l_cz_imp_ps_nodes_rec.REC_STATUS:= NULL;
386 l_cz_imp_ps_nodes_rec.DISPOSITION:= NULL;
387 l_cz_imp_ps_nodes_rec.DELETED_FLAG := 0;
388 l_cz_imp_ps_nodes_rec.EFF_FROM:= NULL;
389 l_cz_imp_ps_nodes_rec.EFF_TO:= NULL;
390 l_cz_imp_ps_nodes_rec.EFF_MASK:= NULL;
391 l_cz_imp_ps_nodes_rec.USER_STR01:= NULL;
392 l_cz_imp_ps_nodes_rec.USER_STR02:= NULL;
393 l_cz_imp_ps_nodes_rec.USER_STR03:= NULL;
394 l_cz_imp_ps_nodes_rec.USER_STR04:= NULL;
395 l_cz_imp_ps_nodes_rec.USER_NUM01:= NULL;
396 l_cz_imp_ps_nodes_rec.USER_NUM02:= NULL;
397 l_cz_imp_ps_nodes_rec.USER_NUM03:= NULL;
398 l_cz_imp_ps_nodes_rec.USER_NUM04:= NULL;
399 l_cz_imp_ps_nodes_rec.CHECKOUT_USER:= NULL;
400 l_cz_imp_ps_nodes_rec.CREATION_DATE:= SYSDATE;
401 l_cz_imp_ps_nodes_rec.LAST_UPDATE_DATE:= SYSDATE;
402 l_cz_imp_ps_nodes_rec.CREATED_BY:= FND_GLOBAL.USER_ID;
403 l_cz_imp_ps_nodes_rec.LAST_UPDATED_BY:= FND_GLOBAL.USER_ID;
404 l_cz_imp_ps_nodes_rec.SECURITY_MASK:= NULL;
405 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_1:= G_CLAUSE_MODEL_TOPNODE_OSR||p_org_id||':'||p_intent;
406 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_EXT:= NULL;
407 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_1:= NULL;
408 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_EXT:= NULL;
409 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_1:= NULL;
410 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_EXT:= NULL;
411 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_1:= NULL;
412 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_EXT:= NULL;
413 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_1:= G_CLAUSE_MODEL_OSR||p_org_id||':'||p_intent;
414 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_EXT:= NULL;
415 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_ID:= NULL;
416 l_cz_imp_ps_nodes_rec.COMPONENT_CODE:= NULL;
417 l_cz_imp_ps_nodes_rec.PLAN_LEVEL:= 0; --Plan Level for Component:0
418 l_cz_imp_ps_nodes_rec.BOM_ITEM_TYPE:= NULL;
419 l_cz_imp_ps_nodes_rec.SO_ITEM_TYPE_CODE:= NULL;
420 l_cz_imp_ps_nodes_rec.MINIMUM_SELECTED:= NULL;
421 l_cz_imp_ps_nodes_rec.MAXIMUM_SELECTED:= NULL;
422 l_cz_imp_ps_nodes_rec.BOM_REQUIRED:= NULL;
423 l_cz_imp_ps_nodes_rec.MUTUALLY_EXCLUSIVE_OPTIONS:= NULL;
424 l_cz_imp_ps_nodes_rec.OPTIONAL:= NULL;
425 l_cz_imp_ps_nodes_rec.FSK_EXPLNODE_1_1:= NULL;
426 l_cz_imp_ps_nodes_rec.FSK_PSNODE_6_1:= NULL;
427 l_cz_imp_ps_nodes_rec.EFFECTIVE_FROM:= OKC_XPRT_CZ_INT_PVT.G_CZ_EPOCH_BEGIN;
428 l_cz_imp_ps_nodes_rec.EFFECTIVE_UNTIL:= OKC_XPRT_CZ_INT_PVT.G_CZ_EPOCH_END;
429 l_cz_imp_ps_nodes_rec.EFFECTIVE_USAGE_MASK:= NULL;
430 l_cz_imp_ps_nodes_rec.EFFECTIVITY_SET_ID:= NULL;
431 l_cz_imp_ps_nodes_rec.FSK_EFFSET_7_1:= NULL;
432 l_cz_imp_ps_nodes_rec.DECIMAL_QTY_FLAG:= 0; -- 0 for all nodes
433 l_cz_imp_ps_nodes_rec.QUOTEABLE_FLAG:= NULL;
434 l_cz_imp_ps_nodes_rec.PRIMARY_UOM_CODE:= NULL;
435 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_PATH:= NULL; -- Must be NULL
436 l_cz_imp_ps_nodes_rec.BOM_SORT_ORDER:= NULL;
437 l_cz_imp_ps_nodes_rec.IB_TRACKABLE:= NULL;
438 l_cz_imp_ps_nodes_rec.LAST_UPDATE_LOGIN:= FND_GLOBAL.LOGIN_ID;
439 l_cz_imp_ps_nodes_rec.INITIAL_NUM_VALUE:= NULL;
440 l_cz_imp_ps_nodes_rec.SRC_APPLICATION_ID:= G_APPLICATION_ID;
441 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_2:= NULL;
442 l_cz_imp_ps_nodes_rec.INSTANTIABLE_FLAG:= NULL;
443 l_cz_imp_ps_nodes_rec.DISPLAY_IN_SUMMARY_FLAG:= NULL;
444
445 -- insert top node for Clause Model into cz_imp_ps_nodes
446
447 INSERT INTO cz_imp_ps_nodes
448 (
449 PS_NODE_ID,
450 DEVL_PROJECT_ID,
451 FROM_POPULATOR_ID,
452 PROPERTY_BACKPTR,
453 ITEM_TYPE_BACKPTR,
454 INTL_TEXT_ID,
455 SUB_CONS_ID,
456 ORGANIZATION_ID,
457 ITEM_ID,
458 EXPLOSION_TYPE,
459 NAME,
460 ORIG_SYS_REF,
461 RESOURCE_FLAG,
462 TOP_ITEM_ID,
463 INITIAL_VALUE,
464 PARENT_ID,
465 MINIMUM,
466 MAXIMUM,
467 PS_NODE_TYPE,
468 FEATURE_TYPE,
469 PRODUCT_FLAG,
470 REFERENCE_ID,
471 MULTI_CONFIG_FLAG,
472 ORDER_SEQ_FLAG,
473 SYSTEM_NODE_FLAG,
474 TREE_SEQ,
475 COUNTED_OPTIONS_FLAG,
476 UI_OMIT,
477 UI_SECTION,
478 BOM_TREATMENT,
479 RUN_ID,
480 REC_STATUS,
481 DISPOSITION,
482 DELETED_FLAG ,
483 EFF_FROM,
484 EFF_TO,
485 EFF_MASK,
486 USER_STR01,
487 USER_STR02,
488 USER_STR03,
489 USER_STR04,
490 USER_NUM01,
491 USER_NUM02,
492 USER_NUM03,
493 USER_NUM04,
494 CHECKOUT_USER,
495 CREATION_DATE,
496 LAST_UPDATE_DATE,
497 CREATED_BY,
498 LAST_UPDATED_BY,
499 SECURITY_MASK,
500 FSK_INTLTEXT_1_1,
501 FSK_INTLTEXT_1_EXT,
502 FSK_ITEMMASTER_2_1,
503 FSK_ITEMMASTER_2_EXT,
504 FSK_PSNODE_3_1,
505 FSK_PSNODE_3_EXT,
506 FSK_PSNODE_4_1,
507 FSK_PSNODE_4_EXT,
508 FSK_DEVLPROJECT_5_1,
509 FSK_DEVLPROJECT_5_EXT,
510 COMPONENT_SEQUENCE_ID,
511 COMPONENT_CODE,
512 PLAN_LEVEL,
513 BOM_ITEM_TYPE,
514 SO_ITEM_TYPE_CODE,
515 MINIMUM_SELECTED,
516 MAXIMUM_SELECTED,
517 BOM_REQUIRED,
518 MUTUALLY_EXCLUSIVE_OPTIONS,
519 OPTIONAL,
520 FSK_EXPLNODE_1_1,
521 FSK_PSNODE_6_1,
522 EFFECTIVE_FROM,
523 EFFECTIVE_UNTIL,
524 EFFECTIVE_USAGE_MASK,
525 EFFECTIVITY_SET_ID,
526 FSK_EFFSET_7_1,
527 DECIMAL_QTY_FLAG,
528 QUOTEABLE_FLAG,
529 PRIMARY_UOM_CODE,
530 COMPONENT_SEQUENCE_PATH,
531 BOM_SORT_ORDER,
532 IB_TRACKABLE,
533 LAST_UPDATE_LOGIN,
534 INITIAL_NUM_VALUE,
535 SRC_APPLICATION_ID,
536 FSK_ITEMMASTER_2_2,
537 INSTANTIABLE_FLAG,
538 DISPLAY_IN_SUMMARY_FLAG
539 )
540 VALUES
541 (
542 l_cz_imp_ps_nodes_rec.PS_NODE_ID,
543 l_cz_imp_ps_nodes_rec.DEVL_PROJECT_ID,
544 l_cz_imp_ps_nodes_rec.FROM_POPULATOR_ID,
545 l_cz_imp_ps_nodes_rec.PROPERTY_BACKPTR,
546 l_cz_imp_ps_nodes_rec.ITEM_TYPE_BACKPTR,
547 l_cz_imp_ps_nodes_rec.INTL_TEXT_ID,
548 l_cz_imp_ps_nodes_rec.SUB_CONS_ID,
549 l_cz_imp_ps_nodes_rec.ORGANIZATION_ID,
550 l_cz_imp_ps_nodes_rec.ITEM_ID,
551 l_cz_imp_ps_nodes_rec.EXPLOSION_TYPE,
552 l_cz_imp_ps_nodes_rec.NAME,
553 l_cz_imp_ps_nodes_rec.ORIG_SYS_REF,
554 l_cz_imp_ps_nodes_rec.RESOURCE_FLAG,
555 l_cz_imp_ps_nodes_rec.TOP_ITEM_ID,
556 l_cz_imp_ps_nodes_rec.INITIAL_VALUE,
557 l_cz_imp_ps_nodes_rec.PARENT_ID,
558 l_cz_imp_ps_nodes_rec.MINIMUM,
559 l_cz_imp_ps_nodes_rec.MAXIMUM,
560 l_cz_imp_ps_nodes_rec.PS_NODE_TYPE,
561 l_cz_imp_ps_nodes_rec.FEATURE_TYPE,
562 l_cz_imp_ps_nodes_rec.PRODUCT_FLAG,
563 l_cz_imp_ps_nodes_rec.REFERENCE_ID,
564 l_cz_imp_ps_nodes_rec.MULTI_CONFIG_FLAG,
565 l_cz_imp_ps_nodes_rec.ORDER_SEQ_FLAG,
566 l_cz_imp_ps_nodes_rec.SYSTEM_NODE_FLAG,
567 l_cz_imp_ps_nodes_rec.TREE_SEQ,
568 l_cz_imp_ps_nodes_rec.COUNTED_OPTIONS_FLAG,
569 l_cz_imp_ps_nodes_rec.UI_OMIT,
570 l_cz_imp_ps_nodes_rec.UI_SECTION,
571 l_cz_imp_ps_nodes_rec.BOM_TREATMENT,
572 l_cz_imp_ps_nodes_rec.RUN_ID,
573 l_cz_imp_ps_nodes_rec.REC_STATUS,
574 l_cz_imp_ps_nodes_rec.DISPOSITION,
575 l_cz_imp_ps_nodes_rec.DELETED_FLAG ,
576 l_cz_imp_ps_nodes_rec.EFF_FROM,
577 l_cz_imp_ps_nodes_rec.EFF_TO,
578 l_cz_imp_ps_nodes_rec.EFF_MASK,
579 l_cz_imp_ps_nodes_rec.USER_STR01,
580 l_cz_imp_ps_nodes_rec.USER_STR02,
581 l_cz_imp_ps_nodes_rec.USER_STR03,
582 l_cz_imp_ps_nodes_rec.USER_STR04,
583 l_cz_imp_ps_nodes_rec.USER_NUM01,
584 l_cz_imp_ps_nodes_rec.USER_NUM02,
585 l_cz_imp_ps_nodes_rec.USER_NUM03,
586 l_cz_imp_ps_nodes_rec.USER_NUM04,
587 l_cz_imp_ps_nodes_rec.CHECKOUT_USER,
588 l_cz_imp_ps_nodes_rec.CREATION_DATE,
589 l_cz_imp_ps_nodes_rec.LAST_UPDATE_DATE,
590 l_cz_imp_ps_nodes_rec.CREATED_BY,
591 l_cz_imp_ps_nodes_rec.LAST_UPDATED_BY,
592 l_cz_imp_ps_nodes_rec.SECURITY_MASK,
593 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_1,
594 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_EXT,
595 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_1,
596 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_EXT,
597 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_1,
598 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_EXT,
599 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_1,
600 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_EXT,
601 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_1,
602 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_EXT,
603 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_ID,
604 l_cz_imp_ps_nodes_rec.COMPONENT_CODE,
605 l_cz_imp_ps_nodes_rec.PLAN_LEVEL,
606 l_cz_imp_ps_nodes_rec.BOM_ITEM_TYPE,
607 l_cz_imp_ps_nodes_rec.SO_ITEM_TYPE_CODE,
608 l_cz_imp_ps_nodes_rec.MINIMUM_SELECTED,
609 l_cz_imp_ps_nodes_rec.MAXIMUM_SELECTED,
610 l_cz_imp_ps_nodes_rec.BOM_REQUIRED,
611 l_cz_imp_ps_nodes_rec.MUTUALLY_EXCLUSIVE_OPTIONS,
612 l_cz_imp_ps_nodes_rec.OPTIONAL,
613 l_cz_imp_ps_nodes_rec.FSK_EXPLNODE_1_1,
614 l_cz_imp_ps_nodes_rec.FSK_PSNODE_6_1,
615 l_cz_imp_ps_nodes_rec.EFFECTIVE_FROM,
616 l_cz_imp_ps_nodes_rec.EFFECTIVE_UNTIL,
617 l_cz_imp_ps_nodes_rec.EFFECTIVE_USAGE_MASK,
618 l_cz_imp_ps_nodes_rec.EFFECTIVITY_SET_ID,
619 l_cz_imp_ps_nodes_rec.FSK_EFFSET_7_1,
620 l_cz_imp_ps_nodes_rec.DECIMAL_QTY_FLAG,
621 l_cz_imp_ps_nodes_rec.QUOTEABLE_FLAG,
622 l_cz_imp_ps_nodes_rec.PRIMARY_UOM_CODE,
623 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_PATH,
624 l_cz_imp_ps_nodes_rec.BOM_SORT_ORDER,
625 l_cz_imp_ps_nodes_rec.IB_TRACKABLE,
626 l_cz_imp_ps_nodes_rec.LAST_UPDATE_LOGIN,
627 l_cz_imp_ps_nodes_rec.INITIAL_NUM_VALUE,
628 l_cz_imp_ps_nodes_rec.SRC_APPLICATION_ID,
629 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_2,
630 l_cz_imp_ps_nodes_rec.INSTANTIABLE_FLAG,
631 l_cz_imp_ps_nodes_rec.DISPLAY_IN_SUMMARY_FLAG
632 );
633
634
635 -- Standard call to get message count and if count is 1, get message info.
636 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
637
638
639
640 -- end debug log
641 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
642 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
643 G_MODULE||l_api_name,
644 '1000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
645 END IF;
646
647 EXCEPTION
648 WHEN OTHERS THEN
649 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
650 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
651 G_MODULE||l_api_name,
652 '2000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
653 END IF;
654
655 x_return_status := G_RET_STS_UNEXP_ERROR ;
656
657 IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
658 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
659 END IF;
660
661 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
662
663
664 END create_clause_component;
665
666 /*====================================================================+
667 Procedure Name : create_clause_feature
668 Description : This is a private API that creates the dummy Clause feature
669 Parameters:
670 p_intent - Intent of the variable model
671 p_org_id - Organization Id of the Clause Model
672
673 +====================================================================*/
674
675 PROCEDURE create_clause_feature
676 (
677 p_intent IN VARCHAR2,
678 p_org_id IN NUMBER,
679 x_return_status OUT NOCOPY VARCHAR2,
680 x_msg_data OUT NOCOPY VARCHAR2,
681 x_msg_count OUT NOCOPY NUMBER
682 ) IS
683
684 CURSOR csr_installed_languages IS
685 SELECT L.LANGUAGE_CODE
686 FROM FND_LANGUAGES L
687 WHERE L.INSTALLED_FLAG IN ('I', 'B');
688
689 l_language FND_LANGUAGES.LANGUAGE_CODE%TYPE;
690
691 l_cz_imp_ps_nodes_rec CZ_IMP_PS_NODES%ROWTYPE;
692 l_api_name CONSTANT VARCHAR2(30) := 'create_clause_feature';
693 l_model_feature_name CZ_IMP_LOCALIZED_TEXTS.LOCALIZED_STR%TYPE;
694
695 BEGIN
696
697 -- start debug log
698 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
699 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
700 G_MODULE||l_api_name,
701 '100: Entered '||G_PKG_NAME ||'.'||l_api_name);
702 END IF;
703
704 x_return_status := G_RET_STS_SUCCESS;
705
706 -- Get the Clause Model Component Name
707 FND_MESSAGE.set_name('OKC','OKC_EXPRT_ART_FEATURE_TITLE');
708 FND_MESSAGE.set_token('ORG_NAME',G_ORGANIZATION_NAME);
709 FND_MESSAGE.set_token('INTENT_MEANING',okc_util.decode_lookup('OKC_ARTICLE_INTENT',p_intent));
710 l_model_feature_name := FND_MESSAGE.get;
711
712 -- Put the Name in the description Column of cz_ps_nodes
713
714 OPEN csr_installed_languages;
715 LOOP
716 FETCH csr_installed_languages INTO l_language;
717 EXIT WHEN csr_installed_languages%NOTFOUND;
718
719 -- Insert into cz_imp_localized_text
720
721 INSERT INTO CZ_IMP_LOCALIZED_TEXTS
722 (
723 LAST_UPDATE_LOGIN,
724 LOCALE_ID,
725 LOCALIZED_STR,
726 INTL_TEXT_ID,
727 CREATION_DATE,
728 LAST_UPDATE_DATE,
729 DELETED_FLAG,
730 EFF_FROM,
731 EFF_TO,
732 CREATED_BY,
733 LAST_UPDATED_BY,
734 SECURITY_MASK,
735 EFF_MASK,
736 CHECKOUT_USER,
737 LANGUAGE,
738 ORIG_SYS_REF,
739 SOURCE_LANG,
740 RUN_ID,
741 REC_STATUS,
742 DISPOSITION,
743 MODEL_ID,
744 FSK_DEVLPROJECT_1_1,
745 MESSAGE,
746 SEEDED_FLAG
747 )
748 VALUES
749 (
750 FND_GLOBAL.LOGIN_ID, --LAST_UPDATE_LOGIN
751 NULL, -- LOCALE_ID
752 l_model_feature_name, --LOCALIZED_STR
753 NULL, -- INTL_TEXT_ID
754 SYSDATE, -- CREATION_DATE
755 SYSDATE, -- LAST_UPDATE_DATE
756 '0', -- DELETED_FLAG
757 NULL, -- EFF_FROM
758 NULL, -- EFF_TO
759 FND_GLOBAL.USER_ID, -- CREATED_BY
760 FND_GLOBAL.USER_ID, -- LAST_UPDATED_BY
761 NULL, -- SECURITY_MASK
762 NULL, -- EFF_MASK
763 NULL, -- CHECKOUT_USER
764 l_language, --LANGUAGE
765 G_CLAUSE_MODEL_FEATURE_OSR||p_org_id||':'||p_intent, -- ORIG_SYS_REF
766 USERENV('LANG'), --SOURCE_LANG
767 G_RUN_ID, -- RUN_ID
768 NULL, -- REC_STATUS
769 NULL, -- DISPOSITION
770 NULL, -- MODEL_ID
771 G_CLAUSE_MODEL_OSR||p_org_id||':'||p_intent, -- FSK_DEVLPROJECT_1_1
772 NULL, -- MESSAGE
773 NULL -- SEEDED_FLAG
774 );
775
776 END LOOP; -- for all installed languages
777 CLOSE csr_installed_languages;
778
779
780 -- Populate the cz_imp_ps_nodes record
781
782 l_cz_imp_ps_nodes_rec.PS_NODE_ID:= NULL;
783 l_cz_imp_ps_nodes_rec.DEVL_PROJECT_ID:= NULL;
784 l_cz_imp_ps_nodes_rec.FROM_POPULATOR_ID:= NULL;
785 l_cz_imp_ps_nodes_rec.PROPERTY_BACKPTR:= NULL;
786 l_cz_imp_ps_nodes_rec.ITEM_TYPE_BACKPTR:= NULL;
787 l_cz_imp_ps_nodes_rec.INTL_TEXT_ID:= NULL;
788 l_cz_imp_ps_nodes_rec.SUB_CONS_ID:= NULL;
789 l_cz_imp_ps_nodes_rec.ORGANIZATION_ID:= p_org_id;
790 l_cz_imp_ps_nodes_rec.ITEM_ID:= NULL;
791 l_cz_imp_ps_nodes_rec.EXPLOSION_TYPE:= NULL;
792 l_cz_imp_ps_nodes_rec.NAME:= G_CLAUSE_MODEL_FEATURE_OSR||p_org_id||':'||p_intent;
793 l_cz_imp_ps_nodes_rec.ORIG_SYS_REF:= G_CLAUSE_MODEL_FEATURE_OSR||p_org_id||':'||p_intent;
794 l_cz_imp_ps_nodes_rec.RESOURCE_FLAG:= NULL;
795 l_cz_imp_ps_nodes_rec.TOP_ITEM_ID:= 1; -- same value as in cz_imp_devl_projects
796 l_cz_imp_ps_nodes_rec.INITIAL_VALUE:= NULL;
797 l_cz_imp_ps_nodes_rec.PARENT_ID:= NULL;
798 l_cz_imp_ps_nodes_rec.MINIMUM:= 0; -- 0 for feature
799 l_cz_imp_ps_nodes_rec.MAXIMUM:= NULL;
800 l_cz_imp_ps_nodes_rec.PS_NODE_TYPE:= 261; -- feature
801 l_cz_imp_ps_nodes_rec.FEATURE_TYPE:= 0;
802 l_cz_imp_ps_nodes_rec.PRODUCT_FLAG:= NULL;
803 l_cz_imp_ps_nodes_rec.REFERENCE_ID:= NULL;
804 l_cz_imp_ps_nodes_rec.MULTI_CONFIG_FLAG:= NULL;
805 l_cz_imp_ps_nodes_rec.ORDER_SEQ_FLAG:= NULL;
806 l_cz_imp_ps_nodes_rec.SYSTEM_NODE_FLAG:= NULL;
807 l_cz_imp_ps_nodes_rec.TREE_SEQ:= 1;
808 l_cz_imp_ps_nodes_rec.COUNTED_OPTIONS_FLAG:= '0';
809 l_cz_imp_ps_nodes_rec.UI_OMIT:= '1';
810 l_cz_imp_ps_nodes_rec.UI_SECTION:= 0;
811 l_cz_imp_ps_nodes_rec.BOM_TREATMENT:= NULL;
812 l_cz_imp_ps_nodes_rec.RUN_ID:= G_RUN_ID;
813 l_cz_imp_ps_nodes_rec.REC_STATUS:= NULL;
814 l_cz_imp_ps_nodes_rec.DISPOSITION:= NULL;
815 l_cz_imp_ps_nodes_rec.DELETED_FLAG := 0;
816 l_cz_imp_ps_nodes_rec.EFF_FROM:= NULL;
817 l_cz_imp_ps_nodes_rec.EFF_TO:= NULL;
818 l_cz_imp_ps_nodes_rec.EFF_MASK:= NULL;
819 l_cz_imp_ps_nodes_rec.USER_STR01:= NULL;
820 l_cz_imp_ps_nodes_rec.USER_STR02:= NULL;
821 l_cz_imp_ps_nodes_rec.USER_STR03:= NULL;
822 l_cz_imp_ps_nodes_rec.USER_STR04:= NULL;
823 l_cz_imp_ps_nodes_rec.USER_NUM01:= NULL;
824 l_cz_imp_ps_nodes_rec.USER_NUM02:= NULL;
825 l_cz_imp_ps_nodes_rec.USER_NUM03:= NULL;
826 l_cz_imp_ps_nodes_rec.USER_NUM04:= NULL;
827 l_cz_imp_ps_nodes_rec.CHECKOUT_USER:= NULL;
828 l_cz_imp_ps_nodes_rec.CREATION_DATE:= SYSDATE;
829 l_cz_imp_ps_nodes_rec.LAST_UPDATE_DATE:= SYSDATE;
830 l_cz_imp_ps_nodes_rec.CREATED_BY:= FND_GLOBAL.USER_ID;
831 l_cz_imp_ps_nodes_rec.LAST_UPDATED_BY:= FND_GLOBAL.USER_ID;
832 l_cz_imp_ps_nodes_rec.SECURITY_MASK:= NULL;
833 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_1:= G_CLAUSE_MODEL_FEATURE_OSR||p_org_id||':'||p_intent;
834 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_EXT:= NULL;
835 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_1:= NULL;
836 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_EXT:= NULL;
837 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_1:= G_CLAUSE_MODEL_TOPNODE_OSR||p_org_id||':'||p_intent;
838 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_EXT:= NULL;
839 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_1:= NULL;
840 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_EXT:= NULL;
841 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_1:= G_CLAUSE_MODEL_OSR||p_org_id||':'||p_intent;
842 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_EXT:= NULL;
843 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_ID:= NULL;
844 l_cz_imp_ps_nodes_rec.COMPONENT_CODE:= NULL;
845 l_cz_imp_ps_nodes_rec.PLAN_LEVEL:= 1; --Plan Level for feature:1
846 l_cz_imp_ps_nodes_rec.BOM_ITEM_TYPE:= NULL;
847 l_cz_imp_ps_nodes_rec.SO_ITEM_TYPE_CODE:= NULL;
848 l_cz_imp_ps_nodes_rec.MINIMUM_SELECTED:= NULL;
849 l_cz_imp_ps_nodes_rec.MAXIMUM_SELECTED:= NULL;
850 l_cz_imp_ps_nodes_rec.BOM_REQUIRED:= NULL;
851 l_cz_imp_ps_nodes_rec.MUTUALLY_EXCLUSIVE_OPTIONS:= NULL;
852 l_cz_imp_ps_nodes_rec.OPTIONAL:= NULL;
853 l_cz_imp_ps_nodes_rec.FSK_EXPLNODE_1_1:= NULL;
854 l_cz_imp_ps_nodes_rec.FSK_PSNODE_6_1:= NULL;
855 l_cz_imp_ps_nodes_rec.EFFECTIVE_FROM:= OKC_XPRT_CZ_INT_PVT.G_CZ_EPOCH_BEGIN;
856 l_cz_imp_ps_nodes_rec.EFFECTIVE_UNTIL:= OKC_XPRT_CZ_INT_PVT.G_CZ_EPOCH_END;
857 l_cz_imp_ps_nodes_rec.EFFECTIVE_USAGE_MASK:= NULL;
858 l_cz_imp_ps_nodes_rec.EFFECTIVITY_SET_ID:= NULL;
859 l_cz_imp_ps_nodes_rec.FSK_EFFSET_7_1:= NULL;
860 l_cz_imp_ps_nodes_rec.DECIMAL_QTY_FLAG:= 0; -- 0 for all nodes
861 l_cz_imp_ps_nodes_rec.QUOTEABLE_FLAG:= NULL;
862 l_cz_imp_ps_nodes_rec.PRIMARY_UOM_CODE:= NULL;
863 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_PATH:= NULL; -- Must be NULL
864 l_cz_imp_ps_nodes_rec.BOM_SORT_ORDER:= NULL;
865 l_cz_imp_ps_nodes_rec.IB_TRACKABLE:= NULL;
866 l_cz_imp_ps_nodes_rec.LAST_UPDATE_LOGIN:= FND_GLOBAL.LOGIN_ID;
867 l_cz_imp_ps_nodes_rec.INITIAL_NUM_VALUE:= NULL;
868 l_cz_imp_ps_nodes_rec.SRC_APPLICATION_ID:= G_APPLICATION_ID;
869 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_2:= NULL;
870 l_cz_imp_ps_nodes_rec.INSTANTIABLE_FLAG:= NULL;
871 l_cz_imp_ps_nodes_rec.DISPLAY_IN_SUMMARY_FLAG:= NULL;
872
873 -- insert top node for Clause Model into cz_imp_ps_nodes
874
875 INSERT INTO cz_imp_ps_nodes
876 (
877 PS_NODE_ID,
878 DEVL_PROJECT_ID,
879 FROM_POPULATOR_ID,
880 PROPERTY_BACKPTR,
881 ITEM_TYPE_BACKPTR,
882 INTL_TEXT_ID,
883 SUB_CONS_ID,
884 ORGANIZATION_ID,
885 ITEM_ID,
886 EXPLOSION_TYPE,
887 NAME,
888 ORIG_SYS_REF,
889 RESOURCE_FLAG,
890 TOP_ITEM_ID,
891 INITIAL_VALUE,
892 PARENT_ID,
893 MINIMUM,
894 MAXIMUM,
895 PS_NODE_TYPE,
896 FEATURE_TYPE,
897 PRODUCT_FLAG,
898 REFERENCE_ID,
899 MULTI_CONFIG_FLAG,
900 ORDER_SEQ_FLAG,
901 SYSTEM_NODE_FLAG,
902 TREE_SEQ,
903 COUNTED_OPTIONS_FLAG,
904 UI_OMIT,
905 UI_SECTION,
906 BOM_TREATMENT,
907 RUN_ID,
908 REC_STATUS,
909 DISPOSITION,
910 DELETED_FLAG ,
911 EFF_FROM,
912 EFF_TO,
913 EFF_MASK,
914 USER_STR01,
915 USER_STR02,
916 USER_STR03,
917 USER_STR04,
918 USER_NUM01,
919 USER_NUM02,
920 USER_NUM03,
921 USER_NUM04,
922 CHECKOUT_USER,
923 CREATION_DATE,
924 LAST_UPDATE_DATE,
925 CREATED_BY,
926 LAST_UPDATED_BY,
927 SECURITY_MASK,
928 FSK_INTLTEXT_1_1,
929 FSK_INTLTEXT_1_EXT,
930 FSK_ITEMMASTER_2_1,
931 FSK_ITEMMASTER_2_EXT,
932 FSK_PSNODE_3_1,
933 FSK_PSNODE_3_EXT,
934 FSK_PSNODE_4_1,
935 FSK_PSNODE_4_EXT,
936 FSK_DEVLPROJECT_5_1,
937 FSK_DEVLPROJECT_5_EXT,
938 COMPONENT_SEQUENCE_ID,
939 COMPONENT_CODE,
940 PLAN_LEVEL,
941 BOM_ITEM_TYPE,
942 SO_ITEM_TYPE_CODE,
943 MINIMUM_SELECTED,
944 MAXIMUM_SELECTED,
945 BOM_REQUIRED,
946 MUTUALLY_EXCLUSIVE_OPTIONS,
947 OPTIONAL,
948 FSK_EXPLNODE_1_1,
949 FSK_PSNODE_6_1,
950 EFFECTIVE_FROM,
951 EFFECTIVE_UNTIL,
952 EFFECTIVE_USAGE_MASK,
953 EFFECTIVITY_SET_ID,
954 FSK_EFFSET_7_1,
955 DECIMAL_QTY_FLAG,
956 QUOTEABLE_FLAG,
957 PRIMARY_UOM_CODE,
958 COMPONENT_SEQUENCE_PATH,
959 BOM_SORT_ORDER,
960 IB_TRACKABLE,
961 LAST_UPDATE_LOGIN,
962 INITIAL_NUM_VALUE,
963 SRC_APPLICATION_ID,
964 FSK_ITEMMASTER_2_2,
965 INSTANTIABLE_FLAG,
966 DISPLAY_IN_SUMMARY_FLAG
967 )
968 VALUES
969 (
970 l_cz_imp_ps_nodes_rec.PS_NODE_ID,
971 l_cz_imp_ps_nodes_rec.DEVL_PROJECT_ID,
972 l_cz_imp_ps_nodes_rec.FROM_POPULATOR_ID,
973 l_cz_imp_ps_nodes_rec.PROPERTY_BACKPTR,
974 l_cz_imp_ps_nodes_rec.ITEM_TYPE_BACKPTR,
975 l_cz_imp_ps_nodes_rec.INTL_TEXT_ID,
976 l_cz_imp_ps_nodes_rec.SUB_CONS_ID,
977 l_cz_imp_ps_nodes_rec.ORGANIZATION_ID,
978 l_cz_imp_ps_nodes_rec.ITEM_ID,
979 l_cz_imp_ps_nodes_rec.EXPLOSION_TYPE,
980 l_cz_imp_ps_nodes_rec.NAME,
981 l_cz_imp_ps_nodes_rec.ORIG_SYS_REF,
982 l_cz_imp_ps_nodes_rec.RESOURCE_FLAG,
983 l_cz_imp_ps_nodes_rec.TOP_ITEM_ID,
984 l_cz_imp_ps_nodes_rec.INITIAL_VALUE,
985 l_cz_imp_ps_nodes_rec.PARENT_ID,
986 l_cz_imp_ps_nodes_rec.MINIMUM,
987 l_cz_imp_ps_nodes_rec.MAXIMUM,
988 l_cz_imp_ps_nodes_rec.PS_NODE_TYPE,
989 l_cz_imp_ps_nodes_rec.FEATURE_TYPE,
990 l_cz_imp_ps_nodes_rec.PRODUCT_FLAG,
991 l_cz_imp_ps_nodes_rec.REFERENCE_ID,
992 l_cz_imp_ps_nodes_rec.MULTI_CONFIG_FLAG,
993 l_cz_imp_ps_nodes_rec.ORDER_SEQ_FLAG,
994 l_cz_imp_ps_nodes_rec.SYSTEM_NODE_FLAG,
995 l_cz_imp_ps_nodes_rec.TREE_SEQ,
996 l_cz_imp_ps_nodes_rec.COUNTED_OPTIONS_FLAG,
997 l_cz_imp_ps_nodes_rec.UI_OMIT,
998 l_cz_imp_ps_nodes_rec.UI_SECTION,
999 l_cz_imp_ps_nodes_rec.BOM_TREATMENT,
1000 l_cz_imp_ps_nodes_rec.RUN_ID,
1001 l_cz_imp_ps_nodes_rec.REC_STATUS,
1002 l_cz_imp_ps_nodes_rec.DISPOSITION,
1003 l_cz_imp_ps_nodes_rec.DELETED_FLAG ,
1004 l_cz_imp_ps_nodes_rec.EFF_FROM,
1005 l_cz_imp_ps_nodes_rec.EFF_TO,
1006 l_cz_imp_ps_nodes_rec.EFF_MASK,
1007 l_cz_imp_ps_nodes_rec.USER_STR01,
1008 l_cz_imp_ps_nodes_rec.USER_STR02,
1009 l_cz_imp_ps_nodes_rec.USER_STR03,
1010 l_cz_imp_ps_nodes_rec.USER_STR04,
1011 l_cz_imp_ps_nodes_rec.USER_NUM01,
1012 l_cz_imp_ps_nodes_rec.USER_NUM02,
1013 l_cz_imp_ps_nodes_rec.USER_NUM03,
1014 l_cz_imp_ps_nodes_rec.USER_NUM04,
1015 l_cz_imp_ps_nodes_rec.CHECKOUT_USER,
1016 l_cz_imp_ps_nodes_rec.CREATION_DATE,
1017 l_cz_imp_ps_nodes_rec.LAST_UPDATE_DATE,
1018 l_cz_imp_ps_nodes_rec.CREATED_BY,
1019 l_cz_imp_ps_nodes_rec.LAST_UPDATED_BY,
1020 l_cz_imp_ps_nodes_rec.SECURITY_MASK,
1021 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_1,
1022 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_EXT,
1023 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_1,
1024 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_EXT,
1025 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_1,
1026 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_EXT,
1027 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_1,
1028 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_EXT,
1029 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_1,
1030 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_EXT,
1031 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_ID,
1032 l_cz_imp_ps_nodes_rec.COMPONENT_CODE,
1033 l_cz_imp_ps_nodes_rec.PLAN_LEVEL,
1034 l_cz_imp_ps_nodes_rec.BOM_ITEM_TYPE,
1035 l_cz_imp_ps_nodes_rec.SO_ITEM_TYPE_CODE,
1036 l_cz_imp_ps_nodes_rec.MINIMUM_SELECTED,
1037 l_cz_imp_ps_nodes_rec.MAXIMUM_SELECTED,
1038 l_cz_imp_ps_nodes_rec.BOM_REQUIRED,
1039 l_cz_imp_ps_nodes_rec.MUTUALLY_EXCLUSIVE_OPTIONS,
1040 l_cz_imp_ps_nodes_rec.OPTIONAL,
1041 l_cz_imp_ps_nodes_rec.FSK_EXPLNODE_1_1,
1042 l_cz_imp_ps_nodes_rec.FSK_PSNODE_6_1,
1043 l_cz_imp_ps_nodes_rec.EFFECTIVE_FROM,
1044 l_cz_imp_ps_nodes_rec.EFFECTIVE_UNTIL,
1045 l_cz_imp_ps_nodes_rec.EFFECTIVE_USAGE_MASK,
1046 l_cz_imp_ps_nodes_rec.EFFECTIVITY_SET_ID,
1047 l_cz_imp_ps_nodes_rec.FSK_EFFSET_7_1,
1048 l_cz_imp_ps_nodes_rec.DECIMAL_QTY_FLAG,
1049 l_cz_imp_ps_nodes_rec.QUOTEABLE_FLAG,
1050 l_cz_imp_ps_nodes_rec.PRIMARY_UOM_CODE,
1051 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_PATH,
1052 l_cz_imp_ps_nodes_rec.BOM_SORT_ORDER,
1053 l_cz_imp_ps_nodes_rec.IB_TRACKABLE,
1054 l_cz_imp_ps_nodes_rec.LAST_UPDATE_LOGIN,
1055 l_cz_imp_ps_nodes_rec.INITIAL_NUM_VALUE,
1056 l_cz_imp_ps_nodes_rec.SRC_APPLICATION_ID,
1057 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_2,
1058 l_cz_imp_ps_nodes_rec.INSTANTIABLE_FLAG,
1059 l_cz_imp_ps_nodes_rec.DISPLAY_IN_SUMMARY_FLAG
1060 );
1061
1062
1063 -- Standard call to get message count and if count is 1, get message info.
1064 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
1065
1066
1067 -- end debug log
1068 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1069 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
1070 G_MODULE||l_api_name,
1071 '1000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
1072 END IF;
1073
1074 EXCEPTION
1075 WHEN OTHERS THEN
1076 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1077 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
1078 G_MODULE||l_api_name,
1079 '2000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
1080 END IF;
1081
1082 x_return_status := G_RET_STS_UNEXP_ERROR ;
1083
1084 IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
1085 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
1086 END IF;
1087
1088 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
1089
1090
1091 END create_clause_feature;
1092
1093 /*====================================================================+
1094 Procedure Name : create_clause_options
1095 Description : This is a private API that creates the Clause options
1096 All Clauses used in Rules are created as options under the
1097 dummy feature
1098 Parameters:
1099 p_intent - Intent of the variable model
1100 p_org_id - Organization Id of the Clause Model
1101
1102 +====================================================================*/
1103
1104 PROCEDURE create_clause_options
1105 (
1106 p_intent IN VARCHAR2,
1107 p_org_id IN NUMBER,
1108 x_return_status OUT NOCOPY VARCHAR2,
1109 x_msg_data OUT NOCOPY VARCHAR2,
1110 x_msg_count OUT NOCOPY NUMBER
1111 ) IS
1112
1113 CURSOR csr_clause_options IS
1114 SELECT article_id,
1115 article_title,
1116 rownum
1117 FROM
1118 (
1119 -- All DISTINCT Clauses from Conditions
1120 SELECT v.object_value_code article_id,
1121 a.article_title
1122 FROM okc_xprt_rule_cond_vals v,
1123 okc_xprt_rule_conditions c,
1124 okc_xprt_rule_hdrs_all r,
1125 okc_articles_all a
1126 WHERE v.rule_condition_id = c.rule_condition_id
1127 AND c.rule_id = r.rule_id
1128 AND a.article_id = to_number(v.object_value_code) -- Fix for bug 5030078.Removed to_char and added to_number
1129 AND c.object_type = 'CLAUSE'
1130 AND r.org_id = p_org_id
1131 AND r.intent = p_intent
1132 AND r.status_code <> 'DRAFT'
1133 GROUP BY v.object_value_code, a.article_title
1134 UNION
1135 -- All DISTINCT Clauses from Outcome
1136 SELECT to_char(o.object_value_id) article_id,
1137 a.article_title
1138 FROM okc_xprt_rule_outcomes o,
1139 okc_xprt_rule_hdrs_all r,
1140 okc_articles_all a
1141 WHERE o.rule_id = r.rule_id
1142 AND a.article_id = o.object_value_id
1143 AND o.object_type = 'CLAUSE'
1144 AND r.org_id = p_org_id
1145 AND r.intent = p_intent
1146 AND r.status_code <> 'DRAFT'
1147 GROUP BY o.object_value_id, a.article_title
1148 ) ;
1149
1150 -- Since the Clause Title will be stored in description column and
1151 -- clause is not translated, get the list of installed languages
1152 -- and create records in cz_imp_localized_texts table
1153
1154 CURSOR csr_installed_languages IS
1155 SELECT L.LANGUAGE_CODE
1156 FROM FND_LANGUAGES L
1157 WHERE L.INSTALLED_FLAG IN ('I', 'B');
1158
1159
1160 l_api_name CONSTANT VARCHAR2(30) := 'create_clause_options';
1161
1162 TYPE ClauseIdList IS TABLE OF VARCHAR2(450) INDEX BY BINARY_INTEGER;
1163 TYPE ClauseTitleList IS TABLE OF VARCHAR2(450) INDEX BY BINARY_INTEGER;
1164 TYPE SeqNoList IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
1165 TYPE LanguageList IS TABLE OF VARCHAR2(450) INDEX BY BINARY_INTEGER;
1166
1167 ClauseIdList_tbl ClauseIdList;
1168 ClauseTitleList_tbl ClauseTitleList;
1169 SeqNoList_tbl SeqNoList;
1170 l_language FND_LANGUAGES.LANGUAGE_CODE%TYPE;
1171
1172
1173
1174 BEGIN
1175
1176 -- start debug log
1177 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1178 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
1179 G_MODULE||l_api_name,
1180 '100: Entered '||G_PKG_NAME ||'.'||l_api_name);
1181 END IF;
1182
1183 x_return_status := G_RET_STS_SUCCESS;
1184
1185 -- Get the Clause values to be imported as Options Under the Clause feature
1186 OPEN csr_clause_options;
1187 FETCH csr_clause_options BULK COLLECT INTO ClauseIdList_tbl,
1188 ClauseTitleList_tbl,
1189 SeqNoList_tbl;
1190 CLOSE csr_clause_options;
1191
1192
1193 IF ClauseIdList_tbl.COUNT > 0 THEN
1194
1195 OPEN csr_installed_languages;
1196 LOOP
1197 FETCH csr_installed_languages INTO l_language;
1198 EXIT WHEN csr_installed_languages%NOTFOUND;
1199
1200 FORALL i IN ClauseIdList_tbl.FIRST..ClauseIdList_tbl.LAST
1201
1202 -- Insert into cz_imp_localized_text for each installed language
1203
1204 INSERT INTO CZ_IMP_LOCALIZED_TEXTS
1205 (
1206 LAST_UPDATE_LOGIN,
1207 LOCALE_ID,
1208 LOCALIZED_STR,
1209 INTL_TEXT_ID,
1210 CREATION_DATE,
1211 LAST_UPDATE_DATE,
1212 DELETED_FLAG,
1213 EFF_FROM,
1214 EFF_TO,
1215 CREATED_BY,
1216 LAST_UPDATED_BY,
1217 SECURITY_MASK,
1218 EFF_MASK,
1219 CHECKOUT_USER,
1220 LANGUAGE,
1221 ORIG_SYS_REF,
1222 SOURCE_LANG,
1223 RUN_ID,
1224 REC_STATUS,
1225 DISPOSITION,
1226 MODEL_ID,
1227 FSK_DEVLPROJECT_1_1,
1228 MESSAGE,
1229 SEEDED_FLAG
1230 )
1231 VALUES
1232 (
1233 FND_GLOBAL.LOGIN_ID, --LAST_UPDATE_LOGIN
1234 NULL, -- LOCALE_ID
1235 ClauseTitleList_tbl(i), --LOCALIZED_STR
1236 NULL, -- INTL_TEXT_ID
1237 SYSDATE, -- CREATION_DATE
1238 SYSDATE, -- LAST_UPDATE_DATE
1239 '0', -- DELETED_FLAG
1240 NULL, -- EFF_FROM
1241 NULL, -- EFF_TO
1242 FND_GLOBAL.USER_ID, -- CREATED_BY
1243 FND_GLOBAL.USER_ID, -- LAST_UPDATED_BY
1244 NULL, -- SECURITY_MASK
1245 NULL, -- EFF_MASK
1246 NULL, -- CHECKOUT_USER
1247 l_language, --LANGUAGE
1248 G_CLAUSE_MODEL_OPTION_OSR||p_org_id ||':'||p_intent||':'||ClauseIdList_tbl(i),--ORIG_SYS_REF
1249 USERENV('LANG'), --SOURCE_LANG
1250 G_RUN_ID, -- RUN_ID
1251 NULL, -- REC_STATUS
1252 NULL, -- DISPOSITION
1253 NULL, -- MODEL_ID
1254 G_CLAUSE_MODEL_OSR||p_org_id||':'||p_intent , -- FSK_DEVLPROJECT_1_1
1255 NULL, -- MESSAGE
1256 NULL -- SEEDED_FLAG
1257 );
1258
1259 END LOOP; -- for all installed languages
1260 CLOSE csr_installed_languages;
1261
1262
1263 FORALL i IN ClauseIdList_tbl.FIRST..ClauseIdList_tbl.LAST
1264
1265 -- Insert into cz_imp_ps_nodes
1266
1267 INSERT INTO cz_imp_ps_nodes
1268 (
1269 PS_NODE_ID,
1270 DEVL_PROJECT_ID,
1271 FROM_POPULATOR_ID,
1272 PROPERTY_BACKPTR,
1273 ITEM_TYPE_BACKPTR,
1274 INTL_TEXT_ID,
1275 SUB_CONS_ID,
1276 ORGANIZATION_ID,
1277 ITEM_ID,
1278 EXPLOSION_TYPE,
1279 NAME,
1280 ORIG_SYS_REF,
1281 RESOURCE_FLAG,
1282 TOP_ITEM_ID,
1283 INITIAL_VALUE,
1284 PARENT_ID,
1285 MINIMUM,
1286 MAXIMUM,
1287 PS_NODE_TYPE,
1288 FEATURE_TYPE,
1289 PRODUCT_FLAG,
1290 REFERENCE_ID,
1291 MULTI_CONFIG_FLAG,
1292 ORDER_SEQ_FLAG,
1293 SYSTEM_NODE_FLAG,
1294 TREE_SEQ,
1295 COUNTED_OPTIONS_FLAG,
1296 UI_OMIT,
1297 UI_SECTION,
1298 BOM_TREATMENT,
1299 RUN_ID,
1300 REC_STATUS,
1301 DISPOSITION,
1302 DELETED_FLAG ,
1303 EFF_FROM,
1304 EFF_TO,
1305 EFF_MASK,
1306 USER_STR01,
1307 USER_STR02,
1308 USER_STR03,
1309 USER_STR04,
1310 USER_NUM01,
1311 USER_NUM02,
1312 USER_NUM03,
1313 USER_NUM04,
1314 CHECKOUT_USER,
1315 CREATION_DATE,
1316 LAST_UPDATE_DATE,
1317 CREATED_BY,
1318 LAST_UPDATED_BY,
1319 SECURITY_MASK,
1320 FSK_INTLTEXT_1_1,
1321 FSK_INTLTEXT_1_EXT,
1322 FSK_ITEMMASTER_2_1,
1323 FSK_ITEMMASTER_2_EXT,
1324 FSK_PSNODE_3_1,
1325 FSK_PSNODE_3_EXT,
1326 FSK_PSNODE_4_1,
1327 FSK_PSNODE_4_EXT,
1328 FSK_DEVLPROJECT_5_1,
1329 FSK_DEVLPROJECT_5_EXT,
1330 COMPONENT_SEQUENCE_ID,
1331 COMPONENT_CODE,
1332 PLAN_LEVEL,
1333 BOM_ITEM_TYPE,
1334 SO_ITEM_TYPE_CODE,
1335 MINIMUM_SELECTED,
1336 MAXIMUM_SELECTED,
1337 BOM_REQUIRED,
1338 MUTUALLY_EXCLUSIVE_OPTIONS,
1339 OPTIONAL,
1340 FSK_EXPLNODE_1_1,
1341 FSK_PSNODE_6_1,
1342 EFFECTIVE_FROM,
1343 EFFECTIVE_UNTIL,
1344 EFFECTIVE_USAGE_MASK,
1345 EFFECTIVITY_SET_ID,
1346 FSK_EFFSET_7_1,
1347 DECIMAL_QTY_FLAG,
1348 QUOTEABLE_FLAG,
1349 PRIMARY_UOM_CODE,
1350 COMPONENT_SEQUENCE_PATH,
1351 BOM_SORT_ORDER,
1352 IB_TRACKABLE,
1353 LAST_UPDATE_LOGIN,
1354 INITIAL_NUM_VALUE,
1355 SRC_APPLICATION_ID,
1356 FSK_ITEMMASTER_2_2,
1357 INSTANTIABLE_FLAG,
1358 DISPLAY_IN_SUMMARY_FLAG
1359 )
1360 VALUES
1361 (
1362 NULL, --PS_NODE_ID,
1363 NULL, --DEVL_PROJECT_ID,
1364 NULL, --FROM_POPULATOR_ID,
1365 NULL, --PROPERTY_BACKPTR,
1366 NULL, --ITEM_TYPE_BACKPTR,
1367 NULL, --INTL_TEXT_ID,
1368 NULL, --SUB_CONS_ID,
1369 p_org_id, --ORGANIZATION_ID
1370 NULL, --ITEM_ID
1371 NULL, --EXPLOSION_TYPE,
1372 ClauseIdList_tbl(i), --NAME
1373 G_CLAUSE_MODEL_OPTION_OSR||p_org_id ||':'||p_intent||':'||ClauseIdList_tbl(i), --ORIG_SYS_REF
1374 NULL, --RESOURCE_FLAG
1375 1, --TOP_ITEM_ID -- same value as in cz_imp_devl_projects
1376 NULL, --INITIAL_VALUE
1377 NULL, --PARENT_ID
1378 1, --MINIMUM
1379 1, --MAXIMUM
1380 262, --PS_NODE_TYPE 262:Option
1381 NULL, --FEATURE_TYPE
1382 NULL, --PRODUCT_FLAG,
1383 NULL, --REFERENCE_ID,
1384 NULL, --MULTI_CONFIG_FLAG,
1385 NULL, --ORDER_SEQ_FLAG,
1386 NULL, --SYSTEM_NODE_FLAG
1387 SeqNoList_tbl(i), --TREE_SEQ
1388 '0', --COUNTED_OPTIONS_FLAG
1389 '1', --UI_OMIT
1390 NULL, --UI_SECTION
1391 NULL, --BOM_TREATMENT,
1392 G_RUN_ID, --RUN_ID
1393 NULL, --REC_STATUS,
1394 NULL, --DISPOSITION,
1395 '0', --DELETED_FLAG
1396 NULL, --EFF_FROM,
1397 NULL, --EFF_TO,
1398 NULL, --EFF_MASK,
1399 NULL, --USER_STR01,
1400 NULL, --USER_STR02,
1401 NULL, --USER_STR03,
1402 NULL, --USER_STR04,
1403 NULL, --USER_NUM01,
1404 NULL, --USER_NUM02,
1405 NULL, --USER_NUM03,
1406 NULL, --USER_NUM04,
1407 NULL, --CHECKOUT_USER,
1408 SYSDATE, --CREATION_DATE
1409 SYSDATE, --LAST_UPDATE_DATE
1410 FND_GLOBAL.USER_ID, --CREATED_BY
1411 FND_GLOBAL.USER_ID, --LAST_UPDATED_BY
1412 NULL, --SECURITY_MASK,
1413 G_CLAUSE_MODEL_OPTION_OSR||p_org_id ||':'||p_intent||':'||ClauseIdList_tbl(i),--FSK_INTLTEXT_1_1
1414 NULL, --FSK_INTLTEXT_1_EXT,
1415 NULL, --FSK_ITEMMASTER_2_1,
1416 NULL, --FSK_ITEMMASTER_2_EXT,
1417 G_CLAUSE_MODEL_FEATURE_OSR||p_org_id||':'||p_intent , --FSK_PSNODE_3_1
1418 NULL, --FSK_PSNODE_3_EXT,
1419 NULL, --FSK_PSNODE_4_1,
1420 NULL, --FSK_PSNODE_4_EXT,
1421 G_CLAUSE_MODEL_OSR||p_org_id||':'||p_intent , --FSK_DEVLPROJECT_5_1
1422 NULL, --FSK_DEVLPROJECT_5_EXT,
1423 NULL, --COMPONENT_SEQUENCE_ID,
1424 NULL, --COMPONENT_CODE,
1425 2, --PLAN_LEVEL --Plan Level for Option:2
1426 NULL, --BOM_ITEM_TYPE,
1427 NULL, --SO_ITEM_TYPE_CODE,
1428 NULL, --MINIMUM_SELECTED,
1429 NULL, --MAXIMUM_SELECTED,
1430 NULL, --BOM_REQUIRED,
1431 NULL, --MUTUALLY_EXCLUSIVE_OPTIONS,
1432 NULL, --OPTIONAL,
1433 NULL, --FSK_EXPLNODE_1_1,
1434 NULL, --FSK_PSNODE_6_1,
1435 OKC_XPRT_CZ_INT_PVT.G_CZ_EPOCH_BEGIN, --EFFECTIVE_FROM
1436 OKC_XPRT_CZ_INT_PVT.G_CZ_EPOCH_END, --EFFECTIVE_UNTIL
1437 NULL, --EFFECTIVE_USAGE_MASK,
1438 NULL, --EFFECTIVITY_SET_ID,
1439 NULL, --FSK_EFFSET_7_1,
1440 '0', --DECIMAL_QTY_FLAG -- 0 for all nodes
1441 NULL, --QUOTEABLE_FLAG
1442 NULL, --PRIMARY_UOM_CODE,
1443 NULL, --COMPONENT_SEQUENCE_PATH, -- Must be NULL
1444 NULL, --BOM_SORT_ORDER,
1445 NULL, --IB_TRACKABLE,
1446 FND_GLOBAL.LOGIN_ID, --LAST_UPDATE_LOGIN,
1447 NULL, --INITIAL_NUM_VALUE,
1448 G_APPLICATION_ID, --SRC_APPLICATION_ID
1449 NULL, --FSK_ITEMMASTER_2_2,
1450 NULL, --INSTANTIABLE_FLAG,
1451 '1' --DISPLAY_IN_SUMMARY_FLAG -- 1: For Clauses to display in Summary UI
1452 );
1453
1454 END IF; -- if row count > 0
1455
1456 -- Standard call to get message count and if count is 1, get message info.
1457 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
1458
1459
1460 -- end debug log
1461 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1462 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
1463 G_MODULE||l_api_name,
1464 '1000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
1465 END IF;
1466
1467 EXCEPTION
1468 WHEN OTHERS THEN
1469 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1470 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
1471 G_MODULE||l_api_name,
1472 '2000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
1473 END IF;
1474
1475 x_return_status := G_RET_STS_UNEXP_ERROR ;
1476
1477 IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
1478 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
1479 END IF;
1480
1481 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
1482
1483
1484 END create_clause_options;
1485
1486 /*====================================================================+
1487 Procedure Name : create_variable_model_ref
1488 Description : This is a private API that creates the reference node
1489 of Variable Model under the Clause Model
1490 Parameters:
1491 p_intent - Intent of the variable model
1492 p_model_id - If model exists then refresh the model
1493
1494 +====================================================================*/
1495
1496 PROCEDURE create_variable_model_ref
1497 (
1498 p_intent IN VARCHAR2,
1499 p_org_id IN NUMBER,
1500 x_return_status OUT NOCOPY VARCHAR2,
1501 x_msg_data OUT NOCOPY VARCHAR2,
1502 x_msg_count OUT NOCOPY NUMBER
1503 ) IS
1504
1505 CURSOR csr_installed_languages IS
1506 SELECT L.LANGUAGE_CODE
1507 FROM FND_LANGUAGES L
1508 WHERE L.INSTALLED_FLAG IN ('I', 'B');
1509
1510 l_language FND_LANGUAGES.LANGUAGE_CODE%TYPE;
1511
1512 l_cz_imp_ps_nodes_rec CZ_IMP_PS_NODES%ROWTYPE;
1513 l_api_name CONSTANT VARCHAR2(30) := 'create_variable_model_ref';
1514 l_variable_model_name CZ_IMP_LOCALIZED_TEXTS.LOCALIZED_STR%TYPE;
1515
1516 BEGIN
1517
1518 -- start debug log
1519 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1520 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
1521 G_MODULE||l_api_name,
1522 '100: Entered '||G_PKG_NAME ||'.'||l_api_name);
1523 END IF;
1524
1525 x_return_status := G_RET_STS_SUCCESS;
1526
1527 -- Get Variable model name
1528 FND_MESSAGE.set_name('OKC','OKC_EXPRT_VAR_MODEL_TITLE');
1529 FND_MESSAGE.set_token('INTENT_MEANING',okc_util.decode_lookup('OKC_ARTICLE_INTENT',p_intent));
1530 l_variable_model_name := FND_MESSAGE.get;
1531
1532 -- Put the Name in the description Column of cz_ps_nodes
1533
1534 OPEN csr_installed_languages;
1535 LOOP
1536 FETCH csr_installed_languages INTO l_language;
1537 EXIT WHEN csr_installed_languages%NOTFOUND;
1538
1539 -- Insert into cz_imp_localized_text
1540
1541 INSERT INTO CZ_IMP_LOCALIZED_TEXTS
1542 (
1543 LAST_UPDATE_LOGIN,
1544 LOCALE_ID,
1545 LOCALIZED_STR,
1546 INTL_TEXT_ID,
1547 CREATION_DATE,
1548 LAST_UPDATE_DATE,
1549 DELETED_FLAG,
1550 EFF_FROM,
1551 EFF_TO,
1552 CREATED_BY,
1553 LAST_UPDATED_BY,
1554 SECURITY_MASK,
1555 EFF_MASK,
1556 CHECKOUT_USER,
1557 LANGUAGE,
1558 ORIG_SYS_REF,
1559 SOURCE_LANG,
1560 RUN_ID,
1561 REC_STATUS,
1562 DISPOSITION,
1563 MODEL_ID,
1564 FSK_DEVLPROJECT_1_1,
1565 MESSAGE,
1566 SEEDED_FLAG
1567 )
1568 VALUES
1569 (
1570 FND_GLOBAL.LOGIN_ID, --LAST_UPDATE_LOGIN
1571 NULL, -- LOCALE_ID
1572 l_variable_model_name, --LOCALIZED_STR
1573 NULL, -- INTL_TEXT_ID
1574 SYSDATE, -- CREATION_DATE
1575 SYSDATE, -- LAST_UPDATE_DATE
1576 '0', -- DELETED_FLAG
1577 NULL, -- EFF_FROM
1578 NULL, -- EFF_TO
1579 FND_GLOBAL.USER_ID, -- CREATED_BY
1580 FND_GLOBAL.USER_ID, -- LAST_UPDATED_BY
1581 NULL, -- SECURITY_MASK
1582 NULL, -- EFF_MASK
1583 NULL, -- CHECKOUT_USER
1584 l_language, --LANGUAGE
1585 G_CLAUSE_MODEL_VM_REF_NODE_OSR||p_org_id||':'||p_intent, -- ORIG_SYS_REF
1586 USERENV('LANG'), --SOURCE_LANG
1587 G_RUN_ID, -- RUN_ID
1588 NULL, -- REC_STATUS
1589 NULL, -- DISPOSITION
1590 NULL, -- MODEL_ID
1591 G_CLAUSE_MODEL_OSR||p_org_id||':'||p_intent, -- FSK_DEVLPROJECT_1_1
1592 NULL, -- MESSAGE
1593 NULL -- SEEDED_FLAG
1594 );
1595
1596 END LOOP; -- for all installed languages
1597 CLOSE csr_installed_languages;
1598
1599
1600 -- Populate the cz_imp_ps_nodes record
1601
1602 l_cz_imp_ps_nodes_rec.PS_NODE_ID:= NULL;
1603 l_cz_imp_ps_nodes_rec.DEVL_PROJECT_ID:= NULL;
1604 l_cz_imp_ps_nodes_rec.FROM_POPULATOR_ID:= NULL;
1605 l_cz_imp_ps_nodes_rec.PROPERTY_BACKPTR:= NULL;
1606 l_cz_imp_ps_nodes_rec.ITEM_TYPE_BACKPTR:= NULL;
1607 l_cz_imp_ps_nodes_rec.INTL_TEXT_ID:= NULL;
1608 l_cz_imp_ps_nodes_rec.SUB_CONS_ID:= NULL;
1609 l_cz_imp_ps_nodes_rec.ORGANIZATION_ID:= p_org_id;
1610 l_cz_imp_ps_nodes_rec.ITEM_ID:= NULL;
1611 l_cz_imp_ps_nodes_rec.EXPLOSION_TYPE:= NULL;
1612 l_cz_imp_ps_nodes_rec.NAME:= G_CLAUSE_MODEL_VM_REF_NODE_OSR||p_org_id||':'||p_intent;
1613 l_cz_imp_ps_nodes_rec.ORIG_SYS_REF:= G_CLAUSE_MODEL_VM_REF_NODE_OSR||p_org_id||':'||p_intent;
1614 l_cz_imp_ps_nodes_rec.RESOURCE_FLAG:= NULL;
1615 l_cz_imp_ps_nodes_rec.TOP_ITEM_ID:= 1; -- same value as in cz_imp_devl_projects
1616 l_cz_imp_ps_nodes_rec.INITIAL_VALUE:= NULL;
1617 l_cz_imp_ps_nodes_rec.PARENT_ID:= NULL;
1618 l_cz_imp_ps_nodes_rec.MINIMUM:= 1;
1619 l_cz_imp_ps_nodes_rec.MAXIMUM:= NULL;
1620 l_cz_imp_ps_nodes_rec.PS_NODE_TYPE:= 263; -- Reference Node
1621 l_cz_imp_ps_nodes_rec.FEATURE_TYPE:= 0;
1622 l_cz_imp_ps_nodes_rec.PRODUCT_FLAG:= '0'; -- check Reference Node
1623 l_cz_imp_ps_nodes_rec.REFERENCE_ID:= NULL;
1624 l_cz_imp_ps_nodes_rec.MULTI_CONFIG_FLAG:= NULL;
1625 l_cz_imp_ps_nodes_rec.ORDER_SEQ_FLAG:= NULL;
1626 l_cz_imp_ps_nodes_rec.SYSTEM_NODE_FLAG:= NULL;
1627 l_cz_imp_ps_nodes_rec.TREE_SEQ:= 2;
1628 l_cz_imp_ps_nodes_rec.COUNTED_OPTIONS_FLAG:= '0';
1629 l_cz_imp_ps_nodes_rec.UI_OMIT:= '1';
1630 l_cz_imp_ps_nodes_rec.UI_SECTION:= 0;
1631 l_cz_imp_ps_nodes_rec.BOM_TREATMENT:= NULL;
1632 l_cz_imp_ps_nodes_rec.RUN_ID:= G_RUN_ID;
1633 l_cz_imp_ps_nodes_rec.REC_STATUS:= NULL;
1634 l_cz_imp_ps_nodes_rec.DISPOSITION:= NULL;
1635 l_cz_imp_ps_nodes_rec.DELETED_FLAG := 0;
1636 l_cz_imp_ps_nodes_rec.EFF_FROM:= NULL;
1637 l_cz_imp_ps_nodes_rec.EFF_TO:= NULL;
1638 l_cz_imp_ps_nodes_rec.EFF_MASK:= NULL;
1639 l_cz_imp_ps_nodes_rec.USER_STR01:= NULL;
1640 l_cz_imp_ps_nodes_rec.USER_STR02:= NULL;
1641 l_cz_imp_ps_nodes_rec.USER_STR03:= NULL;
1642 l_cz_imp_ps_nodes_rec.USER_STR04:= NULL;
1643 l_cz_imp_ps_nodes_rec.USER_NUM01:= NULL;
1644 l_cz_imp_ps_nodes_rec.USER_NUM02:= NULL;
1645 l_cz_imp_ps_nodes_rec.USER_NUM03:= NULL;
1646 l_cz_imp_ps_nodes_rec.USER_NUM04:= NULL;
1647 l_cz_imp_ps_nodes_rec.CHECKOUT_USER:= NULL;
1648 l_cz_imp_ps_nodes_rec.CREATION_DATE:= SYSDATE;
1649 l_cz_imp_ps_nodes_rec.LAST_UPDATE_DATE:= SYSDATE;
1650 l_cz_imp_ps_nodes_rec.CREATED_BY:= FND_GLOBAL.USER_ID;
1651 l_cz_imp_ps_nodes_rec.LAST_UPDATED_BY:= FND_GLOBAL.USER_ID;
1652 l_cz_imp_ps_nodes_rec.SECURITY_MASK:= NULL;
1653 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_1:= G_CLAUSE_MODEL_VM_REF_NODE_OSR||p_org_id||':'||p_intent;
1654 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_EXT:= NULL;
1655 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_1:= NULL;
1656 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_EXT:= NULL;
1657 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_1:= G_CLAUSE_MODEL_TOPNODE_OSR||p_org_id||':'||p_intent;
1658 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_EXT:= NULL;
1659 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_1:= NULL;
1660 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_EXT:= NULL;
1661 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_1:= G_CLAUSE_MODEL_OSR||p_org_id||':'||p_intent;
1662 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_EXT:= NULL;
1663 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_ID:= NULL;
1664 l_cz_imp_ps_nodes_rec.COMPONENT_CODE:= NULL;
1665 l_cz_imp_ps_nodes_rec.PLAN_LEVEL:= 1;
1666 l_cz_imp_ps_nodes_rec.BOM_ITEM_TYPE:= NULL;
1667 l_cz_imp_ps_nodes_rec.SO_ITEM_TYPE_CODE:= NULL;
1668 l_cz_imp_ps_nodes_rec.MINIMUM_SELECTED:= NULL;
1669 l_cz_imp_ps_nodes_rec.MAXIMUM_SELECTED:= NULL;
1670 l_cz_imp_ps_nodes_rec.BOM_REQUIRED:= NULL;
1671 l_cz_imp_ps_nodes_rec.MUTUALLY_EXCLUSIVE_OPTIONS:= NULL;
1672 l_cz_imp_ps_nodes_rec.OPTIONAL:= NULL;
1673 l_cz_imp_ps_nodes_rec.FSK_EXPLNODE_1_1:= NULL;
1674 l_cz_imp_ps_nodes_rec.FSK_PSNODE_6_1:= G_VARIABLE_MODEL_TOPNODE_OSR||p_intent;
1675 l_cz_imp_ps_nodes_rec.EFFECTIVE_FROM:= OKC_XPRT_CZ_INT_PVT.G_CZ_EPOCH_BEGIN;
1676 l_cz_imp_ps_nodes_rec.EFFECTIVE_UNTIL:= OKC_XPRT_CZ_INT_PVT.G_CZ_EPOCH_END;
1677 l_cz_imp_ps_nodes_rec.EFFECTIVE_USAGE_MASK:= NULL;
1678 l_cz_imp_ps_nodes_rec.EFFECTIVITY_SET_ID:= NULL;
1679 l_cz_imp_ps_nodes_rec.FSK_EFFSET_7_1:= NULL;
1680 l_cz_imp_ps_nodes_rec.DECIMAL_QTY_FLAG:= 0; -- 0 for all nodes
1681 l_cz_imp_ps_nodes_rec.QUOTEABLE_FLAG:= NULL;
1682 l_cz_imp_ps_nodes_rec.PRIMARY_UOM_CODE:= NULL;
1683 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_PATH:= NULL; -- Must be NULL
1684 l_cz_imp_ps_nodes_rec.BOM_SORT_ORDER:= NULL;
1685 l_cz_imp_ps_nodes_rec.IB_TRACKABLE:= NULL;
1686 l_cz_imp_ps_nodes_rec.LAST_UPDATE_LOGIN:= FND_GLOBAL.LOGIN_ID;
1687 l_cz_imp_ps_nodes_rec.INITIAL_NUM_VALUE:= NULL;
1688 l_cz_imp_ps_nodes_rec.SRC_APPLICATION_ID:= G_APPLICATION_ID;
1689 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_2:= NULL;
1690 l_cz_imp_ps_nodes_rec.INSTANTIABLE_FLAG:= '4';
1691 l_cz_imp_ps_nodes_rec.DISPLAY_IN_SUMMARY_FLAG:= NULL;
1692
1693 -- insert Variable Model reference into cz_imp_ps_nodes
1694
1695 INSERT INTO cz_imp_ps_nodes
1696 (
1697 PS_NODE_ID,
1698 DEVL_PROJECT_ID,
1699 FROM_POPULATOR_ID,
1700 PROPERTY_BACKPTR,
1701 ITEM_TYPE_BACKPTR,
1702 INTL_TEXT_ID,
1703 SUB_CONS_ID,
1704 ORGANIZATION_ID,
1705 ITEM_ID,
1706 EXPLOSION_TYPE,
1707 NAME,
1708 ORIG_SYS_REF,
1709 RESOURCE_FLAG,
1710 TOP_ITEM_ID,
1711 INITIAL_VALUE,
1712 PARENT_ID,
1713 MINIMUM,
1714 MAXIMUM,
1715 PS_NODE_TYPE,
1716 FEATURE_TYPE,
1717 PRODUCT_FLAG,
1718 REFERENCE_ID,
1719 MULTI_CONFIG_FLAG,
1720 ORDER_SEQ_FLAG,
1721 SYSTEM_NODE_FLAG,
1722 TREE_SEQ,
1723 COUNTED_OPTIONS_FLAG,
1724 UI_OMIT,
1725 UI_SECTION,
1726 BOM_TREATMENT,
1727 RUN_ID,
1728 REC_STATUS,
1729 DISPOSITION,
1730 DELETED_FLAG ,
1731 EFF_FROM,
1732 EFF_TO,
1733 EFF_MASK,
1734 USER_STR01,
1735 USER_STR02,
1736 USER_STR03,
1737 USER_STR04,
1738 USER_NUM01,
1739 USER_NUM02,
1740 USER_NUM03,
1741 USER_NUM04,
1742 CHECKOUT_USER,
1743 CREATION_DATE,
1744 LAST_UPDATE_DATE,
1745 CREATED_BY,
1746 LAST_UPDATED_BY,
1747 SECURITY_MASK,
1748 FSK_INTLTEXT_1_1,
1749 FSK_INTLTEXT_1_EXT,
1750 FSK_ITEMMASTER_2_1,
1751 FSK_ITEMMASTER_2_EXT,
1752 FSK_PSNODE_3_1,
1753 FSK_PSNODE_3_EXT,
1754 FSK_PSNODE_4_1,
1755 FSK_PSNODE_4_EXT,
1756 FSK_DEVLPROJECT_5_1,
1757 FSK_DEVLPROJECT_5_EXT,
1758 COMPONENT_SEQUENCE_ID,
1759 COMPONENT_CODE,
1760 PLAN_LEVEL,
1761 BOM_ITEM_TYPE,
1762 SO_ITEM_TYPE_CODE,
1763 MINIMUM_SELECTED,
1764 MAXIMUM_SELECTED,
1765 BOM_REQUIRED,
1766 MUTUALLY_EXCLUSIVE_OPTIONS,
1767 OPTIONAL,
1768 FSK_EXPLNODE_1_1,
1769 FSK_PSNODE_6_1,
1770 EFFECTIVE_FROM,
1771 EFFECTIVE_UNTIL,
1772 EFFECTIVE_USAGE_MASK,
1773 EFFECTIVITY_SET_ID,
1774 FSK_EFFSET_7_1,
1775 DECIMAL_QTY_FLAG,
1776 QUOTEABLE_FLAG,
1777 PRIMARY_UOM_CODE,
1778 COMPONENT_SEQUENCE_PATH,
1779 BOM_SORT_ORDER,
1780 IB_TRACKABLE,
1781 LAST_UPDATE_LOGIN,
1782 INITIAL_NUM_VALUE,
1783 SRC_APPLICATION_ID,
1784 FSK_ITEMMASTER_2_2,
1785 INSTANTIABLE_FLAG,
1786 DISPLAY_IN_SUMMARY_FLAG
1787 )
1788 VALUES
1789 (
1790 l_cz_imp_ps_nodes_rec.PS_NODE_ID,
1791 l_cz_imp_ps_nodes_rec.DEVL_PROJECT_ID,
1792 l_cz_imp_ps_nodes_rec.FROM_POPULATOR_ID,
1793 l_cz_imp_ps_nodes_rec.PROPERTY_BACKPTR,
1794 l_cz_imp_ps_nodes_rec.ITEM_TYPE_BACKPTR,
1795 l_cz_imp_ps_nodes_rec.INTL_TEXT_ID,
1796 l_cz_imp_ps_nodes_rec.SUB_CONS_ID,
1797 l_cz_imp_ps_nodes_rec.ORGANIZATION_ID,
1798 l_cz_imp_ps_nodes_rec.ITEM_ID,
1799 l_cz_imp_ps_nodes_rec.EXPLOSION_TYPE,
1800 l_cz_imp_ps_nodes_rec.NAME,
1801 l_cz_imp_ps_nodes_rec.ORIG_SYS_REF,
1802 l_cz_imp_ps_nodes_rec.RESOURCE_FLAG,
1803 l_cz_imp_ps_nodes_rec.TOP_ITEM_ID,
1804 l_cz_imp_ps_nodes_rec.INITIAL_VALUE,
1805 l_cz_imp_ps_nodes_rec.PARENT_ID,
1806 l_cz_imp_ps_nodes_rec.MINIMUM,
1807 l_cz_imp_ps_nodes_rec.MAXIMUM,
1808 l_cz_imp_ps_nodes_rec.PS_NODE_TYPE,
1809 l_cz_imp_ps_nodes_rec.FEATURE_TYPE,
1810 l_cz_imp_ps_nodes_rec.PRODUCT_FLAG,
1811 l_cz_imp_ps_nodes_rec.REFERENCE_ID,
1812 l_cz_imp_ps_nodes_rec.MULTI_CONFIG_FLAG,
1813 l_cz_imp_ps_nodes_rec.ORDER_SEQ_FLAG,
1814 l_cz_imp_ps_nodes_rec.SYSTEM_NODE_FLAG,
1815 l_cz_imp_ps_nodes_rec.TREE_SEQ,
1816 l_cz_imp_ps_nodes_rec.COUNTED_OPTIONS_FLAG,
1817 l_cz_imp_ps_nodes_rec.UI_OMIT,
1818 l_cz_imp_ps_nodes_rec.UI_SECTION,
1819 l_cz_imp_ps_nodes_rec.BOM_TREATMENT,
1820 l_cz_imp_ps_nodes_rec.RUN_ID,
1821 l_cz_imp_ps_nodes_rec.REC_STATUS,
1822 l_cz_imp_ps_nodes_rec.DISPOSITION,
1823 l_cz_imp_ps_nodes_rec.DELETED_FLAG ,
1824 l_cz_imp_ps_nodes_rec.EFF_FROM,
1825 l_cz_imp_ps_nodes_rec.EFF_TO,
1826 l_cz_imp_ps_nodes_rec.EFF_MASK,
1827 l_cz_imp_ps_nodes_rec.USER_STR01,
1828 l_cz_imp_ps_nodes_rec.USER_STR02,
1829 l_cz_imp_ps_nodes_rec.USER_STR03,
1830 l_cz_imp_ps_nodes_rec.USER_STR04,
1831 l_cz_imp_ps_nodes_rec.USER_NUM01,
1832 l_cz_imp_ps_nodes_rec.USER_NUM02,
1833 l_cz_imp_ps_nodes_rec.USER_NUM03,
1834 l_cz_imp_ps_nodes_rec.USER_NUM04,
1835 l_cz_imp_ps_nodes_rec.CHECKOUT_USER,
1836 l_cz_imp_ps_nodes_rec.CREATION_DATE,
1837 l_cz_imp_ps_nodes_rec.LAST_UPDATE_DATE,
1838 l_cz_imp_ps_nodes_rec.CREATED_BY,
1839 l_cz_imp_ps_nodes_rec.LAST_UPDATED_BY,
1840 l_cz_imp_ps_nodes_rec.SECURITY_MASK,
1841 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_1,
1842 l_cz_imp_ps_nodes_rec.FSK_INTLTEXT_1_EXT,
1843 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_1,
1844 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_EXT,
1845 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_1,
1846 l_cz_imp_ps_nodes_rec.FSK_PSNODE_3_EXT,
1847 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_1,
1848 l_cz_imp_ps_nodes_rec.FSK_PSNODE_4_EXT,
1849 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_1,
1850 l_cz_imp_ps_nodes_rec.FSK_DEVLPROJECT_5_EXT,
1851 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_ID,
1852 l_cz_imp_ps_nodes_rec.COMPONENT_CODE,
1853 l_cz_imp_ps_nodes_rec.PLAN_LEVEL,
1854 l_cz_imp_ps_nodes_rec.BOM_ITEM_TYPE,
1855 l_cz_imp_ps_nodes_rec.SO_ITEM_TYPE_CODE,
1856 l_cz_imp_ps_nodes_rec.MINIMUM_SELECTED,
1857 l_cz_imp_ps_nodes_rec.MAXIMUM_SELECTED,
1858 l_cz_imp_ps_nodes_rec.BOM_REQUIRED,
1859 l_cz_imp_ps_nodes_rec.MUTUALLY_EXCLUSIVE_OPTIONS,
1860 l_cz_imp_ps_nodes_rec.OPTIONAL,
1861 l_cz_imp_ps_nodes_rec.FSK_EXPLNODE_1_1,
1862 l_cz_imp_ps_nodes_rec.FSK_PSNODE_6_1,
1863 l_cz_imp_ps_nodes_rec.EFFECTIVE_FROM,
1864 l_cz_imp_ps_nodes_rec.EFFECTIVE_UNTIL,
1865 l_cz_imp_ps_nodes_rec.EFFECTIVE_USAGE_MASK,
1866 l_cz_imp_ps_nodes_rec.EFFECTIVITY_SET_ID,
1867 l_cz_imp_ps_nodes_rec.FSK_EFFSET_7_1,
1868 l_cz_imp_ps_nodes_rec.DECIMAL_QTY_FLAG,
1869 l_cz_imp_ps_nodes_rec.QUOTEABLE_FLAG,
1870 l_cz_imp_ps_nodes_rec.PRIMARY_UOM_CODE,
1871 l_cz_imp_ps_nodes_rec.COMPONENT_SEQUENCE_PATH,
1872 l_cz_imp_ps_nodes_rec.BOM_SORT_ORDER,
1873 l_cz_imp_ps_nodes_rec.IB_TRACKABLE,
1874 l_cz_imp_ps_nodes_rec.LAST_UPDATE_LOGIN,
1875 l_cz_imp_ps_nodes_rec.INITIAL_NUM_VALUE,
1876 l_cz_imp_ps_nodes_rec.SRC_APPLICATION_ID,
1877 l_cz_imp_ps_nodes_rec.FSK_ITEMMASTER_2_2,
1878 l_cz_imp_ps_nodes_rec.INSTANTIABLE_FLAG,
1879 l_cz_imp_ps_nodes_rec.DISPLAY_IN_SUMMARY_FLAG
1880 );
1881
1882
1883 -- Standard call to get message count and if count is 1, get message info.
1884 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
1885
1886
1887 -- end debug log
1888 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1889 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
1890 G_MODULE||l_api_name,
1891 '1000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
1892 END IF;
1893
1894 EXCEPTION
1895 WHEN OTHERS THEN
1896 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1897 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
1898 G_MODULE||l_api_name,
1899 '2000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
1900 END IF;
1901
1902 x_return_status := G_RET_STS_UNEXP_ERROR ;
1903
1904 IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
1905 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
1906 END IF;
1907
1908 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
1909
1910
1911 END create_variable_model_ref;
1912
1913
1914
1915 /*
1916 ---------------------------------------------------
1917 -- PUBLIC Procedures and Functions
1918 ---------------------------------------------------
1919 */
1920 /*====================================================================+
1921 Procedure Name : import_clauses
1922 Description : This is a PUBLIC API that imports Clauses used in rules
1923 This API is called from publish rules concurrent program
1924 Parameters:
1925 p_org_id - Org Id of the rules to be published
1926
1927 +====================================================================*/
1928
1929 PROCEDURE import_clauses
1930 (
1931 p_api_version IN NUMBER,
1932 p_init_msg_list IN VARCHAR2,
1933 p_commit IN VARCHAR2,
1934 p_org_id IN NUMBER,
1935 x_return_status OUT NOCOPY VARCHAR2,
1936 x_msg_data OUT NOCOPY VARCHAR2,
1937 x_msg_count OUT NOCOPY NUMBER
1938 ) IS
1939
1940 CURSOR csr_cz_run_id IS
1941 SELECT cz_xfr_run_infos_s.NEXTVAL
1942 FROM dual;
1943
1944 -- CURSOR csr_clause_model_id(p_intent IN VARCHAR2) IS
1945 CURSOR csr_clause_model_id(p_orig_sys_ref IN VARCHAR2) IS
1946 SELECT devl_project_id
1947 FROM cz_devl_projects
1948 WHERE orig_sys_ref = p_orig_sys_ref
1949 AND devl_project_id = persistent_project_id
1950 AND deleted_flag = 0;
1951
1952 -- WHERE orig_sys_ref = G_CLAUSE_MODEL_OSR||p_org_id||':'||p_intent
1953
1954 CURSOR csr_intent IS
1955 SELECT DISTINCT INTENT
1956 FROM okc_xprt_rule_hdrs_all
1957 WHERE org_id = p_org_id
1958 AND status_code ='PENDINGPUB';
1959
1960 CURSOR csr_org_name IS
1961 SELECT name
1962 FROM hr_operating_units
1963 WHERE organization_id = p_org_id;
1964
1965 CURSOR csr_clause_folder(p_folder_name IN VARCHAR2) IS
1966 SELECT object_id
1967 FROM cz_rp_entries
1968 WHERE enclosing_folder= OKC_XPRT_CZ_INT_PVT.G_CLAUSE_FOLDER_ID
1969 AND object_type = 'FLD'
1970 AND deleted_flag=0
1971 AND name = p_folder_name ;
1972 -- AND name = G_CLAUSE_FOLDER_OSR||p_org_id;
1973
1974 l_intent okc_xprt_rule_hdrs_all.intent%TYPE;
1975 l_api_version CONSTANT NUMBER := 1;
1976 l_api_name CONSTANT VARCHAR2(30) := 'import_clauses';
1977 l_clause_model_id NUMBER :=NULL;
1978 l_run_id NUMBER;
1979 l_clause_folder_id NUMBER :=NULL;
1980 l_folder_desc VARCHAR2(255);
1981 l_import_status VARCHAR2(10);
1982 l_orig_sys_ref cz_devl_projects.orig_sys_ref%TYPE;
1983 l_clause_folder_name cz_rp_entries.name%TYPE;
1984
1985 BEGIN
1986
1987 -- start debug log
1988 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1989 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
1990 G_MODULE||l_api_name,
1991 '100: Entered '||G_PKG_NAME ||'.'||l_api_name);
1992 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
1993 G_MODULE||l_api_name,
1994 '100: Parameters ');
1995 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
1996 G_MODULE||l_api_name,
1997 '100: p_org_id '||p_org_id);
1998 END IF;
1999
2000 -- Standard call to check for call compatibility.
2001 IF NOT FND_API.Compatible_API_Call( l_api_version, p_api_version, l_api_name, G_PKG_NAME) THEN
2002 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2003 END IF;
2004
2005 -- Initialize message list if p_init_msg_list is set to TRUE.
2006 IF FND_API.to_Boolean( p_init_msg_list ) THEN
2007 FND_MSG_PUB.initialize;
2008 END IF;
2009
2010 -- Initialize API return status to success
2011 x_return_status := FND_API.G_RET_STS_SUCCESS;
2012
2013 -- Get the Organization Name
2014 OPEN csr_org_name;
2015 FETCH csr_org_name INTO G_ORGANIZATION_NAME;
2016 CLOSE csr_org_name;
2017
2018 -- build folder name
2019 l_clause_folder_name := G_CLAUSE_FOLDER_OSR||p_org_id;
2020
2021 -- Get the Clause folder Id
2022 OPEN csr_clause_folder(p_folder_name => l_clause_folder_name);
2023 FETCH csr_clause_folder INTO l_clause_folder_id;
2024 IF csr_clause_folder%NOTFOUND THEN
2025 -- Create Org folder
2026
2027 -- Generate Folder Description
2028 FND_MESSAGE.set_name('OKC','OKC_EXPRT_ALIB_ORG_FOLDER_TITL');
2029 FND_MESSAGE.set_token('ORG_NAME',G_ORGANIZATION_NAME);
2030 l_folder_desc := FND_MESSAGE.get;
2031
2032 -- folder does not exits so create the folder
2033 OKC_XPRT_CZ_INT_PVT.create_rp_folder(
2034 p_api_version => l_api_version,
2035 p_encl_folder_id => OKC_XPRT_CZ_INT_PVT.G_CLAUSE_FOLDER_ID,
2036 p_new_folder_name => G_CLAUSE_FOLDER_OSR||p_org_id,
2037 p_folder_desc => l_folder_desc,
2038 p_folder_notes => l_folder_desc,
2039 x_new_folder_id => l_clause_folder_id,
2040 x_return_status => x_return_status,
2041 x_msg_count => x_msg_count,
2042 x_msg_data => x_msg_data);
2043
2044 -- debug log
2045 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2046 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2047 G_MODULE||l_api_name,
2048 '111: After Calling OKC_XPRT_CZ_INT_PVT.create_rp_folder x_return_status : '||x_return_status);
2049 END IF;
2050
2051 --- If any errors happen abort API
2052 IF (x_return_status = G_RET_STS_UNEXP_ERROR) THEN
2053 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2054 ELSIF (x_return_status = G_RET_STS_ERROR) THEN
2055 RAISE FND_API.G_EXC_ERROR;
2056 END IF;
2057
2058
2059 END IF; -- folder does not exists
2060 CLOSE csr_clause_folder;
2061
2062 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2063 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2064 G_MODULE||l_api_name,
2065 '120: Clause Folder Id: '||l_clause_folder_id);
2066 END IF;
2067
2068
2069 /*
2070 -- Generate the Run Id
2071 OPEN csr_cz_run_id;
2072 FETCH csr_cz_run_id INTO G_RUN_ID;
2073 CLOSE csr_cz_run_id;
2074 */
2075
2076 OPEN csr_intent;
2077 LOOP
2078 FETCH csr_intent INTO l_intent;
2079 EXIT WHEN csr_intent%NOTFOUND;
2080
2081 -- Initialize l_clause_model_id
2082 l_clause_model_id := NULL;
2083
2084 -- Build Orig_sys_ref
2085 l_orig_sys_ref := G_CLAUSE_MODEL_OSR||p_org_id||':'||l_intent ;
2086
2087 -- check if Clause Model Already exists in CZ and get the Model Id
2088 -- OPEN csr_clause_model_id(p_intent => l_intent);
2089
2090 OPEN csr_clause_model_id(p_orig_sys_ref => l_orig_sys_ref);
2091 FETCH csr_clause_model_id INTO l_clause_model_id;
2092 CLOSE csr_clause_model_id;
2093
2094 -- CZ allows ONLY 1 model import for each run_id
2095 -- Generate the Run Id
2096 OPEN csr_cz_run_id;
2097 FETCH csr_cz_run_id INTO G_RUN_ID;
2098 CLOSE csr_cz_run_id;
2099
2100 -- debug log
2101 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2102 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2103 G_MODULE||l_api_name,
2104 '150: Run Id :'||G_RUN_ID);
2105 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2106 G_MODULE||l_api_name,
2107 '150: Clause Model Id :'||l_clause_model_id);
2108 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2109 G_MODULE||l_api_name,
2110 '150: Intent :'||l_intent);
2111 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2112 G_MODULE||l_api_name,
2113 '150: Organization Name :'||G_ORGANIZATION_NAME);
2114 END IF;
2115
2116
2117 create_clause_model
2118 (
2119 p_intent => l_intent,
2120 p_model_id => l_clause_model_id,
2121 p_org_id => p_org_id,
2122 x_return_status => x_return_status,
2123 x_msg_data => x_msg_data,
2124 x_msg_count => x_msg_count
2125 );
2126
2127 -- debug log
2128 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2129 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2130 G_MODULE||l_api_name,
2131 '200: After Calling create_clause_model x_return_status : '||x_return_status);
2132 END IF;
2133
2134 --- If any errors happen abort API
2135 IF (x_return_status = G_RET_STS_UNEXP_ERROR) THEN
2136 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2137 ELSIF (x_return_status = G_RET_STS_ERROR) THEN
2138 RAISE FND_API.G_EXC_ERROR;
2139 END IF;
2140
2141
2142 create_clause_component
2143 (
2144 p_intent => l_intent,
2145 p_org_id => p_org_id,
2146 x_return_status => x_return_status,
2147 x_msg_data => x_msg_data,
2148 x_msg_count => x_msg_count
2149 );
2150
2151 -- debug log
2152 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2153 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2154 G_MODULE||l_api_name,
2155 '300: After Calling create_clause_component x_return_status : '||x_return_status);
2156 END IF;
2157
2158 --- If any errors happen abort API
2159 IF (x_return_status = G_RET_STS_UNEXP_ERROR) THEN
2160 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2161 ELSIF (x_return_status = G_RET_STS_ERROR) THEN
2162 RAISE FND_API.G_EXC_ERROR;
2163 END IF;
2164
2165 create_clause_feature
2166 (
2167 p_intent => l_intent,
2168 p_org_id => p_org_id,
2169 x_return_status => x_return_status,
2170 x_msg_data => x_msg_data,
2171 x_msg_count => x_msg_count
2172 );
2173
2174 -- debug log
2175 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2176 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2177 G_MODULE||l_api_name,
2178 '400: After Calling create_clause_feature x_return_status : '||x_return_status);
2179 END IF;
2180
2181 --- If any errors happen abort API
2182 IF (x_return_status = G_RET_STS_UNEXP_ERROR) THEN
2183 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2184 ELSIF (x_return_status = G_RET_STS_ERROR) THEN
2185 RAISE FND_API.G_EXC_ERROR;
2186 END IF;
2187
2188 create_clause_options
2189 (
2190 p_intent => l_intent,
2191 p_org_id => p_org_id,
2192 x_return_status => x_return_status,
2193 x_msg_data => x_msg_data,
2194 x_msg_count => x_msg_count
2195 );
2196
2197 -- debug log
2198 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2199 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2200 G_MODULE||l_api_name,
2201 '500: After Calling create_clause_options x_return_status : '||x_return_status);
2202 END IF;
2203
2204 --- If any errors happen abort API
2205 IF (x_return_status = G_RET_STS_UNEXP_ERROR) THEN
2206 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2207 ELSIF (x_return_status = G_RET_STS_ERROR) THEN
2208 RAISE FND_API.G_EXC_ERROR;
2209 END IF;
2210
2211 create_variable_model_ref
2212 (
2213 p_intent => l_intent,
2214 p_org_id => p_org_id,
2215 x_return_status => x_return_status,
2216 x_msg_data => x_msg_data,
2217 x_msg_count => x_msg_count
2218 );
2219
2220 -- debug log
2221 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2222 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2223 G_MODULE||l_api_name,
2224 '600: After Calling create_variable_model_ref x_return_status : '||x_return_status);
2225 END IF;
2226
2227 --- If any errors happen abort API
2228 IF (x_return_status = G_RET_STS_UNEXP_ERROR) THEN
2229 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2230 ELSIF (x_return_status = G_RET_STS_ERROR) THEN
2231 RAISE FND_API.G_EXC_ERROR;
2232 END IF;
2233
2234 -- END LOOP;
2235 --CLOSE csr_intent;
2236
2237 -- Call the CZ Generic Import to push data to CZ
2238 OKC_XPRT_CZ_INT_PVT.import_generic
2239 (
2240 p_api_version => l_api_version,
2241 p_run_id => G_RUN_ID,
2242 p_rp_folder_id => l_clause_folder_id,
2243 x_run_id => l_run_id,
2244 x_return_status => l_import_status,
2245 x_msg_data => x_msg_data,
2246 x_msg_count => x_msg_count
2247 );
2248 -- debug log
2249 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2250 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2251 G_MODULE||l_api_name,
2252 '700: After Calling OKC_XPRT_CZ_INT_PVT.import_generic x_return_status : '||
2253 l_import_status);
2254 END IF;
2255
2256 -- Log the Import Status and check if any records in the import tables have status not 'OK'
2257 OKC_XPRT_UTIL_PVT.check_import_status
2258 (
2259 p_run_id => G_RUN_ID,
2260 p_import_status => l_import_status,
2261 p_model_type => 'C', -- Clause Model
2262 x_return_status => x_return_status,
2263 x_msg_data => x_msg_data,
2264 x_msg_count => x_msg_count
2265 );
2266
2267 -- debug log
2268 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2269 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2270 G_MODULE||l_api_name,
2271 '750: After Calling OKC_XPRT_UTIL_PVT.check_import_status x_return_status : '||
2272 x_return_status);
2273 END IF;
2274
2275 --- If any errors happen abort API
2276 IF (x_return_status = G_RET_STS_UNEXP_ERROR) THEN
2277 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2278 ELSIF (x_return_status = G_RET_STS_ERROR) THEN
2279 RAISE FND_API.G_EXC_ERROR;
2280 END IF;
2281
2282 END LOOP;
2283 CLOSE csr_intent;
2284
2285 IF FND_API.To_Boolean( p_commit ) THEN
2286 COMMIT WORK;
2287 END IF;
2288
2289 -- Standard call to get message count and if count is 1, get message info.
2290 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
2291
2292 -- end debug log
2293 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2294 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2295 G_MODULE||l_api_name,
2296 '1000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
2297 END IF;
2298
2299 EXCEPTION
2300 WHEN FND_API.G_EXC_ERROR THEN
2301 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2302 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2303 G_MODULE||l_api_name,
2304 '2000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
2305 END IF;
2306
2307 x_return_status := G_RET_STS_ERROR ;
2308 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
2309
2310 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2311 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2312 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2313 G_MODULE||l_api_name,
2314 '3000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
2315 END IF;
2316
2317 x_return_status := G_RET_STS_UNEXP_ERROR ;
2318 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
2319
2320 WHEN OTHERS THEN
2321 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
2322 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE ,
2323 G_MODULE||l_api_name,
2324 '4000: Leaving '||G_PKG_NAME ||'.'||l_api_name);
2325 END IF;
2326
2327 x_return_status := G_RET_STS_UNEXP_ERROR ;
2328 IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
2329 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
2330 END IF;
2331 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
2332
2333
2334 END import_clauses;
2335
2336
2337
2338
2339
2340 END OKC_XPRT_IMPORT_CLAUSES_PVT;