SAP SCMS_URL_GENERATE Function Module for CMS: Create URL
SCMS_URL_GENERATE is a standard scms url generate SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for CMS: Create URL 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 scms url generate FM, simply by entering the name SCMS_URL_GENERATE into the relevant SAP transaction such as SE37 or SE38.
Function Group: SCMS_URL
Program Name: SAPLSCMS_URL
Main Program: SAPLSCMS_URL
Appliation area: S
Release date: 25-Aug-2003
Mode(Normal, Remote etc): Normal Function Module
Update:

Function SCMS_URL_GENERATE 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 'SCMS_URL_GENERATE'"CMS: Create URL.
EXPORTING
* MANDT = SY-MANDT "R/3 system (client number from logon)
* VERSION = "
* DOCID = "Document ID
* COMPID = "Component ID
* PATTERN = "Search Pattern
* NUMRESULTS = -1 "Number of Results Required
* CASESENSIT = "Differentiate Between Uppercase and Lowercase
* FROMOFFSET = 0 "Start Offset
* TOOFFSET = -1 "End Offset
* ACCESSMODE = "Access Mode
* RESULTAS = "Format (ASCII/ HTTP)
COMMAND = "Command
* DURATION = '020000' "Validity Period of Signature
* EXPIRATION = "UTC Time Stamp in Short Form (YYYYMMDDhhmmss)
* SIGNATURE = 'X' "Use Signature
* CERTIFICATE = ' ' "Certificate
* DOCPROT = "Protection
* SECURITY = ' ' "Combination of: 'S' HTTPS, 'N' HTTP; 'F' Frontend, 'B' Backend
* USE_LOCATION = 'A' "'E' Explicit, 'S' Set/Get Parameter, ' ' Do Not Evaluate
* LOCATION = ' ' "Location for Determining Cache
* CACHE_TO_USE = "Cache Properties
* NO_CACHE = ' ' "Screens, display user entry
* OPERATION = "
* EXPORT_ALL = ' ' "
* ENCODING = "
* RAW_PATTERN = "
* VSCAN_PROFILE = '/SCMS/KPRO_CREATE' "Virus Scan Profile
* SCANPERFORMED = ' ' "Set to true if scan is perfomed in KPRO
* EXTENTION = "
* CONTREP = "Content Repository
* HTTP_SERV = "
* HTTP_SCRPT = "
* HTTP_SPORT = "CMS SSL port of Content Server
* HTTP_PORT = "CMS port of Content Server
IMPORTING
ABSOLUTE_URI = "Absolute URI
HTTP_URI = "
HTTPS_URI = "
EOSTR_SIGNED_DATA_L = "
CACHE = "Cache Properties
TABLES
* ATTR_PATTERN = "
* IT_OSTR_SIGNED_DATA = "
EXCEPTIONS
ERROR_PARAMETER = 1 ERROR_SIGNATURE = 2
IMPORTING Parameters details for SCMS_URL_GENERATE
MANDT - R/3 system (client number from logon)
Data type: SY-MANDTDefault: SY-MANDT
Optional: Yes
Call by Reference: No ( called with pass by value option)
VERSION -
Data type: CREP_HTTP-VERSIONOptional: Yes
Call by Reference: No ( called with pass by value option)
DOCID - Document ID
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
COMPID - Component ID
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
PATTERN - Search Pattern
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
NUMRESULTS - Number of Results Required
Data type: IDefault: -1
Optional: Yes
Call by Reference: No ( called with pass by value option)
CASESENSIT - Differentiate Between Uppercase and Lowercase
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
FROMOFFSET - Start Offset
Data type: NUMERICOptional: Yes
Call by Reference: No ( called with pass by value option)
TOOFFSET - End Offset
Data type: NUMERICDefault: -1
Optional: Yes
Call by Reference: No ( called with pass by value option)
ACCESSMODE - Access Mode
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
RESULTAS - Format (ASCII/ HTTP)
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
COMMAND - Command
Data type: COptional: No
Call by Reference: No ( called with pass by value option)
DURATION - Validity Period of Signature
Data type: SY-UZEITDefault: '020000'
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPIRATION - UTC Time Stamp in Short Form (YYYYMMDDhhmmss)
Data type: TIMESTAMPOptional: Yes
Call by Reference: No ( called with pass by value option)
SIGNATURE - Use Signature
Data type: CDefault: 'X'
Optional: Yes
Call by Reference: No ( called with pass by value option)
CERTIFICATE - Certificate
Data type: CDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
DOCPROT - Protection
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
SECURITY - Combination of: 'S' HTTPS, 'N' HTTP; 'F' Frontend, 'B' Backend
Data type: CDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
USE_LOCATION - 'E' Explicit, 'S' Set/Get Parameter, ' ' Do Not Evaluate
Data type: CDefault: 'A'
Optional: Yes
Call by Reference: No ( called with pass by value option)
LOCATION - Location for Determining Cache
Data type: CDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
CACHE_TO_USE - Cache Properties
Data type: SCMSCACHEOptional: Yes
Call by Reference: No ( called with pass by value option)
NO_CACHE - Screens, display user entry
Data type: SY-DATARDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
OPERATION -
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
EXPORT_ALL -
Data type: CDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
ENCODING -
Data type: ABAP_ENCODINGOptional: Yes
Call by Reference: No ( called with pass by value option)
RAW_PATTERN -
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
VSCAN_PROFILE - Virus Scan Profile
Data type: VSCAN_PROFILEDefault: '/SCMS/KPRO_CREATE'
Optional: Yes
Call by Reference: No ( called with pass by value option)
SCANPERFORMED - Set to true if scan is perfomed in KPRO
Data type: CDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXTENTION -
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
CONTREP - Content Repository
Data type: COptional: Yes
Call by Reference: No ( called with pass by value option)
HTTP_SERV -
Data type: CREP_HTTP-HTTP_SERVOptional: Yes
Call by Reference: No ( called with pass by value option)
HTTP_SCRPT -
Data type: CREP_HTTP-HTTP_SCRPTOptional: Yes
Call by Reference: No ( called with pass by value option)
HTTP_SPORT - CMS SSL port of Content Server
Data type: CREP_HTTP-HTTP_SPORTOptional: Yes
Call by Reference: No ( called with pass by value option)
HTTP_PORT - CMS port of Content Server
Data type: CREP_HTTP-HTTP_PORTOptional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for SCMS_URL_GENERATE
ABSOLUTE_URI - Absolute URI
Data type: COptional: No
Call by Reference: No ( called with pass by value option)
HTTP_URI -
Data type: COptional: No
Call by Reference: No ( called with pass by value option)
HTTPS_URI -
Data type: COptional: No
Call by Reference: No ( called with pass by value option)
EOSTR_SIGNED_DATA_L -
Data type: SSFPARMS-SIGDATALENOptional: No
Call by Reference: No ( called with pass by value option)
CACHE - Cache Properties
Data type: SCMSCACHEOptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for SCMS_URL_GENERATE
ATTR_PATTERN -
Data type: SCMS_SEATROptional: Yes
Call by Reference: No ( called with pass by value option)
IT_OSTR_SIGNED_DATA -
Data type: SSFBINOptional: Yes
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
ERROR_PARAMETER -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
ERROR_SIGNATURE -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for SCMS_URL_GENERATE 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_mandt | TYPE SY-MANDT, " SY-MANDT | |||
| lv_absolute_uri | TYPE C, " | |||
| lt_attr_pattern | TYPE STANDARD TABLE OF SCMS_SEATR, " | |||
| lv_error_parameter | TYPE SCMS_SEATR, " | |||
| lv_version | TYPE CREP_HTTP-VERSION, " | |||
| lv_docid | TYPE C, " | |||
| lv_compid | TYPE C, " | |||
| lv_pattern | TYPE C, " | |||
| lv_numresults | TYPE I, " -1 | |||
| lv_casesensit | TYPE C, " | |||
| lv_fromoffset | TYPE NUMERIC, " 0 | |||
| lv_tooffset | TYPE NUMERIC, " -1 | |||
| lv_accessmode | TYPE C, " | |||
| lv_resultas | TYPE C, " | |||
| lv_command | TYPE C, " | |||
| lv_http_uri | TYPE C, " | |||
| lv_error_signature | TYPE C, " | |||
| lt_it_ostr_signed_data | TYPE STANDARD TABLE OF SSFBIN, " | |||
| lv_duration | TYPE SY-UZEIT, " '020000' | |||
| lv_expiration | TYPE TIMESTAMP, " | |||
| lv_signature | TYPE C, " 'X' | |||
| lv_certificate | TYPE C, " SPACE | |||
| lv_docprot | TYPE C, " | |||
| lv_security | TYPE C, " SPACE | |||
| lv_use_location | TYPE C, " 'A' | |||
| lv_location | TYPE C, " SPACE | |||
| lv_cache_to_use | TYPE SCMSCACHE, " | |||
| lv_no_cache | TYPE SY-DATAR, " SPACE | |||
| lv_https_uri | TYPE C, " | |||
| lv_operation | TYPE C, " | |||
| lv_export_all | TYPE C, " SPACE | |||
| lv_encoding | TYPE ABAP_ENCODING, " | |||
| lv_raw_pattern | TYPE C, " | |||
| lv_vscan_profile | TYPE VSCAN_PROFILE, " '/SCMS/KPRO_CREATE' | |||
| lv_scanperformed | TYPE C, " SPACE | |||
| lv_extention | TYPE C, " | |||
| lv_eostr_signed_data_l | TYPE SSFPARMS-SIGDATALEN, " | |||
| lv_cache | TYPE SCMSCACHE, " | |||
| lv_contrep | TYPE C, " | |||
| lv_http_serv | TYPE CREP_HTTP-HTTP_SERV, " | |||
| lv_http_scrpt | TYPE CREP_HTTP-HTTP_SCRPT, " | |||
| lv_http_sport | TYPE CREP_HTTP-HTTP_SPORT, " | |||
| lv_http_port | TYPE CREP_HTTP-HTTP_PORT. " |
|   CALL FUNCTION 'SCMS_URL_GENERATE' "CMS: Create URL |
| EXPORTING | ||
| MANDT | = lv_mandt | |
| VERSION | = lv_version | |
| DOCID | = lv_docid | |
| COMPID | = lv_compid | |
| PATTERN | = lv_pattern | |
| NUMRESULTS | = lv_numresults | |
| CASESENSIT | = lv_casesensit | |
| FROMOFFSET | = lv_fromoffset | |
| TOOFFSET | = lv_tooffset | |
| ACCESSMODE | = lv_accessmode | |
| RESULTAS | = lv_resultas | |
| COMMAND | = lv_command | |
| DURATION | = lv_duration | |
| EXPIRATION | = lv_expiration | |
| SIGNATURE | = lv_signature | |
| CERTIFICATE | = lv_certificate | |
| DOCPROT | = lv_docprot | |
| SECURITY | = lv_security | |
| USE_LOCATION | = lv_use_location | |
| LOCATION | = lv_location | |
| CACHE_TO_USE | = lv_cache_to_use | |
| NO_CACHE | = lv_no_cache | |
| OPERATION | = lv_operation | |
| EXPORT_ALL | = lv_export_all | |
| ENCODING | = lv_encoding | |
| RAW_PATTERN | = lv_raw_pattern | |
| VSCAN_PROFILE | = lv_vscan_profile | |
| SCANPERFORMED | = lv_scanperformed | |
| EXTENTION | = lv_extention | |
| CONTREP | = lv_contrep | |
| HTTP_SERV | = lv_http_serv | |
| HTTP_SCRPT | = lv_http_scrpt | |
| HTTP_SPORT | = lv_http_sport | |
| HTTP_PORT | = lv_http_port | |
| IMPORTING | ||
| ABSOLUTE_URI | = lv_absolute_uri | |
| HTTP_URI | = lv_http_uri | |
| HTTPS_URI | = lv_https_uri | |
| EOSTR_SIGNED_DATA_L | = lv_eostr_signed_data_l | |
| CACHE | = lv_cache | |
| TABLES | ||
| ATTR_PATTERN | = lt_attr_pattern | |
| IT_OSTR_SIGNED_DATA | = lt_it_ostr_signed_data | |
| EXCEPTIONS | ||
| ERROR_PARAMETER = 1 | ||
| ERROR_SIGNATURE = 2 | ||
| . " SCMS_URL_GENERATE | ||
ABAP code using 7.40 inline data declarations to call FM SCMS_URL_GENERATE
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 MANDT FROM SY INTO @DATA(ld_mandt). | ||||
| DATA(ld_mandt) | = SY-MANDT. | |||
| "SELECT single VERSION FROM CREP_HTTP INTO @DATA(ld_version). | ||||
| DATA(ld_numresults) | = -1. | |||
| DATA(ld_tooffset) | = -1. | |||
| "SELECT single UZEIT FROM SY INTO @DATA(ld_duration). | ||||
| DATA(ld_duration) | = '020000'. | |||
| DATA(ld_signature) | = 'X'. | |||
| DATA(ld_certificate) | = ' '. | |||
| DATA(ld_security) | = ' '. | |||
| DATA(ld_use_location) | = 'A'. | |||
| DATA(ld_location) | = ' '. | |||
| "SELECT single DATAR FROM SY INTO @DATA(ld_no_cache). | ||||
| DATA(ld_no_cache) | = ' '. | |||
| DATA(ld_export_all) | = ' '. | |||
| DATA(ld_vscan_profile) | = '/SCMS/KPRO_CREATE'. | |||
| DATA(ld_scanperformed) | = ' '. | |||
| "SELECT single SIGDATALEN FROM SSFPARMS INTO @DATA(ld_eostr_signed_data_l). | ||||
| "SELECT single HTTP_SERV FROM CREP_HTTP INTO @DATA(ld_http_serv). | ||||
| "SELECT single HTTP_SCRPT FROM CREP_HTTP INTO @DATA(ld_http_scrpt). | ||||
| "SELECT single HTTP_SPORT FROM CREP_HTTP INTO @DATA(ld_http_sport). | ||||
| "SELECT single HTTP_PORT FROM CREP_HTTP INTO @DATA(ld_http_port). | ||||
Search for further information about these or an SAP related objects