SAP CAT_START Function Module for
CAT_START is a standard cat start SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used to perform a specific ABAP function and below is the pattern details, 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 cat start FM, simply by entering the name CAT_START into the relevant SAP transaction such as SE37 or SE38.
Function Group: STTB
Program Name: SAPLSTTB
Main Program: SAPLSTTB
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Remote-Enabled
Update:

Function CAT_START 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 'CAT_START'".
EXPORTING
* INTR = ' ' "
* SPEC = ' ' "
* ARCH = ' ' "
* WAIT = 0000 "
* KTXT = ' ' "Process short text for log
* LMAX = 000000 "Maximum run-time in minutes for a procedure
* MODE = 'N' "
* PROT = 'S' "
* VORG = ' ' "Processing: hypertext structure name
* RFCD = ' ' "RFC destination for remote procedures ATYP=R
* RF2D = ' ' "
* PKNZ = ' ' "
IMPORTING
LVNR = "Procedure serial number after completed execution
TABLES
KEYTAB = "
* PARTAB = "Parameter for procedures LFDNR = KEYTAB index
IMPORTING Parameters details for CAT_START
INTR -
Data type: CATA-ABBRUDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
SPEC -
Data type: RSCAT-SPECOPDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
ARCH -
Data type: CATJ-ARCHDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
WAIT -
Data type: RSTTE-WAITDefault: 0000
Optional: Yes
Call by Reference: No ( called with pass by value option)
KTXT - Process short text for log
Data type: CATK-KTEXTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
LMAX - Maximum run-time in minutes for a procedure
Data type: CATA-ZEITBDefault: 000000
Optional: Yes
Call by Reference: No ( called with pass by value option)
MODE -
Data type: RSCAT-BDCMODEDefault: 'N'
Optional: Yes
Call by Reference: No ( called with pass by value option)
PROT -
Data type: RSCAT-PPROTDefault: 'S'
Optional: Yes
Call by Reference: No ( called with pass by value option)
VORG - Processing: hypertext structure name
Data type: CATK-VORGADefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
RFCD - RFC destination for remote procedures ATYP=R
Data type: RFCDISPLAY-RFCTYTEXTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
RF2D -
Data type: RFCDISPLAY-RFCTYTEXTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
PKNZ -
Data type: USR01-CATTKENNZDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for CAT_START
LVNR - Procedure serial number after completed execution
Data type: CATK-LVORNOptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for CAT_START
KEYTAB -
Data type: CATFSOptional: No
Call by Reference: No ( called with pass by value option)
PARTAB - Parameter for procedures LFDNR = KEYTAB index
Data type: CATFPOptional: Yes
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for CAT_START 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_intr | TYPE CATA-ABBRU, " SPACE | |||
| lv_lvnr | TYPE CATK-LVORN, " | |||
| lt_keytab | TYPE STANDARD TABLE OF CATFS, " | |||
| lv_spec | TYPE RSCAT-SPECOP, " SPACE | |||
| lv_arch | TYPE CATJ-ARCH, " SPACE | |||
| lv_wait | TYPE RSTTE-WAIT, " 0000 | |||
| lv_ktxt | TYPE CATK-KTEXT, " SPACE | |||
| lt_partab | TYPE STANDARD TABLE OF CATFP, " | |||
| lv_lmax | TYPE CATA-ZEITB, " 000000 | |||
| lv_mode | TYPE RSCAT-BDCMODE, " 'N' | |||
| lv_prot | TYPE RSCAT-PPROT, " 'S' | |||
| lv_vorg | TYPE CATK-VORGA, " SPACE | |||
| lv_rfcd | TYPE RFCDISPLAY-RFCTYTEXT, " SPACE | |||
| lv_rf2d | TYPE RFCDISPLAY-RFCTYTEXT, " SPACE | |||
| lv_pknz | TYPE USR01-CATTKENNZ. " SPACE |
|   CALL FUNCTION 'CAT_START' " |
| EXPORTING | ||
| INTR | = lv_intr | |
| SPEC | = lv_spec | |
| ARCH | = lv_arch | |
| WAIT | = lv_wait | |
| KTXT | = lv_ktxt | |
| LMAX | = lv_lmax | |
| MODE | = lv_mode | |
| PROT | = lv_prot | |
| VORG | = lv_vorg | |
| RFCD | = lv_rfcd | |
| RF2D | = lv_rf2d | |
| PKNZ | = lv_pknz | |
| IMPORTING | ||
| LVNR | = lv_lvnr | |
| TABLES | ||
| KEYTAB | = lt_keytab | |
| PARTAB | = lt_partab | |
| . " CAT_START | ||
ABAP code using 7.40 inline data declarations to call FM CAT_START
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.| "SELECT single ABBRU FROM CATA INTO @DATA(ld_intr). | ||||
| DATA(ld_intr) | = ' '. | |||
| "SELECT single LVORN FROM CATK INTO @DATA(ld_lvnr). | ||||
| "SELECT single SPECOP FROM RSCAT INTO @DATA(ld_spec). | ||||
| DATA(ld_spec) | = ' '. | |||
| "SELECT single ARCH FROM CATJ INTO @DATA(ld_arch). | ||||
| DATA(ld_arch) | = ' '. | |||
| "SELECT single WAIT FROM RSTTE INTO @DATA(ld_wait). | ||||
| DATA(ld_wait) | = 0000. | |||
| "SELECT single KTEXT FROM CATK INTO @DATA(ld_ktxt). | ||||
| DATA(ld_ktxt) | = ' '. | |||
| "SELECT single ZEITB FROM CATA INTO @DATA(ld_lmax). | ||||
| DATA(ld_lmax) | = 000000. | |||
| "SELECT single BDCMODE FROM RSCAT INTO @DATA(ld_mode). | ||||
| DATA(ld_mode) | = 'N'. | |||
| "SELECT single PPROT FROM RSCAT INTO @DATA(ld_prot). | ||||
| DATA(ld_prot) | = 'S'. | |||
| "SELECT single VORGA FROM CATK INTO @DATA(ld_vorg). | ||||
| DATA(ld_vorg) | = ' '. | |||
| "SELECT single RFCTYTEXT FROM RFCDISPLAY INTO @DATA(ld_rfcd). | ||||
| DATA(ld_rfcd) | = ' '. | |||
| "SELECT single RFCTYTEXT FROM RFCDISPLAY INTO @DATA(ld_rf2d). | ||||
| DATA(ld_rf2d) | = ' '. | |||
| "SELECT single CATTKENNZ FROM USR01 INTO @DATA(ld_pknz). | ||||
| DATA(ld_pknz) | = ' '. | |||
Search for further information about these or an SAP related objects