DBA Data[Home] [Help]

APPS.WIP_DIAG_JOB_SCH_HC dependencies on JTF_DIAGNOSTIC_COREAPI

Line 42: JTF_DIAGNOSTIC_COREAPI.insert_style_sheet;

38: p_table_owner varchar2(30);
39: BEGIN
40: JTF_DIAGNOSTIC_ADAPTUTIL.setUpVars;
41: JTF_DIAGNOSTIC_ADAPTUTIL.addStringToReport('@html');
42: JTF_DIAGNOSTIC_COREAPI.insert_style_sheet;
43: row_limit := 1000;
44: -- accept input
45: l_org_id := JTF_DIAGNOSTIC_ADAPTUTIL.getInputValue('Organization Id',inputs);
46: l_job_id := JTF_DIAGNOSTIC_ADAPTUTIL.getInputValue('Job Id',inputs);

Line 89: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

85: 'where ' || we_dyn_where_clause || ' wdj.wip_entity_id = we.wip_entity_id '||
86: 'and wdj.date_released is null '||
87: 'and WDJ.STATUS_TYPE IN (3, 4, 5, 6, 14, 15) ';
88:
89: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
90: 'Jobs/Schedules with invalid Release Date.',true,null,'Y',row_limit);
91:
92: IF (dummy_num = row_limit) THEN
93: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 93: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

89: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
90: 'Jobs/Schedules with invalid Release Date.',true,null,'Y',row_limit);
91:
92: IF (dummy_num = row_limit) THEN
93: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
94: END IF;
95:
96: IF (dummy_num > 0) THEN
97: reportStr := 'The rows returned above signify that there are released jobs with null date released.';

Line 98: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

94: END IF;
95:
96: IF (dummy_num > 0) THEN
97: reportStr := 'The rows returned above signify that there are released jobs with null date released.';
98: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
99: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
100: END IF;
101:
102:

Line 99: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');

95:
96: IF (dummy_num > 0) THEN
97: reportStr := 'The rows returned above signify that there are released jobs with null date released.';
98: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
99: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
100: END IF;
101:
102:
103: -- 2 This script will identify all jobs where quantity completed on job is not in sync with Inventory

Line 125: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

121: ' and mmt.inventory_item_id = wdj.primary_item_id '||
122: ' and mmt.transaction_action_id in (31,32)) - quantity_completed) >0.00001 order by we.wip_entity_id '; /*FP of Bug#12727085 (Bug#13643469 ):WIP supports upto 6 decimals, while INV supports only upto 5 decimals.
123: Hence, we are checking for difference. */
124:
125: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
126: 'Jobs/Schedules with invalid Job Quantity Completed',true,null,'Y',row_limit);
127:
128: IF (dummy_num = row_limit) THEN
129: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 129: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

125: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
126: 'Jobs/Schedules with invalid Job Quantity Completed',true,null,'Y',row_limit);
127:
128: IF (dummy_num = row_limit) THEN
129: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
130: END IF;
131:
132: IF (dummy_num > 0) THEN
133: reportStr := 'The rows returned above signify that there are jobs where quantity completed on job is not in sync with Inventory.';

Line 134: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

130: END IF;
131:
132: IF (dummy_num > 0) THEN
133: reportStr := 'The rows returned above signify that there are jobs where quantity completed on job is not in sync with Inventory.';
134: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
135: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint('Please open a service request against Oracle Work in Process for the data-fix and root-cause, and upload the output of this diagnostic test.

');
136: END IF;
137:
138:

Line 135: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint('Please open a service request against Oracle Work in Process for the data-fix and root-cause, and upload the output of this diagnostic test.

');

131:
132: IF (dummy_num > 0) THEN
133: reportStr := 'The rows returned above signify that there are jobs where quantity completed on job is not in sync with Inventory.';
134: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
135: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint('Please open a service request against Oracle Work in Process for the data-fix and root-cause, and upload the output of this diagnostic test.

');
136: END IF;
137:
138:
139: -- 3 This script will identify all jobs where Resource Start and End Dates falls outside of Operation Start and End Dates

Line 163: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

159: ' and ( (wop.first_unit_start_date > wor.start_date) '||
160: ' or '||
161: ' (wop.last_unit_completion_date < wor.completion_date)) order by wop.organization_id, wop.wip_entity_id ';
162:
163: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
164: 'Jobs/Schedules with invalid Job Resource Start and End Date. ',true,null,'Y',row_limit);
165:
166: IF (dummy_num = row_limit) THEN
167: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 167: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

163: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
164: 'Jobs/Schedules with invalid Job Resource Start and End Date. ',true,null,'Y',row_limit);
165:
166: IF (dummy_num = row_limit) THEN
167: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
168: END IF;
169:
170: IF (dummy_num > 0) THEN
171: reportStr := 'The rows returned above signify that there are resources on Jobs/Schedules where Start and End Dates falls outside of Operation Start and End Dates.';

Line 172: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

168: END IF;
169:
170: IF (dummy_num > 0) THEN
171: reportStr := 'The rows returned above signify that there are resources on Jobs/Schedules where Start and End Dates falls outside of Operation Start and End Dates.';
172: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
173: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
174: END IF;
175:
176: --4 This script will identify all jobs where the quantity issued of material requirements is not in sync with Inventory

Line 173: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');

169:
170: IF (dummy_num > 0) THEN
171: reportStr := 'The rows returned above signify that there are resources on Jobs/Schedules where Start and End Dates falls outside of Operation Start and End Dates.';
172: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
173: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
174: END IF;
175:
176: --4 This script will identify all jobs where the quantity issued of material requirements is not in sync with Inventory
177: sqltxt :=

Line 197: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

193: ' HAVING (Sum(mmt.primary_quantity) - wro.quantity_issued*(-1)) >0.00001 '|| --FP Bug# 13643469 Bug#12727085 WIP supports upto 6 decimals, while INV supports only upto 5 decimals. Hence, we are checking for difference.
194: 'GROUP BY wdj.wip_entity_id, substr(we.wip_entity_name,1,15), we.organization_id, wro.inventory_item_id, wro.operation_seq_num, '||
195: ' wro.quantity_per_assembly, wro.required_quantity, wro.quantity_issued ';
196:
197: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
198: 'Jobs with Quantity_Issued in material requirements not in sync with Inventory.',true,null,'Y',row_limit);
199:
200: IF (dummy_num = row_limit) THEN
201: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 201: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

197: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
198: 'Jobs with Quantity_Issued in material requirements not in sync with Inventory.',true,null,'Y',row_limit);
199:
200: IF (dummy_num = row_limit) THEN
201: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
202: END IF;
203:
204: IF (dummy_num > 0) THEN
205: reportStr := 'The rows returned above signify that there are jobs where issued quantity of material requirements is not in sync with Inventory.';

Line 206: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

202: END IF;
203:
204: IF (dummy_num > 0) THEN
205: reportStr := 'The rows returned above signify that there are jobs where issued quantity of material requirements is not in sync with Inventory.';
206: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
207: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
208: END IF;
209:
210: --5 This script will identify unreleased jobs that have quantities on operation.

Line 207: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');

203:
204: IF (dummy_num > 0) THEN
205: reportStr := 'The rows returned above signify that there are jobs where issued quantity of material requirements is not in sync with Inventory.';
206: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
207: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
208: END IF;
209:
210: --5 This script will identify unreleased jobs that have quantities on operation.
211: sqltxt :=

Line 244: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

240: ' OR wo.quantity_scrapped <> 0 '||
241: ' OR wo.quantity_rejected <> 0 '||
242: ' OR wo.quantity_completed <> 0) ';
243:
244: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
245: 'Unreleased jobs that have quantities on operation.',true,null,'Y',row_limit);
246:
247: IF (dummy_num = row_limit) THEN
248: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 248: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

244: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
245: 'Unreleased jobs that have quantities on operation.',true,null,'Y',row_limit);
246:
247: IF (dummy_num = row_limit) THEN
248: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
249: END IF;
250:
251: IF (dummy_num > 0) THEN
252: reportStr := 'The rows returned above signify that there are unreleased jobs that have quantities on operation.';

Line 253: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

249: END IF;
250:
251: IF (dummy_num > 0) THEN
252: reportStr := 'The rows returned above signify that there are unreleased jobs that have quantities on operation.';
253: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
254: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
255: END IF;
256:
257: --6 This script will identify all released jobs that do not have any quantites on any operation.

Line 254: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');

250:
251: IF (dummy_num > 0) THEN
252: reportStr := 'The rows returned above signify that there are unreleased jobs that have quantities on operation.';
253: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
254: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
255: END IF;
256:
257: --6 This script will identify all released jobs that do not have any quantites on any operation.
258: sqltxt :=

Line 300: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

296: 'AND wo1.organization_id = wo.organization_id '||
297: 'AND wo1.wip_entity_id = wo.wip_entity_id '||
298: 'AND wo1.OPERATION_SEQ_NUM <= wo.PREVIOUS_OPERATION_SEQ_NUM ))';
299:
300: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
301: 'Released jobs that do not have any quantites on any operation.',true,null,'Y',row_limit);
302:
303: IF (dummy_num = row_limit) THEN
304: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 304: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

300: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
301: 'Released jobs that do not have any quantites on any operation.',true,null,'Y',row_limit);
302:
303: IF (dummy_num = row_limit) THEN
304: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
305: END IF;
306:
307: IF (dummy_num > 0) THEN
308: reportStr := 'The rows returned above signify that there are released jobs that do not have any quantites on any operation.';

Line 309: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

305: END IF;
306:
307: IF (dummy_num > 0) THEN
308: reportStr := 'The rows returned above signify that there are released jobs that do not have any quantites on any operation.';
309: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
310: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
311: END IF;
312:
313:

Line 310: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');

306:
307: IF (dummy_num > 0) THEN
308: reportStr := 'The rows returned above signify that there are released jobs that do not have any quantites on any operation.';
309: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
310: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
311: END IF;
312:
313:
314: --6.5 This script identifies all jobs that have operation quantities not in sync with move transaction quantities

Line 468: dummy_num := JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

464: ' )) ' ||
465: ' ) ' ||
466: ' ) ' ;
467:
468: dummy_num := JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
469: 'Jobs that have operation quantities not in sync with move transaction quantities.',true,null,'Y',row_limit);
470:
471: IF (dummy_num = row_limit) THEN
472: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 472: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

468: dummy_num := JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
469: 'Jobs that have operation quantities not in sync with move transaction quantities.',true,null,'Y',row_limit);
470:
471: IF (dummy_num = row_limit) THEN
472: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
473: END IF;
474:
475: if dummy_num > 0 then
476: reportStr := 'The rows returned above signify that Operation quantites are not in sync with Move Transactions. ';

Line 477: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

473: END IF;
474:
475: if dummy_num > 0 then
476: reportStr := 'The rows returned above signify that Operation quantites are not in sync with Move Transactions. ';
477: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
478: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
479: end if;
480:
481: --7 This script identifies all records that are Orphan in the WIP tables.

Line 478: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');

474:
475: if dummy_num > 0 then
476: reportStr := 'The rows returned above signify that Operation quantites are not in sync with Move Transactions. ';
477: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
478: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
479: end if;
480:
481: --7 This script identifies all records that are Orphan in the WIP tables.
482: sqltxt :=

Line 514: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

510: ' NOT EXISTS (SELECT 1 FROM wip_entities we '||
511: ' WHERE ' || we_dyn_where_clause || ' wo.wip_entity_id = we.wip_entity_id '||
512: ' AND wo.organization_id = we.organization_id) ';
513:
514: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
515: 'Records Orphan in the WIP tables.',true,null,'Y',row_limit);
516:
517: IF (dummy_num = row_limit) THEN
518: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 518: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

514: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
515: 'Records Orphan in the WIP tables.',true,null,'Y',row_limit);
516:
517: IF (dummy_num = row_limit) THEN
518: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
519: END IF;
520:
521: IF (dummy_num > 0) THEN
522: reportStr := 'The rows returned above signify that there are orphan records exist in WIP table(s). ';

Line 523: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

519: END IF;
520:
521: IF (dummy_num > 0) THEN
522: reportStr := 'The rows returned above signify that there are orphan records exist in WIP table(s). ';
523: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
524: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
525: END IF;
526:
527:

Line 524: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');

520:
521: IF (dummy_num > 0) THEN
522: reportStr := 'The rows returned above signify that there are orphan records exist in WIP table(s). ';
523: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
524: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
525: END IF;
526:
527:
528: -- 8 This script identifies all the jobs that have multiple PO Move resources in an operation.

Line 547: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

543: 'HAVING Count(*) > 1 '||
544: 'GROUP BY wdj.wip_entity_id, substr(we.wip_entity_name,1,15), '||
545: ' wdj.organization_id, wo.operation_seq_num ';
546:
547: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
548: 'Jobs that have multiple PO Move resources in an operation.',true,null,'Y',row_limit);
549:
550: IF (dummy_num = row_limit) THEN
551: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 551: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

547: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
548: 'Jobs that have multiple PO Move resources in an operation.',true,null,'Y',row_limit);
549:
550: IF (dummy_num = row_limit) THEN
551: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
552: END IF;
553:
554: IF (dummy_num > 0) THEN
555: reportStr := 'The rows returned above signify that there are multiple PO move resources in an operation.';

Line 556: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

552: END IF;
553:
554: IF (dummy_num > 0) THEN
555: reportStr := 'The rows returned above signify that there are multiple PO move resources in an operation.';
556: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
557: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
558: END IF;
559:
560:

Line 557: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');

553:
554: IF (dummy_num > 0) THEN
555: reportStr := 'The rows returned above signify that there are multiple PO move resources in an operation.';
556: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
557: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
558: END IF;
559:
560:
561: --9 This script check if there are any trailing spaces in the text fields on Discrete Job for a particular Job.

Line 635: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

631: if sqltext2 is not null then
632: sqltxt := sqltext2;
633: end if;
634:
635: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
636: 'Trailing spaces in the text fields for a Discrete Job',true,null,'Y',row_limit);
637:
638: IF (dummy_num > 0) THEN
639: reportStr := 'The rows returned above signify that there are trailing spaces in the text fields for Discrete Job.';

Line 640: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

636: 'Trailing spaces in the text fields for a Discrete Job',true,null,'Y',row_limit);
637:
638: IF (dummy_num > 0) THEN
639: reportStr := 'The rows returned above signify that there are trailing spaces in the text fields for Discrete Job.';
640: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
641: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
642: END IF;
643: END IF;
644:

Line 641: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');

637:
638: IF (dummy_num > 0) THEN
639: reportStr := 'The rows returned above signify that there are trailing spaces in the text fields for Discrete Job.';
640: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
641: JTF_DIAGNOSTIC_COREAPI.ActionErrorLink('Please refer to Metalink note ', 402202.1, 'to get the root-cause patch and steps to correct the data.

');
642: END IF;
643: END IF;
644:
645: --COMPLETION SUBINVENTORY / LOCATOR

Line 662: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

658: ' WHERE wdj.completion_subinventory = mi.secondary_inventory_name '||
659: ' AND wdj.organization_id = mi.organization_id '||
660: ' AND mi.secondary_inventory_name <> ''AX_INTRANS'' AND Nvl(mi.disable_date,Trunc(SYSDATE+1)) > Trunc(SYSDATE)) ';
661:
662: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
663: 'Jobs/Schedules with invalid Completion Subinventory',true,null,'Y',row_limit);
664:
665: IF (dummy_num = row_limit) THEN
666: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 666: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

662: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
663: 'Jobs/Schedules with invalid Completion Subinventory',true,null,'Y',row_limit);
664:
665: IF (dummy_num = row_limit) THEN
666: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
667: END IF;
668:
669: IF (dummy_num > 0) THEN
670: reportStr := 'The rows returned above signify that there are jobs having invalid completion subinventory.';

Line 671: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

667: END IF;
668:
669: IF (dummy_num > 0) THEN
670: reportStr := 'The rows returned above signify that there are jobs having invalid completion subinventory.';
671: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
672: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
673: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
674: END IF;
675:

Line 673: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

669: IF (dummy_num > 0) THEN
670: reportStr := 'The rows returned above signify that there are jobs having invalid completion subinventory.';
671: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
672: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
673: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
674: END IF;
675:
676:
677: --11. completion subinventory not valid for the assembly. assembly has "restrict subinventories" enabled and

Line 695: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

691: ' WHERE wdj.completion_subinventory = mi.secondary_inventory '||
692: ' AND wdj.organization_id = mi.organization_id '||
693: ' AND wdj.primary_item_id = mi.inventory_item_id) ';
694:
695: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
696: 'Jobs/Schedules with invalid Completion Subinventory - Not part of "Restricted Subinventories"',true,null,'Y',row_limit);
697:
698: IF (dummy_num = row_limit) THEN
699: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 699: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

695: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
696: 'Jobs/Schedules with invalid Completion Subinventory - Not part of "Restricted Subinventories"',true,null,'Y',row_limit);
697:
698: IF (dummy_num = row_limit) THEN
699: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
700: END IF;
701:
702: IF (dummy_num > 0) THEN
703: reportStr := 'The rows returned above signify that there are jobs having completion subinventory that is not part of "Restricted Subinventories". ';

Line 704: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

700: END IF;
701:
702: IF (dummy_num > 0) THEN
703: reportStr := 'The rows returned above signify that there are jobs having completion subinventory that is not part of "Restricted Subinventories". ';
704: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
705: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
706: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
707: END IF;
708:

Line 706: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

702: IF (dummy_num > 0) THEN
703: reportStr := 'The rows returned above signify that there are jobs having completion subinventory that is not part of "Restricted Subinventories". ';
704: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
705: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
706: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
707: END IF;
708:
709: -- 12. completion subinventory has invalid material status
710: sqltxt :=

Line 724: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

720: ' wdj.organization_id, wdj.primary_item_id, '||
721: ' wdj.completion_subinventory, '||
722: ' NULL, NULL, NULL, ''Z'') <> ''Y'' ';
723:
724: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
725: 'Jobs/Schedules with invalid Completion Subinventory - Invalid Material Status',true,null,'Y',row_limit);
726:
727: IF (dummy_num = row_limit) THEN
728: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 728: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

724: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
725: 'Jobs/Schedules with invalid Completion Subinventory - Invalid Material Status',true,null,'Y',row_limit);
726:
727: IF (dummy_num = row_limit) THEN
728: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
729: END IF;
730:
731: IF (dummy_num > 0) THEN
732: reportStr := 'The rows returned above signify that there are jobs having completion subinventory with invalid material status.';

Line 733: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

729: END IF;
730:
731: IF (dummy_num > 0) THEN
732: reportStr := 'The rows returned above signify that there are jobs having completion subinventory with invalid material status.';
733: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
734: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
735: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
736: END IF;
737:

Line 735: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

731: IF (dummy_num > 0) THEN
732: reportStr := 'The rows returned above signify that there are jobs having completion subinventory with invalid material status.';
733: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
734: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
735: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
736: END IF;
737:
738: -- 13. completion locator missing
739: sqltxt :=

Line 752: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

748: ' wdj.completion_subinventory, '||
749: ' wdj.primary_item_id) <> 1 '||
750: 'AND completion_locator_id IS NULL ';
751:
752: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
753: 'Jobs/Schedules with missing Completion Locator',true,null,'Y',row_limit);
754:
755: IF (dummy_num = row_limit) THEN
756: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 756: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

752: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
753: 'Jobs/Schedules with missing Completion Locator',true,null,'Y',row_limit);
754:
755: IF (dummy_num = row_limit) THEN
756: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
757: END IF;
758:
759: IF (dummy_num > 0) THEN
760: reportStr := 'The rows returned above signify that there are jobs with null completion locator.';

Line 761: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

757: END IF;
758:
759: IF (dummy_num > 0) THEN
760: reportStr := 'The rows returned above signify that there are jobs with null completion locator.';
761: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
762: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
763: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
764: END IF;
765:

Line 763: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

759: IF (dummy_num > 0) THEN
760: reportStr := 'The rows returned above signify that there are jobs with null completion locator.';
761: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
762: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
763: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
764: END IF;
765:
766: -- 14. completion locator was supposed to be null but populated
767: sqltxt :=

Line 780: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

776: ' wdj.completion_subinventory, '||
777: ' wdj.primary_item_id) = 1 '||
778: 'AND completion_locator_id IS NOT NULL ';
779:
780: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
781: 'Jobs/Schedules with non locator controlled Completion Subinventory but Completion Locator populated.',true,null,'Y',row_limit);
782:
783: IF (dummy_num = row_limit) THEN
784: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 784: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

780: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
781: 'Jobs/Schedules with non locator controlled Completion Subinventory but Completion Locator populated.',true,null,'Y',row_limit);
782:
783: IF (dummy_num = row_limit) THEN
784: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
785: END IF;
786:
787: IF (dummy_num > 0) THEN
788: reportStr := 'The rows returned above signify that there are jobs with non locator controlled Completion Subinventory but Completion Locator populated.';

Line 789: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

785: END IF;
786:
787: IF (dummy_num > 0) THEN
788: reportStr := 'The rows returned above signify that there are jobs with non locator controlled Completion Subinventory but Completion Locator populated.';
789: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
790: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
791: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
792: END IF;
793:

Line 791: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

787: IF (dummy_num > 0) THEN
788: reportStr := 'The rows returned above signify that there are jobs with non locator controlled Completion Subinventory but Completion Locator populated.';
789: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
790: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
791: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
792: END IF;
793:
794: --15. completion subinventory NULL but completion locator populated
795: sqltxt :=

Line 805: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

801: 'AND wdj.status_type IN (1,3,4) '||
802: 'AND wdj.completion_subinventory IS NULL '||
803: 'AND wdj.completion_locator_id IS NOT NULL ';
804:
805: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
806: 'Jobs/Schedules with a completion locator but no Completion Subinventory.',true,null,'Y',row_limit);
807:
808: IF (dummy_num = row_limit) THEN
809: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 809: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

805: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
806: 'Jobs/Schedules with a completion locator but no Completion Subinventory.',true,null,'Y',row_limit);
807:
808: IF (dummy_num = row_limit) THEN
809: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
810: END IF;
811:
812: IF (dummy_num > 0) THEN
813: reportStr := 'The rows returned above signify that there are jobs with a completion locator but no Completion Subinventory.';

Line 814: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

810: END IF;
811:
812: IF (dummy_num > 0) THEN
813: reportStr := 'The rows returned above signify that there are jobs with a completion locator but no Completion Subinventory.';
814: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
815: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
816: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
817: END IF;
818:

Line 816: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

812: IF (dummy_num > 0) THEN
813: reportStr := 'The rows returned above signify that there are jobs with a completion locator but no Completion Subinventory.';
814: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
815: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
816: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
817: END IF;
818:
819: -- 16. completion locator not valid
820: sqltxt :=

Line 837: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

833: ' AND wdj.organization_id = mil.organization_id '||
834: ' AND wdj.completion_subinventory = mil.subinventory_code '||
835: ' AND Nvl(mil.disable_date, trunc(sysdate+1)) > trunc(sysdate)) ';
836:
837: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
838: 'Jobs/Schedules with invalid Completion Locator ',true,null,'Y',row_limit);
839:
840: IF (dummy_num = row_limit) THEN
841: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 841: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

837: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
838: 'Jobs/Schedules with invalid Completion Locator ',true,null,'Y',row_limit);
839:
840: IF (dummy_num = row_limit) THEN
841: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
842: END IF;
843:
844: IF (dummy_num > 0) THEN
845: reportStr := 'The rows returned above signify that there are jobs having invalid completion locator.';

Line 846: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

842: END IF;
843:
844: IF (dummy_num > 0) THEN
845: reportStr := 'The rows returned above signify that there are jobs having invalid completion locator.';
846: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
847: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
848: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
849: END IF;
850:

Line 848: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

844: IF (dummy_num > 0) THEN
845: reportStr := 'The rows returned above signify that there are jobs having invalid completion locator.';
846: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
847: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
848: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
849: END IF;
850:
851: -- 17. completion locator not valid for the assembly. assembly has "restrict locators" enabled and
852: -- this locator is not part of it.

Line 871: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

867: ' WHERE wdj.completion_locator_id = msl.secondary_locator '||
868: ' AND wdj.organization_id = msl.organization_id '||
869: ' AND wdj.primary_item_id = msl.inventory_item_id) ';
870:
871: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
872: 'Jobs/Schedules with invalid Completion Locator - Not part of "Restricted Locators"',true,null,'Y',row_limit);
873:
874: IF (dummy_num = row_limit) THEN
875: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 875: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

871: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
872: 'Jobs/Schedules with invalid Completion Locator - Not part of "Restricted Locators"',true,null,'Y',row_limit);
873:
874: IF (dummy_num = row_limit) THEN
875: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
876: END IF;
877:
878: IF (dummy_num > 0) THEN
879: reportStr := 'The rows returned above signify that there are jobs having completion locator that is not part of "Restricted Locators".';

Line 880: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

876: END IF;
877:
878: IF (dummy_num > 0) THEN
879: reportStr := 'The rows returned above signify that there are jobs having completion locator that is not part of "Restricted Locators".';
880: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
881: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
882: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
883: END IF;
884:

Line 882: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

878: IF (dummy_num > 0) THEN
879: reportStr := 'The rows returned above signify that there are jobs having completion locator that is not part of "Restricted Locators".';
880: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
881: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
882: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
883: END IF;
884:
885: -- 18.completion locator has invalid material status
886: sqltxt :=

Line 902: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

898: ' wdj.organization_id, wdj.primary_item_id, '||
899: ' wdj.completion_subinventory, wdj.completion_locator_id, '||
900: ' NULL, NULL, ''Z'') <> ''Y'' ';
901:
902: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
903: 'Jobs/Schedules with invalid Completion Locator - Invalid Material Status',true,null,'Y',row_limit);
904:
905: IF (dummy_num = row_limit) THEN
906: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 906: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

902: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
903: 'Jobs/Schedules with invalid Completion Locator - Invalid Material Status',true,null,'Y',row_limit);
904:
905: IF (dummy_num = row_limit) THEN
906: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
907: END IF;
908:
909: IF (dummy_num > 0) THEN
910: reportStr := 'The rows returned above signify that there are jobs having completion locator with invalid material status.';

Line 911: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

907: END IF;
908:
909: IF (dummy_num > 0) THEN
910: reportStr := 'The rows returned above signify that there are jobs having completion locator with invalid material status.';
911: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
912: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
913: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
914: END IF;
915:

Line 913: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

909: IF (dummy_num > 0) THEN
910: reportStr := 'The rows returned above signify that there are jobs having completion locator with invalid material status.';
911: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
912: reportStr := 'Please query up each job in the discrete job form, and update the completion subinventory/locator of the problematic job to a valid value.

';
913: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
914: END IF;
915:
916: --SUPPLY SUBINVENTORY / LOCATOR
917: -----------------------------

Line 934: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

930: ' AND wro.organization_id = mi.organization_id '||
931: ' AND mi.secondary_inventory_name <> ''AX_INTRANS'' '||
932: ' AND Nvl(mi.disable_date,Trunc(SYSDATE+1)) > Trunc(SYSDATE)) ';
933:
934: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
935: 'Jobs/Schedules with invalid Supply Subinventory',true,null,'Y',row_limit);
936:
937: IF (dummy_num = row_limit) THEN
938: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 938: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

934: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
935: 'Jobs/Schedules with invalid Supply Subinventory',true,null,'Y',row_limit);
936:
937: IF (dummy_num = row_limit) THEN
938: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
939: END IF;
940:
941: IF (dummy_num > 0) THEN
942: reportStr := 'The rows returned above signify that there are jobs having invalid supply subinventory.';

Line 943: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

939: END IF;
940:
941: IF (dummy_num > 0) THEN
942: reportStr := 'The rows returned above signify that there are jobs having invalid supply subinventory.';
943: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
944: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
945: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
946: END IF;
947:

Line 945: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

941: IF (dummy_num > 0) THEN
942: reportStr := 'The rows returned above signify that there are jobs having invalid supply subinventory.';
943: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
944: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
945: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
946: END IF;
947:
948: --20. supply subinventory not valid for the component. component has "restrict subinventories" enabled and
949: -- this subinventory is not part of it.

Line 966: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

962: ' WHERE wro.supply_subinventory = mi.secondary_inventory '||
963: ' AND wro.organization_id = mi.organization_id '||
964: ' AND wro.inventory_item_id = mi.inventory_item_id) ';
965:
966: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
967: 'Jobs/Schedules with invalid Supply Subinventory - Not part of '||
968: ' "Restricted Subinventories".',true,null,'Y',row_limit);
969:
970: IF (dummy_num = row_limit) THEN

Line 971: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

967: 'Jobs/Schedules with invalid Supply Subinventory - Not part of '||
968: ' "Restricted Subinventories".',true,null,'Y',row_limit);
969:
970: IF (dummy_num = row_limit) THEN
971: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
972: END IF;
973:
974: IF (dummy_num > 0) THEN
975: reportStr := 'The rows returned above signify that there are jobs having supply subinventory that is not part of "Restricted Subinventories".';

Line 977: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

973:
974: IF (dummy_num > 0) THEN
975: reportStr := 'The rows returned above signify that there are jobs having supply subinventory that is not part of "Restricted Subinventories".';
976:
977: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
978: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
979: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
980: END IF;
981:

Line 979: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

975: reportStr := 'The rows returned above signify that there are jobs having supply subinventory that is not part of "Restricted Subinventories".';
976:
977: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
978: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
979: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
980: END IF;
981:
982: --21. supply subinventory has invalid material status
983: sqltxt :=

Line 997: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

993: ' wro.organization_id, wro.inventory_item_id, '||
994: ' wro.supply_subinventory, '||
995: ' NULL, NULL, NULL, ''Z'') <> ''Y'' ';
996:
997: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
998: 'Jobs/Schedules with invalid Supply Subinventory - Invalid Material Status',true,null,'Y',row_limit);
999:
1000: IF (dummy_num = row_limit) THEN
1001: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 1001: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

997: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
998: 'Jobs/Schedules with invalid Supply Subinventory - Invalid Material Status',true,null,'Y',row_limit);
999:
1000: IF (dummy_num = row_limit) THEN
1001: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
1002: END IF;
1003:
1004: IF (dummy_num > 0) THEN
1005: reportStr := 'The rows returned above signify that there are jobs having supply subinventory with invalid material status.';

Line 1006: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

1002: END IF;
1003:
1004: IF (dummy_num > 0) THEN
1005: reportStr := 'The rows returned above signify that there are jobs having supply subinventory with invalid material status.';
1006: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1007: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1008: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1009: END IF;
1010:

Line 1008: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

1004: IF (dummy_num > 0) THEN
1005: reportStr := 'The rows returned above signify that there are jobs having supply subinventory with invalid material status.';
1006: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1007: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1008: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1009: END IF;
1010:
1011: --22. supply locator locator missing
1012: sqltxt :=

Line 1025: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

1021: ' wro.supply_subinventory, '||
1022: ' wro.inventory_item_id) <> 1 '||
1023: 'AND wro.supply_locator_id IS NULL ';
1024:
1025: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1026: 'Jobs/Schedules with Supply Locator Missing',true,null,'Y',row_limit);
1027:
1028: IF (dummy_num = row_limit) THEN
1029: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 1029: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

1025: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1026: 'Jobs/Schedules with Supply Locator Missing',true,null,'Y',row_limit);
1027:
1028: IF (dummy_num = row_limit) THEN
1029: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
1030: END IF;
1031:
1032: IF (dummy_num > 0) THEN
1033: reportStr := 'The rows returned above signify that there are jobs where supply locator is missing.';

Line 1034: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

1030: END IF;
1031:
1032: IF (dummy_num > 0) THEN
1033: reportStr := 'The rows returned above signify that there are jobs where supply locator is missing.';
1034: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1035: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1036: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1037: END IF;
1038:

Line 1036: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

1032: IF (dummy_num > 0) THEN
1033: reportStr := 'The rows returned above signify that there are jobs where supply locator is missing.';
1034: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1035: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1036: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1037: END IF;
1038:
1039: --23. supply locator was supposed to be null but populated
1040: sqltxt :=

Line 1053: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

1049: ' wro.supply_subinventory, '||
1050: ' wro.inventory_item_id) = 1 '||
1051: 'AND wro.supply_locator_id IS NOT NULL ';
1052:
1053: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1054: 'Jobs/Schedules with non locator controlled Supply Subinventory but Supply Locator populated.',true,null,'Y',row_limit);
1055:
1056: IF (dummy_num = row_limit) THEN
1057: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 1057: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

1053: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1054: 'Jobs/Schedules with non locator controlled Supply Subinventory but Supply Locator populated.',true,null,'Y',row_limit);
1055:
1056: IF (dummy_num = row_limit) THEN
1057: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
1058: END IF;
1059:
1060: IF (dummy_num > 0) THEN
1061: reportStr := 'The rows returned above signify that there are jobs with non locator controlled Supply Subinventory but Supply Locator populated.';

Line 1062: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

1058: END IF;
1059:
1060: IF (dummy_num > 0) THEN
1061: reportStr := 'The rows returned above signify that there are jobs with non locator controlled Supply Subinventory but Supply Locator populated.';
1062: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1063: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1064: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1065: END IF;
1066:

Line 1064: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

1060: IF (dummy_num > 0) THEN
1061: reportStr := 'The rows returned above signify that there are jobs with non locator controlled Supply Subinventory but Supply Locator populated.';
1062: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1063: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1064: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1065: END IF;
1066:
1067: --24. supply subinventory NULL but supply locator populated
1068: sqltxt :=

Line 1078: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

1074: 'AND wdj.status_type IN (1,3,4) '||
1075: 'AND wro.supply_subinventory IS NULL '||
1076: 'AND wro.supply_locator_id IS NOT NULL ';
1077:
1078: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1079: 'Jobs/Schedules with a Supply Locator but no Supply Subinventory',true,null,'Y',row_limit);
1080:
1081: IF (dummy_num = row_limit) THEN
1082: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 1082: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

1078: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1079: 'Jobs/Schedules with a Supply Locator but no Supply Subinventory',true,null,'Y',row_limit);
1080:
1081: IF (dummy_num = row_limit) THEN
1082: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
1083: END IF;
1084:
1085: IF (dummy_num > 0) THEN
1086: reportStr := 'The rows returned above signify that there are jobs where supply locator is populated but supply subinventory is null.';

Line 1087: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

1083: END IF;
1084:
1085: IF (dummy_num > 0) THEN
1086: reportStr := 'The rows returned above signify that there are jobs where supply locator is populated but supply subinventory is null.';
1087: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1088: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1089: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1090: END IF;
1091:

Line 1089: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

1085: IF (dummy_num > 0) THEN
1086: reportStr := 'The rows returned above signify that there are jobs where supply locator is populated but supply subinventory is null.';
1087: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1088: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1089: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1090: END IF;
1091:
1092: --25. supply locator not valid
1093: sqltxt :=

Line 1110: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

1106: ' AND wro.organization_id = mil.organization_id '||
1107: ' AND wro.supply_subinventory = mil.subinventory_code '||
1108: ' AND Nvl(mil.disable_date, trunc(sysdate+1)) > trunc(sysdate)) ';
1109:
1110: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1111: 'Jobs/Schedules with invalid Supply Locator ',true,null,'Y',row_limit);
1112:
1113: IF (dummy_num = row_limit) THEN
1114: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 1114: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

1110: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1111: 'Jobs/Schedules with invalid Supply Locator ',true,null,'Y',row_limit);
1112:
1113: IF (dummy_num = row_limit) THEN
1114: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
1115: END IF;
1116:
1117: IF (dummy_num > 0) THEN
1118: reportStr := 'The rows returned above signify that there are jobs where supply locator is not valid.';

Line 1119: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

1115: END IF;
1116:
1117: IF (dummy_num > 0) THEN
1118: reportStr := 'The rows returned above signify that there are jobs where supply locator is not valid.';
1119: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1120: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1121: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1122: END IF;
1123:

Line 1121: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

1117: IF (dummy_num > 0) THEN
1118: reportStr := 'The rows returned above signify that there are jobs where supply locator is not valid.';
1119: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1120: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1121: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1122: END IF;
1123:
1124: --26. Supply locator not valid for the component. component has "restrict locators" enabled and
1125: -- this locator is not part of it.

Line 1144: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

1140: ' WHERE wro.supply_locator_id = msl.secondary_locator '||
1141: ' AND wro.organization_id = msl.organization_id '||
1142: ' AND wro.inventory_item_id = msl.inventory_item_id) ';
1143:
1144: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1145: 'Jobs/Schedules with invalid Supply Locator - Not part of "Restricted Locators"',true,null,'Y',row_limit);
1146:
1147: IF (dummy_num = row_limit) THEN
1148: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 1148: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

1144: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1145: 'Jobs/Schedules with invalid Supply Locator - Not part of "Restricted Locators"',true,null,'Y',row_limit);
1146:
1147: IF (dummy_num = row_limit) THEN
1148: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
1149: END IF;
1150:
1151: IF (dummy_num > 0) THEN
1152: reportStr := 'The rows returned above signify that there are jobs where supply locator is populated but it is not part of "Restricted Locators".';

Line 1153: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

1149: END IF;
1150:
1151: IF (dummy_num > 0) THEN
1152: reportStr := 'The rows returned above signify that there are jobs where supply locator is populated but it is not part of "Restricted Locators".';
1153: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1154: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1155: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1156: END IF;
1157:

Line 1155: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

1151: IF (dummy_num > 0) THEN
1152: reportStr := 'The rows returned above signify that there are jobs where supply locator is populated but it is not part of "Restricted Locators".';
1153: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1154: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1155: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1156: END IF;
1157:
1158: --27. supply locator has invalid material status
1159: sqltxt :=

Line 1175: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

1171: ' wro.organization_id, wro.inventory_item_id, '||
1172: ' wro.supply_subinventory, wro.supply_locator_id, '||
1173: ' NULL, NULL, ''Z'') <> ''Y'' ';
1174:
1175: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1176: 'Jobs/Schedules invalid Supply Locator - Invalid Material Status',true,null,'Y',row_limit);
1177:
1178: IF (dummy_num = row_limit) THEN
1179: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 1179: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

1175: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1176: 'Jobs/Schedules invalid Supply Locator - Invalid Material Status',true,null,'Y',row_limit);
1177:
1178: IF (dummy_num = row_limit) THEN
1179: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
1180: END IF;
1181:
1182: IF (dummy_num > 0) THEN
1183: reportStr := 'The rows returned above signify that there are jobs having supply locator with invalid material status.';

Line 1184: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

1180: END IF;
1181:
1182: IF (dummy_num > 0) THEN
1183: reportStr := 'The rows returned above signify that there are jobs having supply locator with invalid material status.';
1184: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1185: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1186: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1187: END IF;
1188:

Line 1186: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

1182: IF (dummy_num > 0) THEN
1183: reportStr := 'The rows returned above signify that there are jobs having supply locator with invalid material status.';
1184: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1185: reportStr := 'Please query up each job in the material requirements form, and update the supply subinventory/locator of the problematic component to a valid value.

';
1186: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1187: END IF;
1188:
1189: statusStr := 'SUCCESS';
1190: isFatal := 'FALSE';

Line 1222: JTF_DIAGNOSTIC_COREAPI.insert_style_sheet;

1218: l_check_failed_close_jobs varchar2(2000);
1219: BEGIN
1220: JTF_DIAGNOSTIC_ADAPTUTIL.setUpVars;
1221: JTF_DIAGNOSTIC_ADAPTUTIL.addStringToReport('@html');
1222: JTF_DIAGNOSTIC_COREAPI.insert_style_sheet;
1223: row_limit := 1000;
1224: -- accept input
1225: l_org_id := JTF_DIAGNOSTIC_ADAPTUTIL.getInputValue('Organization Id',inputs);
1226: l_job_id := JTF_DIAGNOSTIC_ADAPTUTIL.getInputValue('Job Id',inputs);

Line 1286: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

1282: ' where ' || we_dyn_where_clause || ' we.lpn_id = lpn.lpn_id '||
1283: ' and lpn.lpn_context = 2 '||
1284: ' and wip_entity_id in ' || l_check_failed_close_jobs ;
1285:
1286: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1287: 'Jobs failed in job close process due to pending transactions',true,null,'Y',row_limit);
1288:
1289: IF (dummy_num = row_limit) THEN
1290: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 1290: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

1286: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1287: 'Jobs failed in job close process due to pending transactions',true,null,'Y',row_limit);
1288:
1289: IF (dummy_num = row_limit) THEN
1290: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
1291: END IF;
1292:
1293: IF (dummy_num > 0) THEN
1294: reportStr := 'The rows returned above signify that jobs are failed to close due to pending transactions.';

Line 1295: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

1291: END IF;
1292:
1293: IF (dummy_num > 0) THEN
1294: reportStr := 'The rows returned above signify that jobs are failed to close due to pending transactions.';
1295: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1296: reportStr := 'Check the output and process the pending transactions against the job so that job can be closed.

';
1297: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1298: END IF;
1299:

Line 1297: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);

1293: IF (dummy_num > 0) THEN
1294: reportStr := 'The rows returned above signify that jobs are failed to close due to pending transactions.';
1295: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1296: reportStr := 'Check the output and process the pending transactions against the job so that job can be closed.

';
1297: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint(reportStr);
1298: END IF;
1299:
1300: --2 Jobs that are not closed but entity_type updated
1301: sqltxt :=

Line 1336: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

1332: ' and wdj.status_type <> 12 '||
1333: ' and we.entity_type in (3,7,8) -- closed DJ, closed EAM, closed LBJ '||
1334: ' order by 1,2 ' ;
1335:
1336: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1337: 'Jobs that are not closed but its entity_type updated to closed',true,null,'Y',row_limit);
1338:
1339: IF (dummy_num = row_limit) THEN
1340: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 1340: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

1336: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1337: 'Jobs that are not closed but its entity_type updated to closed',true,null,'Y',row_limit);
1338:
1339: IF (dummy_num = row_limit) THEN
1340: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
1341: END IF;
1342:
1343: IF (dummy_num > 0) THEN
1344: reportStr := 'The rows returned above signify that there are jobs that are not closed but its entity_type updated to closed.';

Line 1345: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

1341: END IF;
1342:
1343: IF (dummy_num > 0) THEN
1344: reportStr := 'The rows returned above signify that there are jobs that are not closed but its entity_type updated to closed.';
1345: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1346: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint('Please open a service request against Oracle Work in Process for the data-fix and root-cause, and upload the output of this diagnostic test .

');
1347: END IF;
1348:
1349: --3 Jobs that are closed but entity_type not updated

Line 1346: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint('Please open a service request against Oracle Work in Process for the data-fix and root-cause, and upload the output of this diagnostic test .

');

1342:
1343: IF (dummy_num > 0) THEN
1344: reportStr := 'The rows returned above signify that there are jobs that are not closed but its entity_type updated to closed.';
1345: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1346: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint('Please open a service request against Oracle Work in Process for the data-fix and root-cause, and upload the output of this diagnostic test .

');
1347: END IF;
1348:
1349: --3 Jobs that are closed but entity_type not updated
1350: sqltxt :=

Line 1385: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,

1381: ' and wdj.status_type = 12 '||
1382: ' and we.entity_type not in (3,7,8) '||
1383: ' order by 1,2';
1384:
1385: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1386: 'Jobs that are closed but its entity_type not updated to closed',true,null,'Y',row_limit);
1387:
1388: IF (dummy_num = row_limit) THEN
1389: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

Line 1389: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');

1385: dummy_num:= JTF_DIAGNOSTIC_COREAPI.display_sql(sqltxt,
1386: 'Jobs that are closed but its entity_type not updated to closed',true,null,'Y',row_limit);
1387:
1388: IF (dummy_num = row_limit) THEN
1389: JTF_DIAGNOSTIC_COREAPI.Line_Out('
Output limited to the first '|| row_limit || ' rows to prevent an excessively large output file.
');
1390: END IF;
1391:
1392: IF (dummy_num > 0) THEN
1393: reportStr := 'The rows returned above signify that there are jobs that are closed but its entity_type not updated to closed.';

Line 1394: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);

1390: END IF;
1391:
1392: IF (dummy_num > 0) THEN
1393: reportStr := 'The rows returned above signify that there are jobs that are closed but its entity_type not updated to closed.';
1394: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1395: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint('Please open a service request against Oracle Work in Process for the data-fix and root-cause, and upload the output of this diagnostic test.

');
1396: END IF;
1397:
1398: statusStr := 'SUCCESS';

Line 1395: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint('Please open a service request against Oracle Work in Process for the data-fix and root-cause, and upload the output of this diagnostic test.

');

1391:
1392: IF (dummy_num > 0) THEN
1393: reportStr := 'The rows returned above signify that there are jobs that are closed but its entity_type not updated to closed.';
1394: JTF_DIAGNOSTIC_COREAPI.ErrorPrint(reportStr);
1395: JTF_DIAGNOSTIC_COREAPI.ActionErrorPrint('Please open a service request against Oracle Work in Process for the data-fix and root-cause, and upload the output of this diagnostic test.

');
1396: END IF;
1397:
1398: statusStr := 'SUCCESS';
1399: isFatal := 'FALSE';