SAP RSM2_SET_GET_GLOBAL Function Module for Interface to global variables RSM2
RSM2_SET_GET_GLOBAL is a standard rsm2 set get global SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for Interface to global variables RSM2 processing and below is the pattern details for this FM, showing its interface including any import and export parameters, exceptions etc. there is also a full "cut and paste" ABAP pattern code example, along with implementation ABAP coding, documentation and contribution comments specific to this or related objects.
See here to view full function module documentation and code listing for rsm2 set get global FM, simply by entering the name RSM2_SET_GET_GLOBAL into the relevant SAP transaction such as SE37 or SE38.
Function Group: RSM2
Program Name: SAPLRSM2
Main Program: SAPLRSM2
Appliation area: B
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function RSM2_SET_GET_GLOBAL pattern details
In-order to call this FM within your sap programs, simply using the below ABAP pattern details to trigger the function call...or see the full ABAP code listing at the end of this article. You can simply cut and paste this code into your ABAP progrom as it is, including variable declarations.CALL FUNCTION 'RSM2_SET_GET_GLOBAL'"Interface to global variables RSM2.
EXPORTING
* I_GET = RS_C_TRUE "Boolean
* I_REFRESH = RS_C_FALSE "Boolean
IMPORTING
E_T_HEADER = "Header of a Request
E_T_HISTORY = "History
E_T_MONMESS = "Messages for the monitor
E_DURATION = "Runtime
E_DURATION_PRED = "Runtime: Seconds with Decimal Places
E_DURATION_ABW = "Runtime: Seconds with Decimal Places
E_DURATION_MAX = "Runtime: Seconds with Decimal Places
E_DURATION_YET = "Runtime: Seconds with Decimal Places
E_TIMESTAMP_OLD_SAVE = "UTC Time Stamp in Short Form (YYYYMMDDhhmmss)
E_2STEP_ON = "Boolean
CHANGING
* C_T_DETAIL = "Detail Structure for Monitor (g_t_detail)
* I_T_TCPDONE = "Selection table for 3rd party; Scheduler
* I_T_HIEDONE = "Selection table for Fields Scheduler
* I_GLOBAL_ICONS = "Boolean
* I_TIMESTAMP_OLD_SAVE = "UTC Time Stamp in Short Form (YYYYMMDDhhmmss)
* I_TIMEOUT = "UTC Time Stamp in Short Form (YYYYMMDDhhmmss)
* I_PREDICT_FIRST = "Boolean
* I_OKCODE = "Loosely defined; could be used for patch levels
* I_SAVEOK = "Loosely defined; could be used for patch levels
* I_LAST_ACTIVITY = "Loosely defined; could be used for patch levels
* I_QM_STATUS = "Status of Request
* I_RNR = "Request number for the data transfer
* I_QM_QUICK = "char120
* I_LOGSYS = "Source System
* I_BIW = "Boolean
* I_OLTP = "Boolean
* I_LOGSYS_TYP = "Type of Source System
* I_ZIEL = "Target(s) of the data from the scheduler job
* I_T_IDOCNUM = "Help Structure for Transfer of an IDoc Table to BW
* I_DATA_TYP = "Type of InfoSource
* I_DATEN_TYP = "Type of requested data
* I_APPLNM = "Application Component
* I_LAST_RNR = "Request number for the data transfer
* I_SOURCE = "InfoSource
* I_ISOURCE = "InfoSource
* I_OLTPSOURCE = "DataSource
* I_SIMU = "Boolean
* I_SYSTEMTYP = "Single-Character Indicator
* I_IDOCNUM_EIN = "IDoc number
* I_IDOCSTATUS = "Version Number Components
* I_DATAPAKID = "Data Package Number
* I_IDOCTYP = "30 Characters
* I_IDOCNUM_INFO = "IDoc number
* I_T_SELDONE = "Monitor: Selections for executed request
* I_SELANZAHL = "Counter of the Info idoc
* I_ACTIVETAB = "Active Tabstrip
* I_T_RQSTPRMS = "Protokolltable Request
* I_NEW_DS = "New DataSource
* I_T_MONMESS = "Messages for the monitor
* I_T_MONFACT = "Fact table monitor
* I_T_IPTAB = "InfoPackage for the monitor
* I_T_ICTAB = "Monitor IC table
* I_T_LDTDONE = "Texts for the requested InfoPackages and Groups
IMPORTING Parameters details for RSM2_SET_GET_GLOBAL
I_GET - Boolean
Data type: RS_BOOLDefault: RS_C_TRUE
Optional: Yes
Call by Reference: Yes
I_REFRESH - Boolean
Data type: RS_BOOLDefault: RS_C_FALSE
Optional: Yes
Call by Reference: Yes
EXPORTING Parameters details for RSM2_SET_GET_GLOBAL
E_T_HEADER - Header of a Request
Data type: RSSM_T_HEADEROptional: No
Call by Reference: Yes
E_T_HISTORY - History
Data type: RSSM_T_HISTORYOptional: No
Call by Reference: Yes
E_T_MONMESS - Messages for the monitor
Data type: RSSM_T_MONMESSOptional: No
Call by Reference: Yes
E_DURATION - Runtime
Data type: RSMON4Optional: No
Call by Reference: Yes
E_DURATION_PRED - Runtime: Seconds with Decimal Places
Data type: RSPC_RUNTIMEOptional: No
Call by Reference: Yes
E_DURATION_ABW - Runtime: Seconds with Decimal Places
Data type: RSMON4Optional: No
Call by Reference: Yes
E_DURATION_MAX - Runtime: Seconds with Decimal Places
Data type: RSPC_RUNTIMEOptional: No
Call by Reference: Yes
E_DURATION_YET - Runtime: Seconds with Decimal Places
Data type: RSPC_RUNTIMEOptional: No
Call by Reference: Yes
E_TIMESTAMP_OLD_SAVE - UTC Time Stamp in Short Form (YYYYMMDDhhmmss)
Data type: RSMONMESS-TIMESTAMPOptional: No
Call by Reference: Yes
E_2STEP_ON - Boolean
Data type: RS_BOOLOptional: No
Call by Reference: Yes
CHANGING Parameters details for RSM2_SET_GET_GLOBAL
C_T_DETAIL - Detail Structure for Monitor (g_t_detail)
Data type: RSSM_T_DETAILOptional: Yes
Call by Reference: Yes
I_T_TCPDONE - Selection table for 3rd party; Scheduler
Data type: RSSM_T_TCPDONEOptional: Yes
Call by Reference: Yes
I_T_HIEDONE - Selection table for Fields Scheduler
Data type: RSSM_T_HIEDONEOptional: Yes
Call by Reference: Yes
I_GLOBAL_ICONS - Boolean
Data type: RS_BOOLOptional: Yes
Call by Reference: Yes
I_TIMESTAMP_OLD_SAVE - UTC Time Stamp in Short Form (YYYYMMDDhhmmss)
Data type: RSTIMESTMPOptional: Yes
Call by Reference: Yes
I_TIMEOUT - UTC Time Stamp in Short Form (YYYYMMDDhhmmss)
Data type: RSTIMESTMPOptional: Yes
Call by Reference: Yes
I_PREDICT_FIRST - Boolean
Data type: RS_BOOLOptional: Yes
Call by Reference: Yes
I_OKCODE - Loosely defined; could be used for patch levels
Data type: CHAR4Optional: Yes
Call by Reference: Yes
I_SAVEOK - Loosely defined; could be used for patch levels
Data type: CHAR4Optional: Yes
Call by Reference: Yes
I_LAST_ACTIVITY - Loosely defined; could be used for patch levels
Data type: CHAR4Optional: Yes
Call by Reference: Yes
I_QM_STATUS - Status of Request
Data type: RSREQDONE-QMSTATUSOptional: Yes
Call by Reference: Yes
I_RNR - Request number for the data transfer
Data type: RSREQUNROptional: Yes
Call by Reference: Yes
I_QM_QUICK - char120
Data type: RSREQDONE-QMQUICKOptional: Yes
Call by Reference: Yes
I_LOGSYS - Source System
Data type: RSSLOGSYSOptional: Yes
Call by Reference: Yes
I_BIW - Boolean
Data type: RS_BOOLOptional: Yes
Call by Reference: Yes
I_OLTP - Boolean
Data type: RS_BOOLOptional: Yes
Call by Reference: Yes
I_LOGSYS_TYP - Type of Source System
Data type: RSSRCTYPEOptional: Yes
Call by Reference: Yes
I_ZIEL - Target(s) of the data from the scheduler job
Data type: RSZIELOptional: Yes
Call by Reference: Yes
I_T_IDOCNUM - Help Structure for Transfer of an IDoc Table to BW
Data type: RSSM_T_IDOCNUMOptional: Yes
Call by Reference: Yes
I_DATA_TYP - Type of InfoSource
Data type: RS_TYPOptional: Yes
Call by Reference: Yes
I_DATEN_TYP - Type of requested data
Data type: RSREQUTYPEOptional: Yes
Call by Reference: Yes
I_APPLNM - Application Component
Data type: RSAPPLNMOptional: Yes
Call by Reference: Yes
I_LAST_RNR - Request number for the data transfer
Data type: RSREQUNROptional: Yes
Call by Reference: Yes
I_SOURCE - InfoSource
Data type: RSISOURCEOptional: Yes
Call by Reference: Yes
I_ISOURCE - InfoSource
Data type: RSISOURCEOptional: Yes
Call by Reference: Yes
I_OLTPSOURCE - DataSource
Data type: RSOLTPSOURCEROptional: Yes
Call by Reference: Yes
I_SIMU - Boolean
Data type: RS_BOOLOptional: Yes
Call by Reference: Yes
I_SYSTEMTYP - Single-Character Indicator
Data type: CHAR1Optional: Yes
Call by Reference: Yes
I_IDOCNUM_EIN - IDoc number
Data type: EDI_DOCNUMOptional: Yes
Call by Reference: Yes
I_IDOCSTATUS - Version Number Components
Data type: CHAR2Optional: Yes
Call by Reference: Yes
I_DATAPAKID - Data Package Number
Data type: RSDATAPIDOptional: Yes
Call by Reference: Yes
I_IDOCTYP - 30 Characters
Data type: CHAR30Optional: Yes
Call by Reference: Yes
I_IDOCNUM_INFO - IDoc number
Data type: EDI_DOCNUMOptional: Yes
Call by Reference: Yes
I_T_SELDONE - Monitor: Selections for executed request
Data type: RSSM_T_SELDONEOptional: Yes
Call by Reference: Yes
I_SELANZAHL - Counter of the Info idoc
Data type: RSINFONROptional: Yes
Call by Reference: Yes
I_ACTIVETAB - Active Tabstrip
Data type: CHAR4Optional: Yes
Call by Reference: Yes
I_T_RQSTPRMS - Protokolltable Request
Data type: RSSM_T_RQSTPRMSOptional: Yes
Call by Reference: Yes
I_NEW_DS - New DataSource
Data type: RS_BOOLOptional: Yes
Call by Reference: Yes
I_T_MONMESS - Messages for the monitor
Data type: RSSM_T_MONMESSOptional: Yes
Call by Reference: Yes
I_T_MONFACT - Fact table monitor
Data type: RSSM_T_MONFACTOptional: Yes
Call by Reference: Yes
I_T_IPTAB - InfoPackage for the monitor
Data type: RSSM_T_IPTABOptional: Yes
Call by Reference: Yes
I_T_ICTAB - Monitor IC table
Data type: RSSM_T_ICTABOptional: Yes
Call by Reference: Yes
I_T_LDTDONE - Texts for the requested InfoPackages and Groups
Data type: RSSM_T_LDTDONEOptional: Yes
Call by Reference: Yes
Copy and paste ABAP code example for RSM2_SET_GET_GLOBAL Function Module
The ABAP code below is a full code listing to execute function module POPUP_TO_CONFIRM including all data declarations. The code uses the original data declarations rather than the latest in-line data DECLARATION SYNTAX but I have included an ABAP code snippet at the end to show how declarations would look using the newer method of declaring data variables on the fly. This will allow you to compare and fully understand the new inline method. Please note some of the newer syntax such as the @DATA is not available until a later 4.70 service pack (SP8), which i why i have stuck to the origianl for this example.| DATA: | ||||
| lv_i_get | TYPE RS_BOOL, " RS_C_TRUE | |||
| lv_c_t_detail | TYPE RSSM_T_DETAIL, " | |||
| lv_e_t_header | TYPE RSSM_T_HEADER, " | |||
| lv_e_t_history | TYPE RSSM_T_HISTORY, " | |||
| lv_i_t_tcpdone | TYPE RSSM_T_TCPDONE, " | |||
| lv_i_t_hiedone | TYPE RSSM_T_HIEDONE, " | |||
| lv_i_global_icons | TYPE RS_BOOL, " | |||
| lv_i_timestamp_old_save | TYPE RSTIMESTMP, " | |||
| lv_i_timeout | TYPE RSTIMESTMP, " | |||
| lv_i_predict_first | TYPE RS_BOOL, " | |||
| lv_i_okcode | TYPE CHAR4, " | |||
| lv_i_saveok | TYPE CHAR4, " | |||
| lv_i_last_activity | TYPE CHAR4, " | |||
| lv_i_qm_status | TYPE RSREQDONE-QMSTATUS, " | |||
| lv_i_rnr | TYPE RSREQUNR, " | |||
| lv_i_refresh | TYPE RS_BOOL, " RS_C_FALSE | |||
| lv_e_t_monmess | TYPE RSSM_T_MONMESS, " | |||
| lv_i_qm_quick | TYPE RSREQDONE-QMQUICK, " | |||
| lv_i_logsys | TYPE RSSLOGSYS, " | |||
| lv_i_biw | TYPE RS_BOOL, " | |||
| lv_i_oltp | TYPE RS_BOOL, " | |||
| lv_i_logsys_typ | TYPE RSSRCTYPE, " | |||
| lv_i_ziel | TYPE RSZIEL, " | |||
| lv_i_t_idocnum | TYPE RSSM_T_IDOCNUM, " | |||
| lv_i_data_typ | TYPE RS_TYP, " | |||
| lv_i_daten_typ | TYPE RSREQUTYPE, " | |||
| lv_i_applnm | TYPE RSAPPLNM, " | |||
| lv_e_duration | TYPE RSMON4, " | |||
| lv_i_last_rnr | TYPE RSREQUNR, " | |||
| lv_i_source | TYPE RSISOURCE, " | |||
| lv_i_isource | TYPE RSISOURCE, " | |||
| lv_i_oltpsource | TYPE RSOLTPSOURCER, " | |||
| lv_i_simu | TYPE RS_BOOL, " | |||
| lv_i_systemtyp | TYPE CHAR1, " | |||
| lv_i_idocnum_ein | TYPE EDI_DOCNUM, " | |||
| lv_i_idocstatus | TYPE CHAR2, " | |||
| lv_i_datapakid | TYPE RSDATAPID, " | |||
| lv_i_idoctyp | TYPE CHAR30, " | |||
| lv_i_idocnum_info | TYPE EDI_DOCNUM, " | |||
| lv_i_t_seldone | TYPE RSSM_T_SELDONE, " | |||
| lv_e_duration_pred | TYPE RSPC_RUNTIME, " | |||
| lv_i_selanzahl | TYPE RSINFONR, " | |||
| lv_i_activetab | TYPE CHAR4, " | |||
| lv_i_t_rqstprms | TYPE RSSM_T_RQSTPRMS, " | |||
| lv_i_new_ds | TYPE RS_BOOL, " | |||
| lv_i_t_monmess | TYPE RSSM_T_MONMESS, " | |||
| lv_e_duration_abw | TYPE RSMON4, " | |||
| lv_i_t_monfact | TYPE RSSM_T_MONFACT, " | |||
| lv_e_duration_max | TYPE RSPC_RUNTIME, " | |||
| lv_i_t_iptab | TYPE RSSM_T_IPTAB, " | |||
| lv_e_duration_yet | TYPE RSPC_RUNTIME, " | |||
| lv_i_t_ictab | TYPE RSSM_T_ICTAB, " | |||
| lv_e_timestamp_old_save | TYPE RSMONMESS-TIMESTAMP, " | |||
| lv_e_2step_on | TYPE RS_BOOL, " | |||
| lv_i_t_ldtdone | TYPE RSSM_T_LDTDONE. " |
|   CALL FUNCTION 'RSM2_SET_GET_GLOBAL' "Interface to global variables RSM2 |
| EXPORTING | ||
| I_GET | = lv_i_get | |
| I_REFRESH | = lv_i_refresh | |
| IMPORTING | ||
| E_T_HEADER | = lv_e_t_header | |
| E_T_HISTORY | = lv_e_t_history | |
| E_T_MONMESS | = lv_e_t_monmess | |
| E_DURATION | = lv_e_duration | |
| E_DURATION_PRED | = lv_e_duration_pred | |
| E_DURATION_ABW | = lv_e_duration_abw | |
| E_DURATION_MAX | = lv_e_duration_max | |
| E_DURATION_YET | = lv_e_duration_yet | |
| E_TIMESTAMP_OLD_SAVE | = lv_e_timestamp_old_save | |
| E_2STEP_ON | = lv_e_2step_on | |
| CHANGING | ||
| C_T_DETAIL | = lv_c_t_detail | |
| I_T_TCPDONE | = lv_i_t_tcpdone | |
| I_T_HIEDONE | = lv_i_t_hiedone | |
| I_GLOBAL_ICONS | = lv_i_global_icons | |
| I_TIMESTAMP_OLD_SAVE | = lv_i_timestamp_old_save | |
| I_TIMEOUT | = lv_i_timeout | |
| I_PREDICT_FIRST | = lv_i_predict_first | |
| I_OKCODE | = lv_i_okcode | |
| I_SAVEOK | = lv_i_saveok | |
| I_LAST_ACTIVITY | = lv_i_last_activity | |
| I_QM_STATUS | = lv_i_qm_status | |
| I_RNR | = lv_i_rnr | |
| I_QM_QUICK | = lv_i_qm_quick | |
| I_LOGSYS | = lv_i_logsys | |
| I_BIW | = lv_i_biw | |
| I_OLTP | = lv_i_oltp | |
| I_LOGSYS_TYP | = lv_i_logsys_typ | |
| I_ZIEL | = lv_i_ziel | |
| I_T_IDOCNUM | = lv_i_t_idocnum | |
| I_DATA_TYP | = lv_i_data_typ | |
| I_DATEN_TYP | = lv_i_daten_typ | |
| I_APPLNM | = lv_i_applnm | |
| I_LAST_RNR | = lv_i_last_rnr | |
| I_SOURCE | = lv_i_source | |
| I_ISOURCE | = lv_i_isource | |
| I_OLTPSOURCE | = lv_i_oltpsource | |
| I_SIMU | = lv_i_simu | |
| I_SYSTEMTYP | = lv_i_systemtyp | |
| I_IDOCNUM_EIN | = lv_i_idocnum_ein | |
| I_IDOCSTATUS | = lv_i_idocstatus | |
| I_DATAPAKID | = lv_i_datapakid | |
| I_IDOCTYP | = lv_i_idoctyp | |
| I_IDOCNUM_INFO | = lv_i_idocnum_info | |
| I_T_SELDONE | = lv_i_t_seldone | |
| I_SELANZAHL | = lv_i_selanzahl | |
| I_ACTIVETAB | = lv_i_activetab | |
| I_T_RQSTPRMS | = lv_i_t_rqstprms | |
| I_NEW_DS | = lv_i_new_ds | |
| I_T_MONMESS | = lv_i_t_monmess | |
| I_T_MONFACT | = lv_i_t_monfact | |
| I_T_IPTAB | = lv_i_t_iptab | |
| I_T_ICTAB | = lv_i_t_ictab | |
| I_T_LDTDONE | = lv_i_t_ldtdone | |
| . " RSM2_SET_GET_GLOBAL | ||
ABAP code using 7.40 inline data declarations to call FM RSM2_SET_GET_GLOBAL
The below ABAP code uses the newer in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. Please note some of the newer syntax below, such as the @DATA is not available until 4.70 EHP 8.| DATA(ld_i_get) | = RS_C_TRUE. | |||
| "SELECT single QMSTATUS FROM RSREQDONE INTO @DATA(ld_i_qm_status). | ||||
| DATA(ld_i_refresh) | = RS_C_FALSE. | |||
| "SELECT single QMQUICK FROM RSREQDONE INTO @DATA(ld_i_qm_quick). | ||||
| "SELECT single TIMESTAMP FROM RSMONMESS INTO @DATA(ld_e_timestamp_old_save). | ||||
Search for further information about these or an SAP related objects