[Home] [Help]
PACKAGE BODY: APPS.BOM_BOMRBOMC_XMLP_PKG
Source
1 PACKAGE BODY BOM_BOMRBOMC_XMLP_PKG AS
2 /* $Header: BOMRBOMCB.pls 120.0 2007/12/24 09:36:52 dwkrishn noship $ */
3
4 FUNCTION GET_REV(D3_COMPO_ORG_ID IN NUMBER
5 ,D3_COMPONENT_ITEM_ID IN NUMBER) RETURN VARCHAR2 IS
6 ITM_REV VARCHAR2(3);
7 ORG_ID NUMBER := D3_COMPO_ORG_ID;
8 ITEM_ID NUMBER := D3_COMPONENT_ITEM_ID;
9 CURSOR C1 IS
10 SELECT
11 REVISION
12 FROM
13 MTL_ITEM_REVISIONS MIR
14 WHERE INVENTORY_ITEM_ID = ITEM_ID
15 AND ORGANIZATION_ID = ORG_ID
16 AND MIR.EFFECTIVITY_DATE <= TO_DATE(LP_REVISION_DATE
17 ,'YYYY/MM/DD HH24:MI:SS')
18 AND ( ( P_IMPL_FLAG = 2 )
19 OR ( P_IMPL_FLAG = 1
20 AND IMPLEMENTATION_DATE IS NOT NULL ) )
21 ORDER BY
22 EFFECTIVITY_DATE,
23 REVISION;
24 BEGIN
25 OPEN C1;
26 FETCH C1
27 INTO ITM_REV;
28 IF C1%NOTFOUND THEN
29 CLOSE C1;
30 RETURN NULL;
31 END IF;
32 CLOSE C1;
33 RETURN ITM_REV;
34 END GET_REV;
35
36 FUNCTION BEFOREREPORT RETURN BOOLEAN IS
37 BEGIN
38 DECLARE
39 L_ORGANIZATION_NAME VARCHAR2(240);
40 L_EXPLODE_OPTION VARCHAR2(80);
41 L_IMPL VARCHAR2(80);
42 L_RANGE_OPTION VARCHAR2(80);
43 L_SPECIFIC_ITEM VARCHAR2(81);
44 L_CATEGORY_SET VARCHAR2(40);
45 L_PRINT_OPTION1 VARCHAR2(80);
46 L_PLAN_FACTOR VARCHAR2(80);
47 L_ALT_OPTION VARCHAR2(80);
48 L_ORDER_BY VARCHAR2(80);
49 L_SEQ_ID NUMBER;
50 L_STR VARCHAR2(2000);
51 L_BOM_OR_ENG NUMBER;
52 L_ERR_MSG VARCHAR2(80);
53 L_ERR_CODE NUMBER;
54 EXPLODER_ERROR EXCEPTION;
55 LOOP_ERROR EXCEPTION;
56 TABLE_NAME VARCHAR2(20);
57 ITEM_ID_NULL EXCEPTION;
58 BEGIN
59 LP_REVISION_DATE:=P_REVISION_DATE;
60
61 P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
62 /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
63 TABLE_NAME := 'P_DEBUG';
64 IF (P_RANGE_OPTION_TYPE = 1) AND (P_ITEM_ID IS NULL) THEN
65 FND_MESSAGE.SET_NAME('null'
66 ,'MFG_REQUIRED_VALUE');
67 FND_MESSAGE.SET_TOKEN('ENTITY'
68 ,'specific item');
69 P_MSG_BUF := FND_MESSAGE.GET;
70 /*SRW.MESSAGE('999'
71 ,P_MSG_BUF)*/NULL;
72 RAISE ITEM_ID_NULL;
73 END IF;
74 IF P_PRINT_OPTION1_FLAG = 2 THEN
75 /*SRW.SET_MAXROW('Q_ELEMENT'
76 ,0)*/NULL;
77 END IF;
78 TABLE_NAME := 'ORG_DEF';
79 SELECT
80 O.ORGANIZATION_NAME
81 INTO L_ORGANIZATION_NAME
82 FROM
83 ORG_ORGANIZATION_DEFINITIONS O
84 WHERE O.ORGANIZATION_ID = P_ORGANIZATION_ID;
85 TABLE_NAME := 'MTL_ITEM_FLEXFIELDS';
86 IF (P_RANGE_OPTION_TYPE = 1) THEN
87 SELECT
88 ITEM_NUMBER
89 INTO L_SPECIFIC_ITEM
90 FROM
91 MTL_ITEM_FLEXFIELDS
92 WHERE ITEM_ID = P_ITEM_ID
93 AND ORGANIZATION_ID = P_ORGANIZATION_ID;
94 P_SPECIFIC_ITEM := L_SPECIFIC_ITEM;
95 END IF;
96 TABLE_NAME := 'MTL_CATEGORY_SETS';
97 IF P_CATEGORY_SET_ID > 0 THEN
98 SELECT
99 CATEGORY_SET_NAME
100 INTO L_CATEGORY_SET
101 FROM
102 MTL_CATEGORY_SETS
103 WHERE CATEGORY_SET_ID = P_CATEGORY_SET_ID;
104 P_CATEGORY_SET := L_CATEGORY_SET;
105 END IF;
106 TABLE_NAME := 'MFG_LOOKUPS1';
107 SELECT
108 SUBSTR(L1.MEANING
109 ,1
110 ,40),
111 SUBSTR(L2.MEANING
112 ,1
113 ,4),
114 SUBSTR(L3.MEANING
115 ,1
116 ,40),
117 SUBSTR(L4.MEANING
118 ,1
119 ,4),
120 SUBSTR(L5.MEANING
121 ,1
122 ,4)
123 INTO L_EXPLODE_OPTION,L_IMPL,L_RANGE_OPTION,L_PRINT_OPTION1,L_PLAN_FACTOR
124 FROM
125 MFG_LOOKUPS L1,
126 MFG_LOOKUPS L2,
127 MFG_LOOKUPS L3,
128 MFG_LOOKUPS L4,
129 MFG_LOOKUPS L5
130 WHERE L1.LOOKUP_TYPE = 'BOM_INQUIRY_DISPLAY_TYPE'
131 AND L1.LOOKUP_CODE = P_EXPLODE_OPTION_TYPE
132 AND L2.LOOKUP_TYPE = 'SYS_YES_NO'
133 AND L2.LOOKUP_CODE = P_IMPL_FLAG
134 AND L3.LOOKUP_TYPE = 'BOM_SELECTION_TYPE'
135 AND L3.LOOKUP_CODE = P_RANGE_OPTION_TYPE
136 AND L4.LOOKUP_TYPE = 'SYS_YES_NO'
137 AND L4.LOOKUP_CODE = P_PRINT_OPTION1_FLAG
138 AND L5.LOOKUP_TYPE = 'SYS_YES_NO'
139 AND L5.LOOKUP_CODE = P_PLAN_FACTOR_FLAG;
140 TABLE_NAME := 'MFG_LOOKUPS2';
141 SELECT
142 SUBSTR(L1.MEANING
143 ,1
144 ,40),
145 SUBSTR(L2.MEANING
146 ,1
147 ,40)
148 INTO L_ALT_OPTION,L_ORDER_BY
149 FROM
150 MFG_LOOKUPS L1,
151 MFG_LOOKUPS L2
152 WHERE L1.LOOKUP_TYPE = 'MCG_AUTOLOAD_OPTION'
153 AND L1.LOOKUP_CODE = P_ALT_OPTION_TYPE
154 AND L2.LOOKUP_TYPE = 'BOM_BILL_SORT_ORDER_TYPE'
155 AND L2.LOOKUP_CODE = P_ORDER_BY_TYPE;
156 P_ORGANIZATION_NAME := L_ORGANIZATION_NAME;
157 P_EXPLODE_OPTION := L_EXPLODE_OPTION;
158 P_IMPL := L_IMPL;
159 P_RANGE_OPTION := L_RANGE_OPTION;
160 P_PRINT_OPTION1 := L_PRINT_OPTION1;
161 P_ALT_OPTION := L_ALT_OPTION;
162 P_ORDER_BY := L_ORDER_BY;
163 P_PLAN_FACTOR := L_PLAN_FACTOR;
164 IF P_BOM_OR_ENG = 'BOM' THEN
165 L_BOM_OR_ENG := 1;
166 ELSE
167 L_BOM_OR_ENG := 2;
168 END IF;
169 TABLE_NAME := 'DUAL_SEQUENCE';
170 SELECT
171 BOM_LISTS_S.NEXTVAL
172 INTO L_SEQ_ID
173 FROM
174 DUAL;
175 P_SEQUENCE_ID := L_SEQ_ID;
176 TABLE_NAME := 'ITEM FLEX RANGE';
177 P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
178 /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
179 IF P_RANGE_OPTION_TYPE = 2 THEN
180 IF (P_ITEM_FROM IS NOT NULL) THEN
181 IF (P_ITEM_TO IS NOT NULL) THEN
182 NULL;
183 ELSE
184 NULL;
185 END IF;
186 ELSE
187 IF (P_ITEM_TO IS NOT NULL) THEN
188 NULL;
189 END IF;
190 END IF;
191 TABLE_NAME := 'CATEGORY FLEX RANGE';
192 IF (P_CATEGORY_FROM IS NOT NULL) THEN
193 IF (P_CATEGORY_TO IS NOT NULL) THEN
194 NULL;
195 ELSE
196 NULL;
197 END IF;
198 ELSE
199 IF (P_CATEGORY_TO IS NOT NULL) THEN
200 NULL;
201 END IF;
202 END IF;
203 END IF;
204 TABLE_NAME := 'BUILD SQL';
205 L_STR := 'INSERT INTO BOM_LISTS (SEQUENCE_ID, ASSEMBLY_ITEM_ID,
206 ALTERNATE_DESIGNATOR) ';
207 IF P_RANGE_OPTION_TYPE = 1 THEN
208 L_STR := L_STR || ' SELECT DISTINCT ' || TO_CHAR(L_SEQ_ID) || ',
209 ' || TO_CHAR(P_ITEM_ID) || ',
210 bbom.alternate_bom_designator
211 FROM bom_bill_of_materials bbom
212 WHERE bbom.organization_id = ' || TO_CHAR(P_ORGANIZATION_ID) || '
213 AND bbom.assembly_item_id = ' || TO_CHAR(P_ITEM_ID);
214 ELSE
215 L_STR := L_STR || ' SELECT DISTINCT ' || TO_CHAR(L_SEQ_ID) || ',
216 msi.inventory_item_id,
217 bbom.alternate_bom_designator
218 FROM mtl_item_categories mic,
219 mtl_system_items msi,
220 mtl_categories mc,
221 bom_bill_of_materials bbom
222 WHERE ' || P_ASS_BETWEEN || '
223 AND msi.inventory_item_id = mic.inventory_item_id
224 AND msi.organization_id =
225 ' || TO_CHAR(P_ORGANIZATION_ID) || '
226 AND mic.organization_id =
227 ' || TO_CHAR(P_ORGANIZATION_ID) || '
228 AND mic.category_set_id =
229 ' || TO_CHAR(P_CATEGORY_SET_ID) || '
230 AND mic.category_id = mc.category_id
231 AND mc.structure_id =
232 ' || TO_CHAR(P_CATEGORY_STRUCTURE_ID) || '
233 AND ' || P_CAT_BETWEEN || '
234 AND msi.inventory_item_id = bbom.assembly_item_id
235 AND msi.organization_id = bbom.organization_id
236 AND msi.bom_enabled_flag = ''Y''';
237 END IF;
238 L_STR := L_STR || ' AND ( (' || TO_CHAR(P_ALT_OPTION_TYPE) || ' = 1)
239 OR
240 (' || TO_CHAR(P_ALT_OPTION_TYPE) || ' = 2
241 AND bbom.alternate_bom_designator IS NULL)
242 OR
243 (' || TO_CHAR(P_ALT_OPTION_TYPE) || ' = 3
244 AND NVL(bbom.alternate_bom_designator,''XXX'')=
245 NVL(''' || P_ALTERNATE_DESG || ''', ''XXX''))
246 )
247 AND ( (''' || P_BOM_OR_ENG || ''' = ''BOM''
248 AND bbom.assembly_type = 1)
249 OR
250 (''' || P_BOM_OR_ENG || ''' = ''ENG'')
251 )';
252 TABLE_NAME := 'EXECUTE SQL';
253 EXECUTE IMMEDIATE
254 L_STR;
255 TABLE_NAME := 'CALL EXPLODER';
256 IF LP_REVISION_DATE IS NULL THEN
257 LP_REVISION_DATE := TO_CHAR(SYSDATE
258 ,'YYYY/MM/DD HH24:MI:SS');
259 END IF;
260 EXPLOSION_REPORT(ORG_ID => P_ORGANIZATION_ID
261 ,ORDER_BY => P_ORDER_BY_TYPE
262 ,LIST_ID => L_SEQ_ID
263 ,GRP_ID => P_GROUP_ID
264 ,SESSION_ID => -1
265 ,LEVELS_TO_EXPLODE => P_EXPLOSION_LEVEL
266 ,BOM_OR_ENG => L_BOM_OR_ENG
267 ,IMPL_FLAG => P_IMPL_FLAG
268 ,EXPLODE_OPTION => P_EXPLODE_OPTION_TYPE
269 ,MODULE => 2
270 ,CST_TYPE_ID => -1
271 ,STD_COMP_FLAG => -1
272 ,EXPL_QTY => P_EXPLOSION_QUANTITY
273 ,REPORT_OPTION => -1
274 ,REQ_ID => P_CONC_REQUEST_ID
275 ,LOCK_FLAG => -1
276 ,ROLLUP_OPTION => -1
277 ,ALT_RTG_DESG => ''
278 ,ALT_DESG => P_ALTERNATE_DESG
279 ,REV_DATE => LP_REVISION_DATE
280 ,ERR_MSG => L_ERR_MSG
281 ,ERROR_CODE => L_ERR_CODE
282 ,VERIFY_FLAG => 0
283 ,CST_RLP_ID => 0
284 ,PLAN_FACTOR_FLAG => P_PLAN_FACTOR_FLAG
285 ,INCL_LT_FLAG => 2);
286 TABLE_NAME := 'EXPLODE COMPLETE';
287 IF L_ERR_CODE = 9999 THEN
288 RAISE LOOP_ERROR;
289 END IF;
290 IF L_ERR_CODE < 0 THEN
291 RAISE EXPLODER_ERROR;
292 END IF;
293 RETURN (TRUE);
294 EXCEPTION
295 /* WHEN SRW.DO_SQL_FAILURE OTHERS THEN
296 SRW.MESSAGE('2000'
297 ,TABLE_NAME || SQLERRM)NULL;
298 RETURN (FALSE);*/
299 WHEN EXPLODER_ERROR THEN
300 /*SRW.MESSAGE('2001'
301 ,L_ERR_MSG)*/NULL;
302 RETURN (FALSE);
303 WHEN LOOP_ERROR THEN
304 P_ERR_MSG := L_ERR_MSG;
305 FND_MESSAGE.SET_NAME('null'
306 ,':P_ERR_MSG');
307 P_MSG_BUF := FND_MESSAGE.GET;
308 /*SRW.MESSAGE('9999'
309 ,P_MSG_BUF)*/NULL;
310 RETURN (FALSE);
311 WHEN ITEM_ID_NULL THEN
312 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
313 WHEN NO_DATA_FOUND THEN
314 /*SRW.MESSAGE('2003'
315 ,TABLE_NAME || SQLERRM)*/NULL;
316
317 RETURN (TRUE);
318 WHEN OTHERS THEN
319 /*SRW.MESSAGE('2000'
320 ,TABLE_NAME || SQLERRM)*/NULL;
321
322 RETURN (FALSE);
323 END;
324 RETURN (TRUE);
325 END BEFOREREPORT;
326
327 FUNCTION GET_ELE_DESC(M_BOM_ITEM_TYPE IN NUMBER
328 ,D2_ELEMENT_NAME IN VARCHAR2
329 ,M_ITEM_CATALOG_GROUP_ID IN NUMBER) RETURN VARCHAR2 IS
330 L_DESC VARCHAR2(240);
331 ORG_ID NUMBER := P_ORGANIZATION_ID;
332 L_ITEM_TYPE NUMBER := M_BOM_ITEM_TYPE;
333 L_ELEMENT_NAME VARCHAR(30) := D2_ELEMENT_NAME;
334 L_CATALOG_GROUP_ID NUMBER := M_ITEM_CATALOG_GROUP_ID;
335 BEGIN
336 IF L_ITEM_TYPE = 1 THEN
337 SELECT
338 DESCRIPTION
339 INTO L_DESC
340 FROM
341 MTL_DESCRIPTIVE_ELEMENTS
342 WHERE ITEM_CATALOG_GROUP_ID = L_CATALOG_GROUP_ID
343 AND ELEMENT_NAME = L_ELEMENT_NAME;
344 ELSIF L_ITEM_TYPE = 2 THEN
345 SELECT
346 MIN(DESCRIPTION)
347 INTO L_DESC
348 FROM
349 MTL_DESCRIPTIVE_ELEMENTS
350 WHERE ELEMENT_NAME = L_ELEMENT_NAME;
351 END IF;
352 RETURN (L_DESC);
353 END GET_ELE_DESC;
354
355 FUNCTION AFTERREPORT RETURN BOOLEAN IS
356 BEGIN
357 BEGIN
358 ROLLBACK;
359 /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
360 EXCEPTION
361 WHEN OTHERS THEN
362 RETURN (TRUE);
363 END;
364 RETURN (TRUE);
365 END AFTERREPORT;
366
367 PROCEDURE EXPLODER_USEREXIT(VERIFY_FLAG IN NUMBER
368 ,ORG_ID IN NUMBER
369 ,ORDER_BY IN NUMBER
370 ,GRP_ID IN NUMBER
371 ,SESSION_ID IN NUMBER
372 ,LEVELS_TO_EXPLODE IN NUMBER
373 ,BOM_OR_ENG IN NUMBER
374 ,IMPL_FLAG IN NUMBER
375 ,PLAN_FACTOR_FLAG IN NUMBER
376 ,EXPLODE_OPTION IN NUMBER
377 ,MODULE IN NUMBER
378 ,CST_TYPE_ID IN NUMBER
379 ,STD_COMP_FLAG IN NUMBER
380 ,EXPL_QTY IN NUMBER
381 ,ITEM_ID IN NUMBER
382 ,ALT_DESG IN VARCHAR2
383 ,COMP_CODE IN VARCHAR2
384 ,REV_DATE IN VARCHAR2
385 ,ERR_MSG OUT NOCOPY VARCHAR2
386 ,ERROR_CODE OUT NOCOPY NUMBER) IS
387 BEGIN
388 /* STPROC.INIT('begin BOMPEXPL.EXPLODER_USEREXIT(:VERIFY_FLAG,
389 :ORG_ID, :ORDER_BY, :GRP_ID, :SESSION_ID, :LEVELS_TO_EXPLODE, :BOM_OR_ENG,
390 :IMPL_FLAG, :PLAN_FACTOR_FLAG, :EXPLODE_OPTION, :MODULE, :CST_TYPE_ID, :STD_COMP_FLAG, :EXPL_QTY, :ITEM_ID, :ALT_DESG, :COMP_CODE, :REV_DATE, :ERR_MSG, :ERROR_CODE); end;');
391 STPROC.BIND_I(VERIFY_FLAG);
392 STPROC.BIND_I(ORG_ID);
393 STPROC.BIND_I(ORDER_BY);
394 STPROC.BIND_I(GRP_ID);
395 STPROC.BIND_I(SESSION_ID);
396 STPROC.BIND_I(LEVELS_TO_EXPLODE);
397 STPROC.BIND_I(BOM_OR_ENG);
398 STPROC.BIND_I(IMPL_FLAG);
399 STPROC.BIND_I(PLAN_FACTOR_FLAG);
400 STPROC.BIND_I(EXPLODE_OPTION);
401 STPROC.BIND_I(MODULE);
402 STPROC.BIND_I(CST_TYPE_ID);
403 STPROC.BIND_I(STD_COMP_FLAG);
404 STPROC.BIND_I(EXPL_QTY);
405 STPROC.BIND_I(ITEM_ID);
406 STPROC.BIND_I(ALT_DESG);
407 STPROC.BIND_I(COMP_CODE);
408 STPROC.BIND_I(REV_DATE);
409 STPROC.BIND_O(ERR_MSG);
410 STPROC.BIND_O(ERROR_CODE);
411 STPROC.EXECUTE;
412 STPROC.RETRIEVE(19
413 ,ERR_MSG);
414 STPROC.RETRIEVE(20
415 ,ERROR_CODE);*/null;
416 END EXPLODER_USEREXIT;
417
418 PROCEDURE EXPLOSION_REPORT(VERIFY_FLAG IN NUMBER
419 ,ORG_ID IN NUMBER
420 ,ORDER_BY IN NUMBER
421 ,LIST_ID IN NUMBER
422 ,GRP_ID IN NUMBER
423 ,SESSION_ID IN NUMBER
424 ,LEVELS_TO_EXPLODE IN NUMBER
425 ,BOM_OR_ENG IN NUMBER
426 ,IMPL_FLAG IN NUMBER
427 ,PLAN_FACTOR_FLAG IN NUMBER
428 ,INCL_LT_FLAG IN NUMBER
429 ,EXPLODE_OPTION IN NUMBER
430 ,MODULE IN NUMBER
431 ,CST_TYPE_ID IN NUMBER
432 ,STD_COMP_FLAG IN NUMBER
433 ,EXPL_QTY IN NUMBER
434 ,REPORT_OPTION IN NUMBER
435 ,REQ_ID IN NUMBER
436 ,CST_RLP_ID IN NUMBER
437 ,LOCK_FLAG IN NUMBER
438 ,ROLLUP_OPTION IN NUMBER
439 ,ALT_RTG_DESG IN VARCHAR2
440 ,ALT_DESG IN VARCHAR2
441 ,REV_DATE IN VARCHAR2
442 ,ERR_MSG OUT NOCOPY VARCHAR2
443 ,ERROR_CODE OUT NOCOPY NUMBER) IS
444 BEGIN
445 /* STPROC.INIT('begin BOMPEXPL.EXPLOSION_REPORT(:VERIFY_FLAG
446 , :ORG_ID, :ORDER_BY, :LIST_ID, :GRP_ID, :SESSION_ID, :LEVELS_TO_EXPLODE,
447 :BOM_OR_ENG, :IMPL_FLAG, :PLAN_FACTOR_FLAG, :INCL_LT_FLAG, :EXPLODE_OPTION, :MODULE, :CST_TYPE_ID,
448 :STD_COMP_FLAG, :EXPL_QTY, :REPORT_OPTION, :REQ_ID, :CST_RLP_ID, :LOCK_FLAG, :ROLLUP_OPTION, :ALT_RTG_DESG,
449 :ALT_DESG, :REV_DATE, :ERR_MSG, :ERROR_CODE); end;');
450 STPROC.BIND_I(VERIFY_FLAG);
451 STPROC.BIND_I(ORG_ID);
452 STPROC.BIND_I(ORDER_BY);
453 STPROC.BIND_I(LIST_ID);
454 STPROC.BIND_I(GRP_ID);
455 STPROC.BIND_I(SESSION_ID);
456 STPROC.BIND_I(LEVELS_TO_EXPLODE);
457 STPROC.BIND_I(BOM_OR_ENG);
458 STPROC.BIND_I(IMPL_FLAG);
459 STPROC.BIND_I(PLAN_FACTOR_FLAG);
460 STPROC.BIND_I(INCL_LT_FLAG);
461 STPROC.BIND_I(EXPLODE_OPTION);
462 STPROC.BIND_I(MODULE);
463 STPROC.BIND_I(CST_TYPE_ID);
464 STPROC.BIND_I(STD_COMP_FLAG);
465 STPROC.BIND_I(EXPL_QTY);
466 STPROC.BIND_I(REPORT_OPTION);
467 STPROC.BIND_I(REQ_ID);
468 STPROC.BIND_I(CST_RLP_ID);
469 STPROC.BIND_I(LOCK_FLAG);
470 STPROC.BIND_I(ROLLUP_OPTION);
471 STPROC.BIND_I(ALT_RTG_DESG);
472 STPROC.BIND_I(ALT_DESG);
473 STPROC.BIND_I(REV_DATE);
474 STPROC.BIND_O(ERR_MSG);
475 STPROC.BIND_O(ERROR_CODE);
476 STPROC.EXECUTE;
477 STPROC.RETRIEVE(25
478 ,ERR_MSG);
479 STPROC.RETRIEVE(26
480 ,ERROR_CODE);*/
481 BOMPEXPL.EXPLOSION_REPORT(VERIFY_FLAG,ORG_ID,ORDER_BY,LIST_ID,GRP_ID,SESSION_ID,
482 LEVELS_TO_EXPLODE,BOM_OR_ENG,IMPL_FLAG,PLAN_FACTOR_FLAG,INCL_LT_FLAG,
483 EXPLODE_OPTION,MODULE,CST_TYPE_ID,STD_COMP_FLAG,EXPL_QTY,REPORT_OPTION,REQ_ID,
484 CST_RLP_ID,LOCK_FLAG,ROLLUP_OPTION,ALT_RTG_DESG,ALT_DESG,REV_DATE,ERR_MSG,ERROR_CODE);
485 END EXPLOSION_REPORT;
486
487 PROCEDURE EXPLODERS(VERIFY_FLAG IN NUMBER
488 ,ONLINE_FLAG IN NUMBER
489 ,ORG_ID IN NUMBER
490 ,ORDER_BY IN NUMBER
491 ,GRP_ID IN NUMBER
492 ,SESSION_ID IN NUMBER
493 ,L_LEVELS_TO_EXPLODE IN NUMBER
494 ,BOM_OR_ENG IN NUMBER
495 ,IMPL_FLAG IN NUMBER
496 ,PLAN_FACTOR_FLAG IN NUMBER
497 ,INCL_LT_FLAG IN NUMBER
498 ,L_EXPLODE_OPTION IN NUMBER
499 ,MODULE IN NUMBER
500 ,CST_TYPE_ID IN NUMBER
501 ,STD_COMP_FLAG IN NUMBER
502 ,REV_DATE IN VARCHAR2
503 ,ERR_MSG OUT NOCOPY VARCHAR2
504 ,ERROR_CODE OUT NOCOPY NUMBER) IS
505 BEGIN
506 /* STPROC.INIT('begin BOMPEXPL.EXPLODERS(:VERIFY_FLAG, :ONLINE_FLAG, :ORG_ID,
507 :ORDER_BY, :GRP_ID, :SESSION_ID, :L_LEVELS_TO_EXPLODE, :BOM_OR_ENG,
508 :IMPL_FLAG, :PLAN_FACTOR_FLAG, :INCL_LT_FLAG, :L_EXPLODE_OPTION, :MODULE, :CST_TYPE_ID, :STD_COMP_FLAG, :REV_DATE, :ERR_MSG, :ERROR_CODE); end;');
509 STPROC.BIND_I(VERIFY_FLAG);
510 STPROC.BIND_I(ONLINE_FLAG);
511 STPROC.BIND_I(ORG_ID);
512 STPROC.BIND_I(ORDER_BY);
513 STPROC.BIND_I(GRP_ID);
514 STPROC.BIND_I(SESSION_ID);
515 STPROC.BIND_I(L_LEVELS_TO_EXPLODE);
516 STPROC.BIND_I(BOM_OR_ENG);
517 STPROC.BIND_I(IMPL_FLAG);
518 STPROC.BIND_I(PLAN_FACTOR_FLAG);
519 STPROC.BIND_I(INCL_LT_FLAG);
520 STPROC.BIND_I(L_EXPLODE_OPTION);
521 STPROC.BIND_I(MODULE);
522 STPROC.BIND_I(CST_TYPE_ID);
523 STPROC.BIND_I(STD_COMP_FLAG);
524 STPROC.BIND_I(REV_DATE);
525 STPROC.BIND_O(ERR_MSG);
526 STPROC.BIND_O(ERROR_CODE);
527 STPROC.EXECUTE;
528 STPROC.RETRIEVE(17
529 ,ERR_MSG);
530 STPROC.RETRIEVE(18
531 ,ERROR_CODE);*/null;
532 END EXPLODERS;
533
534 PROCEDURE LOOPSTR2MSG(GRP_ID IN NUMBER
535 ,VERIFY_MSG OUT NOCOPY VARCHAR2) IS
536 BEGIN
537 /* STPROC.INIT('begin BOMPEXPL.LOOPSTR2MSG(:GRP_ID, :VERIFY_MSG); end;');
538 STPROC.BIND_I(GRP_ID);
539 STPROC.BIND_O(VERIFY_MSG);
540 STPROC.EXECUTE;
541 STPROC.RETRIEVE(2
542 ,VERIFY_MSG);*/null;
543 END LOOPSTR2MSG;
544 FUNCTION g_filter RETURN boolean is
545 BEGIN
546 IF P_PRINT_OPTION1_FLAG = 2 THEN
547 RETURN(FALSE);
548 ELSE
549 RETURN(TRUE);
550 end if;
551 END g_filter;
552 END BOM_BOMRBOMC_XMLP_PKG;
553