SAP Reports / Programs | SAP Business Information Warehouse | Warehouse Management | Data Basis(BW-WHM-DBA) SAP BW

SAP_BW_MIGRATION SAP ABAP Report - Report with help routines for migrating a BW







SAP_BW_MIGRATION is a standard Executable ABAP Report available within your SAP system (depending on your version and release level). Below is the basic information available for this SAP report including which OBJECTS it interacts with such as TABLES, FUNCTION MODULES, INCLUDES ETC. Also check out the submitted Comments related to this SAP report or see any standard documentation available.

If you would like to execute this report or see the full code listing simply enter SAP_BW_MIGRATION into the relevant SAP transactions such as SE38 or SE80


ABAP code to call this SAP report using the submit statement

This report can be called from another progam/report simply by using the ABAP SUBMIT statement, see below for example ABAP code snipts of how to do this.






SUBMIT SAP_BW_MIGRATION. "Basic submit
SUBMIT SAP_BW_MIGRATION AND RETURN. "Return to original report after report execution complete
SUBMIT SAP_BW_MIGRATION VIA SELECTION-SCREEN. "Display selection screen of submitted report to user
    See more syntax options for the ABAP SUBMIT statement


Text pool values


Selection Text: P4_DBDIF = Repair DBDIFF Entries
Selection Text: P4_DMTAB = Index Model Tables
Selection Text: P_TAB = Tables Only
Selection Text: P_REPAIR = Check and Repair
Selection Text: P_PSA = PSA Tables
Selection Text: P_PART_S = Determine partitioning info
Selection Text: P_PART_P = PSA: Generate Partial Version
Selection Text: P_PART_C = Create partitions
Selection Text: P_ODSO = ODS Objects
Selection Text: P_MODIF = Modified Versions
Selection Text: P_DEACT = Deactivate Cubes, ODS
Selection Text: P_DDIC = Table Layout
Selection Text: P_DATACL = Different Data Classes
Selection Text: P_CUBE = InfoCubes
Selection Text: P_CHECK = Check Only
Selection Text: P_AGGR = Flat Aggregates
Selection Text: P_ACTIV = Activate Cubes, ODS, and PSA
Title: Report with help routines for migrating a BW
Text Symbol: 410 = Operations for DB2/400 as Target Syst.
Text Symbol: 400 = Operations for DB2/400 as Source System
Text Symbol: 011 = Dimensions
Text Symbol: 010 = PSA Tables
Text Symbol: 009 = ODS Objects
Text Symbol: 008 = InfoCubes
Text Symbol: 007 = Check
Text Symbol: 006 = Repair
Text Symbol: 005 = Can Be Executed in Trgt Systm
Text Symbol: 004 = Can Be Executed in Srce System
Text Symbol: 003 = BW Migration Tools
Text Symbol: 002 = DB-Independent Operations
Text Symbol: 001 = Oracle-Specific Operations


INCLUDES used within this REPORT SAP_BW_MIGRATION

No INCLUDES are used within this REPORT code!


TABLES used within REPORT and the associated SELECT statement:





No SAP DATABASE tables are accessed within this REPORT code!


Function Modules used within report and the associated call statement:

RSDU_INFOCUBE_FACTTABLES CALL FUNCTION 'RSDU_INFOCUBE_FACTTABLES' EXPORTING i_infocube = -infocube IMPORTING e_ffacttab = l_ffact e_efacttab = l_efact e_double_facttab = l_double_facttab EXCEPTIONS infocube_error = 1 inherited_error = 2 OTHERS = 3.

RSD_CUBE_GET CALL FUNCTION 'RSD_CUBE_GET' EXPORTING i_infocube = -infocube IMPORTING e_t_dime = l_t_dime EXCEPTIONS infocube_not_found = 1 illegal_input = 2 OTHERS = 3.

DDIF_TABT_GET CALL FUNCTION 'DDIF_TABT_GET' EXPORTING name = l_name * STATE = 'A' IMPORTING gotstate = l_gotstate dd09l_wa = l_dd09l.

DDIF_TABT_PUT CALL FUNCTION 'DDIF_TABT_PUT' EXPORTING name = l_name dd09l_wa = l_dd09l.

DDIF_TABT_ACTIVATE CALL FUNCTION 'DDIF_TABT_ACTIVATE' EXPORTING name = l_name.

RSDG_CUBE_ACTIVATE CALL FUNCTION 'RSDG_CUBE_ACTIVATE' EXPORTING i_infocube = l_infocube i_objvers = rs_c_objvers-active i_manual = rs_c_true i_write_protocol = rs_c_true i_progress = rs_c_true IMPORTING e_not_all_ddic_obj_activated = l_not_all e_subrc = l_subrc EXCEPTIONS OTHERS = 1.

RSDG_ACT_DEL_DDIC_OBJECTS CALL FUNCTION 'RSDG_ACT_DEL_DDIC_OBJECTS' EXPORTING i_mode = 'A' i_protnm = rsdg_c_masg_act i_t_mage = l_t_mage IMPORTING e_subrc = l_subrc CHANGING c_t_msg = l_t_msg.

RSDG_ACT_DEL_DDIC_OBJECTS CALL FUNCTION 'RSDG_ACT_DEL_DDIC_OBJECTS' EXPORTING i_mode = 'A' i_protnm = rsdg_c_masg_act i_t_mage = l_t_mage IMPORTING e_subrc = l_subrc CHANGING c_t_msg = l_t_msg.

RSDG_CUBE_SET_INACTIVE CALL FUNCTION 'RSDG_CUBE_SET_INACTIVE' EXPORTING i_infocube = l_infocube EXCEPTIONS OTHERS = 1.

RSDDK_AGGRCAT_READ CALL FUNCTION 'RSDDK_AGGRCAT_READ' EXPORTING i_infocube = l_infocube IMPORTING e_thx_aggrcat = l_thx_aggrcat EXCEPTIONS no_aggregate = 1 OTHERS = 2.

RSD_CUBE_GET CALL FUNCTION 'RSD_CUBE_GET' EXPORTING i_infocube = l_infocube IMPORTING e_s_cube = l_s_cube "H528077 e_t_dime = l_t_dime e_t_dime_iobj = l_t_dime_iobj EXCEPTIONS infocube_not_found = 1 illegal_input = 2 OTHERS = 3.

RSDDK_AGGREGATES_DEACTIVATE CALL FUNCTION 'RSDDK_AGGREGATES_DEACTIVATE' EXPORTING i_t_aggr = l_t_aggr i_authority_check = rs_c_false IMPORTING e_t_msg = l_t_msg EXCEPTIONS user_not_authorized = 1 OTHERS = 2.

RSDU_INFOCUBE_FACTTABLES CALL FUNCTION 'RSDU_INFOCUBE_FACTTABLES' EXPORTING i_infocube = l_infocube IMPORTING e_ffacttab = l_ffacttab e_efacttab = l_efacttab e_double_facttab = l_double_facttab EXCEPTIONS infocube_error = 1 inherited_error = 2 OTHERS = 3.

DD_GET_NAMETAB CALL FUNCTION 'DD_GET_NAMETAB' EXPORTING tabname = -tabnm TABLES x031l_tab = l_t_x031l EXCEPTIONS not_found = 1 no_fields = 2 OTHERS = 3.

BAL_LOG_CREATE CALL FUNCTION 'BAL_LOG_CREATE' EXPORTING i_s_log = l_s_log IMPORTING e_log_handle = g_log_handle EXCEPTIONS log_header_inconsistent = 1 OTHERS = 2.

BAL_LOG_MSG_ADD CALL FUNCTION 'BAL_LOG_MSG_ADD' EXPORTING i_log_handle = g_log_handle i_s_msg = l_s_msg EXCEPTIONS log_not_found = 1 msg_inconsistent = 2 OTHERS = 3.

BAL_DB_SAVE CALL FUNCTION 'BAL_DB_SAVE' EXPORTING i_t_log_handle = l_t_log_handle EXCEPTIONS log_not_found = 1 save_not_allowed = 2 numbering_error = 3 OTHERS = 4.

BAL_DSP_LOG_DISPLAY CALL FUNCTION 'BAL_DSP_LOG_DISPLAY' EXPORTING i_t_log_handle = l_t_log_handle EXCEPTIONS profile_inconsistent = 1 internal_error = 2 no_data_available = 3 no_authority = 4 OTHERS = 5.

RRMS_X_MESSAGE





CALL FUNCTION 'RRMS_X_MESSAGE' EXPORTING i_abend = i_abend i_program = l_repid i_text = i_form EXCEPTIONS OTHERS = 1.

RSDU_TABLE_TRUNCATE CALL FUNCTION 'RSDU_TABLE_TRUNCATE' EXPORTING i_tablnm = 'RSDD_MIGRAT_PART' EXCEPTIONS inherited_error = 1 ddic_error = 2 OTHERS = 3.

RSD_FIX_DIME_GET_FOR_CUBE CALL FUNCTION 'RSD_FIX_DIME_GET_FOR_CUBE' EXPORTING i_infocube = l_infocube IMPORTING e_ptablnm = l_tablnm.

DB_EXISTS_TABLE CALL FUNCTION 'DB_EXISTS_TABLE' EXPORTING tabname = l_tablnm IMPORTING subrc = l_subrc.

RSD_TNAMES_GET_FOR_CUBE CALL FUNCTION 'RSD_TNAMES_GET_FOR_CUBE' EXPORTING i_infocube = l_infocube IMPORTING e_facttab = l_s_part-tablnm.

DB_COMMIT CALL FUNCTION 'DB_COMMIT'.

RSD_FIX_DIME_GET_FOR_CUBE CALL FUNCTION 'RSD_FIX_DIME_GET_FOR_CUBE' EXPORTING i_infocube = l_s_part-object IMPORTING e_pdime = l_dimension.

RSD_FIELDNM_GET_FOR_DIME CALL FUNCTION 'RSD_FIELDNM_GET_FOR_DIME' EXPORTING i_dimension = l_dimension IMPORTING e_fieldnm = l_fieldnm.

RSDU_PART_GENERIC_ADD CALL FUNCTION 'RSDU_PART_GENERIC_ADD' EXPORTING i_tablnm = l_s_part-tablnm i_s_add = l_s_genpart EXCEPTIONS table_not_exists = 1 table_not_partitioned = 2 partition_already_exists = 3 add_partition_failed = 4 wrong_import_parameters = 5 unallowed_intersection = 6 break_in_ranges = 7 not_implemented = 8 inherited_error = 9 OTHERS = 10.

RSDDTMPTAB_RELEASE_NAME * CALL FUNCTION 'RSDDTMPTAB_RELEASE_NAME' * EXPORTING * i_tmpnm = l_tablnm * EXCEPTIONS * delete_error = 2 * OTHERS = 3.

DD_TABL_DEL * CALL FUNCTION 'DD_TABL_DEL' * EXPORTING * tabname = l_tablnm * del_state = 'M' * prid = 0.

DB_DROP_TABLE * CALL FUNCTION 'DB_DROP_TABLE' * EXPORTING * tabname = l_tablnm * DB_CHECK_FLAG = rs_c_true * EXCEPTIONS * table_not_dropped = 3 * OTHERS = 4.

DD_CREATE_INDEX CALL FUNCTION 'DD_CREATE_INDEX' EXPORTING indexname = '0' tabname = 'RSDMFACTAB' EXCEPTIONS basetab_error = 1 db_error = 2 dd_error = 3 index_exists = 4 OTHERS = 5.

DD_CREATE_INDEX CALL FUNCTION 'DD_CREATE_INDEX' EXPORTING indexname = '0' tabname = 'RSMDMCNVTAB' EXCEPTIONS basetab_error = 1 db_error = 2 dd_error = 3 index_exists = 4 OTHERS = 5.

DD_CREATE_INDEX CALL FUNCTION 'DD_CREATE_INDEX' EXPORTING indexname = 'CHA' tabname = 'RSMDMCNVTAB' EXCEPTIONS basetab_error = 1 db_error = 2 dd_error = 3 index_exists = 4 OTHERS = 5.

DD_CREATE_INDEX CALL FUNCTION 'DD_CREATE_INDEX' EXPORTING indexname = 'SID' tabname = 'RSMDMCNVTAB' EXCEPTIONS basetab_error = 1 db_error = 2 dd_error = 3 index_exists = 4 OTHERS = 5.

RSDU_INFOCUBE_FACTTABLES * CALL FUNCTION 'RSDU_INFOCUBE_FACTTABLES' * EXPORTING * i_infocube = l_infocube * IMPORTING * e_ffacttab = l_ffact * e_efacttab = l_efact * e_double_facttab = l_double_facttab * EXCEPTIONS * infocube_error = 1 * inherited_error = 2 * OTHERS = 3.

RSD_CUBE_GET * CALL FUNCTION 'RSD_CUBE_GET' * EXPORTING * i_infocube = l_infocube * IMPORTING * e_t_dime = l_t_dime * EXCEPTIONS * infocube_not_found = 1 * illegal_input = 2 * OTHERS = 3.

RSDG_CUBE_ACTIVATE * CALL FUNCTION 'RSDG_CUBE_ACTIVATE' * EXPORTING * i_infocube = l_infocube * i_objvers = rs_c_objvers-active * i_all_languages = rs_c_true * i_manual = rs_c_true * i_write_protocol = rs_c_true * i_progress = rs_c_true * i_with_check = rs_c_true * IMPORTING * e_not_all_ddic_obj_activated = l_not_all * e_subrc = l_subrc * EXCEPTIONS * OTHERS = 1.

RSDG_ACT_DEL_DDIC_OBJECTS * CALL FUNCTION 'RSDG_ACT_DEL_DDIC_OBJECTS' * EXPORTING * i_mode = 'A' * i_protnm = rsdg_c_masg_act * i_t_mage = l_t_mage * IMPORTING * e_subrc = l_subrc * CHANGING * c_t_msg = l_t_msg.




RSDG_ACT_DEL_DDIC_OBJECTS * CALL FUNCTION 'RSDG_ACT_DEL_DDIC_OBJECTS' * EXPORTING * i_mode = 'A' * i_protnm = rsdg_c_masg_act * i_t_mage = l_t_mage * IMPORTING * e_subrc = l_subrc * CHANGING * c_t_msg = l_t_msg.

RSDG_CUBE_SET_INACTIVE * CALL FUNCTION 'RSDG_CUBE_SET_INACTIVE' * EXPORTING * i_infocube = l_infocube * EXCEPTIONS * OTHERS = 1.

RSDDK_AGGRCAT_READ * CALL FUNCTION 'RSDDK_AGGRCAT_READ' * EXPORTING * i_infocube = l_infocube * IMPORTING * e_thx_aggrcat = l_thx_aggrcat * EXCEPTIONS * no_aggregate = 1 * OTHERS = 2.

RSD_CUBE_GET * CALL FUNCTION 'RSD_CUBE_GET' * EXPORTING * i_infocube = l_infocube * IMPORTING * e_t_dime = l_t_dime * e_t_dime_iobj = l_t_dime_iobj * EXCEPTIONS * infocube_not_found = 1 * illegal_input = 2 * OTHERS = 3.

RSDDK_AGGREGATES_DEACTIVATE * CALL FUNCTION 'RSDDK_AGGREGATES_DEACTIVATE' * EXPORTING * i_t_aggr = l_t_aggr * i_authority_check = rs_c_false * IMPORTING * e_t_msg = l_t_msg * EXCEPTIONS * user_not_authorized = 1 * OTHERS = 2.

RSDU_INFOCUBE_FACTTABLES * CALL FUNCTION 'RSDU_INFOCUBE_FACTTABLES' * EXPORTING * i_infocube = l_infocube * IMPORTING * e_ffacttab = l_ffacttab * e_efacttab = l_efacttab * e_double_facttab = l_double_facttab * EXCEPTIONS * infocube_error = 1 * inherited_error = 2 * OTHERS = 3.

DD_GET_NAMETAB * CALL FUNCTION 'DD_GET_NAMETAB' * EXPORTING * tabname = -tabnm * TABLES * x031l_tab = l_t_x031l * EXCEPTIONS * not_found = 1 * no_fields = 2 * OTHERS = 3.

BAL_LOG_CREATE * CALL FUNCTION 'BAL_LOG_CREATE' * EXPORTING * i_s_log = l_s_log * IMPORTING * e_log_handle = g_log_handle * EXCEPTIONS * log_header_inconsistent = 1 * OTHERS = 2.

BAL_LOG_MSG_ADD * CALL FUNCTION 'BAL_LOG_MSG_ADD' * EXPORTING * i_log_handle = g_log_handle * i_s_msg = l_s_msg * EXCEPTIONS * log_not_found = 1 * msg_inconsistent = 2 * OTHERS = 3.

BAL_DB_SAVE * CALL FUNCTION 'BAL_DB_SAVE' * EXPORTING * i_t_log_handle = l_t_log_handle * EXCEPTIONS * log_not_found = 1 * save_not_allowed = 2 * numbering_error = 3 * OTHERS = 4.

BAL_DSP_LOG_DISPLAY * CALL FUNCTION 'BAL_DSP_LOG_DISPLAY' * EXPORTING * i_t_log_handle = l_t_log_handle * EXCEPTIONS * profile_inconsistent = 1 * internal_error = 2 * no_data_available = 3 * no_authority = 4 * OTHERS = 5.

RRMS_X_MESSAGE * CALL FUNCTION 'RRMS_X_MESSAGE' * EXPORTING * i_abend = i_abend * i_program = l_repid * i_text = i_form * EXCEPTIONS * OTHERS = 1.

RSDU_TABLE_TRUNCATE * CALL FUNCTION 'RSDU_TABLE_TRUNCATE' * EXPORTING * i_tablnm = 'RSDD_MIGRAT_PART' * EXCEPTIONS * inherited_error = 1 * ddic_error = 2 * OTHERS = 3.

RSD_FIX_DIME_GET_FOR_CUBE * CALL FUNCTION 'RSD_FIX_DIME_GET_FOR_CUBE' * EXPORTING * i_infocube = l_infocube * IMPORTING * e_ptablnm = l_tablnm.

DB_EXISTS_TABLE * CALL FUNCTION 'DB_EXISTS_TABLE' * EXPORTING * tabname = l_tablnm * IMPORTING * subrc = l_subrc.

RSD_TNAMES_GET_FOR_CUBE * CALL FUNCTION 'RSD_TNAMES_GET_FOR_CUBE' * EXPORTING * i_infocube = l_infocube * IMPORTING * e_facttab = l_s_part-tablnm.

DB_COMMIT * CALL FUNCTION 'DB_COMMIT'.

RSD_FIX_DIME_GET_FOR_CUBE * CALL FUNCTION 'RSD_FIX_DIME_GET_FOR_CUBE' * EXPORTING * i_infocube = l_s_part-object * IMPORTING * e_pdime = l_dimension.

RSD_FIELDNM_GET_FOR_DIME * CALL FUNCTION 'RSD_FIELDNM_GET_FOR_DIME' * EXPORTING * i_dimension = l_dimension * IMPORTING * e_fieldnm = l_fieldnm.

RSDU_TABLE_ADD_PARTITION * CALL FUNCTION 'RSDU_TABLE_ADD_PARTITION' * EXPORTING * i_tablenm = l_s_part-tablnm * i_part_column = l_fieldnm * i_part_value = l_s_part-value * EXCEPTIONS * table_not_exists = 1 * table_not_partitioned = 2 * invalid_partition_column = 3 * partition_already_exists = 4 * add_partition_failed = 5 * split_partition_failed = 6 * invalid_partition_argument = 7 * OTHERS = 8.



Contribute (Add Comments)

Although this basic information may have limited use it does provide an easy to find location to store any knowledge about this program/report.

The contribute/comments section below therefore offer's an opportunity for anyone to add additional information. This can be anything from useful hints, tips and screen shots to relevant SAP notes or anything else you feel is relevant to this report.

This will then be available for everyone to easily find by simply searching on the report name SAP_BW_MIGRATION or its description.