49: FROM fii_financial_dimensions
50: WHERE dimension_short_name = p_dim_short_name;
51: EXCEPTION
52: WHEN no_data_found THEN
53: fii_util.write_log('No master_value_set_id found for ' ||
54: p_dim_short_name );
55: raise;
56: WHEN others THEN
57: raise;
64: fii_message.write_log( msg_name => 'FII_UNMAPPED_LVS_LIST',
65: token_num => 0 );
66: END IF;
67:
68: fii_util.write_log( missing_csr_rec.vs_name || ' ' ||
69: missing_csr_rec.coa_name );
70: END LOOP;
71:
72: RETURN l_missing_cnt;
72: RETURN l_missing_cnt;
73:
74: EXCEPTION
75: WHEN others THEN
76: fii_util.write_log('Exception in detect_unmapped_local_vs: ' || sqlerrm );
77: fii_message.func_fail('FII_SETUP_VAL_C.detect_unmapped_local_vs');
78: RETURN -1;
79: END detect_unmapped_local_vs;
80:
125: -- Populate FII_CCC_MGR_GT
126: FII_GL_EXTRACTION_UTIL.LOAD_CCC_MGR (p_status);
127:
128: IF p_status = -1 then
129: fii_util.write_log('Error in FII_GL_EXTRACTION_UTIL.LOAD_CCC_MGR ...');
130: fii_util.write_log('Table FII_CCC_MGR_GT is not populated');
131: raise NO_DATA_FOUND;
132: END IF;
133:
126: FII_GL_EXTRACTION_UTIL.LOAD_CCC_MGR (p_status);
127:
128: IF p_status = -1 then
129: fii_util.write_log('Error in FII_GL_EXTRACTION_UTIL.LOAD_CCC_MGR ...');
130: fii_util.write_log('Table FII_CCC_MGR_GT is not populated');
131: raise NO_DATA_FOUND;
132: END IF;
133:
134: l_count := 0;
136: IF l_count = 0 THEN
137:
138: FII_MESSAGE.write_log (msg_name => 'FII_COM_CC_DUP_ORG',
139: token_num => 0);
140: fii_util.put_line(
141: 'Org Name Company Cost Center Manager Effective Date');
142: fii_util.put_line(
143: '----------- -------- ----------- ------------------ --------------');
144: END IF;
138: FII_MESSAGE.write_log (msg_name => 'FII_COM_CC_DUP_ORG',
139: token_num => 0);
140: fii_util.put_line(
141: 'Org Name Company Cost Center Manager Effective Date');
142: fii_util.put_line(
143: '----------- -------- ----------- ------------------ --------------');
144: END IF;
145:
146: l_count := l_count + 1;
145:
146: l_count := l_count + 1;
147: FOR r_list_org IN c_list_dup_org (r_dup_org.company_id,
148: r_dup_org.cost_center_id) LOOP
149: FII_UTIL.write_log ( r_list_org.organization || ' ' ||
150: r_list_org.company || ' ' ||
151: r_list_org.cost_center || ' ' ||
152: r_list_org.manager || ' ' ||
153: r_list_org.eff_date );
157: RETURN l_count;
158:
159: EXCEPTION
160: WHEN OTHERS THEN
161: fii_util.write_log('Exception in find_dup_ccc_org: ' || sqlerrm );
162: fii_message.func_fail('FII_SETUP_VAL_C.find_dup_ccc_org');
163: RETURN -1;
164:
165: END FIND_DUP_CCC_ORG;
229: -- User Setup Validations
230: ----------------------------------------------------------------------
231: -- Make sure that the username pass in exists in fii_cc_mgr_sup_v
232: ----------------------------------------------------------------------
233: fii_util.put_line(' ');
234: fii_util.put_line(
235: '+---------------------------------------------------------------------+');
236: fii_util.put_line(' ');
237: fii_util.put_line(
230: ----------------------------------------------------------------------
231: -- Make sure that the username pass in exists in fii_cc_mgr_sup_v
232: ----------------------------------------------------------------------
233: fii_util.put_line(' ');
234: fii_util.put_line(
235: '+---------------------------------------------------------------------+');
236: fii_util.put_line(' ');
237: fii_util.put_line(
238: '***********************************************************************');
232: ----------------------------------------------------------------------
233: fii_util.put_line(' ');
234: fii_util.put_line(
235: '+---------------------------------------------------------------------+');
236: fii_util.put_line(' ');
237: fii_util.put_line(
238: '***********************************************************************');
239: fii_util.put_line(
240: '********************** User Setup Validations ************************');
233: fii_util.put_line(' ');
234: fii_util.put_line(
235: '+---------------------------------------------------------------------+');
236: fii_util.put_line(' ');
237: fii_util.put_line(
238: '***********************************************************************');
239: fii_util.put_line(
240: '********************** User Setup Validations ************************');
241: fii_util.put_line(
235: '+---------------------------------------------------------------------+');
236: fii_util.put_line(' ');
237: fii_util.put_line(
238: '***********************************************************************');
239: fii_util.put_line(
240: '********************** User Setup Validations ************************');
241: fii_util.put_line(
242: '***********************************************************************');
243: fii_util.put_line(' ');
237: fii_util.put_line(
238: '***********************************************************************');
239: fii_util.put_line(
240: '********************** User Setup Validations ************************');
241: fii_util.put_line(
242: '***********************************************************************');
243: fii_util.put_line(' ');
244: fii_util.put_line('Performing Check for: User exists in fii_cc_mgr_sup_v');
245: fii_util.put_line(
239: fii_util.put_line(
240: '********************** User Setup Validations ************************');
241: fii_util.put_line(
242: '***********************************************************************');
243: fii_util.put_line(' ');
244: fii_util.put_line('Performing Check for: User exists in fii_cc_mgr_sup_v');
245: fii_util.put_line(
246: '+---------------------------------------------------------------------+');
247: -- Check if user exists in manager view
240: '********************** User Setup Validations ************************');
241: fii_util.put_line(
242: '***********************************************************************');
243: fii_util.put_line(' ');
244: fii_util.put_line('Performing Check for: User exists in fii_cc_mgr_sup_v');
245: fii_util.put_line(
246: '+---------------------------------------------------------------------+');
247: -- Check if user exists in manager view
248: fii_util.put_line('START CHECK: User exists in fii_cc_mgr_sup_v');
241: fii_util.put_line(
242: '***********************************************************************');
243: fii_util.put_line(' ');
244: fii_util.put_line('Performing Check for: User exists in fii_cc_mgr_sup_v');
245: fii_util.put_line(
246: '+---------------------------------------------------------------------+');
247: -- Check if user exists in manager view
248: fii_util.put_line('START CHECK: User exists in fii_cc_mgr_sup_v');
249: fii_util.put_line(' ');
244: fii_util.put_line('Performing Check for: User exists in fii_cc_mgr_sup_v');
245: fii_util.put_line(
246: '+---------------------------------------------------------------------+');
247: -- Check if user exists in manager view
248: fii_util.put_line('START CHECK: User exists in fii_cc_mgr_sup_v');
249: fii_util.put_line(' ');
250:
251: -- Set a default value for l_user_id
252: l_user_id := -1;
245: fii_util.put_line(
246: '+---------------------------------------------------------------------+');
247: -- Check if user exists in manager view
248: fii_util.put_line('START CHECK: User exists in fii_cc_mgr_sup_v');
249: fii_util.put_line(' ');
250:
251: -- Set a default value for l_user_id
252: l_user_id := -1;
253:
260: WHERE a.user_name = UPPER(p_user_name)
261: AND a.employee_id = b.id;
262: EXCEPTION
263: WHEN no_data_found THEN
264: fii_util.put_line('The username '|| p_user_name ||
265: 'is not found in fii_cc_mgr_sup_v');
266:
267: END;
268:
265: 'is not found in fii_cc_mgr_sup_v');
266:
267: END;
268:
269: fii_util.put_line('Username parameter = ' || p_user_name ||
270: ' and its user_id = ' || l_user_id);
271:
272: fii_util.put_line(' ');
273: IF (l_user_id = -1) THEN
268:
269: fii_util.put_line('Username parameter = ' || p_user_name ||
270: ' and its user_id = ' || l_user_id);
271:
272: fii_util.put_line(' ');
273: IF (l_user_id = -1) THEN
274: fii_util.put_line('DIAGNOSIS: The user ' || p_user_name ||
275: ' does not have a person attached to it or the person does not exist in fii_cc_mgr_sup_v');
276:
270: ' and its user_id = ' || l_user_id);
271:
272: fii_util.put_line(' ');
273: IF (l_user_id = -1) THEN
274: fii_util.put_line('DIAGNOSIS: The user ' || p_user_name ||
275: ' does not have a person attached to it or the person does not exist in fii_cc_mgr_sup_v');
276:
277: ELSE
278: fii_util.put_line('DIAGNOSIS: A person is attached to the user ' || p_user_name ||
274: fii_util.put_line('DIAGNOSIS: The user ' || p_user_name ||
275: ' does not have a person attached to it or the person does not exist in fii_cc_mgr_sup_v');
276:
277: ELSE
278: fii_util.put_line('DIAGNOSIS: A person is attached to the user ' || p_user_name ||
279: ' and this person exists in fii_cc_mgr_sup_v');
280: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
281: END IF;
282:
276:
277: ELSE
278: fii_util.put_line('DIAGNOSIS: A person is attached to the user ' || p_user_name ||
279: ' and this person exists in fii_cc_mgr_sup_v');
280: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
281: END IF;
282:
283: fii_util.put_line(' ');
284: fii_util.put_line('END CHECK: User exists in fii_cc_mgr_sup_v');
279: ' and this person exists in fii_cc_mgr_sup_v');
280: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
281: END IF;
282:
283: fii_util.put_line(' ');
284: fii_util.put_line('END CHECK: User exists in fii_cc_mgr_sup_v');
285: fii_util.put_line(
286: '+---------------------------------------------------------------------+');
287:
280: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
281: END IF;
282:
283: fii_util.put_line(' ');
284: fii_util.put_line('END CHECK: User exists in fii_cc_mgr_sup_v');
285: fii_util.put_line(
286: '+---------------------------------------------------------------------+');
287:
288: ----------------------------------------------------------------------
281: END IF;
282:
283: fii_util.put_line(' ');
284: fii_util.put_line('END CHECK: User exists in fii_cc_mgr_sup_v');
285: fii_util.put_line(
286: '+---------------------------------------------------------------------+');
287:
288: ----------------------------------------------------------------------
289: -- Check to see if manager assignment status is either Active Assignment
288: ----------------------------------------------------------------------
289: -- Check to see if manager assignment status is either Active Assignment
290: -- or Suspended Assignment for the manager attached to the user logged in
291: ----------------------------------------------------------------------
292: fii_util.put_line(' ');
293: fii_util.put_line(
294: '+---------------------------------------------------------------------+');
295: fii_util.put_line('Performing Check for: Manager Assignment Status');
296: fii_util.put_line(
289: -- Check to see if manager assignment status is either Active Assignment
290: -- or Suspended Assignment for the manager attached to the user logged in
291: ----------------------------------------------------------------------
292: fii_util.put_line(' ');
293: fii_util.put_line(
294: '+---------------------------------------------------------------------+');
295: fii_util.put_line('Performing Check for: Manager Assignment Status');
296: fii_util.put_line(
297: '+---------------------------------------------------------------------+');
291: ----------------------------------------------------------------------
292: fii_util.put_line(' ');
293: fii_util.put_line(
294: '+---------------------------------------------------------------------+');
295: fii_util.put_line('Performing Check for: Manager Assignment Status');
296: fii_util.put_line(
297: '+---------------------------------------------------------------------+');
298: -- Check the manager assignment status
299: fii_util.put_line('START CHECK: Manager Assignment Status');
292: fii_util.put_line(' ');
293: fii_util.put_line(
294: '+---------------------------------------------------------------------+');
295: fii_util.put_line('Performing Check for: Manager Assignment Status');
296: fii_util.put_line(
297: '+---------------------------------------------------------------------+');
298: -- Check the manager assignment status
299: fii_util.put_line('START CHECK: Manager Assignment Status');
300: fii_util.put_line(' ');
295: fii_util.put_line('Performing Check for: Manager Assignment Status');
296: fii_util.put_line(
297: '+---------------------------------------------------------------------+');
298: -- Check the manager assignment status
299: fii_util.put_line('START CHECK: Manager Assignment Status');
300: fii_util.put_line(' ');
301:
302: OPEN mgr_status_cur(l_user_id);
303: FETCH mgr_status_cur INTO l_status;
296: fii_util.put_line(
297: '+---------------------------------------------------------------------+');
298: -- Check the manager assignment status
299: fii_util.put_line('START CHECK: Manager Assignment Status');
300: fii_util.put_line(' ');
301:
302: OPEN mgr_status_cur(l_user_id);
303: FETCH mgr_status_cur INTO l_status;
304:
302: OPEN mgr_status_cur(l_user_id);
303: FETCH mgr_status_cur INTO l_status;
304:
305: IF mgr_status_cur%NOTFOUND THEN
306: fii_util.put_line('DIAGNOSIS: Manager Assignment Status for user '''||
307: p_user_name||
308: ''' is ''Active'' or ''Suspended''');
309: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
310: ELSE
305: IF mgr_status_cur%NOTFOUND THEN
306: fii_util.put_line('DIAGNOSIS: Manager Assignment Status for user '''||
307: p_user_name||
308: ''' is ''Active'' or ''Suspended''');
309: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
310: ELSE
311: fii_util.put_line('DIAGNOSIS: Manager Assignment Status for user '''||
312: p_user_name||
313: ''' is neither ''Active'' nor ''Suspended''. Please review.');
307: p_user_name||
308: ''' is ''Active'' or ''Suspended''');
309: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
310: ELSE
311: fii_util.put_line('DIAGNOSIS: Manager Assignment Status for user '''||
312: p_user_name||
313: ''' is neither ''Active'' nor ''Suspended''. Please review.');
314: END IF;
315:
315:
316:
317: CLOSE mgr_status_cur;
318:
319: fii_util.put_line(' ');
320: fii_util.put_line('END CHECK: Manager Assignment Status');
321: fii_util.put_line(
322: '+---------------------------------------------------------------------+');
323:
316:
317: CLOSE mgr_status_cur;
318:
319: fii_util.put_line(' ');
320: fii_util.put_line('END CHECK: Manager Assignment Status');
321: fii_util.put_line(
322: '+---------------------------------------------------------------------+');
323:
324: ----------------------------------------------------------------------
317: CLOSE mgr_status_cur;
318:
319: fii_util.put_line(' ');
320: fii_util.put_line('END CHECK: Manager Assignment Status');
321: fii_util.put_line(
322: '+---------------------------------------------------------------------+');
323:
324: ----------------------------------------------------------------------
325: -- Check to see if we have operating units assigned to the security profile
323:
324: ----------------------------------------------------------------------
325: -- Check to see if we have operating units assigned to the security profile
326: ----------------------------------------------------------------------
327: fii_util.put_line(' ');
328: fii_util.put_line(
329: '+---------------------------------------------------------------------+');
330: fii_util.put_line('Performing Check for: Profile-Operating Unit Assignment');
331: fii_util.put_line(
324: ----------------------------------------------------------------------
325: -- Check to see if we have operating units assigned to the security profile
326: ----------------------------------------------------------------------
327: fii_util.put_line(' ');
328: fii_util.put_line(
329: '+---------------------------------------------------------------------+');
330: fii_util.put_line('Performing Check for: Profile-Operating Unit Assignment');
331: fii_util.put_line(
332: '+---------------------------------------------------------------------+');
326: ----------------------------------------------------------------------
327: fii_util.put_line(' ');
328: fii_util.put_line(
329: '+---------------------------------------------------------------------+');
330: fii_util.put_line('Performing Check for: Profile-Operating Unit Assignment');
331: fii_util.put_line(
332: '+---------------------------------------------------------------------+');
333: -- Check the profile-operating unit assignment
334: fii_util.put_line('START CHECK: Profile-Operating Unit Assignment Analysis');
327: fii_util.put_line(' ');
328: fii_util.put_line(
329: '+---------------------------------------------------------------------+');
330: fii_util.put_line('Performing Check for: Profile-Operating Unit Assignment');
331: fii_util.put_line(
332: '+---------------------------------------------------------------------+');
333: -- Check the profile-operating unit assignment
334: fii_util.put_line('START CHECK: Profile-Operating Unit Assignment Analysis');
335: fii_util.put_line(' ');
330: fii_util.put_line('Performing Check for: Profile-Operating Unit Assignment');
331: fii_util.put_line(
332: '+---------------------------------------------------------------------+');
333: -- Check the profile-operating unit assignment
334: fii_util.put_line('START CHECK: Profile-Operating Unit Assignment Analysis');
335: fii_util.put_line(' ');
336:
337: l_cnt := 0;
338: OPEN sec_org_cur;
331: fii_util.put_line(
332: '+---------------------------------------------------------------------+');
333: -- Check the profile-operating unit assignment
334: fii_util.put_line('START CHECK: Profile-Operating Unit Assignment Analysis');
335: fii_util.put_line(' ');
336:
337: l_cnt := 0;
338: OPEN sec_org_cur;
339: LOOP
340: FETCH sec_org_cur INTO l_sec_profile_name;
341: EXIT WHEN sec_org_cur%NOTFOUND;
342:
343: IF (l_cnt = 0) THEN
344: fii_util.put_line('Profile Name ');
345: fii_util.put_line(
346: '-----------------------------------------------------------------------');
347: l_cnt := l_cnt + 1;
348: END IF;
341: EXIT WHEN sec_org_cur%NOTFOUND;
342:
343: IF (l_cnt = 0) THEN
344: fii_util.put_line('Profile Name ');
345: fii_util.put_line(
346: '-----------------------------------------------------------------------');
347: l_cnt := l_cnt + 1;
348: END IF;
349: fii_util.put_line(l_sec_profile_name);
345: fii_util.put_line(
346: '-----------------------------------------------------------------------');
347: l_cnt := l_cnt + 1;
348: END IF;
349: fii_util.put_line(l_sec_profile_name);
350: END LOOP;
351: CLOSE sec_org_cur;
352:
353: fii_util.put_line(' ');
349: fii_util.put_line(l_sec_profile_name);
350: END LOOP;
351: CLOSE sec_org_cur;
352:
353: fii_util.put_line(' ');
354: IF l_cnt > 0 THEN
355: fii_util.put_line(
356: 'DIAGNOSIS: Please assign Operating units for the above profiles.');
357: ELSE
351: CLOSE sec_org_cur;
352:
353: fii_util.put_line(' ');
354: IF l_cnt > 0 THEN
355: fii_util.put_line(
356: 'DIAGNOSIS: Please assign Operating units for the above profiles.');
357: ELSE
358: fii_util.put_line(
359: 'DIAGNOSIS: Profile-Operating Unit Assignments Verified.');
354: IF l_cnt > 0 THEN
355: fii_util.put_line(
356: 'DIAGNOSIS: Please assign Operating units for the above profiles.');
357: ELSE
358: fii_util.put_line(
359: 'DIAGNOSIS: Profile-Operating Unit Assignments Verified.');
360: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
361: END IF;
362:
356: 'DIAGNOSIS: Please assign Operating units for the above profiles.');
357: ELSE
358: fii_util.put_line(
359: 'DIAGNOSIS: Profile-Operating Unit Assignments Verified.');
360: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
361: END IF;
362:
363: fii_util.put_line(' ');
364: fii_util.put_line(
359: 'DIAGNOSIS: Profile-Operating Unit Assignments Verified.');
360: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
361: END IF;
362:
363: fii_util.put_line(' ');
364: fii_util.put_line(
365: 'END CHECK: Profile-Organization Unit Assignment Analysis.');
366: fii_util.put_line(
367: '+---------------------------------------------------------------------+');
360: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
361: END IF;
362:
363: fii_util.put_line(' ');
364: fii_util.put_line(
365: 'END CHECK: Profile-Organization Unit Assignment Analysis.');
366: fii_util.put_line(
367: '+---------------------------------------------------------------------+');
368:
362:
363: fii_util.put_line(' ');
364: fii_util.put_line(
365: 'END CHECK: Profile-Organization Unit Assignment Analysis.');
366: fii_util.put_line(
367: '+---------------------------------------------------------------------+');
368:
369: END VALIDATE_USER_SETUP;
370:
858:
859: -----------------------------------------------------------------------
860: -- Print report header in logfile
861: -----------------------------------------------------------------------
862: fii_util.put_line(' ');
863: fii_util.put_line(
864: '+=====================================================================+');
865: fii_util.put_line('+ DBI Financials Diagnostics ');
866: fii_util.put_line(
859: -----------------------------------------------------------------------
860: -- Print report header in logfile
861: -----------------------------------------------------------------------
862: fii_util.put_line(' ');
863: fii_util.put_line(
864: '+=====================================================================+');
865: fii_util.put_line('+ DBI Financials Diagnostics ');
866: fii_util.put_line(
867: '+ DBI_DIAGNOSTIC module: Daily Business Intelligence Diagnostic Program ');
861: -----------------------------------------------------------------------
862: fii_util.put_line(' ');
863: fii_util.put_line(
864: '+=====================================================================+');
865: fii_util.put_line('+ DBI Financials Diagnostics ');
866: fii_util.put_line(
867: '+ DBI_DIAGNOSTIC module: Daily Business Intelligence Diagnostic Program ');
868: fii_util.put_line('+ Current System Time is ' || l_start_time);
869: fii_util.put_line(
862: fii_util.put_line(' ');
863: fii_util.put_line(
864: '+=====================================================================+');
865: fii_util.put_line('+ DBI Financials Diagnostics ');
866: fii_util.put_line(
867: '+ DBI_DIAGNOSTIC module: Daily Business Intelligence Diagnostic Program ');
868: fii_util.put_line('+ Current System Time is ' || l_start_time);
869: fii_util.put_line(
870: '+=====================================================================+');
864: '+=====================================================================+');
865: fii_util.put_line('+ DBI Financials Diagnostics ');
866: fii_util.put_line(
867: '+ DBI_DIAGNOSTIC module: Daily Business Intelligence Diagnostic Program ');
868: fii_util.put_line('+ Current System Time is ' || l_start_time);
869: fii_util.put_line(
870: '+=====================================================================+');
871: fii_util.put_line(' ');
872: fii_util.put_line('** Diagnostics Starts ** '|| l_start_time);
865: fii_util.put_line('+ DBI Financials Diagnostics ');
866: fii_util.put_line(
867: '+ DBI_DIAGNOSTIC module: Daily Business Intelligence Diagnostic Program ');
868: fii_util.put_line('+ Current System Time is ' || l_start_time);
869: fii_util.put_line(
870: '+=====================================================================+');
871: fii_util.put_line(' ');
872: fii_util.put_line('** Diagnostics Starts ** '|| l_start_time);
873: fii_util.put_line
867: '+ DBI_DIAGNOSTIC module: Daily Business Intelligence Diagnostic Program ');
868: fii_util.put_line('+ Current System Time is ' || l_start_time);
869: fii_util.put_line(
870: '+=====================================================================+');
871: fii_util.put_line(' ');
872: fii_util.put_line('** Diagnostics Starts ** '|| l_start_time);
873: fii_util.put_line
874: ('** Start of log messages from DBI Financials Validation ***');
875: fii_util.put_line(' ');
868: fii_util.put_line('+ Current System Time is ' || l_start_time);
869: fii_util.put_line(
870: '+=====================================================================+');
871: fii_util.put_line(' ');
872: fii_util.put_line('** Diagnostics Starts ** '|| l_start_time);
873: fii_util.put_line
874: ('** Start of log messages from DBI Financials Validation ***');
875: fii_util.put_line(' ');
876:
869: fii_util.put_line(
870: '+=====================================================================+');
871: fii_util.put_line(' ');
872: fii_util.put_line('** Diagnostics Starts ** '|| l_start_time);
873: fii_util.put_line
874: ('** Start of log messages from DBI Financials Validation ***');
875: fii_util.put_line(' ');
876:
877: -----------------------------------------------------------------------
871: fii_util.put_line(' ');
872: fii_util.put_line('** Diagnostics Starts ** '|| l_start_time);
873: fii_util.put_line
874: ('** Start of log messages from DBI Financials Validation ***');
875: fii_util.put_line(' ');
876:
877: -----------------------------------------------------------------------
878: -- Retrieve setup information
879: -----------------------------------------------------------------------
889: l_budget_time_unit := FND_PROFILE.Value('FII_BUDGET_TIME_UNIT');
890: l_forecast_time_unit := FND_PROFILE.Value('FII_FORECAST_TIME_UNIT');
891:
892: -- Print setup information to the logfile
893: fii_util.put_line(' ');
894: fii_util.put_line('Checking for missing setup information...');
895: fii_util.put_line(
896: '+---------------------------------------------------------------------+');
897: fii_util.put_line('INIT: Global Start Date = '||l_global_start_date);
890: l_forecast_time_unit := FND_PROFILE.Value('FII_FORECAST_TIME_UNIT');
891:
892: -- Print setup information to the logfile
893: fii_util.put_line(' ');
894: fii_util.put_line('Checking for missing setup information...');
895: fii_util.put_line(
896: '+---------------------------------------------------------------------+');
897: fii_util.put_line('INIT: Global Start Date = '||l_global_start_date);
898: fii_util.put_line('INIT: Primary Currency = '||l_prim_curr_code);
891:
892: -- Print setup information to the logfile
893: fii_util.put_line(' ');
894: fii_util.put_line('Checking for missing setup information...');
895: fii_util.put_line(
896: '+---------------------------------------------------------------------+');
897: fii_util.put_line('INIT: Global Start Date = '||l_global_start_date);
898: fii_util.put_line('INIT: Primary Currency = '||l_prim_curr_code);
899: fii_util.put_line('INIT: Primary MAU = '||l_prim_curr_mau);
893: fii_util.put_line(' ');
894: fii_util.put_line('Checking for missing setup information...');
895: fii_util.put_line(
896: '+---------------------------------------------------------------------+');
897: fii_util.put_line('INIT: Global Start Date = '||l_global_start_date);
898: fii_util.put_line('INIT: Primary Currency = '||l_prim_curr_code);
899: fii_util.put_line('INIT: Primary MAU = '||l_prim_curr_mau);
900: fii_util.put_line('INIT: User ID = '||l_user_id);
901: fii_util.put_line('INIT: Login ID = '||l_login_id);
894: fii_util.put_line('Checking for missing setup information...');
895: fii_util.put_line(
896: '+---------------------------------------------------------------------+');
897: fii_util.put_line('INIT: Global Start Date = '||l_global_start_date);
898: fii_util.put_line('INIT: Primary Currency = '||l_prim_curr_code);
899: fii_util.put_line('INIT: Primary MAU = '||l_prim_curr_mau);
900: fii_util.put_line('INIT: User ID = '||l_user_id);
901: fii_util.put_line('INIT: Login ID = '||l_login_id);
902: fii_util.put_line('INIT: Request ID = '||l_req_id);
895: fii_util.put_line(
896: '+---------------------------------------------------------------------+');
897: fii_util.put_line('INIT: Global Start Date = '||l_global_start_date);
898: fii_util.put_line('INIT: Primary Currency = '||l_prim_curr_code);
899: fii_util.put_line('INIT: Primary MAU = '||l_prim_curr_mau);
900: fii_util.put_line('INIT: User ID = '||l_user_id);
901: fii_util.put_line('INIT: Login ID = '||l_login_id);
902: fii_util.put_line('INIT: Request ID = '||l_req_id);
903: fii_util.put_line('INIT: Budget Period Type = '||l_budget_time_unit);
896: '+---------------------------------------------------------------------+');
897: fii_util.put_line('INIT: Global Start Date = '||l_global_start_date);
898: fii_util.put_line('INIT: Primary Currency = '||l_prim_curr_code);
899: fii_util.put_line('INIT: Primary MAU = '||l_prim_curr_mau);
900: fii_util.put_line('INIT: User ID = '||l_user_id);
901: fii_util.put_line('INIT: Login ID = '||l_login_id);
902: fii_util.put_line('INIT: Request ID = '||l_req_id);
903: fii_util.put_line('INIT: Budget Period Type = '||l_budget_time_unit);
904: fii_util.put_line('INIT: Forecast Period Type = '||l_forecast_time_unit);
897: fii_util.put_line('INIT: Global Start Date = '||l_global_start_date);
898: fii_util.put_line('INIT: Primary Currency = '||l_prim_curr_code);
899: fii_util.put_line('INIT: Primary MAU = '||l_prim_curr_mau);
900: fii_util.put_line('INIT: User ID = '||l_user_id);
901: fii_util.put_line('INIT: Login ID = '||l_login_id);
902: fii_util.put_line('INIT: Request ID = '||l_req_id);
903: fii_util.put_line('INIT: Budget Period Type = '||l_budget_time_unit);
904: fii_util.put_line('INIT: Forecast Period Type = '||l_forecast_time_unit);
905: fii_util.put_line(
898: fii_util.put_line('INIT: Primary Currency = '||l_prim_curr_code);
899: fii_util.put_line('INIT: Primary MAU = '||l_prim_curr_mau);
900: fii_util.put_line('INIT: User ID = '||l_user_id);
901: fii_util.put_line('INIT: Login ID = '||l_login_id);
902: fii_util.put_line('INIT: Request ID = '||l_req_id);
903: fii_util.put_line('INIT: Budget Period Type = '||l_budget_time_unit);
904: fii_util.put_line('INIT: Forecast Period Type = '||l_forecast_time_unit);
905: fii_util.put_line(
906: '+---------------------------------------------------------------------+');
899: fii_util.put_line('INIT: Primary MAU = '||l_prim_curr_mau);
900: fii_util.put_line('INIT: User ID = '||l_user_id);
901: fii_util.put_line('INIT: Login ID = '||l_login_id);
902: fii_util.put_line('INIT: Request ID = '||l_req_id);
903: fii_util.put_line('INIT: Budget Period Type = '||l_budget_time_unit);
904: fii_util.put_line('INIT: Forecast Period Type = '||l_forecast_time_unit);
905: fii_util.put_line(
906: '+---------------------------------------------------------------------+');
907: fii_util.put_line(' ');
900: fii_util.put_line('INIT: User ID = '||l_user_id);
901: fii_util.put_line('INIT: Login ID = '||l_login_id);
902: fii_util.put_line('INIT: Request ID = '||l_req_id);
903: fii_util.put_line('INIT: Budget Period Type = '||l_budget_time_unit);
904: fii_util.put_line('INIT: Forecast Period Type = '||l_forecast_time_unit);
905: fii_util.put_line(
906: '+---------------------------------------------------------------------+');
907: fii_util.put_line(' ');
908:
901: fii_util.put_line('INIT: Login ID = '||l_login_id);
902: fii_util.put_line('INIT: Request ID = '||l_req_id);
903: fii_util.put_line('INIT: Budget Period Type = '||l_budget_time_unit);
904: fii_util.put_line('INIT: Forecast Period Type = '||l_forecast_time_unit);
905: fii_util.put_line(
906: '+---------------------------------------------------------------------+');
907: fii_util.put_line(' ');
908:
909: ----------------------------------------------------------------------
903: fii_util.put_line('INIT: Budget Period Type = '||l_budget_time_unit);
904: fii_util.put_line('INIT: Forecast Period Type = '||l_forecast_time_unit);
905: fii_util.put_line(
906: '+---------------------------------------------------------------------+');
907: fii_util.put_line(' ');
908:
909: ----------------------------------------------------------------------
910: -- If any of the above values is not set (except secondary currency).
911: -- Note that we will not error out when secondary currency is not set
918: l_prim_curr_mau is NULL OR
919: l_budget_time_unit is NULL OR
920: l_forecast_time_unit is NULL) THEN
921:
922: fii_util.put_line(
923: 'DIAGNOSIS: Please make sure all of the above setup information are defined.');
924:
925: ELSE
926:
923: 'DIAGNOSIS: Please make sure all of the above setup information are defined.');
924:
925: ELSE
926:
927: fii_util.put_line('DIAGNOSIS: All mandatory setup information are defined.');
928: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
929: END IF;
930:
931: fii_util.put_line(' ');
924:
925: ELSE
926:
927: fii_util.put_line('DIAGNOSIS: All mandatory setup information are defined.');
928: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
929: END IF;
930:
931: fii_util.put_line(' ');
932: fii_util.put_line('Listing of other setup information...');
927: fii_util.put_line('DIAGNOSIS: All mandatory setup information are defined.');
928: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
929: END IF;
930:
931: fii_util.put_line(' ');
932: fii_util.put_line('Listing of other setup information...');
933:
934: -- Print out secondary currency info to logfile
935: fii_util.put_line('INIT: Secondary Currency = '|| l_sec_curr_code);
928: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
929: END IF;
930:
931: fii_util.put_line(' ');
932: fii_util.put_line('Listing of other setup information...');
933:
934: -- Print out secondary currency info to logfile
935: fii_util.put_line('INIT: Secondary Currency = '|| l_sec_curr_code);
936: fii_util.put_line('INIT: Secondary MAU = '|| l_sec_curr_mau);
931: fii_util.put_line(' ');
932: fii_util.put_line('Listing of other setup information...');
933:
934: -- Print out secondary currency info to logfile
935: fii_util.put_line('INIT: Secondary Currency = '|| l_sec_curr_code);
936: fii_util.put_line('INIT: Secondary MAU = '|| l_sec_curr_mau);
937:
938:
939: -- Print out the Enterprise Calendar setup
932: fii_util.put_line('Listing of other setup information...');
933:
934: -- Print out secondary currency info to logfile
935: fii_util.put_line('INIT: Secondary Currency = '|| l_sec_curr_code);
936: fii_util.put_line('INIT: Secondary MAU = '|| l_sec_curr_mau);
937:
938:
939: -- Print out the Enterprise Calendar setup
940: l_period_set_name := bis_common_parameters.get_period_set_name;
939: -- Print out the Enterprise Calendar setup
940: l_period_set_name := bis_common_parameters.get_period_set_name;
941: l_period_type := bis_common_parameters.get_period_type;
942:
943: fii_util.put_line('INIT: Enterprise Calendar = '|| l_period_set_name);
944: fii_util.put_line('INIT: Period Type = '|| l_period_type);
945:
946: -- Print out if this is commercial or government install
947: l_industry_profile := FND_PROFILE.value('INDUSTRY');
940: l_period_set_name := bis_common_parameters.get_period_set_name;
941: l_period_type := bis_common_parameters.get_period_type;
942:
943: fii_util.put_line('INIT: Enterprise Calendar = '|| l_period_set_name);
944: fii_util.put_line('INIT: Period Type = '|| l_period_type);
945:
946: -- Print out if this is commercial or government install
947: l_industry_profile := FND_PROFILE.value('INDUSTRY');
948:
945:
946: -- Print out if this is commercial or government install
947: l_industry_profile := FND_PROFILE.value('INDUSTRY');
948:
949: fii_util.put_line('INIT: Industry profile = '|| l_industry_profile);
950:
951: -- Print out budget/forecast source
952: l_budget_source := FND_PROFILE.value('FII_BUDGET_SOURCE');
953:
950:
951: -- Print out budget/forecast source
952: l_budget_source := FND_PROFILE.value('FII_BUDGET_SOURCE');
953:
954: fii_util.put_line('INIT: Budget/Forecast Source = '|| l_budget_source);
955: fii_util.put_line(' ');
956:
957: IF (X_User IS NULL) THEN
958: fii_util.put_line('INIT: User Name parameter value is not provided.');
951: -- Print out budget/forecast source
952: l_budget_source := FND_PROFILE.value('FII_BUDGET_SOURCE');
953:
954: fii_util.put_line('INIT: Budget/Forecast Source = '|| l_budget_source);
955: fii_util.put_line(' ');
956:
957: IF (X_User IS NULL) THEN
958: fii_util.put_line('INIT: User Name parameter value is not provided.');
959: ELSE
954: fii_util.put_line('INIT: Budget/Forecast Source = '|| l_budget_source);
955: fii_util.put_line(' ');
956:
957: IF (X_User IS NULL) THEN
958: fii_util.put_line('INIT: User Name parameter value is not provided.');
959: ELSE
960: fii_util.put_line('INIT: Parameter passed = ' || X_User);
961: END IF;
962:
956:
957: IF (X_User IS NULL) THEN
958: fii_util.put_line('INIT: User Name parameter value is not provided.');
959: ELSE
960: fii_util.put_line('INIT: Parameter passed = ' || X_User);
961: END IF;
962:
963: fii_util.put_line(' ');
964:
959: ELSE
960: fii_util.put_line('INIT: Parameter passed = ' || X_User);
961: END IF;
962:
963: fii_util.put_line(' ');
964:
965: -- Find out database version
966: SELECT banner
967: INTO l_db_version
967: INTO l_db_version
968: FROM v$version
969: WHERE upper(banner) like 'ORACLE%';
970:
971: fii_util.put_line('INIT: Database version = ' || l_db_version);
972:
973: ----------------------------------------------------------------------
974: -- Generic Setup Validations
975: ----------------------------------------------------------------------
977: -- Check for GL Periods:
978: -- 1. Make sure one year before Global Start Date to sysdate have all
979: -- defined in Enterprise Calendar.
980: ----------------------------------------------------------------------
981: fii_util.put_line(' ');
982: fii_util.put_line(
983: '+---------------------------------------------------------------------+');
984: fii_util.put_line('Performing Check for: GL Periods');
985: fii_util.put_line(
978: -- 1. Make sure one year before Global Start Date to sysdate have all
979: -- defined in Enterprise Calendar.
980: ----------------------------------------------------------------------
981: fii_util.put_line(' ');
982: fii_util.put_line(
983: '+---------------------------------------------------------------------+');
984: fii_util.put_line('Performing Check for: GL Periods');
985: fii_util.put_line(
986: '+---------------------------------------------------------------------+');
980: ----------------------------------------------------------------------
981: fii_util.put_line(' ');
982: fii_util.put_line(
983: '+---------------------------------------------------------------------+');
984: fii_util.put_line('Performing Check for: GL Periods');
985: fii_util.put_line(
986: '+---------------------------------------------------------------------+');
987: fii_util.put_line(
988: 'START CHECK: Looking for GL Periods not defined within start and end range.');
981: fii_util.put_line(' ');
982: fii_util.put_line(
983: '+---------------------------------------------------------------------+');
984: fii_util.put_line('Performing Check for: GL Periods');
985: fii_util.put_line(
986: '+---------------------------------------------------------------------+');
987: fii_util.put_line(
988: 'START CHECK: Looking for GL Periods not defined within start and end range.');
989: fii_util.put_line(' ');
983: '+---------------------------------------------------------------------+');
984: fii_util.put_line('Performing Check for: GL Periods');
985: fii_util.put_line(
986: '+---------------------------------------------------------------------+');
987: fii_util.put_line(
988: 'START CHECK: Looking for GL Periods not defined within start and end range.');
989: fii_util.put_line(' ');
990:
991: l_day := to_date(l_global_start_date, 'MM/DD/YYYY');
985: fii_util.put_line(
986: '+---------------------------------------------------------------------+');
987: fii_util.put_line(
988: 'START CHECK: Looking for GL Periods not defined within start and end range.');
989: fii_util.put_line(' ');
990:
991: l_day := to_date(l_global_start_date, 'MM/DD/YYYY');
992: l_cnt := 0;
993:
1002: AND l_day between a.start_date and a.end_date;
1003:
1004: EXCEPTION
1005: WHEN no_data_found THEN
1006: fii_util.put_line(
1007: 'Global start date is not defined in your Enterprise Calendar.');
1008: END;
1009:
1010: BEGIN
1017: AND period_year = l_year - 1;
1018:
1019: EXCEPTION
1020: WHEN no_data_found THEN
1021: fii_util.put_line('The start date of the year (' || l_global_start_date || ') prior to global start date is not defined in your Enterprise Calendar.');
1022:
1023: END;
1024:
1025: -- Storing the year start day a year prior to global start date
1024:
1025: -- Storing the year start day a year prior to global start date
1026: l_start_day := l_day;
1027:
1028: fii_util.put_line('Start Range: ' || to_char(l_day, 'DD/MM/YYYY') );
1029: fii_util.put_line(' End Range: ' || to_char(l_sys_date, 'DD/MM/YYYY'));
1030:
1031: WHILE l_day <= l_sys_date LOOP
1032: OPEN ent_period_cur(l_day);
1025: -- Storing the year start day a year prior to global start date
1026: l_start_day := l_day;
1027:
1028: fii_util.put_line('Start Range: ' || to_char(l_day, 'DD/MM/YYYY') );
1029: fii_util.put_line(' End Range: ' || to_char(l_sys_date, 'DD/MM/YYYY'));
1030:
1031: WHILE l_day <= l_sys_date LOOP
1032: OPEN ent_period_cur(l_day);
1033: FETCH ent_period_cur INTO l_dummy;
1033: FETCH ent_period_cur INTO l_dummy;
1034:
1035: IF ent_period_cur%NOTFOUND THEN
1036: IF (l_cnt = 0) THEN
1037: fii_util.put_line(' ');
1038: fii_util.put_line('General Ledger Date');
1039: fii_util.put_line('------------------------------------------');
1040: l_cnt := l_cnt + 1;
1041: END IF;
1034:
1035: IF ent_period_cur%NOTFOUND THEN
1036: IF (l_cnt = 0) THEN
1037: fii_util.put_line(' ');
1038: fii_util.put_line('General Ledger Date');
1039: fii_util.put_line('------------------------------------------');
1040: l_cnt := l_cnt + 1;
1041: END IF;
1042: fii_util.put_line(to_char(l_day, 'DD/MM/YYYY'));
1035: IF ent_period_cur%NOTFOUND THEN
1036: IF (l_cnt = 0) THEN
1037: fii_util.put_line(' ');
1038: fii_util.put_line('General Ledger Date');
1039: fii_util.put_line('------------------------------------------');
1040: l_cnt := l_cnt + 1;
1041: END IF;
1042: fii_util.put_line(to_char(l_day, 'DD/MM/YYYY'));
1043: END IF;
1038: fii_util.put_line('General Ledger Date');
1039: fii_util.put_line('------------------------------------------');
1040: l_cnt := l_cnt + 1;
1041: END IF;
1042: fii_util.put_line(to_char(l_day, 'DD/MM/YYYY'));
1043: END IF;
1044:
1045: CLOSE ent_period_cur;
1046: l_day := l_day + 1;
1045: CLOSE ent_period_cur;
1046: l_day := l_day + 1;
1047: END LOOP;
1048:
1049: fii_util.put_line(' ');
1050: IF (l_cnt = 0) THEN
1051: -- All days between one year prior to global start date and sysdate have
1052: -- been defined in the Enterprise Calendar
1053: fii_util.put_line('All GL Periods between '||to_char(l_start_day, 'DD/MM/YYYY') ||
1049: fii_util.put_line(' ');
1050: IF (l_cnt = 0) THEN
1051: -- All days between one year prior to global start date and sysdate have
1052: -- been defined in the Enterprise Calendar
1053: fii_util.put_line('All GL Periods between '||to_char(l_start_day, 'DD/MM/YYYY') ||
1054: ' and '||to_char(l_sys_date, 'DD/MM/YYYY') ||
1055: ' have been defined. ');
1056: fii_util.put_line('DIAGNOSIS: GL Periods are valid');
1057: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1052: -- been defined in the Enterprise Calendar
1053: fii_util.put_line('All GL Periods between '||to_char(l_start_day, 'DD/MM/YYYY') ||
1054: ' and '||to_char(l_sys_date, 'DD/MM/YYYY') ||
1055: ' have been defined. ');
1056: fii_util.put_line('DIAGNOSIS: GL Periods are valid');
1057: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1058:
1059: ELSE
1060: -- Print a message asking customer to define missing dates found
1053: fii_util.put_line('All GL Periods between '||to_char(l_start_day, 'DD/MM/YYYY') ||
1054: ' and '||to_char(l_sys_date, 'DD/MM/YYYY') ||
1055: ' have been defined. ');
1056: fii_util.put_line('DIAGNOSIS: GL Periods are valid');
1057: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1058:
1059: ELSE
1060: -- Print a message asking customer to define missing dates found
1061: fii_util.put_line(
1057: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1058:
1059: ELSE
1060: -- Print a message asking customer to define missing dates found
1061: fii_util.put_line(
1062: 'DIAGNOSIS: Please define the above dates in your Enterprise Calendar.');
1063: END IF;
1064:
1065: fii_util.put_line(' ');
1061: fii_util.put_line(
1062: 'DIAGNOSIS: Please define the above dates in your Enterprise Calendar.');
1063: END IF;
1064:
1065: fii_util.put_line(' ');
1066: fii_util.put_line('END CHECK: Looking for GL Periods not defined.');
1067: fii_util.put_line(
1068: '+---------------------------------------------------------------------+');
1069:
1062: 'DIAGNOSIS: Please define the above dates in your Enterprise Calendar.');
1063: END IF;
1064:
1065: fii_util.put_line(' ');
1066: fii_util.put_line('END CHECK: Looking for GL Periods not defined.');
1067: fii_util.put_line(
1068: '+---------------------------------------------------------------------+');
1069:
1070: ----------------------------------------------------------------------
1063: END IF;
1064:
1065: fii_util.put_line(' ');
1066: fii_util.put_line('END CHECK: Looking for GL Periods not defined.');
1067: fii_util.put_line(
1068: '+---------------------------------------------------------------------+');
1069:
1070: ----------------------------------------------------------------------
1071: -- Check for GL Periods:
1070: ----------------------------------------------------------------------
1071: -- Check for GL Periods:
1072: -- 2. Also check that Fiscal Year are defined correctly
1073: ----------------------------------------------------------------------
1074: fii_util.put_line(
1075: 'START CHECK: Fiscal Year contains valid number of weeks.');
1076: fii_util.put_line(' ');
1077:
1078: -- Initialize l_min_start_date to be the minimum start date of the fiscal year
1072: -- 2. Also check that Fiscal Year are defined correctly
1073: ----------------------------------------------------------------------
1074: fii_util.put_line(
1075: 'START CHECK: Fiscal Year contains valid number of weeks.');
1076: fii_util.put_line(' ');
1077:
1078: -- Initialize l_min_start_date to be the minimum start date of the fiscal year
1079: BEGIN
1080:
1095: l_fiscal_year_day := (l_max_end_date - l_min_start_date) +1;
1096:
1097: IF (l_fiscal_year_day < 352 OR l_fiscal_year_day > 379) THEN
1098: l_cnt := l_cnt + 1;
1099: fii_util.put_line('FISCAL YEAR: '|| l_year || ' contains '||
1100: round(l_fiscal_year_day/7, 0) || ' weeks.');
1101:
1102: ELSE
1103: fii_util.put_line('FISCAL YEAR: '|| l_year || ' contains '||
1099: fii_util.put_line('FISCAL YEAR: '|| l_year || ' contains '||
1100: round(l_fiscal_year_day/7, 0) || ' weeks.');
1101:
1102: ELSE
1103: fii_util.put_line('FISCAL YEAR: '|| l_year || ' contains '||
1104: round(l_fiscal_year_day/7, 0) ||
1105: ' weeks and is OK.');
1106: END IF;
1107:
1109: l_year := l_year + 1;
1110:
1111: END LOOP;
1112:
1113: fii_util.put_line(' ');
1114: IF (l_cnt > 0) THEN
1115: fii_util.put_line('DIAGNOSIS: Please make sure that the number of weeks in your Fiscal Years are between the ranges of 50 and 54 weeks. Otherwise, the DBI Update Time Dimension program will have issues.');
1116:
1117: ELSE
1111: END LOOP;
1112:
1113: fii_util.put_line(' ');
1114: IF (l_cnt > 0) THEN
1115: fii_util.put_line('DIAGNOSIS: Please make sure that the number of weeks in your Fiscal Years are between the ranges of 50 and 54 weeks. Otherwise, the DBI Update Time Dimension program will have issues.');
1116:
1117: ELSE
1118: fii_util.put_line(
1119: 'DIAGNOSIS: All Fiscal Years are between the ranges of 50 and 54 weeks');
1114: IF (l_cnt > 0) THEN
1115: fii_util.put_line('DIAGNOSIS: Please make sure that the number of weeks in your Fiscal Years are between the ranges of 50 and 54 weeks. Otherwise, the DBI Update Time Dimension program will have issues.');
1116:
1117: ELSE
1118: fii_util.put_line(
1119: 'DIAGNOSIS: All Fiscal Years are between the ranges of 50 and 54 weeks');
1120: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1121: END IF;
1122:
1116:
1117: ELSE
1118: fii_util.put_line(
1119: 'DIAGNOSIS: All Fiscal Years are between the ranges of 50 and 54 weeks');
1120: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1121: END IF;
1122:
1123: EXCEPTION
1124: WHEN no_data_found THEN
1121: END IF;
1122:
1123: EXCEPTION
1124: WHEN no_data_found THEN
1125: fii_util.put_line('The year prior to the global start date is not defined in your Enterprise Calendar.');
1126:
1127: END;
1128:
1129:
1126:
1127: END;
1128:
1129:
1130: fii_util.put_line(' ');
1131: fii_util.put_line('END CHECK: Fiscal Year contains valid number of weeks.');
1132: fii_util.put_line(
1133: '+---------------------------------------------------------------------+');
1134:
1127: END;
1128:
1129:
1130: fii_util.put_line(' ');
1131: fii_util.put_line('END CHECK: Fiscal Year contains valid number of weeks.');
1132: fii_util.put_line(
1133: '+---------------------------------------------------------------------+');
1134:
1135: ----------------------------------------------------------------------
1128:
1129:
1130: fii_util.put_line(' ');
1131: fii_util.put_line('END CHECK: Fiscal Year contains valid number of weeks.');
1132: fii_util.put_line(
1133: '+---------------------------------------------------------------------+');
1134:
1135: ----------------------------------------------------------------------
1136: -- Check for Master Value Set.
1135: ----------------------------------------------------------------------
1136: -- Check for Master Value Set.
1137: -- For each dimension, verify that we have a master value set assigned to it.
1138: ----------------------------------------------------------------------
1139: fii_util.put_line(' ');
1140: fii_util.put_line(
1141: '+---------------------------------------------------------------------+');
1142: fii_util.put_line('Performing Check for: Master value set assignment.');
1143:
1136: -- Check for Master Value Set.
1137: -- For each dimension, verify that we have a master value set assigned to it.
1138: ----------------------------------------------------------------------
1139: fii_util.put_line(' ');
1140: fii_util.put_line(
1141: '+---------------------------------------------------------------------+');
1142: fii_util.put_line('Performing Check for: Master value set assignment.');
1143:
1144: -- Find out all the enabled dimensions and check if we
1138: ----------------------------------------------------------------------
1139: fii_util.put_line(' ');
1140: fii_util.put_line(
1141: '+---------------------------------------------------------------------+');
1142: fii_util.put_line('Performing Check for: Master value set assignment.');
1143:
1144: -- Find out all the enabled dimensions and check if we
1145: -- have done mapping from local value sets to master value set
1146: OPEN enabled_dim_cur;
1147: LOOP
1148: FETCH enabled_dim_cur INTO l_dim_name, l_dim_short_name;
1149: EXIT WHEN enabled_dim_cur%NOTFOUND;
1150:
1151: fii_util.put_line(' ');
1152: fii_util.put_line('--------------------------------------------------');
1153: fii_util.put_line('Dimension Enabled: '|| l_dim_name);
1154: fii_util.put_line('--------------------------------------------------');
1155:
1148: FETCH enabled_dim_cur INTO l_dim_name, l_dim_short_name;
1149: EXIT WHEN enabled_dim_cur%NOTFOUND;
1150:
1151: fii_util.put_line(' ');
1152: fii_util.put_line('--------------------------------------------------');
1153: fii_util.put_line('Dimension Enabled: '|| l_dim_name);
1154: fii_util.put_line('--------------------------------------------------');
1155:
1156: -- Check if we have unmapped local value set for this dimension
1149: EXIT WHEN enabled_dim_cur%NOTFOUND;
1150:
1151: fii_util.put_line(' ');
1152: fii_util.put_line('--------------------------------------------------');
1153: fii_util.put_line('Dimension Enabled: '|| l_dim_name);
1154: fii_util.put_line('--------------------------------------------------');
1155:
1156: -- Check if we have unmapped local value set for this dimension
1157: l_cnt := FII_SETUP_VAL_C.detect_unmapped_local_vs(l_dim_short_name);
1150:
1151: fii_util.put_line(' ');
1152: fii_util.put_line('--------------------------------------------------');
1153: fii_util.put_line('Dimension Enabled: '|| l_dim_name);
1154: fii_util.put_line('--------------------------------------------------');
1155:
1156: -- Check if we have unmapped local value set for this dimension
1157: l_cnt := FII_SETUP_VAL_C.detect_unmapped_local_vs(l_dim_short_name);
1158:
1155:
1156: -- Check if we have unmapped local value set for this dimension
1157: l_cnt := FII_SETUP_VAL_C.detect_unmapped_local_vs(l_dim_short_name);
1158:
1159: fii_util.put_line(' ');
1160: IF l_cnt > 0 THEN
1161: fii_util.put_line('DIAGNOSIS: Please map the above Local Value Sets to a Master Value Set');
1162:
1163: ELSE
1157: l_cnt := FII_SETUP_VAL_C.detect_unmapped_local_vs(l_dim_short_name);
1158:
1159: fii_util.put_line(' ');
1160: IF l_cnt > 0 THEN
1161: fii_util.put_line('DIAGNOSIS: Please map the above Local Value Sets to a Master Value Set');
1162:
1163: ELSE
1164: fii_util.put_line(
1165: 'DIAGNOSIS: All Local Value Sets have been mapped to Master Value Sets');
1160: IF l_cnt > 0 THEN
1161: fii_util.put_line('DIAGNOSIS: Please map the above Local Value Sets to a Master Value Set');
1162:
1163: ELSE
1164: fii_util.put_line(
1165: 'DIAGNOSIS: All Local Value Sets have been mapped to Master Value Sets');
1166: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1167: END IF;
1168:
1162:
1163: ELSE
1164: fii_util.put_line(
1165: 'DIAGNOSIS: All Local Value Sets have been mapped to Master Value Sets');
1166: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1167: END IF;
1168:
1169: END LOOP;
1170: CLOSE enabled_dim_cur;
1168:
1169: END LOOP;
1170: CLOSE enabled_dim_cur;
1171:
1172: fii_util.put_line(' ');
1173: fii_util.put_line('END CHECK: Master value set assignment.');
1174: fii_util.put_line(
1175: '+---------------------------------------------------------------------+');
1176:
1169: END LOOP;
1170: CLOSE enabled_dim_cur;
1171:
1172: fii_util.put_line(' ');
1173: fii_util.put_line('END CHECK: Master value set assignment.');
1174: fii_util.put_line(
1175: '+---------------------------------------------------------------------+');
1176:
1177: ----------------------------------------------------------------------
1170: CLOSE enabled_dim_cur;
1171:
1172: fii_util.put_line(' ');
1173: fii_util.put_line('END CHECK: Master value set assignment.');
1174: fii_util.put_line(
1175: '+---------------------------------------------------------------------+');
1176:
1177: ----------------------------------------------------------------------
1178: -- Check for Financial Category and Type Setup
1176:
1177: ----------------------------------------------------------------------
1178: -- Check for Financial Category and Type Setup
1179: ----------------------------------------------------------------------
1180: fii_util.put_line(' ');
1181: fii_util.put_line(
1182: '+---------------------------------------------------------------------+');
1183: fii_util.put_line(
1184: 'Performing Check for: Financial Category and Type Setup');
1177: ----------------------------------------------------------------------
1178: -- Check for Financial Category and Type Setup
1179: ----------------------------------------------------------------------
1180: fii_util.put_line(' ');
1181: fii_util.put_line(
1182: '+---------------------------------------------------------------------+');
1183: fii_util.put_line(
1184: 'Performing Check for: Financial Category and Type Setup');
1185: fii_util.put_line(
1179: ----------------------------------------------------------------------
1180: fii_util.put_line(' ');
1181: fii_util.put_line(
1182: '+---------------------------------------------------------------------+');
1183: fii_util.put_line(
1184: 'Performing Check for: Financial Category and Type Setup');
1185: fii_util.put_line(
1186: '+---------------------------------------------------------------------+');
1187: fii_util.put_line('START CHECK: Financial Category Types');
1181: fii_util.put_line(
1182: '+---------------------------------------------------------------------+');
1183: fii_util.put_line(
1184: 'Performing Check for: Financial Category and Type Setup');
1185: fii_util.put_line(
1186: '+---------------------------------------------------------------------+');
1187: fii_util.put_line('START CHECK: Financial Category Types');
1188:
1189: -- Find out if we have at least one node assigned per financial category type
1183: fii_util.put_line(
1184: 'Performing Check for: Financial Category and Type Setup');
1185: fii_util.put_line(
1186: '+---------------------------------------------------------------------+');
1187: fii_util.put_line('START CHECK: Financial Category Types');
1188:
1189: -- Find out if we have at least one node assigned per financial category type
1190: l_cnt := 0;
1191: OPEN fin_type_cur;
1193: FETCH fin_type_cur INTO l_fin_type_name;
1194: EXIT WHEN fin_type_cur%NOTFOUND;
1195:
1196: IF (l_cnt = 0) THEN
1197: fii_util.put_line(' ');
1198: fii_util.put_line('Financial Category Type');
1199: fii_util.put_line('--------------------------------------------------');
1200: l_cnt := l_cnt + 1;
1201: END IF;
1194: EXIT WHEN fin_type_cur%NOTFOUND;
1195:
1196: IF (l_cnt = 0) THEN
1197: fii_util.put_line(' ');
1198: fii_util.put_line('Financial Category Type');
1199: fii_util.put_line('--------------------------------------------------');
1200: l_cnt := l_cnt + 1;
1201: END IF;
1202: fii_util.put_line(l_fin_type_name);
1195:
1196: IF (l_cnt = 0) THEN
1197: fii_util.put_line(' ');
1198: fii_util.put_line('Financial Category Type');
1199: fii_util.put_line('--------------------------------------------------');
1200: l_cnt := l_cnt + 1;
1201: END IF;
1202: fii_util.put_line(l_fin_type_name);
1203: END LOOP;
1198: fii_util.put_line('Financial Category Type');
1199: fii_util.put_line('--------------------------------------------------');
1200: l_cnt := l_cnt + 1;
1201: END IF;
1202: fii_util.put_line(l_fin_type_name);
1203: END LOOP;
1204: CLOSE fin_type_cur;
1205:
1206: fii_util.put_line(' ');
1202: fii_util.put_line(l_fin_type_name);
1203: END LOOP;
1204: CLOSE fin_type_cur;
1205:
1206: fii_util.put_line(' ');
1207: IF l_cnt > 0 THEN
1208: fii_util.put_line(
1209: 'DIAGNOSIS: There are no existing nodes for the above data type(s).');
1210:
1204: CLOSE fin_type_cur;
1205:
1206: fii_util.put_line(' ');
1207: IF l_cnt > 0 THEN
1208: fii_util.put_line(
1209: 'DIAGNOSIS: There are no existing nodes for the above data type(s).');
1210:
1211: ELSE
1212: fii_util.put_line(
1208: fii_util.put_line(
1209: 'DIAGNOSIS: There are no existing nodes for the above data type(s).');
1210:
1211: ELSE
1212: fii_util.put_line(
1213: 'DIAGNOSIS: All Financial Category have associated data types (Revenue, COGS,etc.)');
1214: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1215: END IF;
1216:
1210:
1211: ELSE
1212: fii_util.put_line(
1213: 'DIAGNOSIS: All Financial Category have associated data types (Revenue, COGS,etc.)');
1214: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1215: END IF;
1216:
1217: fii_util.put_line(' ');
1218: fii_util.put_line('END CHECK: Financial Category Dimension Types.');
1213: 'DIAGNOSIS: All Financial Category have associated data types (Revenue, COGS,etc.)');
1214: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1215: END IF;
1216:
1217: fii_util.put_line(' ');
1218: fii_util.put_line('END CHECK: Financial Category Dimension Types.');
1219: fii_util.put_line(
1220: '+---------------------------------------------------------------------+');
1221:
1214: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1215: END IF;
1216:
1217: fii_util.put_line(' ');
1218: fii_util.put_line('END CHECK: Financial Category Dimension Types.');
1219: fii_util.put_line(
1220: '+---------------------------------------------------------------------+');
1221:
1222: ----------------------------------------------------------------------
1215: END IF;
1216:
1217: fii_util.put_line(' ');
1218: fii_util.put_line('END CHECK: Financial Category Dimension Types.');
1219: fii_util.put_line(
1220: '+---------------------------------------------------------------------+');
1221:
1222: ----------------------------------------------------------------------
1223: -- Check for Duplicate Organization Setup
1222: ----------------------------------------------------------------------
1223: -- Check for Duplicate Organization Setup
1224: -- Validate if there are more than one CCC for each company cost center
1225: ----------------------------------------------------------------------
1226: fii_util.put_line(' ');
1227: fii_util.put_line(
1228: '+---------------------------------------------------------------------+');
1229: fii_util.put_line('Performing Check for: More than one Organization for a Company Cost Center');
1230: fii_util.put_line(
1223: -- Check for Duplicate Organization Setup
1224: -- Validate if there are more than one CCC for each company cost center
1225: ----------------------------------------------------------------------
1226: fii_util.put_line(' ');
1227: fii_util.put_line(
1228: '+---------------------------------------------------------------------+');
1229: fii_util.put_line('Performing Check for: More than one Organization for a Company Cost Center');
1230: fii_util.put_line(
1231: '+---------------------------------------------------------------------+');
1225: ----------------------------------------------------------------------
1226: fii_util.put_line(' ');
1227: fii_util.put_line(
1228: '+---------------------------------------------------------------------+');
1229: fii_util.put_line('Performing Check for: More than one Organization for a Company Cost Center');
1230: fii_util.put_line(
1231: '+---------------------------------------------------------------------+');
1232: fii_util.put_line(
1233: 'START CHECK: Duplicate Organization Assignments for Company Cost Center');
1226: fii_util.put_line(' ');
1227: fii_util.put_line(
1228: '+---------------------------------------------------------------------+');
1229: fii_util.put_line('Performing Check for: More than one Organization for a Company Cost Center');
1230: fii_util.put_line(
1231: '+---------------------------------------------------------------------+');
1232: fii_util.put_line(
1233: 'START CHECK: Duplicate Organization Assignments for Company Cost Center');
1234:
1228: '+---------------------------------------------------------------------+');
1229: fii_util.put_line('Performing Check for: More than one Organization for a Company Cost Center');
1230: fii_util.put_line(
1231: '+---------------------------------------------------------------------+');
1232: fii_util.put_line(
1233: 'START CHECK: Duplicate Organization Assignments for Company Cost Center');
1234:
1235: -- Find out if we have duplicate ccc org assigned to a company cost center
1236: l_cnt := FIND_DUP_CCC_ORG;
1234:
1235: -- Find out if we have duplicate ccc org assigned to a company cost center
1236: l_cnt := FIND_DUP_CCC_ORG;
1237:
1238: fii_util.put_line(' ');
1239: IF (l_cnt > 0 or l_cnt = -1)THEN
1240: fii_util.put_line('DIAGNOSIS: Please resolve the above duplicate Organization and Company Cost Center combinations.');
1241:
1242: ELSE
1236: l_cnt := FIND_DUP_CCC_ORG;
1237:
1238: fii_util.put_line(' ');
1239: IF (l_cnt > 0 or l_cnt = -1)THEN
1240: fii_util.put_line('DIAGNOSIS: Please resolve the above duplicate Organization and Company Cost Center combinations.');
1241:
1242: ELSE
1243: fii_util.put_line(
1244: 'DIAGNOSIS: No duplicate Organization - Company Cost Centers found');
1239: IF (l_cnt > 0 or l_cnt = -1)THEN
1240: fii_util.put_line('DIAGNOSIS: Please resolve the above duplicate Organization and Company Cost Center combinations.');
1241:
1242: ELSE
1243: fii_util.put_line(
1244: 'DIAGNOSIS: No duplicate Organization - Company Cost Centers found');
1245: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1246: END IF;
1247:
1241:
1242: ELSE
1243: fii_util.put_line(
1244: 'DIAGNOSIS: No duplicate Organization - Company Cost Centers found');
1245: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1246: END IF;
1247:
1248: fii_util.put_line(' ');
1249: fii_util.put_line(
1244: 'DIAGNOSIS: No duplicate Organization - Company Cost Centers found');
1245: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1246: END IF;
1247:
1248: fii_util.put_line(' ');
1249: fii_util.put_line(
1250: 'END CHECK: Duplicate Organization Assignments for Company Cost Center.');
1251: fii_util.put_line(
1252: '+---------------------------------------------------------------------+');
1245: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1246: END IF;
1247:
1248: fii_util.put_line(' ');
1249: fii_util.put_line(
1250: 'END CHECK: Duplicate Organization Assignments for Company Cost Center.');
1251: fii_util.put_line(
1252: '+---------------------------------------------------------------------+');
1253:
1247:
1248: fii_util.put_line(' ');
1249: fii_util.put_line(
1250: 'END CHECK: Duplicate Organization Assignments for Company Cost Center.');
1251: fii_util.put_line(
1252: '+---------------------------------------------------------------------+');
1253:
1254: ----------------------------------------------------------------------
1255: -- Check for Missing Organization Setup
1254: ----------------------------------------------------------------------
1255: -- Check for Missing Organization Setup
1256: -- Validate if there are company cost centers with no org assigned
1257: ----------------------------------------------------------------------
1258: fii_util.put_line(' ');
1259: fii_util.put_line(
1260: '+---------------------------------------------------------------------+');
1261: fii_util.put_line(
1262: 'Performing Check for Organization - Company Cost Center Assignments');
1255: -- Check for Missing Organization Setup
1256: -- Validate if there are company cost centers with no org assigned
1257: ----------------------------------------------------------------------
1258: fii_util.put_line(' ');
1259: fii_util.put_line(
1260: '+---------------------------------------------------------------------+');
1261: fii_util.put_line(
1262: 'Performing Check for Organization - Company Cost Center Assignments');
1263: fii_util.put_line(
1257: ----------------------------------------------------------------------
1258: fii_util.put_line(' ');
1259: fii_util.put_line(
1260: '+---------------------------------------------------------------------+');
1261: fii_util.put_line(
1262: 'Performing Check for Organization - Company Cost Center Assignments');
1263: fii_util.put_line(
1264: '+---------------------------------------------------------------------+');
1265: fii_util.put_line('START CHECK: ORG - Company Cost Center Assignments.');
1259: fii_util.put_line(
1260: '+---------------------------------------------------------------------+');
1261: fii_util.put_line(
1262: 'Performing Check for Organization - Company Cost Center Assignments');
1263: fii_util.put_line(
1264: '+---------------------------------------------------------------------+');
1265: fii_util.put_line('START CHECK: ORG - Company Cost Center Assignments.');
1266:
1267: -- Find out if we have company cost centers with no org assigned
1261: fii_util.put_line(
1262: 'Performing Check for Organization - Company Cost Center Assignments');
1263: fii_util.put_line(
1264: '+---------------------------------------------------------------------+');
1265: fii_util.put_line('START CHECK: ORG - Company Cost Center Assignments.');
1266:
1267: -- Find out if we have company cost centers with no org assigned
1268: l_cnt := 0;
1269: OPEN no_org_cur;
1271: FETCH no_org_cur INTO l_co_name, l_co_id, l_cc_name, l_cc_id;
1272: EXIT WHEN no_org_cur%NOTFOUND;
1273:
1274: IF (l_cnt = 0) THEN
1275: fii_util.put_line(' ');
1276: fii_util.put_line(
1277: 'Company Company ID Cost Center Cost Center ID ');
1278: fii_util.put_line(
1279: '------- ---------- ----------- -------------- ');
1272: EXIT WHEN no_org_cur%NOTFOUND;
1273:
1274: IF (l_cnt = 0) THEN
1275: fii_util.put_line(' ');
1276: fii_util.put_line(
1277: 'Company Company ID Cost Center Cost Center ID ');
1278: fii_util.put_line(
1279: '------- ---------- ----------- -------------- ');
1280: l_cnt := l_cnt + 1;
1274: IF (l_cnt = 0) THEN
1275: fii_util.put_line(' ');
1276: fii_util.put_line(
1277: 'Company Company ID Cost Center Cost Center ID ');
1278: fii_util.put_line(
1279: '------- ---------- ----------- -------------- ');
1280: l_cnt := l_cnt + 1;
1281: END IF;
1282: FII_UTIL.write_log(l_co_name || ' '|| l_co_id || ' '||
1278: fii_util.put_line(
1279: '------- ---------- ----------- -------------- ');
1280: l_cnt := l_cnt + 1;
1281: END IF;
1282: FII_UTIL.write_log(l_co_name || ' '|| l_co_id || ' '||
1283: l_cc_name || ' '|| l_cc_id);
1284: END LOOP;
1285: CLOSE no_org_cur;
1286:
1283: l_cc_name || ' '|| l_cc_id);
1284: END LOOP;
1285: CLOSE no_org_cur;
1286:
1287: fii_util.put_line(' ');
1288: IF (l_cnt > 0 or l_cnt = -1)THEN
1289: fii_util.put_line('DIAGNOSIS: Please assign an Organization to the Company Cost Centers listed above.');
1290:
1291: ELSE
1285: CLOSE no_org_cur;
1286:
1287: fii_util.put_line(' ');
1288: IF (l_cnt > 0 or l_cnt = -1)THEN
1289: fii_util.put_line('DIAGNOSIS: Please assign an Organization to the Company Cost Centers listed above.');
1290:
1291: ELSE
1292: fii_util.put_line('DIAGNOSIS: No missing Organization - Company Cost Centers found');
1293: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1288: IF (l_cnt > 0 or l_cnt = -1)THEN
1289: fii_util.put_line('DIAGNOSIS: Please assign an Organization to the Company Cost Centers listed above.');
1290:
1291: ELSE
1292: fii_util.put_line('DIAGNOSIS: No missing Organization - Company Cost Centers found');
1293: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1294: END IF;
1295:
1296: fii_util.put_line(' ');
1289: fii_util.put_line('DIAGNOSIS: Please assign an Organization to the Company Cost Centers listed above.');
1290:
1291: ELSE
1292: fii_util.put_line('DIAGNOSIS: No missing Organization - Company Cost Centers found');
1293: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1294: END IF;
1295:
1296: fii_util.put_line(' ');
1297: fii_util.put_line('END CHECK: ORG - Company Cost Center Assignments.');
1292: fii_util.put_line('DIAGNOSIS: No missing Organization - Company Cost Centers found');
1293: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1294: END IF;
1295:
1296: fii_util.put_line(' ');
1297: fii_util.put_line('END CHECK: ORG - Company Cost Center Assignments.');
1298: fii_util.put_line(
1299: '+---------------------------------------------------------------------+');
1300:
1293: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1294: END IF;
1295:
1296: fii_util.put_line(' ');
1297: fii_util.put_line('END CHECK: ORG - Company Cost Center Assignments.');
1298: fii_util.put_line(
1299: '+---------------------------------------------------------------------+');
1300:
1301: ----------------------------------------------------------------------
1294: END IF;
1295:
1296: fii_util.put_line(' ');
1297: fii_util.put_line('END CHECK: ORG - Company Cost Center Assignments.');
1298: fii_util.put_line(
1299: '+---------------------------------------------------------------------+');
1300:
1301: ----------------------------------------------------------------------
1302: -- Validate if there are company cost centers which only has company
1301: ----------------------------------------------------------------------
1302: -- Validate if there are company cost centers which only has company
1303: -- assigned but cost center is null
1304: ----------------------------------------------------------------------
1305: fii_util.put_line(' ');
1306: fii_util.put_line(
1307: '+---------------------------------------------------------------------+');
1308: fii_util.put_line(
1309: 'Performing Check for Company Cost Center Organizations with only Company assigned');
1302: -- Validate if there are company cost centers which only has company
1303: -- assigned but cost center is null
1304: ----------------------------------------------------------------------
1305: fii_util.put_line(' ');
1306: fii_util.put_line(
1307: '+---------------------------------------------------------------------+');
1308: fii_util.put_line(
1309: 'Performing Check for Company Cost Center Organizations with only Company assigned');
1310: fii_util.put_line(
1304: ----------------------------------------------------------------------
1305: fii_util.put_line(' ');
1306: fii_util.put_line(
1307: '+---------------------------------------------------------------------+');
1308: fii_util.put_line(
1309: 'Performing Check for Company Cost Center Organizations with only Company assigned');
1310: fii_util.put_line(
1311: '+---------------------------------------------------------------------+');
1312: fii_util.put_line('START CHECK: CCC Org with no Cost Center Assigned.');
1306: fii_util.put_line(
1307: '+---------------------------------------------------------------------+');
1308: fii_util.put_line(
1309: 'Performing Check for Company Cost Center Organizations with only Company assigned');
1310: fii_util.put_line(
1311: '+---------------------------------------------------------------------+');
1312: fii_util.put_line('START CHECK: CCC Org with no Cost Center Assigned.');
1313:
1314: -- Find out if we have company cost centers with no cost center assigned
1308: fii_util.put_line(
1309: 'Performing Check for Company Cost Center Organizations with only Company assigned');
1310: fii_util.put_line(
1311: '+---------------------------------------------------------------------+');
1312: fii_util.put_line('START CHECK: CCC Org with no Cost Center Assigned.');
1313:
1314: -- Find out if we have company cost centers with no cost center assigned
1315: l_cnt := 0;
1316: OPEN org_no_cc_cur;
1318: FETCH org_no_cc_cur INTO l_co_id, l_co_name, l_org_id, l_org_name;
1319: EXIT WHEN org_no_cc_cur%NOTFOUND;
1320:
1321: IF (l_cnt = 0) THEN
1322: fii_util.put_line(' ');
1323: fii_util.put_line(
1324: 'Company ID Company Organization ID Organization');
1325: fii_util.put_line(
1326: '------- ---------- ----------- -------------- ');
1319: EXIT WHEN org_no_cc_cur%NOTFOUND;
1320:
1321: IF (l_cnt = 0) THEN
1322: fii_util.put_line(' ');
1323: fii_util.put_line(
1324: 'Company ID Company Organization ID Organization');
1325: fii_util.put_line(
1326: '------- ---------- ----------- -------------- ');
1327: l_cnt := l_cnt + 1;
1321: IF (l_cnt = 0) THEN
1322: fii_util.put_line(' ');
1323: fii_util.put_line(
1324: 'Company ID Company Organization ID Organization');
1325: fii_util.put_line(
1326: '------- ---------- ----------- -------------- ');
1327: l_cnt := l_cnt + 1;
1328: END IF;
1329: FII_UTIL.write_log(l_co_id || ' '|| l_co_name || ' '||
1325: fii_util.put_line(
1326: '------- ---------- ----------- -------------- ');
1327: l_cnt := l_cnt + 1;
1328: END IF;
1329: FII_UTIL.write_log(l_co_id || ' '|| l_co_name || ' '||
1330: l_org_id || ' '|| l_org_name);
1331: END LOOP;
1332: CLOSE org_no_cc_cur;
1333:
1330: l_org_id || ' '|| l_org_name);
1331: END LOOP;
1332: CLOSE org_no_cc_cur;
1333:
1334: fii_util.put_line(' ');
1335: IF (l_cnt > 0 or l_cnt = -1)THEN
1336: fii_util.put_line('DIAGNOSIS: Please assign Cost Centers to the above listed Organizations except for the place holder organizations.');
1337:
1338: ELSE
1332: CLOSE org_no_cc_cur;
1333:
1334: fii_util.put_line(' ');
1335: IF (l_cnt > 0 or l_cnt = -1)THEN
1336: fii_util.put_line('DIAGNOSIS: Please assign Cost Centers to the above listed Organizations except for the place holder organizations.');
1337:
1338: ELSE
1339: fii_util.put_line('DIAGNOSIS: No Company Cost Center Organizations with missing Cost Center values found.');
1340: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1335: IF (l_cnt > 0 or l_cnt = -1)THEN
1336: fii_util.put_line('DIAGNOSIS: Please assign Cost Centers to the above listed Organizations except for the place holder organizations.');
1337:
1338: ELSE
1339: fii_util.put_line('DIAGNOSIS: No Company Cost Center Organizations with missing Cost Center values found.');
1340: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1341: END IF;
1342:
1343: fii_util.put_line(' ');
1336: fii_util.put_line('DIAGNOSIS: Please assign Cost Centers to the above listed Organizations except for the place holder organizations.');
1337:
1338: ELSE
1339: fii_util.put_line('DIAGNOSIS: No Company Cost Center Organizations with missing Cost Center values found.');
1340: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1341: END IF;
1342:
1343: fii_util.put_line(' ');
1344: fii_util.put_line('END CHECK: CCC Org with no Cost Center Assigned.');
1339: fii_util.put_line('DIAGNOSIS: No Company Cost Center Organizations with missing Cost Center values found.');
1340: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1341: END IF;
1342:
1343: fii_util.put_line(' ');
1344: fii_util.put_line('END CHECK: CCC Org with no Cost Center Assigned.');
1345: fii_util.put_line(
1346: '+---------------------------------------------------------------------+');
1347:
1340: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1341: END IF;
1342:
1343: fii_util.put_line(' ');
1344: fii_util.put_line('END CHECK: CCC Org with no Cost Center Assigned.');
1345: fii_util.put_line(
1346: '+---------------------------------------------------------------------+');
1347:
1348: ----------------------------------------------------------------------
1341: END IF;
1342:
1343: fii_util.put_line(' ');
1344: fii_util.put_line('END CHECK: CCC Org with no Cost Center Assigned.');
1345: fii_util.put_line(
1346: '+---------------------------------------------------------------------+');
1347:
1348: ----------------------------------------------------------------------
1349: -- Validate that company cost center organizations have valid manager
1348: ----------------------------------------------------------------------
1349: -- Validate that company cost center organizations have valid manager
1350: -- assigned to it.
1351: ----------------------------------------------------------------------
1352: fii_util.put_line(' ');
1353: fii_util.put_line(
1354: '+---------------------------------------------------------------------+');
1355: fii_util.put_line('Performing Check for Manager Assignments');
1356: fii_util.put_line(
1349: -- Validate that company cost center organizations have valid manager
1350: -- assigned to it.
1351: ----------------------------------------------------------------------
1352: fii_util.put_line(' ');
1353: fii_util.put_line(
1354: '+---------------------------------------------------------------------+');
1355: fii_util.put_line('Performing Check for Manager Assignments');
1356: fii_util.put_line(
1357: '+---------------------------------------------------------------------+');
1351: ----------------------------------------------------------------------
1352: fii_util.put_line(' ');
1353: fii_util.put_line(
1354: '+---------------------------------------------------------------------+');
1355: fii_util.put_line('Performing Check for Manager Assignments');
1356: fii_util.put_line(
1357: '+---------------------------------------------------------------------+');
1358: fii_util.put_line('START CHECK: Valid Manager Assignments.');
1359:
1352: fii_util.put_line(' ');
1353: fii_util.put_line(
1354: '+---------------------------------------------------------------------+');
1355: fii_util.put_line('Performing Check for Manager Assignments');
1356: fii_util.put_line(
1357: '+---------------------------------------------------------------------+');
1358: fii_util.put_line('START CHECK: Valid Manager Assignments.');
1359:
1360: -- Find out if manager assignment dates are current or not
1354: '+---------------------------------------------------------------------+');
1355: fii_util.put_line('Performing Check for Manager Assignments');
1356: fii_util.put_line(
1357: '+---------------------------------------------------------------------+');
1358: fii_util.put_line('START CHECK: Valid Manager Assignments.');
1359:
1360: -- Find out if manager assignment dates are current or not
1361: l_cnt := 0;
1362: OPEN mgr_assgn_cur;
1364: FETCH mgr_assgn_cur INTO l_co_name, l_cc_name, l_org_id, l_org_name;
1365: EXIT WHEN mgr_assgn_cur%NOTFOUND;
1366:
1367: IF (l_cnt = 0) THEN
1368: fii_util.put_line(' ');
1369: fii_util.put_line(
1370: 'The following Company Cost Center Organizations does not have a valid manager assigned:');
1371: fii_util.put_line(
1372: 'Company Cost Center Org ID Organization Name ');
1365: EXIT WHEN mgr_assgn_cur%NOTFOUND;
1366:
1367: IF (l_cnt = 0) THEN
1368: fii_util.put_line(' ');
1369: fii_util.put_line(
1370: 'The following Company Cost Center Organizations does not have a valid manager assigned:');
1371: fii_util.put_line(
1372: 'Company Cost Center Org ID Organization Name ');
1373: fii_util.put_line(
1367: IF (l_cnt = 0) THEN
1368: fii_util.put_line(' ');
1369: fii_util.put_line(
1370: 'The following Company Cost Center Organizations does not have a valid manager assigned:');
1371: fii_util.put_line(
1372: 'Company Cost Center Org ID Organization Name ');
1373: fii_util.put_line(
1374: '--------- ------------ -------- -----------------');
1375: l_cnt := l_cnt + 1;
1369: fii_util.put_line(
1370: 'The following Company Cost Center Organizations does not have a valid manager assigned:');
1371: fii_util.put_line(
1372: 'Company Cost Center Org ID Organization Name ');
1373: fii_util.put_line(
1374: '--------- ------------ -------- -----------------');
1375: l_cnt := l_cnt + 1;
1376: END IF;
1377: fii_util.put_line(l_co_name || ' ' || l_cc_name || ' ' ||
1373: fii_util.put_line(
1374: '--------- ------------ -------- -----------------');
1375: l_cnt := l_cnt + 1;
1376: END IF;
1377: fii_util.put_line(l_co_name || ' ' || l_cc_name || ' ' ||
1378: l_org_id || ' ' || l_org_name);
1379: END LOOP;
1380: CLOSE mgr_assgn_cur;
1381:
1378: l_org_id || ' ' || l_org_name);
1379: END LOOP;
1380: CLOSE mgr_assgn_cur;
1381:
1382: fii_util.put_line(' ');
1383: IF (l_cnt > 0 or l_cnt = -1)THEN
1384: fii_util.put_line('DIAGNOSIS: Please make sure we have valid managers assigned to the above Company Cost Center Organizations.');
1385:
1386: ELSE
1380: CLOSE mgr_assgn_cur;
1381:
1382: fii_util.put_line(' ');
1383: IF (l_cnt > 0 or l_cnt = -1)THEN
1384: fii_util.put_line('DIAGNOSIS: Please make sure we have valid managers assigned to the above Company Cost Center Organizations.');
1385:
1386: ELSE
1387: fii_util.put_line(
1388: 'DIAGNOSIS: All Company Cost Center organizations with data have valid managers assigned');
1383: IF (l_cnt > 0 or l_cnt = -1)THEN
1384: fii_util.put_line('DIAGNOSIS: Please make sure we have valid managers assigned to the above Company Cost Center Organizations.');
1385:
1386: ELSE
1387: fii_util.put_line(
1388: 'DIAGNOSIS: All Company Cost Center organizations with data have valid managers assigned');
1389: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1390: END IF;
1391:
1385:
1386: ELSE
1387: fii_util.put_line(
1388: 'DIAGNOSIS: All Company Cost Center organizations with data have valid managers assigned');
1389: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1390: END IF;
1391:
1392: fii_util.put_line(' ');
1393: fii_util.put_line('END CHECK: Valid Manager Assignments');
1388: 'DIAGNOSIS: All Company Cost Center organizations with data have valid managers assigned');
1389: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1390: END IF;
1391:
1392: fii_util.put_line(' ');
1393: fii_util.put_line('END CHECK: Valid Manager Assignments');
1394: fii_util.put_line(
1395: '+---------------------------------------------------------------------+');
1396:
1389: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1390: END IF;
1391:
1392: fii_util.put_line(' ');
1393: fii_util.put_line('END CHECK: Valid Manager Assignments');
1394: fii_util.put_line(
1395: '+---------------------------------------------------------------------+');
1396:
1397: fii_util.put_line(' ');
1390: END IF;
1391:
1392: fii_util.put_line(' ');
1393: fii_util.put_line('END CHECK: Valid Manager Assignments');
1394: fii_util.put_line(
1395: '+---------------------------------------------------------------------+');
1396:
1397: fii_util.put_line(' ');
1398: fii_util.put_line('START CHECK: Valid Manager Assignment HR Orgs.');
1393: fii_util.put_line('END CHECK: Valid Manager Assignments');
1394: fii_util.put_line(
1395: '+---------------------------------------------------------------------+');
1396:
1397: fii_util.put_line(' ');
1398: fii_util.put_line('START CHECK: Valid Manager Assignment HR Orgs.');
1399:
1400: -- Find out if manager assigned to HR organization has a valid
1401: -- effective date or not
1394: fii_util.put_line(
1395: '+---------------------------------------------------------------------+');
1396:
1397: fii_util.put_line(' ');
1398: fii_util.put_line('START CHECK: Valid Manager Assignment HR Orgs.');
1399:
1400: -- Find out if manager assigned to HR organization has a valid
1401: -- effective date or not
1402: l_cnt := 0;
1405: FETCH mgr_eff_cur INTO l_mgr, l_org_name, l_eff_end;
1406: EXIT WHEN mgr_eff_cur%NOTFOUND;
1407:
1408: IF (l_cnt = 0) THEN
1409: fii_util.put_line(' ');
1410: END IF;
1411:
1412: fii_util.put_line('MANAGER: '''|| l_mgr || ''' assigned to '''||
1413: l_org_name || ''' is not current in HR, END DATE = '||
1408: IF (l_cnt = 0) THEN
1409: fii_util.put_line(' ');
1410: END IF;
1411:
1412: fii_util.put_line('MANAGER: '''|| l_mgr || ''' assigned to '''||
1413: l_org_name || ''' is not current in HR, END DATE = '||
1414: l_eff_end );
1415: l_cnt := l_cnt + 1;
1416:
1416:
1417: END LOOP;
1418: CLOSE mgr_eff_cur;
1419:
1420: fii_util.put_line(' ');
1421: IF (l_cnt > 0 or l_cnt = -1)THEN
1422: fii_util.put_line('DIAGNOSIS: Please check the managers found above for valid employement dates.');
1423:
1424: ELSE
1418: CLOSE mgr_eff_cur;
1419:
1420: fii_util.put_line(' ');
1421: IF (l_cnt > 0 or l_cnt = -1)THEN
1422: fii_util.put_line('DIAGNOSIS: Please check the managers found above for valid employement dates.');
1423:
1424: ELSE
1425: fii_util.put_line('DIAGNOSIS: All managers are active employees');
1426: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1421: IF (l_cnt > 0 or l_cnt = -1)THEN
1422: fii_util.put_line('DIAGNOSIS: Please check the managers found above for valid employement dates.');
1423:
1424: ELSE
1425: fii_util.put_line('DIAGNOSIS: All managers are active employees');
1426: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1427: END IF;
1428:
1429: fii_util.put_line(' ');
1422: fii_util.put_line('DIAGNOSIS: Please check the managers found above for valid employement dates.');
1423:
1424: ELSE
1425: fii_util.put_line('DIAGNOSIS: All managers are active employees');
1426: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1427: END IF;
1428:
1429: fii_util.put_line(' ');
1430: fii_util.put_line('END CHECK: Valid Manager Assignments HR Orgs');
1425: fii_util.put_line('DIAGNOSIS: All managers are active employees');
1426: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1427: END IF;
1428:
1429: fii_util.put_line(' ');
1430: fii_util.put_line('END CHECK: Valid Manager Assignments HR Orgs');
1431: fii_util.put_line(
1432: '+---------------------------------------------------------------------+');
1433:
1426: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1427: END IF;
1428:
1429: fii_util.put_line(' ');
1430: fii_util.put_line('END CHECK: Valid Manager Assignments HR Orgs');
1431: fii_util.put_line(
1432: '+---------------------------------------------------------------------+');
1433:
1434: -- Find out if manager assigned in HR organization has a valid status
1427: END IF;
1428:
1429: fii_util.put_line(' ');
1430: fii_util.put_line('END CHECK: Valid Manager Assignments HR Orgs');
1431: fii_util.put_line(
1432: '+---------------------------------------------------------------------+');
1433:
1434: -- Find out if manager assigned in HR organization has a valid status
1435: -- in HR or not
1432: '+---------------------------------------------------------------------+');
1433:
1434: -- Find out if manager assigned in HR organization has a valid status
1435: -- in HR or not
1436: fii_util.put_line(' ');
1437: fii_util.put_line('START CHECK Valid Manager Assignment HR Status');
1438:
1439: -- Find out if manager assignment dates are current or not
1440: l_cnt := 0;
1433:
1434: -- Find out if manager assigned in HR organization has a valid status
1435: -- in HR or not
1436: fii_util.put_line(' ');
1437: fii_util.put_line('START CHECK Valid Manager Assignment HR Status');
1438:
1439: -- Find out if manager assignment dates are current or not
1440: l_cnt := 0;
1441: OPEN mgr_status_cur;
1443: FETCH mgr_status_cur INTO l_mgr, l_status;
1444: EXIT WHEN mgr_status_cur%NOTFOUND;
1445:
1446: IF (l_cnt = 0) THEN
1447: fii_util.put_line(' ');
1448: END IF;
1449:
1450: fii_util.put_line('MANAGER: ' || l_mgr ||
1451: ' is not an active employee in HR, STATUS = ' ||
1446: IF (l_cnt = 0) THEN
1447: fii_util.put_line(' ');
1448: END IF;
1449:
1450: fii_util.put_line('MANAGER: ' || l_mgr ||
1451: ' is not an active employee in HR, STATUS = ' ||
1452: l_status);
1453: l_cnt := l_cnt + 1;
1454:
1454:
1455: END LOOP;
1456: CLOSE mgr_status_cur;
1457:
1458: fii_util.put_line(' ');
1459: IF (l_cnt > 0 or l_cnt = -1)THEN
1460: fii_util.put_line('DIAGNOSIS: Please check the managers found above for valid employment status.');
1461:
1462: ELSE
1456: CLOSE mgr_status_cur;
1457:
1458: fii_util.put_line(' ');
1459: IF (l_cnt > 0 or l_cnt = -1)THEN
1460: fii_util.put_line('DIAGNOSIS: Please check the managers found above for valid employment status.');
1461:
1462: ELSE
1463: fii_util.put_line('DIAGNOSIS: All managers in HR are active');
1464: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1459: IF (l_cnt > 0 or l_cnt = -1)THEN
1460: fii_util.put_line('DIAGNOSIS: Please check the managers found above for valid employment status.');
1461:
1462: ELSE
1463: fii_util.put_line('DIAGNOSIS: All managers in HR are active');
1464: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1465: END IF;
1466:
1467: fii_util.put_line(' ');
1460: fii_util.put_line('DIAGNOSIS: Please check the managers found above for valid employment status.');
1461:
1462: ELSE
1463: fii_util.put_line('DIAGNOSIS: All managers in HR are active');
1464: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1465: END IF;
1466:
1467: fii_util.put_line(' ');
1468: fii_util.put_line('END CHECK: Valid Manager Assignment HR Status');
1463: fii_util.put_line('DIAGNOSIS: All managers in HR are active');
1464: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1465: END IF;
1466:
1467: fii_util.put_line(' ');
1468: fii_util.put_line('END CHECK: Valid Manager Assignment HR Status');
1469: fii_util.put_line(
1470: '+---------------------------------------------------------------------+');
1471:
1464: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1465: END IF;
1466:
1467: fii_util.put_line(' ');
1468: fii_util.put_line('END CHECK: Valid Manager Assignment HR Status');
1469: fii_util.put_line(
1470: '+---------------------------------------------------------------------+');
1471:
1472: ----------------------------------------------------------------------
1465: END IF;
1466:
1467: fii_util.put_line(' ');
1468: fii_util.put_line('END CHECK: Valid Manager Assignment HR Status');
1469: fii_util.put_line(
1470: '+---------------------------------------------------------------------+');
1471:
1472: ----------------------------------------------------------------------
1473: -- Validate if we have any transaction where the corresponding Company
1472: ----------------------------------------------------------------------
1473: -- Validate if we have any transaction where the corresponding Company
1474: -- Cost Centers does not have a manager assigned to it yet.
1475: ----------------------------------------------------------------------
1476: fii_util.put_line(' ');
1477: fii_util.put_line(
1478: '+---------------------------------------------------------------------+');
1479: fii_util.put_line('Performing Check for: CCC has transactions but no manager assigned.');
1480: fii_util.put_line(
1473: -- Validate if we have any transaction where the corresponding Company
1474: -- Cost Centers does not have a manager assigned to it yet.
1475: ----------------------------------------------------------------------
1476: fii_util.put_line(' ');
1477: fii_util.put_line(
1478: '+---------------------------------------------------------------------+');
1479: fii_util.put_line('Performing Check for: CCC has transactions but no manager assigned.');
1480: fii_util.put_line(
1481: '+---------------------------------------------------------------------+');
1475: ----------------------------------------------------------------------
1476: fii_util.put_line(' ');
1477: fii_util.put_line(
1478: '+---------------------------------------------------------------------+');
1479: fii_util.put_line('Performing Check for: CCC has transactions but no manager assigned.');
1480: fii_util.put_line(
1481: '+---------------------------------------------------------------------+');
1482: -- Check if we have any transactions where CCC org is not yet mapped.
1483: fii_util.put_line('START CHECK: CCC has transactions but no manager assigned.');
1476: fii_util.put_line(' ');
1477: fii_util.put_line(
1478: '+---------------------------------------------------------------------+');
1479: fii_util.put_line('Performing Check for: CCC has transactions but no manager assigned.');
1480: fii_util.put_line(
1481: '+---------------------------------------------------------------------+');
1482: -- Check if we have any transactions where CCC org is not yet mapped.
1483: fii_util.put_line('START CHECK: CCC has transactions but no manager assigned.');
1484: fii_util.put_line(' ');
1479: fii_util.put_line('Performing Check for: CCC has transactions but no manager assigned.');
1480: fii_util.put_line(
1481: '+---------------------------------------------------------------------+');
1482: -- Check if we have any transactions where CCC org is not yet mapped.
1483: fii_util.put_line('START CHECK: CCC has transactions but no manager assigned.');
1484: fii_util.put_line(' ');
1485:
1486: -- Find out if we have CCC that has transactions but no manager assigned
1487: l_cnt := 0;
1480: fii_util.put_line(
1481: '+---------------------------------------------------------------------+');
1482: -- Check if we have any transactions where CCC org is not yet mapped.
1483: fii_util.put_line('START CHECK: CCC has transactions but no manager assigned.');
1484: fii_util.put_line(' ');
1485:
1486: -- Find out if we have CCC that has transactions but no manager assigned
1487: l_cnt := 0;
1488: OPEN trans_ccc_no_mgr_cur;
1492: l_cc_id, l_cc_name;
1493: EXIT WHEN trans_ccc_no_mgr_cur%NOTFOUND;
1494:
1495: IF (l_cnt = 0) THEN
1496: fii_util.put_line('The following Company Cost Center Organization has some GL transactions but their corresponding Company Cost Center Organization does not have a manager assigned to it.');
1497: fii_util.put_line(
1498: 'Org ID Organization Company ID Company Cost Center ID Cost Center');
1499: fii_util.put_line(
1500: '------ --------------------- ---------- ------- -------------- -----------');
1493: EXIT WHEN trans_ccc_no_mgr_cur%NOTFOUND;
1494:
1495: IF (l_cnt = 0) THEN
1496: fii_util.put_line('The following Company Cost Center Organization has some GL transactions but their corresponding Company Cost Center Organization does not have a manager assigned to it.');
1497: fii_util.put_line(
1498: 'Org ID Organization Company ID Company Cost Center ID Cost Center');
1499: fii_util.put_line(
1500: '------ --------------------- ---------- ------- -------------- -----------');
1501: l_cnt := l_cnt + 1;
1495: IF (l_cnt = 0) THEN
1496: fii_util.put_line('The following Company Cost Center Organization has some GL transactions but their corresponding Company Cost Center Organization does not have a manager assigned to it.');
1497: fii_util.put_line(
1498: 'Org ID Organization Company ID Company Cost Center ID Cost Center');
1499: fii_util.put_line(
1500: '------ --------------------- ---------- ------- -------------- -----------');
1501: l_cnt := l_cnt + 1;
1502: END IF;
1503: fii_util.put_line(l_org_id || ' '|| l_org_name || ' ' || l_co_id || ' ' ||
1499: fii_util.put_line(
1500: '------ --------------------- ---------- ------- -------------- -----------');
1501: l_cnt := l_cnt + 1;
1502: END IF;
1503: fii_util.put_line(l_org_id || ' '|| l_org_name || ' ' || l_co_id || ' ' ||
1504: l_co_name || ' '|| l_cc_id || ' ' || l_cc_name);
1505: END LOOP;
1506:
1507: CLOSE trans_ccc_no_mgr_cur;
1505: END LOOP;
1506:
1507: CLOSE trans_ccc_no_mgr_cur;
1508:
1509: fii_util.put_line(' ');
1510: IF (l_cnt > 0 or l_cnt = -1)THEN
1511: fii_util.put_line('The above Organization has some GL transactions but their corresponding Organization does not have a manager assigned to it. Please review.');
1512:
1513: ELSE
1507: CLOSE trans_ccc_no_mgr_cur;
1508:
1509: fii_util.put_line(' ');
1510: IF (l_cnt > 0 or l_cnt = -1)THEN
1511: fii_util.put_line('The above Organization has some GL transactions but their corresponding Organization does not have a manager assigned to it. Please review.');
1512:
1513: ELSE
1514: fii_util.put_line('DIAGNOSIS: All company and cost center combinations with some GL transactions have a manager assigned to it already.');
1515: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1510: IF (l_cnt > 0 or l_cnt = -1)THEN
1511: fii_util.put_line('The above Organization has some GL transactions but their corresponding Organization does not have a manager assigned to it. Please review.');
1512:
1513: ELSE
1514: fii_util.put_line('DIAGNOSIS: All company and cost center combinations with some GL transactions have a manager assigned to it already.');
1515: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1516: END IF;
1517:
1518: fii_util.put_line(' ');
1511: fii_util.put_line('The above Organization has some GL transactions but their corresponding Organization does not have a manager assigned to it. Please review.');
1512:
1513: ELSE
1514: fii_util.put_line('DIAGNOSIS: All company and cost center combinations with some GL transactions have a manager assigned to it already.');
1515: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1516: END IF;
1517:
1518: fii_util.put_line(' ');
1519: fii_util.put_line('END CHECK: CCC has transactions but no manager assigned.');
1514: fii_util.put_line('DIAGNOSIS: All company and cost center combinations with some GL transactions have a manager assigned to it already.');
1515: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1516: END IF;
1517:
1518: fii_util.put_line(' ');
1519: fii_util.put_line('END CHECK: CCC has transactions but no manager assigned.');
1520: fii_util.put_line(
1521: '+---------------------------------------------------------------------+');
1522:
1515: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1516: END IF;
1517:
1518: fii_util.put_line(' ');
1519: fii_util.put_line('END CHECK: CCC has transactions but no manager assigned.');
1520: fii_util.put_line(
1521: '+---------------------------------------------------------------------+');
1522:
1523: ----------------------------------------------------------------------
1516: END IF;
1517:
1518: fii_util.put_line(' ');
1519: fii_util.put_line('END CHECK: CCC has transactions but no manager assigned.');
1520: fii_util.put_line(
1521: '+---------------------------------------------------------------------+');
1522:
1523: ----------------------------------------------------------------------
1524: -- Validate if we have any transaction where the corresponding Financial
1523: ----------------------------------------------------------------------
1524: -- Validate if we have any transaction where the corresponding Financial
1525: -- Categories not mapped using FDHM
1526: ----------------------------------------------------------------------
1527: fii_util.put_line(' ');
1528: fii_util.put_line(
1529: '+---------------------------------------------------------------------+');
1530: fii_util.put_line('Performing Check for: Transactions with FC not mapped');
1531: fii_util.put_line(
1524: -- Validate if we have any transaction where the corresponding Financial
1525: -- Categories not mapped using FDHM
1526: ----------------------------------------------------------------------
1527: fii_util.put_line(' ');
1528: fii_util.put_line(
1529: '+---------------------------------------------------------------------+');
1530: fii_util.put_line('Performing Check for: Transactions with FC not mapped');
1531: fii_util.put_line(
1532: '+---------------------------------------------------------------------+');
1526: ----------------------------------------------------------------------
1527: fii_util.put_line(' ');
1528: fii_util.put_line(
1529: '+---------------------------------------------------------------------+');
1530: fii_util.put_line('Performing Check for: Transactions with FC not mapped');
1531: fii_util.put_line(
1532: '+---------------------------------------------------------------------+');
1533: -- Check if there is any transactions where the corresponding FC is not mapped
1534: fii_util.put_line('START CHECK: Transactions with FC not mapped');
1527: fii_util.put_line(' ');
1528: fii_util.put_line(
1529: '+---------------------------------------------------------------------+');
1530: fii_util.put_line('Performing Check for: Transactions with FC not mapped');
1531: fii_util.put_line(
1532: '+---------------------------------------------------------------------+');
1533: -- Check if there is any transactions where the corresponding FC is not mapped
1534: fii_util.put_line('START CHECK: Transactions with FC not mapped');
1535: fii_util.put_line(' ');
1530: fii_util.put_line('Performing Check for: Transactions with FC not mapped');
1531: fii_util.put_line(
1532: '+---------------------------------------------------------------------+');
1533: -- Check if there is any transactions where the corresponding FC is not mapped
1534: fii_util.put_line('START CHECK: Transactions with FC not mapped');
1535: fii_util.put_line(' ');
1536:
1537: -- Find out if we have transactions with FC not mapped
1538: l_cnt := 0;
1531: fii_util.put_line(
1532: '+---------------------------------------------------------------------+');
1533: -- Check if there is any transactions where the corresponding FC is not mapped
1534: fii_util.put_line('START CHECK: Transactions with FC not mapped');
1535: fii_util.put_line(' ');
1536:
1537: -- Find out if we have transactions with FC not mapped
1538: l_cnt := 0;
1539: OPEN trans_no_fc_cur;
1542: FETCH trans_no_fc_cur INTO l_vs_id, l_vs_name, l_fc_id, l_fc_name;
1543: EXIT WHEN trans_no_fc_cur%NOTFOUND;
1544:
1545: IF (l_cnt = 0) THEN
1546: fii_util.put_line('The following Financial Categories has some GL transactions but their corresponding Financial Categories are not set up.');
1547: fii_util.put_line(
1548: 'FC Value Set ID FC Value Set Name FC ID Financial Category');
1549: fii_util.put_line(
1550: '--------------- ---------------------------- ----- ---------------------');
1543: EXIT WHEN trans_no_fc_cur%NOTFOUND;
1544:
1545: IF (l_cnt = 0) THEN
1546: fii_util.put_line('The following Financial Categories has some GL transactions but their corresponding Financial Categories are not set up.');
1547: fii_util.put_line(
1548: 'FC Value Set ID FC Value Set Name FC ID Financial Category');
1549: fii_util.put_line(
1550: '--------------- ---------------------------- ----- ---------------------');
1551: l_cnt := l_cnt + 1;
1545: IF (l_cnt = 0) THEN
1546: fii_util.put_line('The following Financial Categories has some GL transactions but their corresponding Financial Categories are not set up.');
1547: fii_util.put_line(
1548: 'FC Value Set ID FC Value Set Name FC ID Financial Category');
1549: fii_util.put_line(
1550: '--------------- ---------------------------- ----- ---------------------');
1551: l_cnt := l_cnt + 1;
1552: END IF;
1553: fii_util.put_line(l_vs_id || ' ' || l_vs_name || ' ' || l_fc_id || ' ' || l_fc_name);
1549: fii_util.put_line(
1550: '--------------- ---------------------------- ----- ---------------------');
1551: l_cnt := l_cnt + 1;
1552: END IF;
1553: fii_util.put_line(l_vs_id || ' ' || l_vs_name || ' ' || l_fc_id || ' ' || l_fc_name);
1554: END LOOP;
1555:
1556: CLOSE trans_no_fc_cur;
1557:
1554: END LOOP;
1555:
1556: CLOSE trans_no_fc_cur;
1557:
1558: fii_util.put_line(' ');
1559: IF (l_cnt > 0 or l_cnt = -1)THEN
1560: fii_util.put_line('DIAGNOSIS: The financial category in the above list have been found with a transactions in GL but have not setup the corresponding Financial Category yet. Please review.');
1561:
1562: ELSE
1556: CLOSE trans_no_fc_cur;
1557:
1558: fii_util.put_line(' ');
1559: IF (l_cnt > 0 or l_cnt = -1)THEN
1560: fii_util.put_line('DIAGNOSIS: The financial category in the above list have been found with a transactions in GL but have not setup the corresponding Financial Category yet. Please review.');
1561:
1562: ELSE
1563: fii_util.put_line('DIAGNOSIS: All financial categories with a transactions have been mapped to a corresponding Financial Category');
1564: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1559: IF (l_cnt > 0 or l_cnt = -1)THEN
1560: fii_util.put_line('DIAGNOSIS: The financial category in the above list have been found with a transactions in GL but have not setup the corresponding Financial Category yet. Please review.');
1561:
1562: ELSE
1563: fii_util.put_line('DIAGNOSIS: All financial categories with a transactions have been mapped to a corresponding Financial Category');
1564: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1565: END IF;
1566:
1567: fii_util.put_line(' ');
1560: fii_util.put_line('DIAGNOSIS: The financial category in the above list have been found with a transactions in GL but have not setup the corresponding Financial Category yet. Please review.');
1561:
1562: ELSE
1563: fii_util.put_line('DIAGNOSIS: All financial categories with a transactions have been mapped to a corresponding Financial Category');
1564: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1565: END IF;
1566:
1567: fii_util.put_line(' ');
1568: fii_util.put_line('END CHECK: Transactions with FC not mapped');
1563: fii_util.put_line('DIAGNOSIS: All financial categories with a transactions have been mapped to a corresponding Financial Category');
1564: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1565: END IF;
1566:
1567: fii_util.put_line(' ');
1568: fii_util.put_line('END CHECK: Transactions with FC not mapped');
1569: fii_util.put_line(
1570: '+---------------------------------------------------------------------+');
1571:
1564: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1565: END IF;
1566:
1567: fii_util.put_line(' ');
1568: fii_util.put_line('END CHECK: Transactions with FC not mapped');
1569: fii_util.put_line(
1570: '+---------------------------------------------------------------------+');
1571:
1572: ----------------------------------------------------------------------
1565: END IF;
1566:
1567: fii_util.put_line(' ');
1568: fii_util.put_line('END CHECK: Transactions with FC not mapped');
1569: fii_util.put_line(
1570: '+---------------------------------------------------------------------+');
1571:
1572: ----------------------------------------------------------------------
1573: -- Validate if we have any UDD1 values that has not been mapped
1577: from fii_financial_dimensions_v
1578: where dimension_short_name = 'FII_USER_DEFINED_1';
1579:
1580: IF (l_udd_enabled_flag = 'Y') THEN
1581: fii_util.put_line(' ');
1582: fii_util.put_line(
1583: '+---------------------------------------------------------------------+');
1584: fii_util.put_line('Performing Check for: UDD1 setup in FDHM');
1585: fii_util.put_line(
1578: where dimension_short_name = 'FII_USER_DEFINED_1';
1579:
1580: IF (l_udd_enabled_flag = 'Y') THEN
1581: fii_util.put_line(' ');
1582: fii_util.put_line(
1583: '+---------------------------------------------------------------------+');
1584: fii_util.put_line('Performing Check for: UDD1 setup in FDHM');
1585: fii_util.put_line(
1586: '+---------------------------------------------------------------------+');
1580: IF (l_udd_enabled_flag = 'Y') THEN
1581: fii_util.put_line(' ');
1582: fii_util.put_line(
1583: '+---------------------------------------------------------------------+');
1584: fii_util.put_line('Performing Check for: UDD1 setup in FDHM');
1585: fii_util.put_line(
1586: '+---------------------------------------------------------------------+');
1587: -- Check user defined dimension 1 hierarhichy setup
1588: fii_util.put_line('START CHECK: User-defined dimension 1 that has not been mapped in FDHM');
1581: fii_util.put_line(' ');
1582: fii_util.put_line(
1583: '+---------------------------------------------------------------------+');
1584: fii_util.put_line('Performing Check for: UDD1 setup in FDHM');
1585: fii_util.put_line(
1586: '+---------------------------------------------------------------------+');
1587: -- Check user defined dimension 1 hierarhichy setup
1588: fii_util.put_line('START CHECK: User-defined dimension 1 that has not been mapped in FDHM');
1589: -- Find out if we have transactions with UDD1 not mapped
1584: fii_util.put_line('Performing Check for: UDD1 setup in FDHM');
1585: fii_util.put_line(
1586: '+---------------------------------------------------------------------+');
1587: -- Check user defined dimension 1 hierarhichy setup
1588: fii_util.put_line('START CHECK: User-defined dimension 1 that has not been mapped in FDHM');
1589: -- Find out if we have transactions with UDD1 not mapped
1590: l_cnt := 0;
1591: OPEN unmapped_udd1_cur;
1592:
1594: FETCH unmapped_udd1_cur INTO l_vs_id, l_vs_name, l_udd1_id, l_udd1_name;
1595: EXIT WHEN unmapped_udd1_cur%NOTFOUND;
1596:
1597: IF (l_cnt = 0) THEN
1598: fii_util.put_line('The following User-defined dimension 1 values have not been mapped in the user-defined dimension hierarchy.');
1599: fii_util.put_line(
1600: 'UDD1 Value Set ID UDD1 Value Set Name UDD1 ID UDD1');
1601: fii_util.put_line(
1602: '----------------- ---------------------------- ------- ---------------------');
1595: EXIT WHEN unmapped_udd1_cur%NOTFOUND;
1596:
1597: IF (l_cnt = 0) THEN
1598: fii_util.put_line('The following User-defined dimension 1 values have not been mapped in the user-defined dimension hierarchy.');
1599: fii_util.put_line(
1600: 'UDD1 Value Set ID UDD1 Value Set Name UDD1 ID UDD1');
1601: fii_util.put_line(
1602: '----------------- ---------------------------- ------- ---------------------');
1603: l_cnt := l_cnt + 1;
1597: IF (l_cnt = 0) THEN
1598: fii_util.put_line('The following User-defined dimension 1 values have not been mapped in the user-defined dimension hierarchy.');
1599: fii_util.put_line(
1600: 'UDD1 Value Set ID UDD1 Value Set Name UDD1 ID UDD1');
1601: fii_util.put_line(
1602: '----------------- ---------------------------- ------- ---------------------');
1603: l_cnt := l_cnt + 1;
1604: END IF;
1605: fii_util.put_line(l_vs_id || ' ' || l_vs_name || ' ' || l_udd1_id || ' ' || l_udd1_name);
1601: fii_util.put_line(
1602: '----------------- ---------------------------- ------- ---------------------');
1603: l_cnt := l_cnt + 1;
1604: END IF;
1605: fii_util.put_line(l_vs_id || ' ' || l_vs_name || ' ' || l_udd1_id || ' ' || l_udd1_name);
1606: END LOOP;
1607:
1608: CLOSE unmapped_udd1_cur;
1609:
1606: END LOOP;
1607:
1608: CLOSE unmapped_udd1_cur;
1609:
1610: fii_util.put_line(' ');
1611: IF (l_cnt > 0 or l_cnt = -1)THEN
1612: fii_util.put_line('DIAGNOSIS: The user-defined dimension 1 values in the above list have not been mapped in the UDD1 hierarchy yet. Please review.');
1613:
1614: ELSE
1608: CLOSE unmapped_udd1_cur;
1609:
1610: fii_util.put_line(' ');
1611: IF (l_cnt > 0 or l_cnt = -1)THEN
1612: fii_util.put_line('DIAGNOSIS: The user-defined dimension 1 values in the above list have not been mapped in the UDD1 hierarchy yet. Please review.');
1613:
1614: ELSE
1615: fii_util.put_line('DIAGNOSIS: All user-defined dimension 1 values in the above list have been mapped in the UDD1 hierarchy.');
1616: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1611: IF (l_cnt > 0 or l_cnt = -1)THEN
1612: fii_util.put_line('DIAGNOSIS: The user-defined dimension 1 values in the above list have not been mapped in the UDD1 hierarchy yet. Please review.');
1613:
1614: ELSE
1615: fii_util.put_line('DIAGNOSIS: All user-defined dimension 1 values in the above list have been mapped in the UDD1 hierarchy.');
1616: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1617: END IF;
1618:
1619: fii_util.put_line(' ');
1612: fii_util.put_line('DIAGNOSIS: The user-defined dimension 1 values in the above list have not been mapped in the UDD1 hierarchy yet. Please review.');
1613:
1614: ELSE
1615: fii_util.put_line('DIAGNOSIS: All user-defined dimension 1 values in the above list have been mapped in the UDD1 hierarchy.');
1616: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1617: END IF;
1618:
1619: fii_util.put_line(' ');
1620:
1615: fii_util.put_line('DIAGNOSIS: All user-defined dimension 1 values in the above list have been mapped in the UDD1 hierarchy.');
1616: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1617: END IF;
1618:
1619: fii_util.put_line(' ');
1620:
1621: fii_util.put_line(' ');
1622: fii_util.put_line('END CHECK: User-defined dimension 1 set up in FDHM');
1623: fii_util.put_line(
1617: END IF;
1618:
1619: fii_util.put_line(' ');
1620:
1621: fii_util.put_line(' ');
1622: fii_util.put_line('END CHECK: User-defined dimension 1 set up in FDHM');
1623: fii_util.put_line(
1624: '+---------------------------------------------------------------------+');
1625: ELSE
1618:
1619: fii_util.put_line(' ');
1620:
1621: fii_util.put_line(' ');
1622: fii_util.put_line('END CHECK: User-defined dimension 1 set up in FDHM');
1623: fii_util.put_line(
1624: '+---------------------------------------------------------------------+');
1625: ELSE
1626: fii_util.put_line(' ');
1619: fii_util.put_line(' ');
1620:
1621: fii_util.put_line(' ');
1622: fii_util.put_line('END CHECK: User-defined dimension 1 set up in FDHM');
1623: fii_util.put_line(
1624: '+---------------------------------------------------------------------+');
1625: ELSE
1626: fii_util.put_line(' ');
1627: fii_util.put_line(
1622: fii_util.put_line('END CHECK: User-defined dimension 1 set up in FDHM');
1623: fii_util.put_line(
1624: '+---------------------------------------------------------------------+');
1625: ELSE
1626: fii_util.put_line(' ');
1627: fii_util.put_line(
1628: '+---------------------------------------------------------------------+');
1629: fii_util.put_line('User-defined dimension 1 is not enabled. ');
1630: fii_util.put_line('Skipping the check for UDD1 setup.');
1623: fii_util.put_line(
1624: '+---------------------------------------------------------------------+');
1625: ELSE
1626: fii_util.put_line(' ');
1627: fii_util.put_line(
1628: '+---------------------------------------------------------------------+');
1629: fii_util.put_line('User-defined dimension 1 is not enabled. ');
1630: fii_util.put_line('Skipping the check for UDD1 setup.');
1631: fii_util.put_line(' ');
1625: ELSE
1626: fii_util.put_line(' ');
1627: fii_util.put_line(
1628: '+---------------------------------------------------------------------+');
1629: fii_util.put_line('User-defined dimension 1 is not enabled. ');
1630: fii_util.put_line('Skipping the check for UDD1 setup.');
1631: fii_util.put_line(' ');
1632: END IF;
1633:
1626: fii_util.put_line(' ');
1627: fii_util.put_line(
1628: '+---------------------------------------------------------------------+');
1629: fii_util.put_line('User-defined dimension 1 is not enabled. ');
1630: fii_util.put_line('Skipping the check for UDD1 setup.');
1631: fii_util.put_line(' ');
1632: END IF;
1633:
1634: ----------------------------------------------------------------------
1627: fii_util.put_line(
1628: '+---------------------------------------------------------------------+');
1629: fii_util.put_line('User-defined dimension 1 is not enabled. ');
1630: fii_util.put_line('Skipping the check for UDD1 setup.');
1631: fii_util.put_line(' ');
1632: END IF;
1633:
1634: ----------------------------------------------------------------------
1635: -- Validate if we have any UDD2 values that has not been mapped
1639: from fii_financial_dimensions_v
1640: where dimension_short_name = 'FII_USER_DEFINED_2';
1641:
1642: IF (l_udd_enabled_flag = 'Y') THEN
1643: fii_util.put_line(' ');
1644: fii_util.put_line(
1645: '+---------------------------------------------------------------------+');
1646: fii_util.put_line('Performing Check for: UDD2 setup in FDHM');
1647: fii_util.put_line(
1640: where dimension_short_name = 'FII_USER_DEFINED_2';
1641:
1642: IF (l_udd_enabled_flag = 'Y') THEN
1643: fii_util.put_line(' ');
1644: fii_util.put_line(
1645: '+---------------------------------------------------------------------+');
1646: fii_util.put_line('Performing Check for: UDD2 setup in FDHM');
1647: fii_util.put_line(
1648: '+---------------------------------------------------------------------+');
1642: IF (l_udd_enabled_flag = 'Y') THEN
1643: fii_util.put_line(' ');
1644: fii_util.put_line(
1645: '+---------------------------------------------------------------------+');
1646: fii_util.put_line('Performing Check for: UDD2 setup in FDHM');
1647: fii_util.put_line(
1648: '+---------------------------------------------------------------------+');
1649: -- Check user defined dimension 2 hierarhichy setup
1650: fii_util.put_line('START CHECK: User-defined dimension 2 that has not been mapped in FDHM');
1643: fii_util.put_line(' ');
1644: fii_util.put_line(
1645: '+---------------------------------------------------------------------+');
1646: fii_util.put_line('Performing Check for: UDD2 setup in FDHM');
1647: fii_util.put_line(
1648: '+---------------------------------------------------------------------+');
1649: -- Check user defined dimension 2 hierarhichy setup
1650: fii_util.put_line('START CHECK: User-defined dimension 2 that has not been mapped in FDHM');
1651:
1646: fii_util.put_line('Performing Check for: UDD2 setup in FDHM');
1647: fii_util.put_line(
1648: '+---------------------------------------------------------------------+');
1649: -- Check user defined dimension 2 hierarhichy setup
1650: fii_util.put_line('START CHECK: User-defined dimension 2 that has not been mapped in FDHM');
1651:
1652: -- Find out if we have transactions with UDD2 not mapped
1653: l_cnt := 0;
1654: OPEN unmapped_udd2_cur;
1657: FETCH unmapped_udd2_cur INTO l_vs_id, l_vs_name, l_udd2_id, l_udd2_name;
1658: EXIT WHEN unmapped_udd2_cur%NOTFOUND;
1659:
1660: IF (l_cnt = 0) THEN
1661: fii_util.put_line('The following User-defined dimension 2 values have not been mapped in the user-defined dimension hierarchy.');
1662: fii_util.put_line(
1663: 'UDD2 Value Set ID UDD2 Value Set Name UDD2 ID UDD2');
1664: fii_util.put_line(
1665: '----------------- ---------------------------- ------- ---------------------');
1658: EXIT WHEN unmapped_udd2_cur%NOTFOUND;
1659:
1660: IF (l_cnt = 0) THEN
1661: fii_util.put_line('The following User-defined dimension 2 values have not been mapped in the user-defined dimension hierarchy.');
1662: fii_util.put_line(
1663: 'UDD2 Value Set ID UDD2 Value Set Name UDD2 ID UDD2');
1664: fii_util.put_line(
1665: '----------------- ---------------------------- ------- ---------------------');
1666: l_cnt := l_cnt + 1;
1660: IF (l_cnt = 0) THEN
1661: fii_util.put_line('The following User-defined dimension 2 values have not been mapped in the user-defined dimension hierarchy.');
1662: fii_util.put_line(
1663: 'UDD2 Value Set ID UDD2 Value Set Name UDD2 ID UDD2');
1664: fii_util.put_line(
1665: '----------------- ---------------------------- ------- ---------------------');
1666: l_cnt := l_cnt + 1;
1667: END IF;
1668: fii_util.put_line(l_vs_id || ' ' || l_vs_name || ' ' || l_udd2_id || ' ' || l_udd2_name);
1664: fii_util.put_line(
1665: '----------------- ---------------------------- ------- ---------------------');
1666: l_cnt := l_cnt + 1;
1667: END IF;
1668: fii_util.put_line(l_vs_id || ' ' || l_vs_name || ' ' || l_udd2_id || ' ' || l_udd2_name);
1669: END LOOP;
1670:
1671: CLOSE unmapped_udd2_cur;
1672:
1669: END LOOP;
1670:
1671: CLOSE unmapped_udd2_cur;
1672:
1673: fii_util.put_line(' ');
1674: IF (l_cnt > 0 or l_cnt = -1)THEN
1675: fii_util.put_line('DIAGNOSIS: The user-defined dimension 2 values in the above list have not been mapped in the UDD2 hierarchy yet. Please review.');
1676:
1677: ELSE
1671: CLOSE unmapped_udd2_cur;
1672:
1673: fii_util.put_line(' ');
1674: IF (l_cnt > 0 or l_cnt = -1)THEN
1675: fii_util.put_line('DIAGNOSIS: The user-defined dimension 2 values in the above list have not been mapped in the UDD2 hierarchy yet. Please review.');
1676:
1677: ELSE
1678: fii_util.put_line('DIAGNOSIS: All user-defined dimension 2 values in the above list have been mapped in the UDD2 hierarchy.');
1679: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1674: IF (l_cnt > 0 or l_cnt = -1)THEN
1675: fii_util.put_line('DIAGNOSIS: The user-defined dimension 2 values in the above list have not been mapped in the UDD2 hierarchy yet. Please review.');
1676:
1677: ELSE
1678: fii_util.put_line('DIAGNOSIS: All user-defined dimension 2 values in the above list have been mapped in the UDD2 hierarchy.');
1679: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1680: END IF;
1681:
1682: fii_util.put_line(' ');
1675: fii_util.put_line('DIAGNOSIS: The user-defined dimension 2 values in the above list have not been mapped in the UDD2 hierarchy yet. Please review.');
1676:
1677: ELSE
1678: fii_util.put_line('DIAGNOSIS: All user-defined dimension 2 values in the above list have been mapped in the UDD2 hierarchy.');
1679: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1680: END IF;
1681:
1682: fii_util.put_line(' ');
1683:
1678: fii_util.put_line('DIAGNOSIS: All user-defined dimension 2 values in the above list have been mapped in the UDD2 hierarchy.');
1679: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1680: END IF;
1681:
1682: fii_util.put_line(' ');
1683:
1684: fii_util.put_line(' ');
1685: fii_util.put_line('END CHECK: User-defined dimension 2 set up in FDHM');
1686: fii_util.put_line(
1680: END IF;
1681:
1682: fii_util.put_line(' ');
1683:
1684: fii_util.put_line(' ');
1685: fii_util.put_line('END CHECK: User-defined dimension 2 set up in FDHM');
1686: fii_util.put_line(
1687: '+---------------------------------------------------------------------+');
1688: ELSE
1681:
1682: fii_util.put_line(' ');
1683:
1684: fii_util.put_line(' ');
1685: fii_util.put_line('END CHECK: User-defined dimension 2 set up in FDHM');
1686: fii_util.put_line(
1687: '+---------------------------------------------------------------------+');
1688: ELSE
1689: fii_util.put_line(' ');
1682: fii_util.put_line(' ');
1683:
1684: fii_util.put_line(' ');
1685: fii_util.put_line('END CHECK: User-defined dimension 2 set up in FDHM');
1686: fii_util.put_line(
1687: '+---------------------------------------------------------------------+');
1688: ELSE
1689: fii_util.put_line(' ');
1690: fii_util.put_line(
1685: fii_util.put_line('END CHECK: User-defined dimension 2 set up in FDHM');
1686: fii_util.put_line(
1687: '+---------------------------------------------------------------------+');
1688: ELSE
1689: fii_util.put_line(' ');
1690: fii_util.put_line(
1691: '+---------------------------------------------------------------------+');
1692: fii_util.put_line('User-defined dimension 2 is not enabled. ');
1693: fii_util.put_line('Skipping the check for UDD2 setup.');
1686: fii_util.put_line(
1687: '+---------------------------------------------------------------------+');
1688: ELSE
1689: fii_util.put_line(' ');
1690: fii_util.put_line(
1691: '+---------------------------------------------------------------------+');
1692: fii_util.put_line('User-defined dimension 2 is not enabled. ');
1693: fii_util.put_line('Skipping the check for UDD2 setup.');
1694: fii_util.put_line(' ');
1688: ELSE
1689: fii_util.put_line(' ');
1690: fii_util.put_line(
1691: '+---------------------------------------------------------------------+');
1692: fii_util.put_line('User-defined dimension 2 is not enabled. ');
1693: fii_util.put_line('Skipping the check for UDD2 setup.');
1694: fii_util.put_line(' ');
1695: END IF;
1696:
1689: fii_util.put_line(' ');
1690: fii_util.put_line(
1691: '+---------------------------------------------------------------------+');
1692: fii_util.put_line('User-defined dimension 2 is not enabled. ');
1693: fii_util.put_line('Skipping the check for UDD2 setup.');
1694: fii_util.put_line(' ');
1695: END IF;
1696:
1697: ----------------------------------------------------------------------
1690: fii_util.put_line(
1691: '+---------------------------------------------------------------------+');
1692: fii_util.put_line('User-defined dimension 2 is not enabled. ');
1693: fii_util.put_line('Skipping the check for UDD2 setup.');
1694: fii_util.put_line(' ');
1695: END IF;
1696:
1697: ----------------------------------------------------------------------
1698: -- Validate if we have any Financial Category without a financial
1697: ----------------------------------------------------------------------
1698: -- Validate if we have any Financial Category without a financial
1699: -- category type assigned.
1700: ----------------------------------------------------------------------
1701: fii_util.put_line(' ');
1702: fii_util.put_line(
1703: '+---------------------------------------------------------------------+');
1704: fii_util.put_line('Performing Check for: Financial Category without a financial category type.');
1705: fii_util.put_line(
1698: -- Validate if we have any Financial Category without a financial
1699: -- category type assigned.
1700: ----------------------------------------------------------------------
1701: fii_util.put_line(' ');
1702: fii_util.put_line(
1703: '+---------------------------------------------------------------------+');
1704: fii_util.put_line('Performing Check for: Financial Category without a financial category type.');
1705: fii_util.put_line(
1706: '+---------------------------------------------------------------------+');
1700: ----------------------------------------------------------------------
1701: fii_util.put_line(' ');
1702: fii_util.put_line(
1703: '+---------------------------------------------------------------------+');
1704: fii_util.put_line('Performing Check for: Financial Category without a financial category type.');
1705: fii_util.put_line(
1706: '+---------------------------------------------------------------------+');
1707: -- Check the user security profile
1708: fii_util.put_line('START CHECK: Financial Category without a financial category type.');
1701: fii_util.put_line(' ');
1702: fii_util.put_line(
1703: '+---------------------------------------------------------------------+');
1704: fii_util.put_line('Performing Check for: Financial Category without a financial category type.');
1705: fii_util.put_line(
1706: '+---------------------------------------------------------------------+');
1707: -- Check the user security profile
1708: fii_util.put_line('START CHECK: Financial Category without a financial category type.');
1709: -- Find out if we have transactions with FC not mapped
1704: fii_util.put_line('Performing Check for: Financial Category without a financial category type.');
1705: fii_util.put_line(
1706: '+---------------------------------------------------------------------+');
1707: -- Check the user security profile
1708: fii_util.put_line('START CHECK: Financial Category without a financial category type.');
1709: -- Find out if we have transactions with FC not mapped
1710: l_cnt := 0;
1711: OPEN fc_no_fctype_cur;
1712:
1714: FETCH fc_no_fctype_cur INTO l_vs_id, l_vs_name, l_fc_id, l_fc_name;
1715: EXIT WHEN fc_no_fctype_cur%NOTFOUND;
1716:
1717: IF (l_cnt = 0) THEN
1718: fii_util.put_line('The following Financial Categories has some GL transactions but their corresponding financial categoriy types are not set up.');
1719: fii_util.put_line(
1720: 'FC Value Set ID FC Value Set Name FC ID Financial Category');
1721: fii_util.put_line(
1722: '--------------- ---------------------------- ----- ---------------------');
1715: EXIT WHEN fc_no_fctype_cur%NOTFOUND;
1716:
1717: IF (l_cnt = 0) THEN
1718: fii_util.put_line('The following Financial Categories has some GL transactions but their corresponding financial categoriy types are not set up.');
1719: fii_util.put_line(
1720: 'FC Value Set ID FC Value Set Name FC ID Financial Category');
1721: fii_util.put_line(
1722: '--------------- ---------------------------- ----- ---------------------');
1723: l_cnt := l_cnt + 1;
1717: IF (l_cnt = 0) THEN
1718: fii_util.put_line('The following Financial Categories has some GL transactions but their corresponding financial categoriy types are not set up.');
1719: fii_util.put_line(
1720: 'FC Value Set ID FC Value Set Name FC ID Financial Category');
1721: fii_util.put_line(
1722: '--------------- ---------------------------- ----- ---------------------');
1723: l_cnt := l_cnt + 1;
1724: END IF;
1725: fii_util.put_line(l_vs_id || ' ' || l_vs_name || ' ' || l_fc_id || ' ' || l_fc_name);
1721: fii_util.put_line(
1722: '--------------- ---------------------------- ----- ---------------------');
1723: l_cnt := l_cnt + 1;
1724: END IF;
1725: fii_util.put_line(l_vs_id || ' ' || l_vs_name || ' ' || l_fc_id || ' ' || l_fc_name);
1726: END LOOP;
1727:
1728: CLOSE fc_no_fctype_cur;
1729:
1726: END LOOP;
1727:
1728: CLOSE fc_no_fctype_cur;
1729:
1730: fii_util.put_line(' ');
1731: IF (l_cnt > 0 or l_cnt = -1)THEN
1732: fii_util.put_line('DIAGNOSIS: The financial category in the above list have been found with a transactions in GL but have not setup the corresponding Financial Category yet. Please review.');
1733:
1734: ELSE
1728: CLOSE fc_no_fctype_cur;
1729:
1730: fii_util.put_line(' ');
1731: IF (l_cnt > 0 or l_cnt = -1)THEN
1732: fii_util.put_line('DIAGNOSIS: The financial category in the above list have been found with a transactions in GL but have not setup the corresponding Financial Category yet. Please review.');
1733:
1734: ELSE
1735: fii_util.put_line('DIAGNOSIS: All financial categories with a transactions have has their corresponding financial category and financial category types set up');
1736: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1731: IF (l_cnt > 0 or l_cnt = -1)THEN
1732: fii_util.put_line('DIAGNOSIS: The financial category in the above list have been found with a transactions in GL but have not setup the corresponding Financial Category yet. Please review.');
1733:
1734: ELSE
1735: fii_util.put_line('DIAGNOSIS: All financial categories with a transactions have has their corresponding financial category and financial category types set up');
1736: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1737: END IF;
1738:
1739: fii_util.put_line(' ');
1732: fii_util.put_line('DIAGNOSIS: The financial category in the above list have been found with a transactions in GL but have not setup the corresponding Financial Category yet. Please review.');
1733:
1734: ELSE
1735: fii_util.put_line('DIAGNOSIS: All financial categories with a transactions have has their corresponding financial category and financial category types set up');
1736: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1737: END IF;
1738:
1739: fii_util.put_line(' ');
1740:
1735: fii_util.put_line('DIAGNOSIS: All financial categories with a transactions have has their corresponding financial category and financial category types set up');
1736: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1737: END IF;
1738:
1739: fii_util.put_line(' ');
1740:
1741: fii_util.put_line(' ');
1742: fii_util.put_line('END CHECK: Financial Category without a financial category type.');
1743: fii_util.put_line(
1737: END IF;
1738:
1739: fii_util.put_line(' ');
1740:
1741: fii_util.put_line(' ');
1742: fii_util.put_line('END CHECK: Financial Category without a financial category type.');
1743: fii_util.put_line(
1744: '+---------------------------------------------------------------------+');
1745:
1738:
1739: fii_util.put_line(' ');
1740:
1741: fii_util.put_line(' ');
1742: fii_util.put_line('END CHECK: Financial Category without a financial category type.');
1743: fii_util.put_line(
1744: '+---------------------------------------------------------------------+');
1745:
1746: ----------------------------------------------------------------------
1739: fii_util.put_line(' ');
1740:
1741: fii_util.put_line(' ');
1742: fii_util.put_line('END CHECK: Financial Category without a financial category type.');
1743: fii_util.put_line(
1744: '+---------------------------------------------------------------------+');
1745:
1746: ----------------------------------------------------------------------
1747: -- Validate encumbrance type mappings for PSI customers (R12 only)
1751: FROM sys.dba_objects
1752: WHERE object_name = 'FII_ENCUM_TYPE_MAPPINGS';
1753:
1754: IF ((l_cnt > 0) AND (l_industry_profile = 'G')) THEN
1755: fii_util.put_line(' ');
1756: fii_util.put_line(
1757: '+---------------------------------------------------------------------+');
1758: fii_util.put_line('Performing Check for: Encumbrance Type Mappings');
1759: fii_util.put_line(
1752: WHERE object_name = 'FII_ENCUM_TYPE_MAPPINGS';
1753:
1754: IF ((l_cnt > 0) AND (l_industry_profile = 'G')) THEN
1755: fii_util.put_line(' ');
1756: fii_util.put_line(
1757: '+---------------------------------------------------------------------+');
1758: fii_util.put_line('Performing Check for: Encumbrance Type Mappings');
1759: fii_util.put_line(
1760: '+---------------------------------------------------------------------+');
1754: IF ((l_cnt > 0) AND (l_industry_profile = 'G')) THEN
1755: fii_util.put_line(' ');
1756: fii_util.put_line(
1757: '+---------------------------------------------------------------------+');
1758: fii_util.put_line('Performing Check for: Encumbrance Type Mappings');
1759: fii_util.put_line(
1760: '+---------------------------------------------------------------------+');
1761: -- Check if encumbrance type mappings have been defined.
1762: fii_util.put_line('START CHECK: Encumbrance Type Mappings');
1755: fii_util.put_line(' ');
1756: fii_util.put_line(
1757: '+---------------------------------------------------------------------+');
1758: fii_util.put_line('Performing Check for: Encumbrance Type Mappings');
1759: fii_util.put_line(
1760: '+---------------------------------------------------------------------+');
1761: -- Check if encumbrance type mappings have been defined.
1762: fii_util.put_line('START CHECK: Encumbrance Type Mappings');
1763:
1758: fii_util.put_line('Performing Check for: Encumbrance Type Mappings');
1759: fii_util.put_line(
1760: '+---------------------------------------------------------------------+');
1761: -- Check if encumbrance type mappings have been defined.
1762: fii_util.put_line('START CHECK: Encumbrance Type Mappings');
1763:
1764: SELECT count(*)
1765: INTO l_cnt
1766: FROM fnd_lookup_values a,
1771: AND a.language = userenv('LANG')
1772: AND upper(a.lookup_code) = upper(b.encumbrance_type);
1773:
1774: IF (l_cnt = 0) THEN
1775: fii_util.put_line('DIAGNOSIS: Encumbrance Type Mappings has not been defined yet. Please define them before running the Funds Management reports.');
1776: ELSE
1777: fii_util.put_line('DIAGNOSIS: Some valid encumbrance type mappings have been defined. NO ACTION is needed.');
1778: END IF;
1779:
1773:
1774: IF (l_cnt = 0) THEN
1775: fii_util.put_line('DIAGNOSIS: Encumbrance Type Mappings has not been defined yet. Please define them before running the Funds Management reports.');
1776: ELSE
1777: fii_util.put_line('DIAGNOSIS: Some valid encumbrance type mappings have been defined. NO ACTION is needed.');
1778: END IF;
1779:
1780: -- Check for invalid encumbrance type mappings defined
1781: l_cnt := 0;
1784: FETCH invalid_lookup_cur INTO l_lookup_code, l_lookup_type;
1785: EXIT WHEN invalid_lookup_cur%NOTFOUND;
1786:
1787: IF (l_cnt = 0) THEN
1788: fii_util.put_line(
1789: 'DIAGNOSIS: Invalid lookup codes found in the encumbrance type mappings. ');
1790: fii_util.put_line('Lookup Type Lookup Code ');
1791: fii_util.put_line('----------- -----------');
1792: l_cnt := l_cnt + 1;
1786:
1787: IF (l_cnt = 0) THEN
1788: fii_util.put_line(
1789: 'DIAGNOSIS: Invalid lookup codes found in the encumbrance type mappings. ');
1790: fii_util.put_line('Lookup Type Lookup Code ');
1791: fii_util.put_line('----------- -----------');
1792: l_cnt := l_cnt + 1;
1793: END IF;
1794:
1787: IF (l_cnt = 0) THEN
1788: fii_util.put_line(
1789: 'DIAGNOSIS: Invalid lookup codes found in the encumbrance type mappings. ');
1790: fii_util.put_line('Lookup Type Lookup Code ');
1791: fii_util.put_line('----------- -----------');
1792: l_cnt := l_cnt + 1;
1793: END IF;
1794:
1795: fii_util.put_line(l_lookup_code ||' ' || l_lookup_type);
1791: fii_util.put_line('----------- -----------');
1792: l_cnt := l_cnt + 1;
1793: END IF;
1794:
1795: fii_util.put_line(l_lookup_code ||' ' || l_lookup_type);
1796: END LOOP;
1797: CLOSE invalid_lookup_cur;
1798:
1799: IF (l_cnt = 0) THEN
1796: END LOOP;
1797: CLOSE invalid_lookup_cur;
1798:
1799: IF (l_cnt = 0) THEN
1800: fii_util.put_line('DIAGNOSIS: No invalid lookup codes found in the encumbrance type mappings. NO ACTION is needed.');
1801: END IF;
1802:
1803: fii_util.put_line(' ');
1804: fii_util.put_line('END CHECK: Encumbrance Type Mappings');
1799: IF (l_cnt = 0) THEN
1800: fii_util.put_line('DIAGNOSIS: No invalid lookup codes found in the encumbrance type mappings. NO ACTION is needed.');
1801: END IF;
1802:
1803: fii_util.put_line(' ');
1804: fii_util.put_line('END CHECK: Encumbrance Type Mappings');
1805: fii_util.put_line(
1806: '+---------------------------------------------------------------------+');
1807: END IF;
1800: fii_util.put_line('DIAGNOSIS: No invalid lookup codes found in the encumbrance type mappings. NO ACTION is needed.');
1801: END IF;
1802:
1803: fii_util.put_line(' ');
1804: fii_util.put_line('END CHECK: Encumbrance Type Mappings');
1805: fii_util.put_line(
1806: '+---------------------------------------------------------------------+');
1807: END IF;
1808:
1801: END IF;
1802:
1803: fii_util.put_line(' ');
1804: fii_util.put_line('END CHECK: Encumbrance Type Mappings');
1805: fii_util.put_line(
1806: '+---------------------------------------------------------------------+');
1807: END IF;
1808:
1809: ----------------------------------------------------------------------
1808:
1809: ----------------------------------------------------------------------
1810: -- Validate if the MV has any data
1811: ----------------------------------------------------------------------
1812: fii_util.put_line(' ');
1813: fii_util.put_line(
1814: '+---------------------------------------------------------------------+');
1815: fii_util.put_line(
1816: 'Performing Check to see if MVs needed for FII reports have data.');
1809: ----------------------------------------------------------------------
1810: -- Validate if the MV has any data
1811: ----------------------------------------------------------------------
1812: fii_util.put_line(' ');
1813: fii_util.put_line(
1814: '+---------------------------------------------------------------------+');
1815: fii_util.put_line(
1816: 'Performing Check to see if MVs needed for FII reports have data.');
1817:
1811: ----------------------------------------------------------------------
1812: fii_util.put_line(' ');
1813: fii_util.put_line(
1814: '+---------------------------------------------------------------------+');
1815: fii_util.put_line(
1816: 'Performing Check to see if MVs needed for FII reports have data.');
1817:
1818: -- Find out if MV has data for FII reports
1819: -- MVs for GL
1816: 'Performing Check to see if MVs needed for FII reports have data.');
1817:
1818: -- Find out if MV has data for FII reports
1819: -- MVs for GL
1820: fii_util.put_line(
1821: '+---------------------------------------------------------------------+');
1822: fii_util.put_line('START CHECK: Data in GL MV needed for FII reports');
1823:
1824: l_cnt := 0;
1818: -- Find out if MV has data for FII reports
1819: -- MVs for GL
1820: fii_util.put_line(
1821: '+---------------------------------------------------------------------+');
1822: fii_util.put_line('START CHECK: Data in GL MV needed for FII reports');
1823:
1824: l_cnt := 0;
1825: OPEN gl_mv_cur;
1826: LOOP
1831: execute immediate l_stmt INTO l_mv_row_ct;
1832:
1833: IF (l_mv_row_ct = 0) THEN
1834: l_cnt := l_cnt + 1;
1835: fii_util.put_line(' The MV '''||l_mv_name||''' has no data.');
1836: END IF;
1837: END LOOP;
1838: CLOSE gl_mv_cur;
1839:
1837: END LOOP;
1838: CLOSE gl_mv_cur;
1839:
1840: IF (l_cnt = 0) THEN
1841: fii_util.put_line('DIAGNOSIS:All GL MVs have data. NO ACTION is needed.');
1842: ELSE
1843: fii_util.put_line(
1844: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1845: END IF;
1839:
1840: IF (l_cnt = 0) THEN
1841: fii_util.put_line('DIAGNOSIS:All GL MVs have data. NO ACTION is needed.');
1842: ELSE
1843: fii_util.put_line(
1844: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1845: END IF;
1846:
1847: fii_util.put_line(' ');
1843: fii_util.put_line(
1844: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1845: END IF;
1846:
1847: fii_util.put_line(' ');
1848: fii_util.put_line('END CHECK: Data in GL MV needed for FII reports');
1849: fii_util.put_line(
1850: '+---------------------------------------------------------------------+');
1851:
1844: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1845: END IF;
1846:
1847: fii_util.put_line(' ');
1848: fii_util.put_line('END CHECK: Data in GL MV needed for FII reports');
1849: fii_util.put_line(
1850: '+---------------------------------------------------------------------+');
1851:
1852: -- MVs for AP
1845: END IF;
1846:
1847: fii_util.put_line(' ');
1848: fii_util.put_line('END CHECK: Data in GL MV needed for FII reports');
1849: fii_util.put_line(
1850: '+---------------------------------------------------------------------+');
1851:
1852: -- MVs for AP
1853: fii_util.put_line(
1849: fii_util.put_line(
1850: '+---------------------------------------------------------------------+');
1851:
1852: -- MVs for AP
1853: fii_util.put_line(
1854: '+---------------------------------------------------------------------+');
1855: fii_util.put_line('START CHECK: Data in AP MV needed for FII reports');
1856:
1857: l_cnt := 0;
1851:
1852: -- MVs for AP
1853: fii_util.put_line(
1854: '+---------------------------------------------------------------------+');
1855: fii_util.put_line('START CHECK: Data in AP MV needed for FII reports');
1856:
1857: l_cnt := 0;
1858: OPEN ap_mv_cur;
1859: LOOP
1864: execute immediate l_stmt INTO l_mv_row_ct;
1865:
1866: IF (l_mv_row_ct = 0) THEN
1867: l_cnt := l_cnt + 1;
1868: fii_util.put_line(' The MV '''|| l_mv_name || ''' has no data.');
1869: END IF;
1870: END LOOP;
1871: CLOSE ap_mv_cur;
1872:
1870: END LOOP;
1871: CLOSE ap_mv_cur;
1872:
1873: IF (l_cnt = 0) THEN
1874: fii_util.put_line('DIAGNOSIS:All AP MVs have data. NO ACTION is needed.');
1875: ELSE
1876: fii_util.put_line(
1877: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1878: END IF;
1872:
1873: IF (l_cnt = 0) THEN
1874: fii_util.put_line('DIAGNOSIS:All AP MVs have data. NO ACTION is needed.');
1875: ELSE
1876: fii_util.put_line(
1877: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1878: END IF;
1879:
1880: fii_util.put_line(' ');
1876: fii_util.put_line(
1877: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1878: END IF;
1879:
1880: fii_util.put_line(' ');
1881: fii_util.put_line('END CHECK: Data in AP needed for FII reports');
1882: fii_util.put_line(
1883: '+---------------------------------------------------------------------+');
1884:
1877: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1878: END IF;
1879:
1880: fii_util.put_line(' ');
1881: fii_util.put_line('END CHECK: Data in AP needed for FII reports');
1882: fii_util.put_line(
1883: '+---------------------------------------------------------------------+');
1884:
1885: -- MVs for AR
1878: END IF;
1879:
1880: fii_util.put_line(' ');
1881: fii_util.put_line('END CHECK: Data in AP needed for FII reports');
1882: fii_util.put_line(
1883: '+---------------------------------------------------------------------+');
1884:
1885: -- MVs for AR
1886: fii_util.put_line(
1882: fii_util.put_line(
1883: '+---------------------------------------------------------------------+');
1884:
1885: -- MVs for AR
1886: fii_util.put_line(
1887: '+---------------------------------------------------------------------+');
1888: fii_util.put_line('START CHECK: Data in AR MV needed for FII reports');
1889:
1890: l_cnt := 0;
1884:
1885: -- MVs for AR
1886: fii_util.put_line(
1887: '+---------------------------------------------------------------------+');
1888: fii_util.put_line('START CHECK: Data in AR MV needed for FII reports');
1889:
1890: l_cnt := 0;
1891: OPEN ar_mv_cur;
1892: LOOP
1897: execute immediate l_stmt INTO l_mv_row_ct;
1898:
1899: IF (l_mv_row_ct = 0) THEN
1900: l_cnt := l_cnt + 1;
1901: fii_util.put_line(' The MV '''|| l_mv_name || ''' has no data.');
1902: END IF;
1903: END LOOP;
1904: CLOSE ar_mv_cur;
1905:
1903: END LOOP;
1904: CLOSE ar_mv_cur;
1905:
1906: IF (l_cnt = 0) THEN
1907: fii_util.put_line('DIAGNOSIS:All AR MVs have data. NO ACTION is needed.');
1908: ELSE
1909: fii_util.put_line(
1910: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1911: END IF;
1905:
1906: IF (l_cnt = 0) THEN
1907: fii_util.put_line('DIAGNOSIS:All AR MVs have data. NO ACTION is needed.');
1908: ELSE
1909: fii_util.put_line(
1910: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1911: END IF;
1912:
1913: fii_util.put_line(' ');
1909: fii_util.put_line(
1910: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1911: END IF;
1912:
1913: fii_util.put_line(' ');
1914: fii_util.put_line('END CHECK: Data in AR needed for FII reports');
1915: fii_util.put_line(
1916: '+---------------------------------------------------------------------+');
1917:
1910: 'DIAGNOSIS: Please try to refresh the above MV(s) manually.');
1911: END IF;
1912:
1913: fii_util.put_line(' ');
1914: fii_util.put_line('END CHECK: Data in AR needed for FII reports');
1915: fii_util.put_line(
1916: '+---------------------------------------------------------------------+');
1917:
1918: ----------------------------------------------------------------------
1911: END IF;
1912:
1913: fii_util.put_line(' ');
1914: fii_util.put_line('END CHECK: Data in AR needed for FII reports');
1915: fii_util.put_line(
1916: '+---------------------------------------------------------------------+');
1917:
1918: ----------------------------------------------------------------------
1919: -- Validate Dimension for Dashboards that are enabled
1917:
1918: ----------------------------------------------------------------------
1919: -- Validate Dimension for Dashboards that are enabled
1920: ----------------------------------------------------------------------
1921: fii_util.put_line(' ');
1922: fii_util.put_line(
1923: '+---------------------------------------------------------------------+');
1924: fii_util.put_line('Performing Dashboard Check for:Dashboard Requirements');
1925: fii_util.put_line(
1918: ----------------------------------------------------------------------
1919: -- Validate Dimension for Dashboards that are enabled
1920: ----------------------------------------------------------------------
1921: fii_util.put_line(' ');
1922: fii_util.put_line(
1923: '+---------------------------------------------------------------------+');
1924: fii_util.put_line('Performing Dashboard Check for:Dashboard Requirements');
1925: fii_util.put_line(
1926: '+---------------------------------------------------------------------+');
1920: ----------------------------------------------------------------------
1921: fii_util.put_line(' ');
1922: fii_util.put_line(
1923: '+---------------------------------------------------------------------+');
1924: fii_util.put_line('Performing Dashboard Check for:Dashboard Requirements');
1925: fii_util.put_line(
1926: '+---------------------------------------------------------------------+');
1927: fii_util.put_line(
1928: 'START CHECK: Profit and Loss, Profit and Loss by Manager');
1921: fii_util.put_line(' ');
1922: fii_util.put_line(
1923: '+---------------------------------------------------------------------+');
1924: fii_util.put_line('Performing Dashboard Check for:Dashboard Requirements');
1925: fii_util.put_line(
1926: '+---------------------------------------------------------------------+');
1927: fii_util.put_line(
1928: 'START CHECK: Profit and Loss, Profit and Loss by Manager');
1929:
1923: '+---------------------------------------------------------------------+');
1924: fii_util.put_line('Performing Dashboard Check for:Dashboard Requirements');
1925: fii_util.put_line(
1926: '+---------------------------------------------------------------------+');
1927: fii_util.put_line(
1928: 'START CHECK: Profit and Loss, Profit and Loss by Manager');
1929:
1930: -- Check if Profit and Loss, Profit and Loss by Manager Dashboard
1931: -- is enabled or not
1934: FROM bis_obj_properties
1935: WHERE object_name in ('FII_GL_PROFIT_AND_LOSS_PAGE', 'FII_PL_BY_MGR_PAGE')
1936: and object_type = 'PAGE';
1937:
1938: fii_util.put_line('Dashboard implementation flag = ' || l_enabled_flag );
1939:
1940: -- Find out dimensions enabled for each dashboard
1941: IF (l_enabled_flag = 'Y') THEN
1942: l_cnt := 0;
1950:
1951: EXIT WHEN dim_enabled_cur1%NOTFOUND;
1952:
1953: IF (l_cnt = 0) THEN
1954: fii_util.put_line(' ');
1955: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
1956: fii_util.put_line('------------------------- --------------------');
1957: l_cnt := l_cnt + 1;
1958: END IF;
1951: EXIT WHEN dim_enabled_cur1%NOTFOUND;
1952:
1953: IF (l_cnt = 0) THEN
1954: fii_util.put_line(' ');
1955: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
1956: fii_util.put_line('------------------------- --------------------');
1957: l_cnt := l_cnt + 1;
1958: END IF;
1959: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
1952:
1953: IF (l_cnt = 0) THEN
1954: fii_util.put_line(' ');
1955: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
1956: fii_util.put_line('------------------------- --------------------');
1957: l_cnt := l_cnt + 1;
1958: END IF;
1959: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
1960:
1955: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
1956: fii_util.put_line('------------------------- --------------------');
1957: l_cnt := l_cnt + 1;
1958: END IF;
1959: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
1960:
1961: -- Check if the required dimension is disabled
1962: IF (l_dim_short_name = 'GL_FII_FIN_ITEM' and l_enabled_flag = 'N') THEN
1963: l_dashboard_warn_flag := 'Y';
1965: END LOOP;
1966:
1967: CLOSE dim_enabled_cur1;
1968:
1969: fii_util.put_line(' ');
1970: IF (l_dashboard_warn_flag = 'Y') THEN
1971: fii_util.put_line('DIAGNOSIS: The Financial Category Dimension is required for the Profit and Loss Dashboards. Please make sure it is enabled.');
1972:
1973: ELSE
1967: CLOSE dim_enabled_cur1;
1968:
1969: fii_util.put_line(' ');
1970: IF (l_dashboard_warn_flag = 'Y') THEN
1971: fii_util.put_line('DIAGNOSIS: The Financial Category Dimension is required for the Profit and Loss Dashboards. Please make sure it is enabled.');
1972:
1973: ELSE
1974: fii_util.put_line('DIAGNOSIS: The required dimension (Financial Category) has been enabled for the Profit and Loss Dashboards.');
1975: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1970: IF (l_dashboard_warn_flag = 'Y') THEN
1971: fii_util.put_line('DIAGNOSIS: The Financial Category Dimension is required for the Profit and Loss Dashboards. Please make sure it is enabled.');
1972:
1973: ELSE
1974: fii_util.put_line('DIAGNOSIS: The required dimension (Financial Category) has been enabled for the Profit and Loss Dashboards.');
1975: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1976: END IF;
1977:
1978: ELSE
1971: fii_util.put_line('DIAGNOSIS: The Financial Category Dimension is required for the Profit and Loss Dashboards. Please make sure it is enabled.');
1972:
1973: ELSE
1974: fii_util.put_line('DIAGNOSIS: The required dimension (Financial Category) has been enabled for the Profit and Loss Dashboards.');
1975: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1976: END IF;
1977:
1978: ELSE
1979: fii_util.put_line('Skipping check for Profit and Loss, Profit and Loss by Manager page as they are not implementated.');
1975: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
1976: END IF;
1977:
1978: ELSE
1979: fii_util.put_line('Skipping check for Profit and Loss, Profit and Loss by Manager page as they are not implementated.');
1980: END IF;
1981:
1982: fii_util.put_line(' ');
1983: fii_util.put_line(
1978: ELSE
1979: fii_util.put_line('Skipping check for Profit and Loss, Profit and Loss by Manager page as they are not implementated.');
1980: END IF;
1981:
1982: fii_util.put_line(' ');
1983: fii_util.put_line(
1984: 'END CHECK: Profit and Loss, Profit and Loss by Manager.');
1985: fii_util.put_line(
1986: '+---------------------------------------------------------------------+');
1979: fii_util.put_line('Skipping check for Profit and Loss, Profit and Loss by Manager page as they are not implementated.');
1980: END IF;
1981:
1982: fii_util.put_line(' ');
1983: fii_util.put_line(
1984: 'END CHECK: Profit and Loss, Profit and Loss by Manager.');
1985: fii_util.put_line(
1986: '+---------------------------------------------------------------------+');
1987: fii_util.put_line(' ');
1981:
1982: fii_util.put_line(' ');
1983: fii_util.put_line(
1984: 'END CHECK: Profit and Loss, Profit and Loss by Manager.');
1985: fii_util.put_line(
1986: '+---------------------------------------------------------------------+');
1987: fii_util.put_line(' ');
1988:
1989: fii_util.put_line('START CHECK: Expense Management.');
1983: fii_util.put_line(
1984: 'END CHECK: Profit and Loss, Profit and Loss by Manager.');
1985: fii_util.put_line(
1986: '+---------------------------------------------------------------------+');
1987: fii_util.put_line(' ');
1988:
1989: fii_util.put_line('START CHECK: Expense Management.');
1990:
1991: -- Check if Expense Management Dashboard is enabled or not
1985: fii_util.put_line(
1986: '+---------------------------------------------------------------------+');
1987: fii_util.put_line(' ');
1988:
1989: fii_util.put_line('START CHECK: Expense Management.');
1990:
1991: -- Check if Expense Management Dashboard is enabled or not
1992: SELECT implementation_flag
1993: INTO l_enabled_flag
1994: FROM bis_obj_properties
1995: WHERE object_name = 'FII_EXP_MGMT_PAGE_P'
1996: and object_type = 'PAGE';
1997:
1998: fii_util.put_line('Dashboard implementation flag = ' || l_enabled_flag );
1999:
2000: -- Find out dimensions enabled for each dashboard
2001: IF (l_enabled_flag = 'Y') THEN
2002: l_cnt := 0;
2010:
2011: EXIT WHEN dim_enabled_cur1%NOTFOUND;
2012:
2013: IF (l_cnt = 0) THEN
2014: fii_util.put_line(' ');
2015: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2016: fii_util.put_line('------------------------- --------------------');
2017: l_cnt := l_cnt + 1;
2018: END IF;
2011: EXIT WHEN dim_enabled_cur1%NOTFOUND;
2012:
2013: IF (l_cnt = 0) THEN
2014: fii_util.put_line(' ');
2015: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2016: fii_util.put_line('------------------------- --------------------');
2017: l_cnt := l_cnt + 1;
2018: END IF;
2019: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
2012:
2013: IF (l_cnt = 0) THEN
2014: fii_util.put_line(' ');
2015: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2016: fii_util.put_line('------------------------- --------------------');
2017: l_cnt := l_cnt + 1;
2018: END IF;
2019: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
2020:
2015: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2016: fii_util.put_line('------------------------- --------------------');
2017: l_cnt := l_cnt + 1;
2018: END IF;
2019: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
2020:
2021: -- Check if the required dimension is disabled
2022: IF (l_dim_short_name = 'GL_FII_FIN_ITEM' and l_enabled_flag = 'N') THEN
2023: l_dashboard_warn_flag := 'Y';
2025: END LOOP;
2026:
2027: CLOSE dim_enabled_cur1;
2028:
2029: fii_util.put_line(' ');
2030: IF (l_dashboard_warn_flag = 'Y') THEN
2031: fii_util.put_line('DIAGNOSIS: The Financial Category Dimension is required for the Expense Management Dashboards. Please make sure it is enabled.');
2032:
2033: ELSE
2027: CLOSE dim_enabled_cur1;
2028:
2029: fii_util.put_line(' ');
2030: IF (l_dashboard_warn_flag = 'Y') THEN
2031: fii_util.put_line('DIAGNOSIS: The Financial Category Dimension is required for the Expense Management Dashboards. Please make sure it is enabled.');
2032:
2033: ELSE
2034: fii_util.put_line('DIAGNOSIS: The required dimension (Financial Category) has been enabled for the Expense Management Dashboards.');
2035: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2030: IF (l_dashboard_warn_flag = 'Y') THEN
2031: fii_util.put_line('DIAGNOSIS: The Financial Category Dimension is required for the Expense Management Dashboards. Please make sure it is enabled.');
2032:
2033: ELSE
2034: fii_util.put_line('DIAGNOSIS: The required dimension (Financial Category) has been enabled for the Expense Management Dashboards.');
2035: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2036: END IF;
2037:
2038: ELSE
2031: fii_util.put_line('DIAGNOSIS: The Financial Category Dimension is required for the Expense Management Dashboards. Please make sure it is enabled.');
2032:
2033: ELSE
2034: fii_util.put_line('DIAGNOSIS: The required dimension (Financial Category) has been enabled for the Expense Management Dashboards.');
2035: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2036: END IF;
2037:
2038: ELSE
2039: fii_util.put_line('Skipping check for Expense Management page as they are not implementated');
2035: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2036: END IF;
2037:
2038: ELSE
2039: fii_util.put_line('Skipping check for Expense Management page as they are not implementated');
2040: END IF;
2041:
2042: fii_util.put_line(' ');
2043: fii_util.put_line('END CHECK: Expense Management.');
2038: ELSE
2039: fii_util.put_line('Skipping check for Expense Management page as they are not implementated');
2040: END IF;
2041:
2042: fii_util.put_line(' ');
2043: fii_util.put_line('END CHECK: Expense Management.');
2044: fii_util.put_line(
2045: '+---------------------------------------------------------------------+');
2046: fii_util.put_line(' ');
2039: fii_util.put_line('Skipping check for Expense Management page as they are not implementated');
2040: END IF;
2041:
2042: fii_util.put_line(' ');
2043: fii_util.put_line('END CHECK: Expense Management.');
2044: fii_util.put_line(
2045: '+---------------------------------------------------------------------+');
2046: fii_util.put_line(' ');
2047:
2040: END IF;
2041:
2042: fii_util.put_line(' ');
2043: fii_util.put_line('END CHECK: Expense Management.');
2044: fii_util.put_line(
2045: '+---------------------------------------------------------------------+');
2046: fii_util.put_line(' ');
2047:
2048: fii_util.put_line('START CHECK: Expense Analysis.');
2042: fii_util.put_line(' ');
2043: fii_util.put_line('END CHECK: Expense Management.');
2044: fii_util.put_line(
2045: '+---------------------------------------------------------------------+');
2046: fii_util.put_line(' ');
2047:
2048: fii_util.put_line('START CHECK: Expense Analysis.');
2049:
2050: -- Check if Expense Analysis Dashboard is enabled or not
2044: fii_util.put_line(
2045: '+---------------------------------------------------------------------+');
2046: fii_util.put_line(' ');
2047:
2048: fii_util.put_line('START CHECK: Expense Analysis.');
2049:
2050: -- Check if Expense Analysis Dashboard is enabled or not
2051: SELECT implementation_flag
2052: INTO l_enabled_flag
2053: FROM bis_obj_properties
2054: WHERE object_name = 'FII_EA_EXPENSE_ANALYSIS_PAGE'
2055: and object_type = 'PAGE';
2056:
2057: fii_util.put_line('Dashboard implementation flag = ' || l_enabled_flag );
2058:
2059: -- Find out dimensions enabled for each dashboard
2060: IF (l_enabled_flag = 'Y') THEN
2061: l_cnt := 0;
2069:
2070: EXIT WHEN dim_enabled_cur2%NOTFOUND;
2071:
2072: IF (l_cnt = 0) THEN
2073: fii_util.put_line(' ');
2074: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2075: fii_util.put_line('------------------------- --------------------');
2076: l_cnt := l_cnt + 1;
2077: END IF;
2070: EXIT WHEN dim_enabled_cur2%NOTFOUND;
2071:
2072: IF (l_cnt = 0) THEN
2073: fii_util.put_line(' ');
2074: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2075: fii_util.put_line('------------------------- --------------------');
2076: l_cnt := l_cnt + 1;
2077: END IF;
2078: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
2071:
2072: IF (l_cnt = 0) THEN
2073: fii_util.put_line(' ');
2074: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2075: fii_util.put_line('------------------------- --------------------');
2076: l_cnt := l_cnt + 1;
2077: END IF;
2078: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
2079:
2074: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2075: fii_util.put_line('------------------------- --------------------');
2076: l_cnt := l_cnt + 1;
2077: END IF;
2078: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
2079:
2080: -- Check if the required dimension is disabled
2081: IF (l_dim_short_name IN ('FII_COMPANIES', 'HRI_CL_ORGCC', 'GL_FII_FIN_ITEM')
2082: and l_enabled_flag = 'N') THEN
2086: END LOOP;
2087:
2088: CLOSE dim_enabled_cur2;
2089:
2090: fii_util.put_line(' ');
2091: IF (l_dashboard_warn_flag = 'Y') THEN
2092: fii_util.put_line('DIAGNOSIS: Company, Cost Center and Financial Category Dimensions are required for the Expense Analysis Dashboard. Please make sure they are enabled.');
2093:
2094: ELSE
2088: CLOSE dim_enabled_cur2;
2089:
2090: fii_util.put_line(' ');
2091: IF (l_dashboard_warn_flag = 'Y') THEN
2092: fii_util.put_line('DIAGNOSIS: Company, Cost Center and Financial Category Dimensions are required for the Expense Analysis Dashboard. Please make sure they are enabled.');
2093:
2094: ELSE
2095: fii_util.put_line('DIAGNOSIS: The required dimensions (Company, Cost Center and Financial Category) have been enabled for the Expense Analysis Dashboards.');
2096: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2091: IF (l_dashboard_warn_flag = 'Y') THEN
2092: fii_util.put_line('DIAGNOSIS: Company, Cost Center and Financial Category Dimensions are required for the Expense Analysis Dashboard. Please make sure they are enabled.');
2093:
2094: ELSE
2095: fii_util.put_line('DIAGNOSIS: The required dimensions (Company, Cost Center and Financial Category) have been enabled for the Expense Analysis Dashboards.');
2096: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2097: END IF;
2098:
2099: ELSE
2092: fii_util.put_line('DIAGNOSIS: Company, Cost Center and Financial Category Dimensions are required for the Expense Analysis Dashboard. Please make sure they are enabled.');
2093:
2094: ELSE
2095: fii_util.put_line('DIAGNOSIS: The required dimensions (Company, Cost Center and Financial Category) have been enabled for the Expense Analysis Dashboards.');
2096: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2097: END IF;
2098:
2099: ELSE
2100: fii_util.put_line('Skipping check for Expense Analysis page as they are not implementated');
2096: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2097: END IF;
2098:
2099: ELSE
2100: fii_util.put_line('Skipping check for Expense Analysis page as they are not implementated');
2101: END IF;
2102:
2103: fii_util.put_line(' ');
2104: fii_util.put_line('END CHECK: Expense Analysis.');
2099: ELSE
2100: fii_util.put_line('Skipping check for Expense Analysis page as they are not implementated');
2101: END IF;
2102:
2103: fii_util.put_line(' ');
2104: fii_util.put_line('END CHECK: Expense Analysis.');
2105: fii_util.put_line(
2106: '+---------------------------------------------------------------------+');
2107: fii_util.put_line(' ');
2100: fii_util.put_line('Skipping check for Expense Analysis page as they are not implementated');
2101: END IF;
2102:
2103: fii_util.put_line(' ');
2104: fii_util.put_line('END CHECK: Expense Analysis.');
2105: fii_util.put_line(
2106: '+---------------------------------------------------------------------+');
2107: fii_util.put_line(' ');
2108:
2101: END IF;
2102:
2103: fii_util.put_line(' ');
2104: fii_util.put_line('END CHECK: Expense Analysis.');
2105: fii_util.put_line(
2106: '+---------------------------------------------------------------------+');
2107: fii_util.put_line(' ');
2108:
2109: fii_util.put_line('START CHECK: Funds Management.');
2103: fii_util.put_line(' ');
2104: fii_util.put_line('END CHECK: Expense Analysis.');
2105: fii_util.put_line(
2106: '+---------------------------------------------------------------------+');
2107: fii_util.put_line(' ');
2108:
2109: fii_util.put_line('START CHECK: Funds Management.');
2110:
2111: -- Check if Funds Management Dashboard is enabled or not
2105: fii_util.put_line(
2106: '+---------------------------------------------------------------------+');
2107: fii_util.put_line(' ');
2108:
2109: fii_util.put_line('START CHECK: Funds Management.');
2110:
2111: -- Check if Funds Management Dashboard is enabled or not
2112: SELECT implementation_flag
2113: INTO l_enabled_flag
2114: FROM bis_obj_properties
2115: WHERE object_name = 'FII_PSI_FUNDS_MANAGEMENT_PAGE'
2116: and object_type = 'PAGE';
2117:
2118: fii_util.put_line('Dashboard implementation flag = ' || l_enabled_flag );
2119:
2120: -- Find out dimensions enabled for each dashboard
2121: IF (l_enabled_flag = 'Y') THEN
2122: l_cnt := 0;
2130:
2131: EXIT WHEN dim_enabled_cur2%NOTFOUND;
2132:
2133: IF (l_cnt = 0) THEN
2134: fii_util.put_line(' ');
2135: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2136: fii_util.put_line('------------------------- --------------------');
2137: l_cnt := l_cnt + 1;
2138: END IF;
2131: EXIT WHEN dim_enabled_cur2%NOTFOUND;
2132:
2133: IF (l_cnt = 0) THEN
2134: fii_util.put_line(' ');
2135: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2136: fii_util.put_line('------------------------- --------------------');
2137: l_cnt := l_cnt + 1;
2138: END IF;
2139: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
2132:
2133: IF (l_cnt = 0) THEN
2134: fii_util.put_line(' ');
2135: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2136: fii_util.put_line('------------------------- --------------------');
2137: l_cnt := l_cnt + 1;
2138: END IF;
2139: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
2140:
2135: fii_util.put_line('Supporting Dimensions Enabled / Disabled? ');
2136: fii_util.put_line('------------------------- --------------------');
2137: l_cnt := l_cnt + 1;
2138: END IF;
2139: fii_util.put_line(l_dim_name || ' '|| l_enabled_flag);
2140:
2141: -- Check if the required dimension is disabled
2142: IF (l_dim_short_name IN ('FII_COMPANIES', 'HRI_CL_ORGCC', 'GL_FII_FIN_ITEM')
2143: and l_enabled_flag = 'N') THEN
2147: END LOOP;
2148:
2149: CLOSE dim_enabled_cur2;
2150:
2151: fii_util.put_line(' ');
2152: IF (l_dashboard_warn_flag = 'Y') THEN
2153: fii_util.put_line('DIAGNOSIS: Company, Cost Center and Financial Category Dimensions are required for the Funds Management Dashboard. Please make sure they are enabled.');
2154:
2155: ELSE
2149: CLOSE dim_enabled_cur2;
2150:
2151: fii_util.put_line(' ');
2152: IF (l_dashboard_warn_flag = 'Y') THEN
2153: fii_util.put_line('DIAGNOSIS: Company, Cost Center and Financial Category Dimensions are required for the Funds Management Dashboard. Please make sure they are enabled.');
2154:
2155: ELSE
2156: fii_util.put_line('DIAGNOSIS: The required dimensions (Company, Cost Center and Financial Category) have been enabled for the Funds Management Dashboards.');
2157: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2152: IF (l_dashboard_warn_flag = 'Y') THEN
2153: fii_util.put_line('DIAGNOSIS: Company, Cost Center and Financial Category Dimensions are required for the Funds Management Dashboard. Please make sure they are enabled.');
2154:
2155: ELSE
2156: fii_util.put_line('DIAGNOSIS: The required dimensions (Company, Cost Center and Financial Category) have been enabled for the Funds Management Dashboards.');
2157: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2158: END IF;
2159:
2160: ELSE
2153: fii_util.put_line('DIAGNOSIS: Company, Cost Center and Financial Category Dimensions are required for the Funds Management Dashboard. Please make sure they are enabled.');
2154:
2155: ELSE
2156: fii_util.put_line('DIAGNOSIS: The required dimensions (Company, Cost Center and Financial Category) have been enabled for the Funds Management Dashboards.');
2157: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2158: END IF;
2159:
2160: ELSE
2161: fii_util.put_line('Skipping check for Funds Management page as they are not implementated');
2157: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2158: END IF;
2159:
2160: ELSE
2161: fii_util.put_line('Skipping check for Funds Management page as they are not implementated');
2162: END IF;
2163:
2164: fii_util.put_line(' ');
2165: fii_util.put_line('END CHECK: Funds Management.');
2160: ELSE
2161: fii_util.put_line('Skipping check for Funds Management page as they are not implementated');
2162: END IF;
2163:
2164: fii_util.put_line(' ');
2165: fii_util.put_line('END CHECK: Funds Management.');
2166: fii_util.put_line(
2167: '+---------------------------------------------------------------------+');
2168:
2161: fii_util.put_line('Skipping check for Funds Management page as they are not implementated');
2162: END IF;
2163:
2164: fii_util.put_line(' ');
2165: fii_util.put_line('END CHECK: Funds Management.');
2166: fii_util.put_line(
2167: '+---------------------------------------------------------------------+');
2168:
2169: ----------------------------------------------------------------------
2162: END IF;
2163:
2164: fii_util.put_line(' ');
2165: fii_util.put_line('END CHECK: Funds Management.');
2166: fii_util.put_line(
2167: '+---------------------------------------------------------------------+');
2168:
2169: ----------------------------------------------------------------------
2170: -- Validate Profile Option Settings
2168:
2169: ----------------------------------------------------------------------
2170: -- Validate Profile Option Settings
2171: ----------------------------------------------------------------------
2172: fii_util.put_line(' ');
2173: fii_util.put_line(
2174: '+---------------------------------------------------------------------+');
2175: fii_util.put_line('Performing Check for: Profile Options');
2176: fii_util.put_line(
2169: ----------------------------------------------------------------------
2170: -- Validate Profile Option Settings
2171: ----------------------------------------------------------------------
2172: fii_util.put_line(' ');
2173: fii_util.put_line(
2174: '+---------------------------------------------------------------------+');
2175: fii_util.put_line('Performing Check for: Profile Options');
2176: fii_util.put_line(
2177: '+---------------------------------------------------------------------+');
2171: ----------------------------------------------------------------------
2172: fii_util.put_line(' ');
2173: fii_util.put_line(
2174: '+---------------------------------------------------------------------+');
2175: fii_util.put_line('Performing Check for: Profile Options');
2176: fii_util.put_line(
2177: '+---------------------------------------------------------------------+');
2178: -- Check the budget profile option
2179: fii_util.put_line('START CHECK: Budget Profile Check');
2172: fii_util.put_line(' ');
2173: fii_util.put_line(
2174: '+---------------------------------------------------------------------+');
2175: fii_util.put_line('Performing Check for: Profile Options');
2176: fii_util.put_line(
2177: '+---------------------------------------------------------------------+');
2178: -- Check the budget profile option
2179: fii_util.put_line('START CHECK: Budget Profile Check');
2180: fii_util.put_line(' ');
2175: fii_util.put_line('Performing Check for: Profile Options');
2176: fii_util.put_line(
2177: '+---------------------------------------------------------------------+');
2178: -- Check the budget profile option
2179: fii_util.put_line('START CHECK: Budget Profile Check');
2180: fii_util.put_line(' ');
2181:
2182: l_budget_source := FND_PROFILE.value('FII_BUDGET_SOURCE');
2183: l_budget_time_unit := FND_PROFILE.Value('FII_BUDGET_TIME_UNIT');
2176: fii_util.put_line(
2177: '+---------------------------------------------------------------------+');
2178: -- Check the budget profile option
2179: fii_util.put_line('START CHECK: Budget Profile Check');
2180: fii_util.put_line(' ');
2181:
2182: l_budget_source := FND_PROFILE.value('FII_BUDGET_SOURCE');
2183: l_budget_time_unit := FND_PROFILE.Value('FII_BUDGET_TIME_UNIT');
2184: l_forecast_time_unit := FND_PROFILE.Value('FII_FORECAST_TIME_UNIT');
2182: l_budget_source := FND_PROFILE.value('FII_BUDGET_SOURCE');
2183: l_budget_time_unit := FND_PROFILE.Value('FII_BUDGET_TIME_UNIT');
2184: l_forecast_time_unit := FND_PROFILE.Value('FII_FORECAST_TIME_UNIT');
2185:
2186: fii_util.put_line('The profile option ''FII: Budget/Foreacst Source'' = '
2187: || l_budget_source);
2188:
2189: fii_util.put_line('The profile option ''FII: Budget Period Type'' = '
2190: || l_budget_time_unit);
2185:
2186: fii_util.put_line('The profile option ''FII: Budget/Foreacst Source'' = '
2187: || l_budget_source);
2188:
2189: fii_util.put_line('The profile option ''FII: Budget Period Type'' = '
2190: || l_budget_time_unit);
2191:
2192: fii_util.put_line('The profile option ''FII: Forecast Period Type'' = '
2193: || l_forecast_time_unit );
2188:
2189: fii_util.put_line('The profile option ''FII: Budget Period Type'' = '
2190: || l_budget_time_unit);
2191:
2192: fii_util.put_line('The profile option ''FII: Forecast Period Type'' = '
2193: || l_forecast_time_unit );
2194:
2195: fii_util.put_line(' ');
2196: IF ( l_budget_source IS NULL OR l_budget_time_unit IS NULL
2191:
2192: fii_util.put_line('The profile option ''FII: Forecast Period Type'' = '
2193: || l_forecast_time_unit );
2194:
2195: fii_util.put_line(' ');
2196: IF ( l_budget_source IS NULL OR l_budget_time_unit IS NULL
2197: OR l_forecast_time_unit IS NULL) THEN
2198: fii_util.put_line('Diagnosis: Warning - some of the above budget profile option has not been set. Please make sure to set the profile options listed.');
2199:
2194:
2195: fii_util.put_line(' ');
2196: IF ( l_budget_source IS NULL OR l_budget_time_unit IS NULL
2197: OR l_forecast_time_unit IS NULL) THEN
2198: fii_util.put_line('Diagnosis: Warning - some of the above budget profile option has not been set. Please make sure to set the profile options listed.');
2199:
2200: ELSE
2201: fii_util.put_line('DIAGNOSIS: Budget profile options have been set correctly');
2202: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2197: OR l_forecast_time_unit IS NULL) THEN
2198: fii_util.put_line('Diagnosis: Warning - some of the above budget profile option has not been set. Please make sure to set the profile options listed.');
2199:
2200: ELSE
2201: fii_util.put_line('DIAGNOSIS: Budget profile options have been set correctly');
2202: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2203: END IF;
2204:
2205: fii_util.put_line(' ');
2198: fii_util.put_line('Diagnosis: Warning - some of the above budget profile option has not been set. Please make sure to set the profile options listed.');
2199:
2200: ELSE
2201: fii_util.put_line('DIAGNOSIS: Budget profile options have been set correctly');
2202: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2203: END IF;
2204:
2205: fii_util.put_line(' ');
2206: fii_util.put_line('END CHECK: Budget Profile Check');
2201: fii_util.put_line('DIAGNOSIS: Budget profile options have been set correctly');
2202: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2203: END IF;
2204:
2205: fii_util.put_line(' ');
2206: fii_util.put_line('END CHECK: Budget Profile Check');
2207: fii_util.put_line(
2208: '+---------------------------------------------------------------------+');
2209:
2202: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2203: END IF;
2204:
2205: fii_util.put_line(' ');
2206: fii_util.put_line('END CHECK: Budget Profile Check');
2207: fii_util.put_line(
2208: '+---------------------------------------------------------------------+');
2209:
2210: -- Check the Industry option
2203: END IF;
2204:
2205: fii_util.put_line(' ');
2206: fii_util.put_line('END CHECK: Budget Profile Check');
2207: fii_util.put_line(
2208: '+---------------------------------------------------------------------+');
2209:
2210: -- Check the Industry option
2211: fii_util.put_line(' ');
2207: fii_util.put_line(
2208: '+---------------------------------------------------------------------+');
2209:
2210: -- Check the Industry option
2211: fii_util.put_line(' ');
2212: fii_util.put_line('START CHECK: Industry Profile Option Check');
2213: fii_util.put_line(' ');
2214:
2215: l_profile_value := FND_PROFILE.value('INDUSTRY');
2208: '+---------------------------------------------------------------------+');
2209:
2210: -- Check the Industry option
2211: fii_util.put_line(' ');
2212: fii_util.put_line('START CHECK: Industry Profile Option Check');
2213: fii_util.put_line(' ');
2214:
2215: l_profile_value := FND_PROFILE.value('INDUSTRY');
2216:
2209:
2210: -- Check the Industry option
2211: fii_util.put_line(' ');
2212: fii_util.put_line('START CHECK: Industry Profile Option Check');
2213: fii_util.put_line(' ');
2214:
2215: l_profile_value := FND_PROFILE.value('INDUSTRY');
2216:
2217: fii_util.put_line('The profile option ''Industry'' = '
2213: fii_util.put_line(' ');
2214:
2215: l_profile_value := FND_PROFILE.value('INDUSTRY');
2216:
2217: fii_util.put_line('The profile option ''Industry'' = '
2218: || l_profile_value);
2219:
2220: fii_util.put_line(' ');
2221: IF (l_profile_value = 'G') THEN
2216:
2217: fii_util.put_line('The profile option ''Industry'' = '
2218: || l_profile_value);
2219:
2220: fii_util.put_line(' ');
2221: IF (l_profile_value = 'G') THEN
2222: fii_util.put_line('DIAGNOSIS: The ''Industry'' profile option has been set to ''Government''. The Company dimension will be renamed to ''Fund''. ');
2223: fii_util.put_line('If you are not using the Funds Management Dashboard, it is recommended to set the ''Industry'' profile option to '' ''');
2224:
2218: || l_profile_value);
2219:
2220: fii_util.put_line(' ');
2221: IF (l_profile_value = 'G') THEN
2222: fii_util.put_line('DIAGNOSIS: The ''Industry'' profile option has been set to ''Government''. The Company dimension will be renamed to ''Fund''. ');
2223: fii_util.put_line('If you are not using the Funds Management Dashboard, it is recommended to set the ''Industry'' profile option to '' ''');
2224:
2225: ELSE
2226: fii_util.put_line(
2219:
2220: fii_util.put_line(' ');
2221: IF (l_profile_value = 'G') THEN
2222: fii_util.put_line('DIAGNOSIS: The ''Industry'' profile option has been set to ''Government''. The Company dimension will be renamed to ''Fund''. ');
2223: fii_util.put_line('If you are not using the Funds Management Dashboard, it is recommended to set the ''Industry'' profile option to '' ''');
2224:
2225: ELSE
2226: fii_util.put_line(
2227: 'DIAGNOSIS: The ''Industry'' profile option has been defined correctly.');
2222: fii_util.put_line('DIAGNOSIS: The ''Industry'' profile option has been set to ''Government''. The Company dimension will be renamed to ''Fund''. ');
2223: fii_util.put_line('If you are not using the Funds Management Dashboard, it is recommended to set the ''Industry'' profile option to '' ''');
2224:
2225: ELSE
2226: fii_util.put_line(
2227: 'DIAGNOSIS: The ''Industry'' profile option has been defined correctly.');
2228: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2229: END IF;
2230:
2224:
2225: ELSE
2226: fii_util.put_line(
2227: 'DIAGNOSIS: The ''Industry'' profile option has been defined correctly.');
2228: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2229: END IF;
2230:
2231: fii_util.put_line(' ');
2232: fii_util.put_line('END CHECK: Industry Profile Option Check');
2227: 'DIAGNOSIS: The ''Industry'' profile option has been defined correctly.');
2228: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2229: END IF;
2230:
2231: fii_util.put_line(' ');
2232: fii_util.put_line('END CHECK: Industry Profile Option Check');
2233: fii_util.put_line(
2234: '+---------------------------------------------------------------------+');
2235:
2228: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2229: END IF;
2230:
2231: fii_util.put_line(' ');
2232: fii_util.put_line('END CHECK: Industry Profile Option Check');
2233: fii_util.put_line(
2234: '+---------------------------------------------------------------------+');
2235:
2236: -- Check the Debug mode option
2229: END IF;
2230:
2231: fii_util.put_line(' ');
2232: fii_util.put_line('END CHECK: Industry Profile Option Check');
2233: fii_util.put_line(
2234: '+---------------------------------------------------------------------+');
2235:
2236: -- Check the Debug mode option
2237: fii_util.put_line(' ');
2233: fii_util.put_line(
2234: '+---------------------------------------------------------------------+');
2235:
2236: -- Check the Debug mode option
2237: fii_util.put_line(' ');
2238: fii_util.put_line('START CHECK: ''FII: Debug Mode'' Profile Option Check');
2239: fii_util.put_line(' ');
2240:
2241: l_profile_value := FND_PROFILE.value('FII_DEBUG_MODE');
2234: '+---------------------------------------------------------------------+');
2235:
2236: -- Check the Debug mode option
2237: fii_util.put_line(' ');
2238: fii_util.put_line('START CHECK: ''FII: Debug Mode'' Profile Option Check');
2239: fii_util.put_line(' ');
2240:
2241: l_profile_value := FND_PROFILE.value('FII_DEBUG_MODE');
2242:
2235:
2236: -- Check the Debug mode option
2237: fii_util.put_line(' ');
2238: fii_util.put_line('START CHECK: ''FII: Debug Mode'' Profile Option Check');
2239: fii_util.put_line(' ');
2240:
2241: l_profile_value := FND_PROFILE.value('FII_DEBUG_MODE');
2242:
2243: IF (l_profile_value IS NOT NULL) THEN
2240:
2241: l_profile_value := FND_PROFILE.value('FII_DEBUG_MODE');
2242:
2243: IF (l_profile_value IS NOT NULL) THEN
2244: fii_util.put_line('The profile option ''FII: Debug Mode'' = '
2245: || l_profile_value);
2246: ELSE
2247: fii_util.put_line('The profile option ''FII: Debug Mode'' has not been set up.');
2248: END IF;
2243: IF (l_profile_value IS NOT NULL) THEN
2244: fii_util.put_line('The profile option ''FII: Debug Mode'' = '
2245: || l_profile_value);
2246: ELSE
2247: fii_util.put_line('The profile option ''FII: Debug Mode'' has not been set up.');
2248: END IF;
2249:
2250: fii_util.put_line(' ');
2251: IF (l_profile_value = 'Y') THEN
2246: ELSE
2247: fii_util.put_line('The profile option ''FII: Debug Mode'' has not been set up.');
2248: END IF;
2249:
2250: fii_util.put_line(' ');
2251: IF (l_profile_value = 'Y') THEN
2252: fii_util.put_line('DIAGNOSIS: The ''FII:Debug Mode'' profile option is set to YES. It is recommended that this profile option is set to ''No''.');
2253:
2254: ELSE
2248: END IF;
2249:
2250: fii_util.put_line(' ');
2251: IF (l_profile_value = 'Y') THEN
2252: fii_util.put_line('DIAGNOSIS: The ''FII:Debug Mode'' profile option is set to YES. It is recommended that this profile option is set to ''No''.');
2253:
2254: ELSE
2255: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2256: END IF;
2251: IF (l_profile_value = 'Y') THEN
2252: fii_util.put_line('DIAGNOSIS: The ''FII:Debug Mode'' profile option is set to YES. It is recommended that this profile option is set to ''No''.');
2253:
2254: ELSE
2255: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2256: END IF;
2257:
2258: fii_util.put_line(' ');
2259: fii_util.put_line('END CHECK: ''FII:Debug Mode'' Profile Option Check');
2254: ELSE
2255: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2256: END IF;
2257:
2258: fii_util.put_line(' ');
2259: fii_util.put_line('END CHECK: ''FII:Debug Mode'' Profile Option Check');
2260: fii_util.put_line(
2261: '+---------------------------------------------------------------------+');
2262:
2255: fii_util.put_line('DIAGNOSIS: NO ACTION is needed.');
2256: END IF;
2257:
2258: fii_util.put_line(' ');
2259: fii_util.put_line('END CHECK: ''FII:Debug Mode'' Profile Option Check');
2260: fii_util.put_line(
2261: '+---------------------------------------------------------------------+');
2262:
2263: -- Perform user setup validations if a username parameter is passed in
2256: END IF;
2257:
2258: fii_util.put_line(' ');
2259: fii_util.put_line('END CHECK: ''FII:Debug Mode'' Profile Option Check');
2260: fii_util.put_line(
2261: '+---------------------------------------------------------------------+');
2262:
2263: -- Perform user setup validations if a username parameter is passed in
2264: IF (X_User IS NOT NULL) THEN
2272: SELECT to_char(sysdate, 'DD-MON-YYYY HH:MI:SS')
2273: INTO l_end_time
2274: FROM dual;
2275:
2276: fii_util.put_line(' ');
2277: fii_util.put_line('** Diagnostics Ends ** '|| l_end_time);
2278: fii_util.put_line(
2279: '** End of log messages from DBI Financials Validation **');
2280:
2273: INTO l_end_time
2274: FROM dual;
2275:
2276: fii_util.put_line(' ');
2277: fii_util.put_line('** Diagnostics Ends ** '|| l_end_time);
2278: fii_util.put_line(
2279: '** End of log messages from DBI Financials Validation **');
2280:
2281: fii_util.put_line(' ');
2274: FROM dual;
2275:
2276: fii_util.put_line(' ');
2277: fii_util.put_line('** Diagnostics Ends ** '|| l_end_time);
2278: fii_util.put_line(
2279: '** End of log messages from DBI Financials Validation **');
2280:
2281: fii_util.put_line(' ');
2282: fii_util.put_line(
2277: fii_util.put_line('** Diagnostics Ends ** '|| l_end_time);
2278: fii_util.put_line(
2279: '** End of log messages from DBI Financials Validation **');
2280:
2281: fii_util.put_line(' ');
2282: fii_util.put_line(
2283: '+=====================================================================+');
2284: fii_util.put_line('+ End of DBI Financials Diagnostics ');
2285: fii_util.put_line(
2278: fii_util.put_line(
2279: '** End of log messages from DBI Financials Validation **');
2280:
2281: fii_util.put_line(' ');
2282: fii_util.put_line(
2283: '+=====================================================================+');
2284: fii_util.put_line('+ End of DBI Financials Diagnostics ');
2285: fii_util.put_line(
2286: '+ DBI_DIAGNOSTIC module: Daily Business Intelligence Diagnostic Program');
2280:
2281: fii_util.put_line(' ');
2282: fii_util.put_line(
2283: '+=====================================================================+');
2284: fii_util.put_line('+ End of DBI Financials Diagnostics ');
2285: fii_util.put_line(
2286: '+ DBI_DIAGNOSTIC module: Daily Business Intelligence Diagnostic Program');
2287: fii_util.put_line('+ Current System Time is '|| l_end_time);
2288: fii_util.put_line(
2281: fii_util.put_line(' ');
2282: fii_util.put_line(
2283: '+=====================================================================+');
2284: fii_util.put_line('+ End of DBI Financials Diagnostics ');
2285: fii_util.put_line(
2286: '+ DBI_DIAGNOSTIC module: Daily Business Intelligence Diagnostic Program');
2287: fii_util.put_line('+ Current System Time is '|| l_end_time);
2288: fii_util.put_line(
2289: '+=====================================================================+');
2283: '+=====================================================================+');
2284: fii_util.put_line('+ End of DBI Financials Diagnostics ');
2285: fii_util.put_line(
2286: '+ DBI_DIAGNOSTIC module: Daily Business Intelligence Diagnostic Program');
2287: fii_util.put_line('+ Current System Time is '|| l_end_time);
2288: fii_util.put_line(
2289: '+=====================================================================+');
2290:
2291: END Main;
2284: fii_util.put_line('+ End of DBI Financials Diagnostics ');
2285: fii_util.put_line(
2286: '+ DBI_DIAGNOSTIC module: Daily Business Intelligence Diagnostic Program');
2287: fii_util.put_line('+ Current System Time is '|| l_end_time);
2288: fii_util.put_line(
2289: '+=====================================================================+');
2290:
2291: END Main;
2292: