SAP ABAP Interview Questions

Your contribution can keep this blog alive!!!

Wednesday, 16 April 2014

Complete List of SAP ABAP Function Modules

Useful List of SAP ABAP Function Modules
SAP ABAP Function Modules, Complete list of function modules in SAP ABAP. Useful function modules for ABAP programmers. ABAP function modules with explanation.

Useful SAP ABAP Function Modules



Welcome to SAP ABAP Interview questions, here we are presenting article on ABAP function modules. We hope that this article will help ABAP programmers and technical consultants to learn about function modules in SAP ABAP.


List of SAP ABAP Function Modules with Explanation



ABAP_DOCU_DOWNLOAD 
Download ABAP documentation in HTML format. 

APPL_LOG_DELETE 
With this function module you delete logs in the database according to specified selection conditions 

APPL_LOG_DISPLAY 
With this function module you can analyze logs in the database. 

APPL_LOG_DISPLAY_INTERN 
With this function module you can analyze logs in local memory, e.g. when you have only collected log records at runtime and do not want to write to the database. 

APPL_LOG_INIT 
This function module checks whether the specified object or sub-object exists and deletes all existing associated data in local memory. 

APPL_LOG_READ_DB 
With this function module you read the log data in the database for an object or sub-object according to specified selection conditions. 

APPL_LOG_READ_INTERN 
With this function module you read all log data whose log class has at least the specified value, from local memory, for the specified object or sub-object. 

APPL_LOG_SET_OBJECT 
With this function module, you create a new object or sub-object for writing in local memory. With a flag you can control whether the APPL_LOG_WRITE_... messages are written in local memory or are output on the screen. 

APPL_LOG_WRITE_DB 
With this function module you write all data for the specified object or sub-object in local memory to the database. If the log for the object or sub-object in question is new, the log number is returned to the calling program. 

APPL_LOG_WRITE_HEADER 
With this function module, you write the log header data in local memory. 

APPL_LOG_WRITE_LOG_PARAMETERS 
With this function module, you write the name of the log parameters and the associated values for the specified object or sub-object in local memory. If this function module is called repeatedly for the same object or sub-object, the existing parameters are updated accordingly. If you do not specify an object or sub-object with the call, the most recently used is assumed. 

APPL_LOG_WRITE_MESSAGE_PARAMS 
With this function module you write a single message, with parameters, in local memory. Otherwise the function module works like APPL_LOG_WRITE_SINGLE_MESSAGE. 

APPL_LOG_WRITE_MESSAGES 
With this function module you write one or more messages, without parameters, in local memory. 

APPL_LOG_WRITE_SINGLE_MESSAGE 
With this function module you write a single message, without parameters, in local memory. If no header entry has yet been written for the object or sub-object, it is created. If you do not specify an object or sub-object with the call, the most recently used is assumed. 

ARFC_GET_TID 
will return the IP address of the terminal in hex. 

BAL_CNTL_CREATE 
Create Control for log display 

BAL_CNTL_FREE 
Release Control 

BAL_CNTL_REFRESH 
Put new data in log display 

BAL_DB_DELETE 
Delete logs from the database 

BAL_DB_DEQUEUE 
Unlock log 

BAL_DB_ENQUEUE 
Lock log 

BAL_DB_LOAD 
Load logs from the database 

BAL_DB_LOAD 
Load log(s) 

BAL_DB_SAVE 
Save logs in the database 

BAL_DB_SAVE 
Save log(s) 

BAL_DB_SAVE_PREPARE 
Prepare save 

BAL_DB_SEARCH 
Find logs in the database 

BAL_DSP_LOG_DISPLAY 
Display messages in memory 

BAL_DSP_LOG_DISPLAY 
Display Log 

BAL_DSP_LOG_PARAMETERS 
Either output extended long text or call a callback routine (based on the data in BAL_S_LOG-PARAMS) 

BAL_DSP_LOG_TECHNICAL_DATA 
Output all log header data 

BAL_DSP_MSG_LONGTEXT 
Display message long text 

BAL_DSP_MSG_PARAMETERS 
Either output extended long text or call a callback routine (based on the data in BAL_S_MSG-PARAMS) 

BAL_DSP_MSG_TECHNICAL_DATA 
Output technical data of a message such as work area, error number, etc. 

BAL_DSP_OUTPUT_FREE 
End output 

BAL_DSP_OUTPUT_INIT 
Initialize output 

BAL_DSP_OUTPUT_SET_DATA 
Set dataset to be displayed 

BAL_DSP_PROFILE_DETLEVEL_GET 
Message hierarchy in DETLEVEL 

BAL_DSP_PROFILE_NO_TREE_GET 
Display without tree (fullscreen) 

BAL_DSP_PROFILE_POPUP_GET 
Display without tree (popup) 

BAL_DSP_PROFILE_SINGLE_LOG_GET 
Standard profile (SLG1) for one log 

BAL_DSP_PROFILE_STANDARD_GET 
Standard profile (SLG1) for a lot of logs 

BAL_GLB_AUTHORIZATION_GET 
Assign authorization 

BAL_GLB_AUTHORIZATION_RESET 
Reset authorization 

BAL_GLB_CONFIG_GET 
Read configuration 

BAL_GLB_CONFIG_SET 
Set configuration 

BAL_GLB_MEMORY_EXPORT 
Put function group memory in ABAP-MEMORY 

BAL_GLB_MEMORY_IMPORT 
Get function group memory from ABAP-MEMORY 

BAL_GLB_MEMORY_REFRESH 
(Partially) reset global memory 

BAL_GLB_MEMORY_REFRESH 
(Partially) initialize memory 

BAL_GLB_MSG_CURRENT_HANDLE_GET 
Get current message handle 

BAL_GLB_MSG_DEFAULTS_GET 
Get message defaults 

BAL_GLB_SEARCH_LOG 
Find logs in memory 

BAL_GLB_SEARCH_MSG 
Find messages in memory 

BAL_LOG_CREATE 
Create log with header data 

BAL_LOG_CREATE 
Create log with header data 

BAL_LOG_DELETE 
Delete log (from database also at Save) 

BAL_LOG_EXIST 
Check existence of a log in memory 

BAL_LOG_HDR_CHANGE 
Change log header 

BAL_LOG_HDR_CHECK 
Check log header data for consistency 

BAL_LOG_HDR_READ 
Read log header and other data 

BAL_LOG_MSG_ADD 
Put message in log 

BAL_LOG_MSG_ADD 
Put message in log 

BAL_LOG_MSG_CHANGE 
Change message 

BAL_LOG_MSG_CHANGE 
Change message 

BAL_LOG_MSG_CHECK 
Check message data for consistency 

BAL_LOG_MSG_CUMULATE 
Add message cumulated 

BAL_LOG_MSG_DELETE 
Delete message 

BAL_LOG_MSG_DELETE 
Delete message 

BAL_LOG_MSG_EXIST 
Check existence of a message in memory 

BAL_LOG_MSG_READ 
Read message and other data 

BAL_LOG_MSG_REPLACE 
Replace last message 

BAL_LOG_REFRESH 
Delete log from memory 

BAL_LOG_REFRESH 
Delete log from memory 

BAL_MSG_DISPLAY_ABAP 
Output message as ABAP-MESSAGE 

BAL_OBJECT_SELECT 
Read Application Log objects table record 

BAL_OBJECT_SUBOBJECT 
Check whether object and subobject exist and the combination is allowed 

BAL_SUBOBJECT_SELECT 
Read subobject table record 

BP_EVENT_RAISE 
Trigger an event from ABAP/4 program 

BP_JOBLOG_READ 
Fetch job log executions 

CHANGEDOCUMENT_READ_HEADERS 
Get the change document header for a sales document, and put the results in an internal table. 


Example: 
CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS' 
EXPORTING 
objectclass = 'EINKBELEG' 
objectid = l_objectid 
username = space 
TABLES 
i_cdhdr = lt_cdhdr. 
LOOP AT lt_cdhdr WHERE udate IN s_aedat. 
CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS' 
EXPORTING 
changenumber = lt_cdhdr-changenr 
TABLES 
editpos = lt_editpos. 
LOOP AT lt_editpos WHERE fname = 'LOEKZ' 
AND f_new = 'L'. 
p_desc = text-r01. " Cancel Contract 
ENDLOOP. 
ENDLOOP.
CHANGEDOCUMENT_READ_POSITIONS 
Get the details of a change document, and store them in an internal table. This will tell you whether a field was changed, deleted, or updated. 


Example: 
CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS' 
EXPORTING 
objectclass = 'EINKBELEG' 
objectid = l_objectid 
username = space 
TABLES 
i_cdhdr = lt_cdhdr. 
LOOP AT lt_cdhdr WHERE udate IN s_aedat. 
CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS' 
EXPORTING 
changenumber = lt_cdhdr-changenr 
TABLES 
editpos = lt_editpos. 
LOOP AT lt_editpos WHERE fname = 'LOEKZ' 
AND f_new = 'L'. 
p_desc = text-r01. " Cancel Contract 
ENDLOOP. 
ENDLOOP.
CLAF_CLASSIFICATION_OF_OBJECTS 
Return all of the characteristics for a material 

CLOI_PUT_SIGN_IN_FRONT 
Move the negative sign from the left hand side of a number, to the right hand side of the number. Note that The result will be left justified (like all character fields), not right justifed as numbers normally are. 

CLPB_EXPORT 
Export a text table to the clipboard (on presentation server) 

CLPB_IMPORT 
Import a Text Table from the Clipboard (on presentation server) 

COMMIT_TEXT 
To load long text into SAP 

CONVERSION_EXIT_ALPHA_INPUT 
converts any number into a string fill with zeroes, with the number at the extreme right 


Example: 
input = 123 
output = 0000000000000...000000000000123
CONVERSION_EXIT_ALPHA_OUTPUT 
converts any number with zeroes right into a simple integer 


Example: 
input = 00000000000123 
output = 123
CONVERT_ABAPSPOOLJOB_2_PDF 
convert abap spool output to PDF 

CONVERT_OTF 
Convert SAP documents (SAPScript) to other types. 


Example: 
CALL FUNCTION "CONVERT_OTF" 
EXPORTING FORMAT = "PDF" 
IMPORTING BIN_FILESIZE = FILE_LEN 
TABLES OTF = OTFDATA 
LINES = PDFDATA 
EXCEPTIONS ERR_MAX_LINEWIDTH = 1 
ERR_FORMAT = 2 
ERR_CONV_NOT_POSSIBLE = 3 
OTHERS = 4.
CONVERT_OTFSPOOLJOB_2_PDF 
converts a OTF spool to PDF (i.e. Sapscript document) 

CONVERT_TO_FOREIGN_CURRENCY 
Convert local currency to foreign currency. 

CONVERT_TO_LOCAL_CURRENCY 
Convert from foreign currency to local currency 

DATE_CHECK_PLAUSIBILITY 
Check to see if a date is in a valid format for SAP. Works well when validating dates being passed in from other systems. 

DATE_COMPUTE_DAY 
Returns a number indicating what day of the week the date falls on. Monday is returned as a 1, Tuesday as 2, etc. 

DATE_GET_WEEK 
will return the week that a date is in. 

DATE_IN_FUTURE 
Calculate a date N days in the future. 

DAY_ATTRIBUTES_GET 
Return useful information about a day. Will tell you the day of the week as a word (Tuesday), the day of the week (2 would be Tuedsay), whether the day is a holiday, and more.(provided by Francois Henrotte) 

DOWNLOAD 
download a file to the presentation server (PC) 

DYNP_VALUES_READ 
Read the values from a dynpro. This function can be used to read the values from a report's selection screen too (Another example). 

DYNP_VALUES_UPDATE 
Similar to DYNP_VALUES_READ, this function will allow the updating of fields on a dynpro. Very useful when you want to change a field based on the value entered for another field. 

ENQUE_SLEEP 
Wait a specified period of time before continuing processing. 

ENQUEUE_ESFUNCTION 
Lock an abap program so that it cannot be executed. 


Example: 
Set the parameters as follows: 
RELID = 'ZZ' 
SRTF2 = 0 
SRTF = (your report name)
Please note that you should not use SY-REPID to pass your report name to the function. The value of SY-REPID will change as it is being passed to the function module, and will no longer hold the value of the calling report. 
EPS_GET_DIRECTORY_LISTING 
return a list of filenames from a local or network drive 

EPS_GET_FILE_ATTRIBUTES 
Pass in a filename and a path, and will return attributes for the file 

F4_DATE 
displays a calendar in a popup window and allows user to choose a date, or it can be displayed read only. 

F4_IF_FIELD_VALUE_REQUEST 
Use values from a DDIC table to provide a list of possible values. TABNAME and FIELDNAME are required fields, and when MULTIPLE_CHOICE is selected, more than one value can be returned. 

F4IF_INT_TABLE_VALUE_REQUEST 
F4 help that returns the values selected in an internal table. Very handy when programming your very own F4 help for a field. 


Example: 
data: 
begin of t_values occurs 2, 
value like kna1-begru, 
end of t_values, 
t_return like ddshretval occurs 0 with header line. 
t_values = 'PAR*'. 
append t_values. 
t_values = 'UGG'. 
append t_values. 
call function 'F4IF_INT_TABLE_VALUE_REQUEST' 
exporting 
retfield = 'BEGRU' 
value_org = 'S' 
tables 
value_tab = t_values 
return_tab = t_return 
exceptions 
parameter_error = 1 
no_values_found = 2 
others = 3. 
if sy-subrc = 0. 
read table t_return index 1. 
o_begru-low = t_return-fieldval. 
if o_begru-low = 'PAR*'. 
o_begru-option = 'CP'. 
else. 
o_begru-option = 'EQ'. 
endif. 
o_begru-sign = 'I'. 
append o_begru to s_begru. 
else. 
o_begru = i_begru. 
endif.
F4IF_SHLP_EXIT_EXAMPLE 
documents the different reasons to use a search help exit, and shows how it is done. 

F4IP_INT_TABLE_VALUE_REQUEST 
This function does not exist in 4.6 and above. Use F4IF_INT_TABLE_VALUE_REQUEST instead. 

FILENAME_GET 
popup to get a filename from a user, returns blank filename if user selects cancel 

FORMAT_MESSAGE 
Takes a message id and number, and puts it into a variable. Works better than WRITE_MESSAGE, since some messages use $ as a place holder, and WRITE_MESSAGE does not accommadate that, it only replaces the ampersands (&) in the message. 

FTP_COMMAND 
Execute a command on the FTP server 

FTP_CONNECT 
Open a connection (and log in) to an FTP server 

FTP_DISCONNECT 
Close the connection (and log off) the FTP server 

FU CSAP_MAT_BOM_READ 
You can use this function module to display simple material BOMs. You cannot display BOM groups (for example, all variants of a variant BOM). as in transaction CS03. Current restrictions: You cannot display long texts. You cannot display sub-items. You cannot display classification data of BOM items for batches. You can only display one alternative or variant. You cannot enter an alternative for module CSAP_MAT_BOM_READ, so you always see alternative 01. The following example came from a posting on the SAP-R3-L mailing list. 


Example: 
data: begin of tstk2 occurs 0. 
include structure stko_api02. 
data: end of tstk2. 
data: begin of tstp2 occurs 0. 
include structure stpo_api02. 
data: end of tstp2. 
data: begin of tdep_data occurs 0. 
include structure csdep_data. 
data: end of tdep_data. 
data: begin of tdep_descr occurs 0. 
include structure csdep_descr. 
data: end of tdep_descr. 
data: begin of tdep_source occurs 0. 
include structure csdep_source. 
data: end of tdep_source. 
data: begin of tdep_order occurs 0. 
include structure csdep_order. 
data: end of tdep_order. 
data: begin of tdep_doc occurs 0. 
include structure csdep_doc. 
data: end of tdep_doc. 
data: flg_warning like capiflag-flwarning. 
call function 'CSAP_MAT_BOM_READ' 
exporting 
material = 'MAT100' 
plant = '0001' 
bom_usage = '1' 
valid_from = '20.12.1996'
  • valid_to 
    importing 
    fl_warning = flg_warning 
    tables 
    t_stko = tstk2 
    t_stpo = tstp2 
    t_dep_data = tdep_data 
    t_dep_descr = tdep_descr 
    t_dep_source = tdep_source 
    t_dep_order = tdep_order 
    t_dep_doc = tdep_doc 
    exceptions 
    error = 1.
Function Group GRAP is now obsolete. 
SAP recommends using functions in function group SFES instead. Below is an overview of the changes. 

G_SET_GET_ALL_VALUES 
Fetch values from a set. 

GET_CURRENT_YEAR 
Get the current fiscal year. 


Example: 
CALL FUNCTION 'GET_CURRENT_YEAR' 
EXPORTING 
BUKRS = '1000' " Company Code 
DATE = SY-DATUM " Date to find fiscal year for 
IMPORTING 
CURRM = w_currm " Current Fiscal Month 
CURRY = w_curry " Current Fiscal Year 
PREVM = w_prevm " Previous Fiscal Month 
PREVY = w_prevy. " Previous Fiscal Year
GET_GLOBAL_SYMBOLS 
Returns a list of all tables, select options, texts, etc for a program. Even includes the text definitions for the selection screen 

GET_INCLUDETAB 
Returns a list of all INCLUDES in a program 

GET_JOB_RUNTIME_INFO 
Get the current job number from a program. Also returns other useful info about the current job. 

GUI_CREATE_DIRECTORY 
Create a directory on the presentation server 

GUI_DELETE_FILE 
Replaces WS_FILE_DELETE. Delete a file on the presentation server 

GUI_DOWNLOAD 
Replaces WS_DOWNLOAD. Download table from the app server to presentation server 

GUI_EXEC 
Replaces WS_EXECUTE. Start a File or Program Asynchronously with WinExec 

GUI_GET_DESKTOP_INFO 
Replaces WS_QUERY. Delivers Information About the Desktop (client) 

GUI_REMOVE_DIRECTORY 
Delete a directory on the presentation server 

GUI_RUN 
Start a File or Program Asynchronously with ShellExecute 

GUI_UPLOAD 
Replaces WS_UPLOAD. Upoad file from presentation server to the app server 

HELP_START 
Display help for a field. Useful for doing AT SELECTION SCREEN ON VALUE REQUEST for those fields that do not provide F4 help at the DDIC level. 

HELP_VALUES_GET_WITH_TABLE 
Show a list of possible values for F4 popup help on selection screens. This function module pops up a screen that is just like all the other F4 helps, so it looks like the rest of the SAP system. Very useful for providing dropdowns on fields that do not have them predefined. 


Example: 
tables: t001w. 
DATA: lc_werks LIKE t001w-werks, 
ltab_fields LIKE help_value OCCURS 0 with header line, 
BEGIN OF ltab_values OCCURS 0, 
feld(40) TYPE c, 
END OF ltab_values.
  • *- *-- Set up fields to retrieve data 
    ltab_fields-tabname = 'T001W'. 
    ltab_fields-fieldname = 'WERKS'. 
    ltab_fields-selectflag = 'X'. 
    APPEND ltab_fields. 
    ltab_fields-tabname = 'T001W'. 
    ltab_fields-fieldname = 'NAME1'. 
    ltab_fields-selectflag = space. 
    APPEND ltab_fields.
    • *-- Fill values 
      select * from t001w. 
      ltab_values-feld = t001w-werks. 
      append ltab_values. 
      ltab_values-feld = t001w-name1. 
      append ltab_values. 
      endselect. 
      CALL FUNCTION 'HELP_VALUES_GET_WITH_TABLE' 
      EXPORTING 
      fieldname = 'WERKS' 
      tabname = 'T001W' 
      title_in_values_list = 'Select a value' 
      IMPORTING 
      select_value = lc_werks 
      TABLES 
      fields = ltab_fields 
      valuetab = ltab_values 
      EXCEPTIONS 
      field_not_in_ddic = 01 
      more_then_one_selectfield = 02 
      no_selectfield = 03.
HOLIDAY_CHECK_AND_GET_INFO 
Useful for determining whether or not a date is a holiday. Give the function a date, and a holiday calendar, and you can determine if the date is a holiday by checking the parameter HOLIDAY_FOUND. 


Example: 
data: ld_date like scal-datum default sy-datum, 
lc_holiday_cal_id like scal-hcalid default 'CA', 
ltab_holiday_attributes like thol occurs 0 with header line, 
lc_holiday_found like scal-indicator. 
CALL FUNCTION 'HOLIDAY_CHECK_AND_GET_INFO' 
EXPORTING 
date = ld_date 
holiday_calendar_id = lc_holiday_cal_id 
WITH_HOLIDAY_ATTRIBUTES = 'X' 
IMPORTING 
HOLIDAY_FOUND = lc_holiday_found 
tables 
holiday_attributes = ltab_holiday_attributes 
EXCEPTIONS 
CALENDAR_BUFFER_NOT_LOADABLE = 1 
DATE_AFTER_RANGE = 2 
DATE_BEFORE_RANGE = 3 
DATE_INVALID = 4 
HOLIDAY_CALENDAR_ID_MISSING = 5 
HOLIDAY_CALENDAR_NOT_FOUND = 6 
OTHERS = 7. 
if sy-subrc = 0 and 
lc_holiday_found = 'X'. 
write: / ld_date, 'is a holiday'. 
else. 
write: / ld_date, 'is not a holiday, or there was an error calling the function'. 
endif.
HOLIDAY_GET 
Provides a table of all the holidays based upon a Factory Calendar &/ Holiday Calendar. 

HR_DISPLAY_BASIC_LIST 
is an HR function, but can be used for any data. You pass it data, and column headers, and it provides a table control with the ability to manipulate the data, and send it to Word or Excel. Also see the additional documentation here. 

HR_GET_LEAVE_DATA 
Get all leave information (includes leave entitlement, used holidays/paid out holidays) 

HR_IE_NUM_PRSI_WEEKS 
Return the number of weeks between two dates. 

HR_PAYROLL_PERIODS_GET 
Get the payroll period for a particular date. (provided by Francois Henrotte) 


Example: 
DATA: IT_T549Q TYPE T549Q OCCURS 0 WITH HEADER LINE, 
IT_ZL TYPE PC2BF OCCURS 0 WITH HEADER LINE. 
W_BEGDA = '20010101'. 
W_PERNR = '00000001'. 
CALL FUNCTION 'HR_PAYROLL_PERIODS_GET' 
EXPORTING 
get_begda = w_begda 
TABLES 
get_periods = it_t549q 
EXCEPTIONS 
no_period_found = 1 
no_valid_permo = 2. 
CHECK sy-subrc = 0. 
CALL FUNCTION 'HR_TIME_RESULTS_GET' 
EXPORTING 
get_pernr = w_pernr 
get_pabrj = it_t549q-pabrj 
get_pabrp = it_t549q-pabrp 
TABLES 
get_zl = it_zl 
EXCEPTIONS 
no_period_specified = 1 
wrong_cluster_version = 2 
no_read_authority = 3 
cluster_archived = 4 
technical_error = 5. 
NOTE: it_zl-iftyp = 'A' absence 
it_zl-iftyp = 'S' at work
HR_TIME_RESULTS_GET 
Get the time results for a payroll period. (provided by Francois Henrotte) 


Example: 
DATA: IT_T549Q TYPE T549Q OCCURS 0 WITH HEADER LINE, 
IT_ZL TYPE PC2BF OCCURS 0 WITH HEADER LINE. 
W_BEGDA = '20010101'. 
W_PERNR = '00000001'. 
CALL FUNCTION 'HR_PAYROLL_PERIODS_GET' 
EXPORTING 
get_begda = w_begda 
TABLES 
get_periods = it_t549q 
EXCEPTIONS 
no_period_found = 1 
no_valid_permo = 2. 
CHECK sy-subrc = 0. 
CALL FUNCTION 'HR_TIME_RESULTS_GET' 
EXPORTING 
get_pernr = w_pernr 
get_pabrj = it_t549q-pabrj 
get_pabrp = it_t549q-pabrp 
TABLES 
get_zl = it_zl 
EXCEPTIONS 
no_period_specified = 1 
wrong_cluster_version = 2 
no_read_authority = 3 
cluster_archived = 4 
technical_error = 5. 
NOTE: it_zl-iftyp = 'A' absence 
it_zl-iftyp = 'S' at work
INIT_TEXT 
To load long text into SAP 

K_WERKS_OF_BUKRS_FIND 
Return a list of all plants for a given company code. 

LIST_FROM_MEMORY 
Retrieves the output of a report from memory when the report was executed using SUBMIT... EXPORTING LIST TO MEMORY. See also WRITE_LIST. 

LIST_TO_ASCII 
convert an ABAP report (displayed on screen) from OTF to ASCII format 

MBEW_EXTEND 
Get the stock position for the previous month. This displays the same info that you see in MM03. 

MONTH_NAMES_GET 
It returns all the month and names in repective language. 

MONTH_PLUS_DETERMINE 
Add or subtract months from a date. To subtract a month, enter a negative value for the 'months' parameter. 


Example: 
data: new_date type d. 
CALL FUNCTION 'MONTH_PLUS_DETERMINE' 
EXPORTING 
months = -5 " Negative to subtract from old date, positive to add 
olddate = sy-datum 
IMPORTING 
NEWDATE = new_date. 
write: / new_date.
MS_EXCEL_OLE_STANDARD_OLE 
will build a file, and automatically start Excel 

OTF_CONVERT 
wraps several other function modules. Will convert OTF to ASCII or PDF 

POPUP_TO_CONFIRM_LOSS_OF_DATA 
Create a dialog box in which you make a question whether the user wishes to perform a processing step with loss of data. 

POPUP_TO_CONFIRM_STEP 
Create a dialog box in which you make a question whether the user wishes to perform the step. 

POPUP_TO_CONFIRM_WITH_MESSAGE 
Create a dialog box in which you inform the user about a specific decision point during an action. 

POPUP_TO_CONFIRM_WITH_VALUE 
Create a dialog box in which you make a question whether the user wishes to perform a processing step with a particular object. 

POPUP_TO_DECIDE 
Provide user with several choices as radio buttons 

POPUP_TO_DECIDE_WITH_MESSAGE 
Create a dialog box in which you inform the user about a specific decision point via a diagnosis text. 

POPUP_TO_DISPLAY_TEXT 
Create a dialog box in which you display a two line message 

POPUP_TO_SELECT_MONTH 
Popup to choose a month 

POPUP_WITH_TABLE_DISPLAY 
Provide a display of a table for user to select one, with the value of the table line returned when selected. 

PRICING 
Return pricing conditions in an internal table. Use structure TCOMK for parameter COMM_HEAD_1, and structure TCOMP for parameter COMM_ITEM_1, and set CALCULATION_TYPE to B. The pricing conditions will be returned in XOMV. You must fill TCOMP, and TCOMK with the appropriate values before callling the function in order for it to work. 

PROFILE_GET 
Read an Entry in an INI File on the frontend 

PROFILE_SET 
Write an Entry in an INI File on the frontend 

READ_TEXT 
To load long text into SAP 

REGISTRY_GET 
Read an Entry from the Registry 

REGISTRY_SET 
Set an entry in the Registry 

RFC_ABAP_INSTALL_AND_RUN 
Runs an ABAP program that is stored in the table PROGRAM when the MODE = 'F'. Table WRITES contains the ouput of the program. Allows you to run a program without having the source code in the target system. 

RH_GET_ACTIVE_WF_PLVAR 
Return the active HR Plan 

RH_GET_DATE_DAYNAME 
return the day based on the date provied 

RH_START_EXCEL_WITH_DATA 
starts Excel with the contents of an internal table. This function finds Excel in the desktop registry. It also uses a local PC working directory to save the file (that's what the 'W' value for data path flag does). Very transparent to user! 

RH_STRUC_GET 
Returns all related org info 

RHP0_POPUP_F4_SEARK 
is a matchcode for any type of HR Planning object, including the possibility to fill the field that you want 


Example: 
Examples: search for any organizational structure 
F4 = 'X' 
PLVAR = '01' 
OTYPE = 'O ' 
search for any persons 
F4 = 'X' 
PLVAR = '01' 
OTYPE = 'P ' 
MULTI_SELECT = 'X' to allow multiple selection 
EASY = 'X' for user-dependent matchcode 
Unfortunately, the use of table BASE_OBJIDS is disabled, so you can't specify 
a root for the hierarchy you display
RKD_WORD_WRAP 
Convert a long string or phrase into several lines. 

RP_CALC_DATE_IN_INTERVAL 
Add/subtract years/months/days from a date 

RP_LAST_DAY_OF_MONTHS 
Determine last day of month 

RPY_DYNPRO_READ 
Read dynpro, including screen flow 

RPY_TRANSACTION_READ 
Given a transaction, return the program and screen or given a program and screen, return the transactions that use the program and screen. 

RS_COVERPAGE_SELECTIONS 
Returns an internal table that contains a formatted list of all the selection parameters entered for a report. Table is ready to print out. 

RS_REFRESH_FROM_SELECTOPTIONS 
Get the current contents of selection screen 

RS_SEND_MAIL_FOR_SPOOLLIST 
Send message from ABAP/4 program to SAPoffice. 

RS_VARIANT_CONTENTS 
Returns the contents of the specified variant in a table. 

RSPO_DOWNLOAD_SPOOLJOB 
Download the spool from a program to a file. Requires spool number. 

RSPO_RETURN_ABAP_SPOOLJOB 
Fetch printer spool according to the spool number informed. 

RZL_READ_DIR 
If the server name is left blank, it reads a directory from local presentation server, otherwise it reads the directory of the remote server 

RZL_READ_DIR_LOCAL 
Read a directory on the Application Server 

RZL_READ_FILE 
Read a file from the presentation server if no server name is given, or read file from remote server. Very useful to avoid authority checks that occur doing an OPEN DATASET. This function using a SAP C program to read the data. 

RZL_SLEEP 
Hang the current application from 1 to 5 seconds. 

RZL_SUBMIT 
Submit a remote report. 

RZL_WRITE_FILE_LOCAL 
Saves table to the presentation server (not PC). Does not use OPEN DATASET, so it does not suffer from authority checks! 

SAP_CONVERT_TO_XLS_FORMAT 
Convert data to Microsoft Excel format. 

SAPGUI_PROGRESS_INDICATOR 
Display a progress bar on the SAP GUI, and give the user some idea of what is happening 

SAVE_TEXT 
To load long text into SAP 

SCROLLING_IN_TABLE 
If you are coding a module pool and using a table control, you can use this function SCROLLING_IN_TABLE to handle any scrolling. (provided by Paul Kjaer) 

SD_DATETIME_DIFFERENCE 
Give the difference in Days and Time for 2 dates 

SO_NEW_DOCUMENT_ATT_SEND_API1 
Send a document as part of an email. The documentation is better than normal for this function, so please read it. 

SO_SPLIT_FILE_AND_PATH 
Split a fully pathed filename into a filename and a path. 

SO_SPOOL_READ 
Fetch printer spool according to the spool number informed. See also RSPO_RETURN_ABAP_SPOOLJOB 

SO_WIND_SPOOL_LIST 
Browse printer spool numbers according to user informed. 

SWD_HELP_F4_ORG_OBJECTS 
HR Matchcode tailored for organizational units. Includes a button so that you can browse the hierarchy too. 

SX_OBJECT_CONVERT_OTF_PDF 
Conversion From OTF to PDF (SAPScript conversion) 

SX_OBJECT_CONVERT_OTF_PRT 
Conversion From OTF to Printer Format (SAPScript conversion) 

SX_OBJECT_CONVERT_OTF_RAW 
Conversion From OTF to ASCII (SAPScript conversion) 

SXPG_CALL_SYSTEM 
you can check the user's authorization for the specified command and run the command. The command runs on the host system on which the function module is executed. The function module is RFC capable. It can therefore be run on the host system at which a user happens to be active or on another designated host system at which an R/3 server is active. 

SXPG_COMMAND_CHECK 
Check whether the user is authorized to execute the specified command on the target host system with the specified arguments. 

SXPG_COMMAND_DEFINITION_GET 
Read the definition of a single external OS command from the R/3 System's database. 

SXPG_COMMAND_EXECUTE 
Check a user's authorization to use a command, as in SXPG_COMMAND_CHECK. If the authorization check is successful, then execute the command on the target host system. 

SXPG_COMMAND_LIST_GET 
Select a list of external OS command definitions. 

TERMINAL_ID_GET 
Return the terminal id 

TH_DELETE_USER 
Logoff a user. Similar results to using SM04. 

TH_ENVIRONMENT 
Get the UNIX environment 

TH_POPUP 
Display a popup system message on a specific users screen. 

TH_REMOTE_TRANSACTION 
Run a transaction on a remote server. Optionally provide BDC data to be used in the transaction 

TH_USER_INFO 
Give information about the current user (sessions, workstation logged in from, etc) 

TH_USER_LIST 
Show which users are logged into an app server 

TMP_GUI_DIRECTORY_LIST_FILES 
Retrieve all of the files and subdirectories on the Presentation Server (PC) for a given directory. 

When a value other than * or *.* is used for the filter, you will not get any directories, unless they match your wildcard filter. For example, if you entered *.png, then only files and directories that end in png will be returned by the function. 

Example: 
data: lc_directory like bdschko16-target_dir value 'C:\TEMP\', 
lc_filter(20) type c default '.'. 
li_file_count type i, 
li_dir_count type i, 
ltab_dir_table like sdokpath occurs 0 with header line, 
ltab_file_file_table like sdokpath occurs 0 with header line.
call function 'TMP_GUI_DIRECTORY_LIST_FILES'
exporting
directory = lc_directory
filter = lc_filter importing
file_count = li_file_count
dir_count = li_dir_count
tables
file_table = ltab_file_table
dir_table = ltab_dir_table
exceptions
cntl_error = 1
others = 2. |
UNIT_CONVERSION_SIMPLE 
convert weights from one UOM to another. 

UPLOAD 
upload a file to the presentation server (PC) 

UPLOAD_FILES 
Will load one or more files from app or presentation server 

WEEK_GET_FIRST_DAY 
For a given week (YYYYMM format), this function returns the date of the Monday of that week. 

WRITE_LIST 
Useful for writing out the list contents that result from the function LIST_FROM_MEMORY. 

WS_DOWNLOAD 
Save Internal Table as File on the Presentation Server 

WS_EXCEL 
Start EXCEL on the PC 

WS_EXECUTE 
execute a program on a windows PC 

WS_FILE_DELETE 
Delete File at the Frontend 

WS_FILENAME_GET 
Call File Selector 

WS_MSG 
Create a dialog box in which you display an one line message 

WS_UPLOAD 
Load Files from the Presentation Server to Internal ABAP Tables 

WS_VOLUME_GET 
Get the label from a frontend device. 

WWW_LIST_TO_HTML 
After running a report, call this function to convert the list output to HTML.


ABAP_DOCU_DOWNLOAD 
Download ABAP documentation in HTML format. 

APPL_LOG_DELETE 
With this function module you delete logs in the database according to specified selection conditions 

APPL_LOG_DISPLAY 
With this function module you can analyze logs in the database. 

APPL_LOG_DISPLAY_INTERN 
With this function module you can analyze logs in local memory, e.g. when you have only collected log records at runtime and do not want to write to the database. 

APPL_LOG_INIT 
This function module checks whether the specified object or sub-object exists and deletes all existing associated data in local memory. 

APPL_LOG_READ_DB 
With this function module you read the log data in the database for an object or sub-object according to specified selection conditions. 

APPL_LOG_READ_INTERN 
With this function module you read all log data whose log class has at least the specified value, from local memory, for the specified object or sub-object. 

APPL_LOG_SET_OBJECT 
With this function module, you create a new object or sub-object for writing in local memory. With a flag you can control whether the APPL_LOG_WRITE_... messages are written in local memory or are output on the screen. 

APPL_LOG_WRITE_DB 
With this function module you write all data for the specified object or sub-object in local memory to the database. If the log for the object or sub-object in question is new, the log number is returned to the calling program. 

APPL_LOG_WRITE_HEADER 
With this function module, you write the log header data in local memory. 

APPL_LOG_WRITE_LOG_PARAMETERS 
With this function module, you write the name of the log parameters and the associated values for the specified object or sub-object in local memory. If this function module is called repeatedly for the same object or sub-object, the existing parameters are updated accordingly. If you do not specify an object or sub-object with the call, the most recently used is assumed. 

APPL_LOG_WRITE_MESSAGE_PARAMS 
With this function module you write a single message, with parameters, in local memory. Otherwise the function module works like APPL_LOG_WRITE_SINGLE_MESSAGE. 

APPL_LOG_WRITE_MESSAGES 
With this function module you write one or more messages, without parameters, in local memory. 

APPL_LOG_WRITE_SINGLE_MESSAGE 
With this function module you write a single message, without parameters, in local memory. If no header entry has yet been written for the object or sub-object, it is created. If you do not specify an object or sub-object with the call, the most recently used is assumed. 

ARFC_GET_TID 
will return the IP address of the terminal in hex. 

BAL_CNTL_CREATE 
Create Control for log display 

BAL_CNTL_FREE 
Release Control 

BAL_CNTL_REFRESH 
Put new data in log display 

BAL_DB_DELETE 
Delete logs from the database 

BAL_DB_DEQUEUE 
Unlock log 

BAL_DB_ENQUEUE 
Lock log 

BAL_DB_LOAD 
Load logs from the database 

BAL_DB_LOAD 
Load log(s) 

BAL_DB_SAVE 
Save logs in the database 

BAL_DB_SAVE 
Save log(s) 

BAL_DB_SAVE_PREPARE 
Prepare save 

BAL_DB_SEARCH 
Find logs in the database 

BAL_DSP_LOG_DISPLAY 
Display messages in memory 

BAL_DSP_LOG_DISPLAY 
Display Log 

BAL_DSP_LOG_PARAMETERS 
Either output extended long text or call a callback routine (based on the data in BAL_S_LOG-PARAMS) 

BAL_DSP_LOG_TECHNICAL_DATA 
Output all log header data 

BAL_DSP_MSG_LONGTEXT 
Display message long text 

BAL_DSP_MSG_PARAMETERS 
Either output extended long text or call a callback routine (based on the data in BAL_S_MSG-PARAMS) 

BAL_DSP_MSG_TECHNICAL_DATA 
Output technical data of a message such as work area, error number, etc. 

BAL_DSP_OUTPUT_FREE 
End output 

BAL_DSP_OUTPUT_INIT 
Initialize output 

BAL_DSP_OUTPUT_SET_DATA 
Set dataset to be displayed 

BAL_DSP_PROFILE_DETLEVEL_GET 
Message hierarchy in DETLEVEL 

BAL_DSP_PROFILE_NO_TREE_GET 
Display without tree (fullscreen) 

BAL_DSP_PROFILE_POPUP_GET 
Display without tree (popup) 

BAL_DSP_PROFILE_SINGLE_LOG_GET 
Standard profile (SLG1) for one log 

BAL_DSP_PROFILE_STANDARD_GET 
Standard profile (SLG1) for a lot of logs 

BAL_GLB_AUTHORIZATION_GET 
Assign authorization 

BAL_GLB_AUTHORIZATION_RESET 
Reset authorization 

BAL_GLB_CONFIG_GET 
Read configuration 

BAL_GLB_CONFIG_SET 
Set configuration 

BAL_GLB_MEMORY_EXPORT 
Put function group memory in ABAP-MEMORY 

BAL_GLB_MEMORY_IMPORT 
Get function group memory from ABAP-MEMORY 

BAL_GLB_MEMORY_REFRESH 
(Partially) reset global memory 

BAL_GLB_MEMORY_REFRESH 
(Partially) initialize memory 

BAL_GLB_MSG_CURRENT_HANDLE_GET 
Get current message handle 

BAL_GLB_MSG_DEFAULTS_GET 
Get message defaults 

BAL_GLB_SEARCH_LOG 
Find logs in memory 

BAL_GLB_SEARCH_MSG 
Find messages in memory 

BAL_LOG_CREATE 
Create log with header data 

BAL_LOG_CREATE 
Create log with header data 

BAL_LOG_DELETE 
Delete log (from database also at Save) 

BAL_LOG_EXIST 
Check existence of a log in memory 

BAL_LOG_HDR_CHANGE 
Change log header 

BAL_LOG_HDR_CHECK 
Check log header data for consistency 

BAL_LOG_HDR_READ 
Read log header and other data 

BAL_LOG_MSG_ADD 
Put message in log 

BAL_LOG_MSG_ADD 
Put message in log 

BAL_LOG_MSG_CHANGE 
Change message 

BAL_LOG_MSG_CHANGE 
Change message 

BAL_LOG_MSG_CHECK 
Check message data for consistency 

BAL_LOG_MSG_CUMULATE 
Add message cumulated 

BAL_LOG_MSG_DELETE 
Delete message 

BAL_LOG_MSG_DELETE 
Delete message 

BAL_LOG_MSG_EXIST 
Check existence of a message in memory 

BAL_LOG_MSG_READ 
Read message and other data 

BAL_LOG_MSG_REPLACE 
Replace last message 

BAL_LOG_REFRESH 
Delete log from memory 

BAL_LOG_REFRESH 
Delete log from memory 

BAL_MSG_DISPLAY_ABAP 
Output message as ABAP-MESSAGE 

BAL_OBJECT_SELECT 
Read Application Log objects table record 

BAL_OBJECT_SUBOBJECT 
Check whether object and subobject exist and the combination is allowed 

BAL_SUBOBJECT_SELECT 
Read subobject table record 

BP_EVENT_RAISE 
Trigger an event from ABAP/4 program 

BP_JOBLOG_READ 
Fetch job log executions 

CHANGEDOCUMENT_READ_HEADERS 
Get the change document header for a sales document, and put the results in an internal table. 


Example: 
CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS' 
EXPORTING 
objectclass = 'EINKBELEG' 
objectid = l_objectid 
username = space 
TABLES 
i_cdhdr = lt_cdhdr. 
LOOP AT lt_cdhdr WHERE udate IN s_aedat. 
CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS' 
EXPORTING 
changenumber = lt_cdhdr-changenr 
TABLES 
editpos = lt_editpos. 
LOOP AT lt_editpos WHERE fname = 'LOEKZ' 
AND f_new = 'L'. 
p_desc = text-r01. " Cancel Contract 
ENDLOOP. 
ENDLOOP.
CHANGEDOCUMENT_READ_POSITIONS 
Get the details of a change document, and store them in an internal table. This will tell you whether a field was changed, deleted, or updated. 


Example: 
CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS' 
EXPORTING 
objectclass = 'EINKBELEG' 
objectid = l_objectid 
username = space 
TABLES 
i_cdhdr = lt_cdhdr. 
LOOP AT lt_cdhdr WHERE udate IN s_aedat. 
CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS' 
EXPORTING 
changenumber = lt_cdhdr-changenr 
TABLES 
editpos = lt_editpos. 
LOOP AT lt_editpos WHERE fname = 'LOEKZ' 
AND f_new = 'L'. 
p_desc = text-r01. " Cancel Contract 
ENDLOOP. 
ENDLOOP.
CLAF_CLASSIFICATION_OF_OBJECTS 
Return all of the characteristics for a material 

CLOI_PUT_SIGN_IN_FRONT 
Move the negative sign from the left hand side of a number, to the right hand side of the number. Note that The result will be left justified (like all character fields), not right justifed as numbers normally are. 

CLPB_EXPORT 
Export a text table to the clipboard (on presentation server) 

CLPB_IMPORT 
Import a Text Table from the Clipboard (on presentation server) 

COMMIT_TEXT 
To load long text into SAP 

CONVERSION_EXIT_ALPHA_INPUT 
converts any number into a string fill with zeroes, with the number at the extreme right 


Example: 
input = 123 
output = 0000000000000...000000000000123
CONVERSION_EXIT_ALPHA_OUTPUT 
converts any number with zeroes right into a simple integer 


Example: 
input = 00000000000123 
output = 123
CONVERT_ABAPSPOOLJOB_2_PDF 
convert abap spool output to PDF 

CONVERT_OTF 
Convert SAP documents (SAPScript) to other types. 


Example: 
CALL FUNCTION "CONVERT_OTF" 
EXPORTING FORMAT = "PDF" 
IMPORTING BIN_FILESIZE = FILE_LEN 
TABLES OTF = OTFDATA 
LINES = PDFDATA 
EXCEPTIONS ERR_MAX_LINEWIDTH = 1 
ERR_FORMAT = 2 
ERR_CONV_NOT_POSSIBLE = 3 
OTHERS = 4.
CONVERT_OTFSPOOLJOB_2_PDF 
converts a OTF spool to PDF (i.e. Sapscript document) 

CONVERT_TO_FOREIGN_CURRENCY 
Convert local currency to foreign currency. 

CONVERT_TO_LOCAL_CURRENCY 
Convert from foreign currency to local currency 

DATE_CHECK_PLAUSIBILITY 
Check to see if a date is in a valid format for SAP. Works well when validating dates being passed in from other systems. 

DATE_COMPUTE_DAY 
Returns a number indicating what day of the week the date falls on. Monday is returned as a 1, Tuesday as 2, etc. 

DATE_GET_WEEK 
will return the week that a date is in. 

DATE_IN_FUTURE 
Calculate a date N days in the future. 

DAY_ATTRIBUTES_GET 
Return useful information about a day. Will tell you the day of the week as a word (Tuesday), the day of the week (2 would be Tuedsay), whether the day is a holiday, and more.(provided by Francois Henrotte) 

DOWNLOAD 
download a file to the presentation server (PC) 

DYNP_VALUES_READ 
Read the values from a dynpro. This function can be used to read the values from a report's selection screen too (Another example). 

DYNP_VALUES_UPDATE 
Similar to DYNP_VALUES_READ, this function will allow the updating of fields on a dynpro. Very useful when you want to change a field based on the value entered for another field. 

ENQUE_SLEEP 
Wait a specified period of time before continuing processing. 

ENQUEUE_ESFUNCTION 
Lock an abap program so that it cannot be executed. 


Example: 
Set the parameters as follows: 
RELID = 'ZZ' 
SRTF2 = 0 
SRTF = (your report name)
Please note that you should not use SY-REPID to pass your report name to the function. The value of SY-REPID will change as it is being passed to the function module, and will no longer hold the value of the calling report. 
EPS_GET_DIRECTORY_LISTING 
return a list of filenames from a local or network drive 

EPS_GET_FILE_ATTRIBUTES 
Pass in a filename and a path, and will return attributes for the file 

F4_DATE 
displays a calendar in a popup window and allows user to choose a date, or it can be displayed read only. 

F4_IF_FIELD_VALUE_REQUEST 
Use values from a DDIC table to provide a list of possible values. TABNAME and FIELDNAME are required fields, and when MULTIPLE_CHOICE is selected, more than one value can be returned. 

F4IF_INT_TABLE_VALUE_REQUEST 
F4 help that returns the values selected in an internal table. Very handy when programming your very own F4 help for a field. 


Example: 
data: 
begin of t_values occurs 2, 
value like kna1-begru, 
end of t_values, 
t_return like ddshretval occurs 0 with header line. 
t_values = 'PAR*'. 
append t_values. 
t_values = 'UGG'. 
append t_values. 
call function 'F4IF_INT_TABLE_VALUE_REQUEST' 
exporting 
retfield = 'BEGRU' 
value_org = 'S' 
tables 
value_tab = t_values 
return_tab = t_return 
exceptions 
parameter_error = 1 
no_values_found = 2 
others = 3. 
if sy-subrc = 0. 
read table t_return index 1. 
o_begru-low = t_return-fieldval. 
if o_begru-low = 'PAR*'. 
o_begru-option = 'CP'. 
else. 
o_begru-option = 'EQ'. 
endif. 
o_begru-sign = 'I'. 
append o_begru to s_begru. 
else. 
o_begru = i_begru. 
endif.
F4IF_SHLP_EXIT_EXAMPLE 
documents the different reasons to use a search help exit, and shows how it is done. 

F4IP_INT_TABLE_VALUE_REQUEST 
This function does not exist in 4.6 and above. Use F4IF_INT_TABLE_VALUE_REQUEST instead. 

FILENAME_GET 
popup to get a filename from a user, returns blank filename if user selects cancel 

FORMAT_MESSAGE 
Takes a message id and number, and puts it into a variable. Works better than WRITE_MESSAGE, since some messages use $ as a place holder, and WRITE_MESSAGE does not accommadate that, it only replaces the ampersands (&) in the message. 

FTP_COMMAND 
Execute a command on the FTP server 

FTP_CONNECT 
Open a connection (and log in) to an FTP server 

FTP_DISCONNECT 
Close the connection (and log off) the FTP server 

FU CSAP_MAT_BOM_READ 
You can use this function module to display simple material BOMs. You cannot display BOM groups (for example, all variants of a variant BOM). as in transaction CS03. Current restrictions: You cannot display long texts. You cannot display sub-items. You cannot display classification data of BOM items for batches. You can only display one alternative or variant. You cannot enter an alternative for module CSAP_MAT_BOM_READ, so you always see alternative 01. The following example came from a posting on the SAP-R3-L mailing list. 


Example: 
data: begin of tstk2 occurs 0. 
include structure stko_api02. 
data: end of tstk2. 
data: begin of tstp2 occurs 0. 
include structure stpo_api02. 
data: end of tstp2. 
data: begin of tdep_data occurs 0. 
include structure csdep_data. 
data: end of tdep_data. 
data: begin of tdep_descr occurs 0. 
include structure csdep_descr. 
data: end of tdep_descr. 
data: begin of tdep_source occurs 0. 
include structure csdep_source. 
data: end of tdep_source. 
data: begin of tdep_order occurs 0. 
include structure csdep_order. 
data: end of tdep_order. 
data: begin of tdep_doc occurs 0. 
include structure csdep_doc. 
data: end of tdep_doc. 
data: flg_warning like capiflag-flwarning. 
call function 'CSAP_MAT_BOM_READ' 
exporting 
material = 'MAT100' 
plant = '0001' 
bom_usage = '1' 
valid_from = '20.12.1996'
  • valid_to 
    importing 
    fl_warning = flg_warning 
    tables 
    t_stko = tstk2 
    t_stpo = tstp2 
    t_dep_data = tdep_data 
    t_dep_descr = tdep_descr 
    t_dep_source = tdep_source 
    t_dep_order = tdep_order 
    t_dep_doc = tdep_doc 
    exceptions 
    error = 1.
Function Group GRAP is now obsolete. 
SAP recommends using functions in function group SFES instead. Below is an overview of the changes. 

G_SET_GET_ALL_VALUES 
Fetch values from a set. 

GET_CURRENT_YEAR 
Get the current fiscal year. 


Example: 
CALL FUNCTION 'GET_CURRENT_YEAR' 
EXPORTING 
BUKRS = '1000' " Company Code 
DATE = SY-DATUM " Date to find fiscal year for 
IMPORTING 
CURRM = w_currm " Current Fiscal Month 
CURRY = w_curry " Current Fiscal Year 
PREVM = w_prevm " Previous Fiscal Month 
PREVY = w_prevy. " Previous Fiscal Year
GET_GLOBAL_SYMBOLS 
Returns a list of all tables, select options, texts, etc for a program. Even includes the text definitions for the selection screen 

GET_INCLUDETAB 
Returns a list of all INCLUDES in a program 

GET_JOB_RUNTIME_INFO 
Get the current job number from a program. Also returns other useful info about the current job. 

GUI_CREATE_DIRECTORY 
Create a directory on the presentation server 

GUI_DELETE_FILE 
Replaces WS_FILE_DELETE. Delete a file on the presentation server 

GUI_DOWNLOAD 
Replaces WS_DOWNLOAD. Download table from the app server to presentation server 

GUI_EXEC 
Replaces WS_EXECUTE. Start a File or Program Asynchronously with WinExec 

GUI_GET_DESKTOP_INFO 
Replaces WS_QUERY. Delivers Information About the Desktop (client) 

GUI_REMOVE_DIRECTORY 
Delete a directory on the presentation server 

GUI_RUN 
Start a File or Program Asynchronously with ShellExecute 

GUI_UPLOAD 
Replaces WS_UPLOAD. Upoad file from presentation server to the app server 

HELP_START 
Display help for a field. Useful for doing AT SELECTION SCREEN ON VALUE REQUEST for those fields that do not provide F4 help at the DDIC level. 

HELP_VALUES_GET_WITH_TABLE 
Show a list of possible values for F4 popup help on selection screens. This function module pops up a screen that is just like all the other F4 helps, so it looks like the rest of the SAP system. Very useful for providing dropdowns on fields that do not have them predefined. 


Example: 
tables: t001w. 
DATA: lc_werks LIKE t001w-werks, 
ltab_fields LIKE help_value OCCURS 0 with header line, 
BEGIN OF ltab_values OCCURS 0, 
feld(40) TYPE c, 
END OF ltab_values.
  • *- *-- Set up fields to retrieve data 
    ltab_fields-tabname = 'T001W'. 
    ltab_fields-fieldname = 'WERKS'. 
    ltab_fields-selectflag = 'X'. 
    APPEND ltab_fields. 
    ltab_fields-tabname = 'T001W'. 
    ltab_fields-fieldname = 'NAME1'. 
    ltab_fields-selectflag = space. 
    APPEND ltab_fields.
    • *-- Fill values 
      select * from t001w. 
      ltab_values-feld = t001w-werks. 
      append ltab_values. 
      ltab_values-feld = t001w-name1. 
      append ltab_values. 
      endselect. 
      CALL FUNCTION 'HELP_VALUES_GET_WITH_TABLE' 
      EXPORTING 
      fieldname = 'WERKS' 
      tabname = 'T001W' 
      title_in_values_list = 'Select a value' 
      IMPORTING 
      select_value = lc_werks 
      TABLES 
      fields = ltab_fields 
      valuetab = ltab_values 
      EXCEPTIONS 
      field_not_in_ddic = 01 
      more_then_one_selectfield = 02 
      no_selectfield = 03.
HOLIDAY_CHECK_AND_GET_INFO 
Useful for determining whether or not a date is a holiday. Give the function a date, and a holiday calendar, and you can determine if the date is a holiday by checking the parameter HOLIDAY_FOUND. 


Example: 
data: ld_date like scal-datum default sy-datum, 
lc_holiday_cal_id like scal-hcalid default 'CA', 
ltab_holiday_attributes like thol occurs 0 with header line, 
lc_holiday_found like scal-indicator. 
CALL FUNCTION 'HOLIDAY_CHECK_AND_GET_INFO' 
EXPORTING 
date = ld_date 
holiday_calendar_id = lc_holiday_cal_id 
WITH_HOLIDAY_ATTRIBUTES = 'X' 
IMPORTING 
HOLIDAY_FOUND = lc_holiday_found 
tables 
holiday_attributes = ltab_holiday_attributes 
EXCEPTIONS 
CALENDAR_BUFFER_NOT_LOADABLE = 1 
DATE_AFTER_RANGE = 2 
DATE_BEFORE_RANGE = 3 
DATE_INVALID = 4 
HOLIDAY_CALENDAR_ID_MISSING = 5 
HOLIDAY_CALENDAR_NOT_FOUND = 6 
OTHERS = 7. 
if sy-subrc = 0 and 
lc_holiday_found = 'X'. 
write: / ld_date, 'is a holiday'. 
else. 
write: / ld_date, 'is not a holiday, or there was an error calling the function'. 
endif.
HOLIDAY_GET 
Provides a table of all the holidays based upon a Factory Calendar &/ Holiday Calendar. 

HR_DISPLAY_BASIC_LIST 
is an HR function, but can be used for any data. You pass it data, and column headers, and it provides a table control with the ability to manipulate the data, and send it to Word or Excel. Also see the additional documentation here. 

HR_GET_LEAVE_DATA 
Get all leave information (includes leave entitlement, used holidays/paid out holidays) 

HR_IE_NUM_PRSI_WEEKS 
Return the number of weeks between two dates. 

HR_PAYROLL_PERIODS_GET 
Get the payroll period for a particular date. (provided by Francois Henrotte) 


Example: 
DATA: IT_T549Q TYPE T549Q OCCURS 0 WITH HEADER LINE, 
IT_ZL TYPE PC2BF OCCURS 0 WITH HEADER LINE. 
W_BEGDA = '20010101'. 
W_PERNR = '00000001'. 
CALL FUNCTION 'HR_PAYROLL_PERIODS_GET' 
EXPORTING 
get_begda = w_begda 
TABLES 
get_periods = it_t549q 
EXCEPTIONS 
no_period_found = 1 
no_valid_permo = 2. 
CHECK sy-subrc = 0. 
CALL FUNCTION 'HR_TIME_RESULTS_GET' 
EXPORTING 
get_pernr = w_pernr 
get_pabrj = it_t549q-pabrj 
get_pabrp = it_t549q-pabrp 
TABLES 
get_zl = it_zl 
EXCEPTIONS 
no_period_specified = 1 
wrong_cluster_version = 2 
no_read_authority = 3 
cluster_archived = 4 
technical_error = 5. 
NOTE: it_zl-iftyp = 'A' absence 
it_zl-iftyp = 'S' at work
HR_TIME_RESULTS_GET 
Get the time results for a payroll period. (provided by Francois Henrotte) 


Example: 
DATA: IT_T549Q TYPE T549Q OCCURS 0 WITH HEADER LINE, 
IT_ZL TYPE PC2BF OCCURS 0 WITH HEADER LINE. 
W_BEGDA = '20010101'. 
W_PERNR = '00000001'. 
CALL FUNCTION 'HR_PAYROLL_PERIODS_GET' 
EXPORTING 
get_begda = w_begda 
TABLES 
get_periods = it_t549q 
EXCEPTIONS 
no_period_found = 1 
no_valid_permo = 2. 
CHECK sy-subrc = 0. 
CALL FUNCTION 'HR_TIME_RESULTS_GET' 
EXPORTING 
get_pernr = w_pernr 
get_pabrj = it_t549q-pabrj 
get_pabrp = it_t549q-pabrp 
TABLES 
get_zl = it_zl 
EXCEPTIONS 
no_period_specified = 1 
wrong_cluster_version = 2 
no_read_authority = 3 
cluster_archived = 4 
technical_error = 5. 
NOTE: it_zl-iftyp = 'A' absence 
it_zl-iftyp = 'S' at work
INIT_TEXT 
To load long text into SAP 

K_WERKS_OF_BUKRS_FIND 
Return a list of all plants for a given company code. 

LIST_FROM_MEMORY 
Retrieves the output of a report from memory when the report was executed using SUBMIT... EXPORTING LIST TO MEMORY. See also WRITE_LIST. 

LIST_TO_ASCII 
convert an ABAP report (displayed on screen) from OTF to ASCII format 

MBEW_EXTEND 
Get the stock position for the previous month. This displays the same info that you see in MM03. 

MONTH_NAMES_GET 
It returns all the month and names in repective language. 

MONTH_PLUS_DETERMINE 
Add or subtract months from a date. To subtract a month, enter a negative value for the 'months' parameter. 


Example: 
data: new_date type d. 
CALL FUNCTION 'MONTH_PLUS_DETERMINE' 
EXPORTING 
months = -5 " Negative to subtract from old date, positive to add 
olddate = sy-datum 
IMPORTING 
NEWDATE = new_date. 
write: / new_date.
MS_EXCEL_OLE_STANDARD_OLE 
will build a file, and automatically start Excel 

OTF_CONVERT 
wraps several other function modules. Will convert OTF to ASCII or PDF 

POPUP_TO_CONFIRM_LOSS_OF_DATA 
Create a dialog box in which you make a question whether the user wishes to perform a processing step with loss of data. 

POPUP_TO_CONFIRM_STEP 
Create a dialog box in which you make a question whether the user wishes to perform the step. 

POPUP_TO_CONFIRM_WITH_MESSAGE 
Create a dialog box in which you inform the user about a specific decision point during an action. 

POPUP_TO_CONFIRM_WITH_VALUE 
Create a dialog box in which you make a question whether the user wishes to perform a processing step with a particular object. 

POPUP_TO_DECIDE 
Provide user with several choices as radio buttons 

POPUP_TO_DECIDE_WITH_MESSAGE 
Create a dialog box in which you inform the user about a specific decision point via a diagnosis text. 

POPUP_TO_DISPLAY_TEXT 
Create a dialog box in which you display a two line message 

POPUP_TO_SELECT_MONTH 
Popup to choose a month 

POPUP_WITH_TABLE_DISPLAY 
Provide a display of a table for user to select one, with the value of the table line returned when selected. 

PRICING 
Return pricing conditions in an internal table. Use structure TCOMK for parameter COMM_HEAD_1, and structure TCOMP for parameter COMM_ITEM_1, and set CALCULATION_TYPE to B. The pricing conditions will be returned in XOMV. You must fill TCOMP, and TCOMK with the appropriate values before callling the function in order for it to work. 

PROFILE_GET 
Read an Entry in an INI File on the frontend 

PROFILE_SET 
Write an Entry in an INI File on the frontend 

READ_TEXT 
To load long text into SAP 

REGISTRY_GET 
Read an Entry from the Registry 

REGISTRY_SET 
Set an entry in the Registry 

RFC_ABAP_INSTALL_AND_RUN 
Runs an ABAP program that is stored in the table PROGRAM when the MODE = 'F'. Table WRITES contains the ouput of the program. Allows you to run a program without having the source code in the target system. 

RH_GET_ACTIVE_WF_PLVAR 
Return the active HR Plan 

RH_GET_DATE_DAYNAME 
return the day based on the date provied 

RH_START_EXCEL_WITH_DATA 
starts Excel with the contents of an internal table. This function finds Excel in the desktop registry. It also uses a local PC working directory to save the file (that's what the 'W' value for data path flag does). Very transparent to user! 

RH_STRUC_GET 
Returns all related org info 

RHP0_POPUP_F4_SEARK 
is a matchcode for any type of HR Planning object, including the possibility to fill the field that you want 


Example: 
Examples: search for any organizational structure 
F4 = 'X' 
PLVAR = '01' 
OTYPE = 'O ' 
search for any persons 
F4 = 'X' 
PLVAR = '01' 
OTYPE = 'P ' 
MULTI_SELECT = 'X' to allow multiple selection 
EASY = 'X' for user-dependent matchcode 
Unfortunately, the use of table BASE_OBJIDS is disabled, so you can't specify 
a root for the hierarchy you display
RKD_WORD_WRAP 
Convert a long string or phrase into several lines. 

RP_CALC_DATE_IN_INTERVAL 
Add/subtract years/months/days from a date 

RP_LAST_DAY_OF_MONTHS 
Determine last day of month 

RPY_DYNPRO_READ 
Read dynpro, including screen flow 

RPY_TRANSACTION_READ 
Given a transaction, return the program and screen or given a program and screen, return the transactions that use the program and screen. 

RS_COVERPAGE_SELECTIONS 
Returns an internal table that contains a formatted list of all the selection parameters entered for a report. Table is ready to print out. 

RS_REFRESH_FROM_SELECTOPTIONS 
Get the current contents of selection screen 

RS_SEND_MAIL_FOR_SPOOLLIST 
Send message from ABAP/4 program to SAPoffice. 

RS_VARIANT_CONTENTS 
Returns the contents of the specified variant in a table. 

RSPO_DOWNLOAD_SPOOLJOB 
Download the spool from a program to a file. Requires spool number. 

RSPO_RETURN_ABAP_SPOOLJOB 
Fetch printer spool according to the spool number informed. 

RZL_READ_DIR 
If the server name is left blank, it reads a directory from local presentation server, otherwise it reads the directory of the remote server 

RZL_READ_DIR_LOCAL 
Read a directory on the Application Server 

RZL_READ_FILE 
Read a file from the presentation server if no server name is given, or read file from remote server. Very useful to avoid authority checks that occur doing an OPEN DATASET. This function using a SAP C program to read the data. 

RZL_SLEEP 
Hang the current application from 1 to 5 seconds. 

RZL_SUBMIT 
Submit a remote report. 

RZL_WRITE_FILE_LOCAL 
Saves table to the presentation server (not PC). Does not use OPEN DATASET, so it does not suffer from authority checks! 

SAP_CONVERT_TO_XLS_FORMAT 
Convert data to Microsoft Excel format. 

SAPGUI_PROGRESS_INDICATOR 
Display a progress bar on the SAP GUI, and give the user some idea of what is happening 

SAVE_TEXT 
To load long text into SAP 

SCROLLING_IN_TABLE 
If you are coding a module pool and using a table control, you can use this function SCROLLING_IN_TABLE to handle any scrolling. (provided by Paul Kjaer) 

SD_DATETIME_DIFFERENCE 
Give the difference in Days and Time for 2 dates 

SO_NEW_DOCUMENT_ATT_SEND_API1 
Send a document as part of an email. The documentation is better than normal for this function, so please read it. 

SO_SPLIT_FILE_AND_PATH 
Split a fully pathed filename into a filename and a path. 

SO_SPOOL_READ 
Fetch printer spool according to the spool number informed. See also RSPO_RETURN_ABAP_SPOOLJOB 

SO_WIND_SPOOL_LIST 
Browse printer spool numbers according to user informed. 

SWD_HELP_F4_ORG_OBJECTS 
HR Matchcode tailored for organizational units. Includes a button so that you can browse the hierarchy too. 

SX_OBJECT_CONVERT_OTF_PDF 
Conversion From OTF to PDF (SAPScript conversion) 

SX_OBJECT_CONVERT_OTF_PRT 
Conversion From OTF to Printer Format (SAPScript conversion) 

SX_OBJECT_CONVERT_OTF_RAW 
Conversion From OTF to ASCII (SAPScript conversion) 

SXPG_CALL_SYSTEM 
you can check the user's authorization for the specified command and run the command. The command runs on the host system on which the function module is executed. The function module is RFC capable. It can therefore be run on the host system at which a user happens to be active or on another designated host system at which an R/3 server is active. 

SXPG_COMMAND_CHECK 
Check whether the user is authorized to execute the specified command on the target host system with the specified arguments. 

SXPG_COMMAND_DEFINITION_GET 
Read the definition of a single external OS command from the R/3 System's database. 

SXPG_COMMAND_EXECUTE 
Check a user's authorization to use a command, as in SXPG_COMMAND_CHECK. If the authorization check is successful, then execute the command on the target host system. 

SXPG_COMMAND_LIST_GET 
Select a list of external OS command definitions. 

TERMINAL_ID_GET 
Return the terminal id 

TH_DELETE_USER 
Logoff a user. Similar results to using SM04. 

TH_ENVIRONMENT 
Get the UNIX environment 

TH_POPUP 
Display a popup system message on a specific users screen. 

TH_REMOTE_TRANSACTION 
Run a transaction on a remote server. Optionally provide BDC data to be used in the transaction 

TH_USER_INFO 
Give information about the current user (sessions, workstation logged in from, etc) 

TH_USER_LIST 
Show which users are logged into an app server 

TMP_GUI_DIRECTORY_LIST_FILES 
Retrieve all of the files and subdirectories on the Presentation Server (PC) for a given directory. 

When a value other than * or *.* is used for the filter, you will not get any directories, unless they match your wildcard filter. For example, if you entered *.png, then only files and directories that end in png will be returned by the function. 

Example: 
data: lc_directory like bdschko16-target_dir value 'C:\TEMP\', 
lc_filter(20) type c default '.'. 
li_file_count type i, 
li_dir_count type i, 
ltab_dir_table like sdokpath occurs 0 with header line, 
ltab_file_file_table like sdokpath occurs 0 with header line.
call function 'TMP_GUI_DIRECTORY_LIST_FILES'
exporting
directory = lc_directory
filter = lc_filter importing
file_count = li_file_count
dir_count = li_dir_count
tables
file_table = ltab_file_table
dir_table = ltab_dir_table
exceptions
cntl_error = 1
others = 2. |
UNIT_CONVERSION_SIMPLE 
convert weights from one UOM to another. 

UPLOAD 
upload a file to the presentation server (PC) 

UPLOAD_FILES 
Will load one or more files from app or presentation server 

WEEK_GET_FIRST_DAY 
For a given week (YYYYMM format), this function returns the date of the Monday of that week. 

WRITE_LIST 
Useful for writing out the list contents that result from the function LIST_FROM_MEMORY. 

WS_DOWNLOAD 
Save Internal Table as File on the Presentation Server 

WS_EXCEL 
Start EXCEL on the PC 

WS_EXECUTE 
execute a program on a windows PC 

WS_FILE_DELETE 
Delete File at the Frontend 

WS_FILENAME_GET 
Call File Selector 

WS_MSG 
Create a dialog box in which you display an one line message 

WS_UPLOAD 
Load Files from the Presentation Server to Internal ABAP Tables 

WS_VOLUME_GET 
Get the label from a frontend device. 

WWW_LIST_TO_HTML 
After running a report, call this function to convert the list output to HTML.




 
This blog is not affiliated to SAP AG |SAP is trademark of SAP AG |The information collected from various sources use information with your own risk.