34: --
35: PROCEDURE add_details(p_migration_id IN NUMBER,
36: p_phase_id IN NUMBER,
37: p_phase_item_id IN NUMBER,
38: p_file_handle IN UTL_FILE.FILE_TYPE
39: ) IS
40: --
41:
42: l_loader_name VARCHAR2(30);
284: l_parameter9 || ' ' ||
285: l_parameter10;
286:
287:
288: utl_file.put_line(p_file_handle, l_string);
289:
290: hr_dm_utility.message('INFO','Added UA entry', 115);
291: hr_dm_utility.message('SUMM','Added UA entry', 120);
292: hr_dm_utility.message('ROUT','exit:hr_dm_aol_up.add_details', 125);
499: l_phase_item_id NUMBER;
500: l_phase VARCHAR2(30);
501: l_location VARCHAR2(2000);
502: l_aol_filename VARCHAR2(30);
503: l_filehandle UTL_FILE.FILE_TYPE;
504: l_sysdate VARCHAR2(30);
505: l_destination_database VARCHAR2(30);
506: l_loader_group VARCHAR2(30);
507: l_source_db VARCHAR2(30);
582:
583:
584:
585: -- find logfile directory and open file for AOL Loader commands
586: fnd_profile.get('UTL_FILE_LOG', l_location);
587: l_aol_filename := 'DM' || p_migration_id || '.txt';
588: hr_dm_utility.message('INFO','l_location ' || l_location, 13);
589: hr_dm_utility.message('INFO','l_aol_filename ' || l_aol_filename, 13);
590:
596: RAISE e_fatal_error2;
597: END IF;
598:
599: hr_dm_utility.message('INFO','Opening file', 13);
600: l_filehandle := utl_file.fopen(l_location, l_aol_filename, 'w');
601: hr_dm_utility.message('INFO','File opened ', 13);
602:
603: -- get migration info
604: OPEN csr_mig_info;
613: CLOSE csr_mig_info;
614:
615:
616: -- add header info
617: utl_file.put_line(l_filehandle, '# Data Migrator AOL Upload');
618: utl_file.put_line(l_filehandle, '# ');
619: utl_file.put_line(l_filehandle, '# ');
620: utl_file.put_line(l_filehandle, '# Migration Information:');
621: utl_file.put_line(l_filehandle, '# ');
614:
615:
616: -- add header info
617: utl_file.put_line(l_filehandle, '# Data Migrator AOL Upload');
618: utl_file.put_line(l_filehandle, '# ');
619: utl_file.put_line(l_filehandle, '# ');
620: utl_file.put_line(l_filehandle, '# Migration Information:');
621: utl_file.put_line(l_filehandle, '# ');
622: utl_file.put_line(l_filehandle, '# Migration ID ' || p_migration_id);
615:
616: -- add header info
617: utl_file.put_line(l_filehandle, '# Data Migrator AOL Upload');
618: utl_file.put_line(l_filehandle, '# ');
619: utl_file.put_line(l_filehandle, '# ');
620: utl_file.put_line(l_filehandle, '# Migration Information:');
621: utl_file.put_line(l_filehandle, '# ');
622: utl_file.put_line(l_filehandle, '# Migration ID ' || p_migration_id);
623: SELECT to_char(sysdate,'HH:MI DD-MON-YYYY')
616: -- add header info
617: utl_file.put_line(l_filehandle, '# Data Migrator AOL Upload');
618: utl_file.put_line(l_filehandle, '# ');
619: utl_file.put_line(l_filehandle, '# ');
620: utl_file.put_line(l_filehandle, '# Migration Information:');
621: utl_file.put_line(l_filehandle, '# ');
622: utl_file.put_line(l_filehandle, '# Migration ID ' || p_migration_id);
623: SELECT to_char(sysdate,'HH:MI DD-MON-YYYY')
624: INTO l_sysdate
617: utl_file.put_line(l_filehandle, '# Data Migrator AOL Upload');
618: utl_file.put_line(l_filehandle, '# ');
619: utl_file.put_line(l_filehandle, '# ');
620: utl_file.put_line(l_filehandle, '# Migration Information:');
621: utl_file.put_line(l_filehandle, '# ');
622: utl_file.put_line(l_filehandle, '# Migration ID ' || p_migration_id);
623: SELECT to_char(sysdate,'HH:MI DD-MON-YYYY')
624: INTO l_sysdate
625: FROM dual;
618: utl_file.put_line(l_filehandle, '# ');
619: utl_file.put_line(l_filehandle, '# ');
620: utl_file.put_line(l_filehandle, '# Migration Information:');
621: utl_file.put_line(l_filehandle, '# ');
622: utl_file.put_line(l_filehandle, '# Migration ID ' || p_migration_id);
623: SELECT to_char(sysdate,'HH:MI DD-MON-YYYY')
624: INTO l_sysdate
625: FROM dual;
626: utl_file.put_line(l_filehandle, '# Date ' || l_sysdate);
622: utl_file.put_line(l_filehandle, '# Migration ID ' || p_migration_id);
623: SELECT to_char(sysdate,'HH:MI DD-MON-YYYY')
624: INTO l_sysdate
625: FROM dual;
626: utl_file.put_line(l_filehandle, '# Date ' || l_sysdate);
627:
628: utl_file.put_line(l_filehandle, '# Source Database ' || l_source_db);
629: utl_file.put_line(l_filehandle, '# Destination Database ' || l_destination_db);
630: utl_file.put_line(l_filehandle, '# Migration Type (code) ' || l_migration_type);
624: INTO l_sysdate
625: FROM dual;
626: utl_file.put_line(l_filehandle, '# Date ' || l_sysdate);
627:
628: utl_file.put_line(l_filehandle, '# Source Database ' || l_source_db);
629: utl_file.put_line(l_filehandle, '# Destination Database ' || l_destination_db);
630: utl_file.put_line(l_filehandle, '# Migration Type (code) ' || l_migration_type);
631: utl_file.put_line(l_filehandle, '# Migration Type ' || l_migration_type_meaning);
632: utl_file.put_line(l_filehandle, '# Business Group ID ' || l_business_group_id);
625: FROM dual;
626: utl_file.put_line(l_filehandle, '# Date ' || l_sysdate);
627:
628: utl_file.put_line(l_filehandle, '# Source Database ' || l_source_db);
629: utl_file.put_line(l_filehandle, '# Destination Database ' || l_destination_db);
630: utl_file.put_line(l_filehandle, '# Migration Type (code) ' || l_migration_type);
631: utl_file.put_line(l_filehandle, '# Migration Type ' || l_migration_type_meaning);
632: utl_file.put_line(l_filehandle, '# Business Group ID ' || l_business_group_id);
633: utl_file.put_line(l_filehandle, '# Business Group Name ' || l_business_group_name);
626: utl_file.put_line(l_filehandle, '# Date ' || l_sysdate);
627:
628: utl_file.put_line(l_filehandle, '# Source Database ' || l_source_db);
629: utl_file.put_line(l_filehandle, '# Destination Database ' || l_destination_db);
630: utl_file.put_line(l_filehandle, '# Migration Type (code) ' || l_migration_type);
631: utl_file.put_line(l_filehandle, '# Migration Type ' || l_migration_type_meaning);
632: utl_file.put_line(l_filehandle, '# Business Group ID ' || l_business_group_id);
633: utl_file.put_line(l_filehandle, '# Business Group Name ' || l_business_group_name);
634: utl_file.put_line(l_filehandle, '# Selective Migration Criteria');
627:
628: utl_file.put_line(l_filehandle, '# Source Database ' || l_source_db);
629: utl_file.put_line(l_filehandle, '# Destination Database ' || l_destination_db);
630: utl_file.put_line(l_filehandle, '# Migration Type (code) ' || l_migration_type);
631: utl_file.put_line(l_filehandle, '# Migration Type ' || l_migration_type_meaning);
632: utl_file.put_line(l_filehandle, '# Business Group ID ' || l_business_group_id);
633: utl_file.put_line(l_filehandle, '# Business Group Name ' || l_business_group_name);
634: utl_file.put_line(l_filehandle, '# Selective Migration Criteria');
635: utl_file.put_line(l_filehandle, '# ' ||
628: utl_file.put_line(l_filehandle, '# Source Database ' || l_source_db);
629: utl_file.put_line(l_filehandle, '# Destination Database ' || l_destination_db);
630: utl_file.put_line(l_filehandle, '# Migration Type (code) ' || l_migration_type);
631: utl_file.put_line(l_filehandle, '# Migration Type ' || l_migration_type_meaning);
632: utl_file.put_line(l_filehandle, '# Business Group ID ' || l_business_group_id);
633: utl_file.put_line(l_filehandle, '# Business Group Name ' || l_business_group_name);
634: utl_file.put_line(l_filehandle, '# Selective Migration Criteria');
635: utl_file.put_line(l_filehandle, '# ' ||
636: NVL(SUBSTR(l_selective_mc,1,240),'(Not Applicable)'));
629: utl_file.put_line(l_filehandle, '# Destination Database ' || l_destination_db);
630: utl_file.put_line(l_filehandle, '# Migration Type (code) ' || l_migration_type);
631: utl_file.put_line(l_filehandle, '# Migration Type ' || l_migration_type_meaning);
632: utl_file.put_line(l_filehandle, '# Business Group ID ' || l_business_group_id);
633: utl_file.put_line(l_filehandle, '# Business Group Name ' || l_business_group_name);
634: utl_file.put_line(l_filehandle, '# Selective Migration Criteria');
635: utl_file.put_line(l_filehandle, '# ' ||
636: NVL(SUBSTR(l_selective_mc,1,240),'(Not Applicable)'));
637:
630: utl_file.put_line(l_filehandle, '# Migration Type (code) ' || l_migration_type);
631: utl_file.put_line(l_filehandle, '# Migration Type ' || l_migration_type_meaning);
632: utl_file.put_line(l_filehandle, '# Business Group ID ' || l_business_group_id);
633: utl_file.put_line(l_filehandle, '# Business Group Name ' || l_business_group_name);
634: utl_file.put_line(l_filehandle, '# Selective Migration Criteria');
635: utl_file.put_line(l_filehandle, '# ' ||
636: NVL(SUBSTR(l_selective_mc,1,240),'(Not Applicable)'));
637:
638: utl_file.put_line(l_filehandle, '# ');
631: utl_file.put_line(l_filehandle, '# Migration Type ' || l_migration_type_meaning);
632: utl_file.put_line(l_filehandle, '# Business Group ID ' || l_business_group_id);
633: utl_file.put_line(l_filehandle, '# Business Group Name ' || l_business_group_name);
634: utl_file.put_line(l_filehandle, '# Selective Migration Criteria');
635: utl_file.put_line(l_filehandle, '# ' ||
636: NVL(SUBSTR(l_selective_mc,1,240),'(Not Applicable)'));
637:
638: utl_file.put_line(l_filehandle, '# ');
639: utl_file.put_line(l_filehandle, '# ');
634: utl_file.put_line(l_filehandle, '# Selective Migration Criteria');
635: utl_file.put_line(l_filehandle, '# ' ||
636: NVL(SUBSTR(l_selective_mc,1,240),'(Not Applicable)'));
637:
638: utl_file.put_line(l_filehandle, '# ');
639: utl_file.put_line(l_filehandle, '# ');
640: utl_file.put_line(l_filehandle, '# AOL Loader commands:');
641: utl_file.put_line(l_filehandle, '# Replace apps/apps with the appropriate values.');
642: utl_file.put_line(l_filehandle, '# ');
635: utl_file.put_line(l_filehandle, '# ' ||
636: NVL(SUBSTR(l_selective_mc,1,240),'(Not Applicable)'));
637:
638: utl_file.put_line(l_filehandle, '# ');
639: utl_file.put_line(l_filehandle, '# ');
640: utl_file.put_line(l_filehandle, '# AOL Loader commands:');
641: utl_file.put_line(l_filehandle, '# Replace apps/apps with the appropriate values.');
642: utl_file.put_line(l_filehandle, '# ');
643:
636: NVL(SUBSTR(l_selective_mc,1,240),'(Not Applicable)'));
637:
638: utl_file.put_line(l_filehandle, '# ');
639: utl_file.put_line(l_filehandle, '# ');
640: utl_file.put_line(l_filehandle, '# AOL Loader commands:');
641: utl_file.put_line(l_filehandle, '# Replace apps/apps with the appropriate values.');
642: utl_file.put_line(l_filehandle, '# ');
643:
644:
637:
638: utl_file.put_line(l_filehandle, '# ');
639: utl_file.put_line(l_filehandle, '# ');
640: utl_file.put_line(l_filehandle, '# AOL Loader commands:');
641: utl_file.put_line(l_filehandle, '# Replace apps/apps with the appropriate values.');
642: utl_file.put_line(l_filehandle, '# ');
643:
644:
645: -- loop around all groups
638: utl_file.put_line(l_filehandle, '# ');
639: utl_file.put_line(l_filehandle, '# ');
640: utl_file.put_line(l_filehandle, '# AOL Loader commands:');
641: utl_file.put_line(l_filehandle, '# Replace apps/apps with the appropriate values.');
642: utl_file.put_line(l_filehandle, '# ');
643:
644:
645: -- loop around all groups
646: OPEN csr_loader;
651: -- send info on current table to logfile
652: hr_dm_utility.message('INFO','Processing - ' || l_loader_group, 13);
653:
654: -- show start of group
655: utl_file.put_line(l_filehandle, '# ');
656: utl_file.put_line(l_filehandle, '# <' || l_loader_group || '>');
657: utl_file.put_line(l_filehandle, '# ');
658:
659:
652: hr_dm_utility.message('INFO','Processing - ' || l_loader_group, 13);
653:
654: -- show start of group
655: utl_file.put_line(l_filehandle, '# ');
656: utl_file.put_line(l_filehandle, '# <' || l_loader_group || '>');
657: utl_file.put_line(l_filehandle, '# ');
658:
659:
660: -- process each group
653:
654: -- show start of group
655: utl_file.put_line(l_filehandle, '# ');
656: utl_file.put_line(l_filehandle, '# <' || l_loader_group || '>');
657: utl_file.put_line(l_filehandle, '# ');
658:
659:
660: -- process each group
661: OPEN csr_get_pi;
685: CLOSE csr_get_pi;
686:
687:
688: -- show end of group
689: utl_file.put_line(l_filehandle, '# ');
690: utl_file.put_line(l_filehandle, '# ');
691: utl_file.put_line(l_filehandle, '# ');
692:
693: END LOOP;
686:
687:
688: -- show end of group
689: utl_file.put_line(l_filehandle, '# ');
690: utl_file.put_line(l_filehandle, '# ');
691: utl_file.put_line(l_filehandle, '# ');
692:
693: END LOOP;
694: CLOSE csr_loader;
687:
688: -- show end of group
689: utl_file.put_line(l_filehandle, '# ');
690: utl_file.put_line(l_filehandle, '# ');
691: utl_file.put_line(l_filehandle, '# ');
692:
693: END LOOP;
694: CLOSE csr_loader;
695:
694: CLOSE csr_loader;
695:
696:
697:
698: utl_file.put_line(l_filehandle, '# ');
699: utl_file.put_line(l_filehandle, '# End of AOL Uploader commands.');
700: utl_file.put_line(l_filehandle, '# ');
701:
702:
695:
696:
697:
698: utl_file.put_line(l_filehandle, '# ');
699: utl_file.put_line(l_filehandle, '# End of AOL Uploader commands.');
700: utl_file.put_line(l_filehandle, '# ');
701:
702:
703: -- get the destination database name
696:
697:
698: utl_file.put_line(l_filehandle, '# ');
699: utl_file.put_line(l_filehandle, '# End of AOL Uploader commands.');
700: utl_file.put_line(l_filehandle, '# ');
701:
702:
703: -- get the destination database name
704: SELECT DESTINATION_DATABASE_INSTANCE
706: FROM HR_DM_MIGRATIONS
707: WHERE migration_id = p_migration_id;
708:
709:
710: utl_file.put_line(l_filehandle, '# Taskflow upload commands');
711: utl_file.put_line(l_filehandle, '# ');
712: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
713: ' @hrwkflow.sql');
714: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
707: WHERE migration_id = p_migration_id;
708:
709:
710: utl_file.put_line(l_filehandle, '# Taskflow upload commands');
711: utl_file.put_line(l_filehandle, '# ');
712: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
713: ' @hrwkflow.sql');
714: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
715: ' @usrwkflw.sql');
708:
709:
710: utl_file.put_line(l_filehandle, '# Taskflow upload commands');
711: utl_file.put_line(l_filehandle, '# ');
712: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
713: ' @hrwkflow.sql');
714: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
715: ' @usrwkflw.sql');
716: utl_file.put_line(l_filehandle, '# ');
710: utl_file.put_line(l_filehandle, '# Taskflow upload commands');
711: utl_file.put_line(l_filehandle, '# ');
712: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
713: ' @hrwkflow.sql');
714: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
715: ' @usrwkflw.sql');
716: utl_file.put_line(l_filehandle, '# ');
717: utl_file.put_line(l_filehandle, '# End of Taskflow upload commands');
718: utl_file.put_line(l_filehandle, '# ');
712: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
713: ' @hrwkflow.sql');
714: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
715: ' @usrwkflw.sql');
716: utl_file.put_line(l_filehandle, '# ');
717: utl_file.put_line(l_filehandle, '# End of Taskflow upload commands');
718: utl_file.put_line(l_filehandle, '# ');
719:
720: -- close file
713: ' @hrwkflow.sql');
714: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
715: ' @usrwkflw.sql');
716: utl_file.put_line(l_filehandle, '# ');
717: utl_file.put_line(l_filehandle, '# End of Taskflow upload commands');
718: utl_file.put_line(l_filehandle, '# ');
719:
720: -- close file
721: utl_file.fclose(l_filehandle);
714: utl_file.put_line(l_filehandle, 'sqlplus apps/apps@' || l_destination_database ||
715: ' @usrwkflw.sql');
716: utl_file.put_line(l_filehandle, '# ');
717: utl_file.put_line(l_filehandle, '# End of Taskflow upload commands');
718: utl_file.put_line(l_filehandle, '# ');
719:
720: -- close file
721: utl_file.fclose(l_filehandle);
722:
717: utl_file.put_line(l_filehandle, '# End of Taskflow upload commands');
718: utl_file.put_line(l_filehandle, '# ');
719:
720: -- close file
721: utl_file.fclose(l_filehandle);
722:
723:
724:
725: