Archive for the ‘ SAP ’ Category

list of function modules (se37)

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

 

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.

List of ABAP-transaction codes related to SAP security

S. No. Transaction Code Purpose
1 SU01 To create and maintain the users.
2 SU01D To Display Users
3 SU10 For mass maintenance.
4 SU02 For Manual creation of profiles.
5 SU03 For Manual creation of authorization.
6 SU3 For setting Address and default parameters.
7 PFCG For maintaining role using profile generator.
8 PFUD For Comparing User master in Dialog.
9 SUPC For generation of Mass profile.
10 SU24 For Maintaining Check Indicators and for Maintaining templates.
11 SU25 For initial Customer table fill.
12 SU20 Lists down the authorization fields.
13 SU21 Lists the Object classes and authorization objects.
14 SM01 For locking the transaction from execution.
15 SM19 Security audit – configuration.
16 SM20 Security audit – reporting.
17 SM30 For creation of table authorization groups and for maintaining assignments to tables
18 SCCL For Local Client Copy on same system between different clients.
19 SCC9 For data exchange over the network and remote client copy between clients in different systems.
20 SCC8 Data exhange happens at operating system level, it supports Client transport.
21 STMS Transport Management System
22 RZ10 Profile configuration
23 RZ11 Maintain profile parameters
24 SU53 To display last authority check that failed
25 SU56 Display User buffer
26 SE84 Information System for SAP R/3 Authorizations
27 SECR Audit Information System
28 SE43 Maintain and display Area Menus
29 ST01 System Trace
30 SUGR Maintain User groups
31 SUIM User Information System
32 SU05 Maintain Internet Users
33 SMLG Maintain Logon Group
34 ST02 Setups/Tune Buffers
35 SM02 System Messages
36 SM04 User Overview
37 SM12 Display and Delete Locks
38 SM13 Display Update Records
39 SM21 System Log
40 SM50 Work Process Overview
41 SM51 List of SAP Servers
42 SM59 Display/Maintain RFC Destinations
43 ST11 Display Developer Traces and error log files
44 ST22 ABAP/4 Runtime Error Analysis
45 SM35 Batch Input Monitoring
46 ST05 Performance trace

 

List of slis_fieldcat_alv

row_pos        like sy-curow, ” output in row
col_pos        like sy-cucol, ” position of the column
fieldname      type slis_fieldname,
tabname        type slis_tabname,
currency(5)    type c,
cfieldname     type slis_fieldname, ” field with currency unit
ctabname       type slis_tabname,   ” and table
ifieldname     type slis_fieldname, ” initial column
quantity(3)    type c,
qfieldname     type slis_fieldname, ” field with quantity unit
qtabname       type slis_tabname,   ” and table
round          type i,        ” round in write statement
exponent(3)       type c,     ” exponent for floats
key(1)         type c,        ” column with key-color
icon(1)        type c,        ” as icon
symbol(1)      type c,        ” as symbol
checkbox(1)    type c,        ” as checkbox
just(1)        type c,        ” (R)ight (L)eft (C)ent.
lzero(1)       type c,        ” leading zero
no_sign(1)     type c,        ” write no-sign
no_zero(1)     type c,        ” write no-zero
no_convext(1)  type c,
edit_mask      type slis_edit_mask,                ”
emphasize(4)   type c,        ” emphasize
fix_column(1)   type c,       ” Spalte fixieren
do_sum(1)      type c,        ” sum up
no_out(1)      type c,        ” (O)blig.(X)no out
tech(1)        type c,        ” technical field
outputlen      like dd03p-outputlen,
offset         type dd03p-outputlen,     ” offset
seltext_l      like dd03p-scrtext_l, ” long key word
seltext_m      like dd03p-scrtext_m, ” middle key word
seltext_s      like dd03p-scrtext_s, ” short key word
ddictxt(1)     type c,        ” (S)hort (M)iddle (L)ong
rollname       like dd03p-rollname,
datatype       like dd03p-datatype,
inttype        like dd03p-inttype,
intlen         like dd03p-intlen,
lowercase      like dd03p-lowercase,

ABAP List Viewer

ABAP List Viewer

This is an escort for creating ABAP List Viewer (ALV) report. In creating ALV, first you must do are :

  1. Add line“type-pools : slis” in your program.
  2. Create functional ALV procedures which is :
    1. Category Fields

This functions for registry which fields will be display on the report.

  1. Layout

Configuring layout properties of ALV reports.

  1. Color

Configuring color layout in ALV report.

  1. Event

before call procedure Comment, call this function first.

  1. Sort and Subtotal

Configuring ALV Sort and Subtotal Function

  1. Group
  1. Comment

Configuring header and Footer ALV report.

  1. Filter

Configuring ALV filter.

  1. Print

Configuring for ALV Report Printing

  1. Call function “REUSE_ALV_LIST_DISPLAY” in background mode (outside of Start-Of-Selection), this function for execute the ALV report program.  Fill the parameter :
    1. I_CALLBACK_PROGRAM with Program ID (Sy-REPID)
    2. I_STRUCTURE_NAME with internal table name or structure table name
    3. IS_LAYOUT with data which has been set in procedure Layout
    4. IT_FIELDCAT with table which has been set in procedure Category Fields.
    5. IT_FILTER with Filter Data
    6. IT_SPECIAL_GROUPS with Groups data
    7. IT_EVENTS with Event data
    8. IT_SORT with Sort Data
    9. IS_PRINT with Print Data
    10. Tables T_OUTTAB with your

C a t e g o r y  F i e l d s

Category Fields are fields which will be display on ALV Report. You must create variable with type slis_t_fieldcat_alv. Then make procedure which set property of that variable.

Here is the structure of Structure slis_t_fieldcat_alv.

TYPES: BEGIN OF SLIS_FIELDCAT_MAIN,

ROW_POS        LIKE SY-CUROW, ” output in row

COL_POS        LIKE SY-CUCOL, ” position of the column

FIELDNAME      TYPE SLIS_FIELDNAME,

TABNAME        TYPE SLIS_TABNAME,

REF_FIELDNAME  LIKE DD03P-FIELDNAME,

REF_TABNAME    LIKE DD03P-TABNAME,

CFIELDNAME     TYPE SLIS_FIELDNAME, ” field with currency unit

CTABNAME       TYPE SLIS_TABNAME,   ” and table

QFIELDNAME     TYPE SLIS_FIELDNAME, ” field with quantity unit

QTABNAME       TYPE SLIS_TABNAME,   ” and table

ROUNDFIELDNAME TYPE SLIS_FIELDNAME,

ROUNDTABNAME   TYPE SLIS_TABNAME,

ROUND          TYPE I,        ” round in write statement

DECIMALSFIELDNAME TYPE SLIS_FIELDNAME,

DECIMALSTABNAME   TYPE SLIS_TABNAME,

DECIMALS_OUT(6)   TYPE C,   ” decimals in write statement

EXPONENT(3)       TYPE C,   ” exponent for floats

KEY(1)         TYPE C,        ” column with key-color

ICON(1)        TYPE C,        ” as icon

SYMBOL(1)      TYPE C,        ” as symbol

CHECKBOX(1)    TYPE C,        ” as checkbox

JUST(1)        TYPE C,        ” (R)ight (L)eft (C)ent.

LZERO(1)       TYPE C,        ” leading zero

NO_SIGN(1)     TYPE C,        ” write no-sign

NO_ZERO(1)     TYPE C,        ” write no-zero

EDIT_MASK      TYPE SLIS_EDIT_MASK, ”

EMPHASIZE(4)   TYPE C,        ” emphasize

FIX_COLUMN(1)   TYPE C,       ” Spalte fixieren

DO_SUM(1)      TYPE C,        ” sum up

NO_OUT(1)      TYPE C,        ” (O)blig.(X)no out

TECH(1)        TYPE C,        ” technical field

OUTPUTLEN      LIKE DD03P-OUTPUTLEN,

SELTEXT_L      LIKE DD03P-SCRTEXT_L, ” long key word

SELTEXT_M      LIKE DD03P-SCRTEXT_M, ” middle key word

SELTEXT_S      LIKE DD03P-SCRTEXT_S, ” short key word

REPTEXT_DDIC   LIKE DD03P-REPTEXT,   ” heading (ddic)

DDICTXT(1)     TYPE C,        ” (S)hort (M)iddle (L)ong

ROLLNAME       LIKE DD03P-ROLLNAME,

*        domname        like dd03p-domname,     “Domname für Checkbox

DATATYPE       LIKE DD03P-DATATYPE,

DDIC_OUTPUTLEN LIKE DD03P-OUTPUTLEN,

INTLEN         LIKE DD03P-INTLEN,

END OF SLIS_FIELDCAT_MAIN.

 

TYPES: BEGIN OF SLIS_FIELDCAT_ALV_SPEC,

KEY_SEL(1)     TYPE C,        ” field not obligatory

NO_SUM(1)      TYPE C,        ” do not sum up

SP_GROUP(1)    TYPE C,        ” group specification

REPREP(1)      TYPE C,        ” selection for rep/rep

INPUT(1)       TYPE C,        ” input

HOTSPOT(1)     TYPE C,        ” hotspot

END OF SLIS_FIELDCAT_ALV_SPEC.

 

TYPES: BEGIN OF SLIS_FIELDCAT_ALV.

INCLUDE TYPE SLIS_FIELDCAT_MAIN.

INCLUDE TYPE SLIS_FIELDCAT_ALV_SPEC.

TYPES: END OF SLIS_FIELDCAT_ALV.

TYPES: SLIS_T_FIELDCAT_ALV TYPE SLIS_FIELDCAT_ALV OCCURS 1.

After you set the properties, it will be use in executing ALV reports.

Take a look at this example :

 

FORM FIELDCAT_INIT.

DATA: FIELDCAT_IN TYPE SLIS_FIELDCAT_ALV.

CLEAR FIELDCAT_IN.

*– add matnr –

CLEAR FIELDCAT_IN.

FIELDCAT_IN-FIELDNAME = ‘MATNR’.

FIELDCAT_IN-REF_FIELDNAME = ‘MATNR’.

FIELDCAT_IN-REF_TABNAME = ‘MARA’.

FIELDCAT_IN-OUTPUTLEN = 20.

APPEND FIELDCAT_IN TO GT_FIELDCAT.

*– add matkl –

CLEAR FIELDCAT_IN.

FIELDCAT_IN-FIELDNAME = ‘MATKL’.

FIELDCAT_IN-REF_FIELDNAME = ‘MATKL’.

FIELDCAT_IN-REF_TABNAME = ‘MARA’.

FIELDCAT_IN-OUTPUTLEN = 20.

FIELDCAT_IN-HOTSPOT = ‘X’.

FIELDCAT_IN-SELTEXT_L = ‘Material Type (MATKL)’.

FIELDCAT_IN-EMPHASIZE = ‘C700′.

APPEND FIELDCAT_IN TO GT_FIELDCAT.

*– add mtart –

CLEAR FIELDCAT_IN.

FIELDCAT_IN-FIELDNAME = ‘MTART’.

FIELDCAT_IN-REF_FIELDNAME = ‘MTART’.

FIELDCAT_IN-REF_TABNAME = ‘MARA’.

FIELDCAT_IN-NO_OUT = ”.

FIELDCAT_IN-OUTPUTLEN = 20.

APPEND FIELDCAT_IN TO GT_FIELDCAT.

ENDFORM.

 

Of course we can see that if you want to show more than one field Use it like you use internal table.

L a y o u t

This properties gives you, you can configure what you want about the layout of ALV report. Here is the structure of Layout properties plus brief explanation.

 

TYPES: BEGIN OF SLIS_LAYOUT_MAIN,

DUMMY,

END OF SLIS_LAYOUT_MAIN.

 

TYPES: BEGIN OF SLIS_LAYOUT_ALV_SPEC,

*        Display options

COLWIDTH_OPTIMIZE(1) TYPE C,

NO_COLHEAD(1) TYPE C,         ” no headings

NO_HOTSPOT(1) TYPE C,         ” headings not as hotspot

ZEBRA(1) TYPE C,              ” striped pattern

NO_VLINE(1) TYPE C,           ” columns separated by space

NO_MIN_LINESIZE(1) TYPE C,    ” line size = width of the list

MIN_LINESIZE LIKE SY-LINSZ,   ” if initial min_linesize = 80

MAX_LINESIZE LIKE SY-LINSZ,   ” Default 250

WINDOW_TITLEBAR LIKE RSMPE-TITTEXT,

*      Exceptions

LIGHTS_FIELDNAME TYPE SLIS_FIELDNAME,” fieldname for exception

LIGHTS_TABNAME TYPE SLIS_TABNAME, ” fieldname for exception

LIGHTS_ROLLNAME LIKE DFIES-ROLLNAME,” rollname f. exceptiondocu

LIGHTS_CONDENSE(1) TYPE C,    ” fieldname for exception

*        Sums

NO_SUMCHOICE(1) TYPE C,       ” no choice for summing up

NO_TOTALLINE(1) TYPE C,       ” no total line

NO_SUBCHOICE(1) TYPE C,       ” no choice for subtotals

NO_SUBTOTALS(1) TYPE C,       ” no subtotals possible

NUMC_SUM(1)     TYPE C,       ” totals for NUMC-Fields possib.

TOTALS_ONLY(1) TYPE C,        ” show only totals

TOTALS_TEXT(60) TYPE C,       ” text for 1st col. in total line

SUBTOTALS_TEXT(60) TYPE C,    ” text for 1st col. in subtotals

*      Interaction

BOX_FIELDNAME TYPE SLIS_FIELDNAME, ” fieldname for checkbox

BOX_TABNAME TYPE SLIS_TABNAME,” tabname for checkbox

EXPAND_FIELDNAME TYPE SLIS_FIELDNAME, ” fieldname flag ‘expand’

HOTSPOT_FIELDNAME TYPE SLIS_FIELDNAME, ” fieldname flag hotspot

NO_INPUT(1) TYPE C,           ” only display fields

F2CODE LIKE SY-UCOMM,       ”

CONFIRMATION_PROMPT,          ” confirm. prompt when leaving

KEY_HOTSPOT(1) TYPE C,        ” keys as hotspot ” K_KEYHOT

REPREP(1) TYPE C,             ” report report interface active

GROUP_BUTTONS(1) TYPE C,      ” buttons for COL1 – COL5

NO_KEYFIX(1) TYPE C,          ” do not fix keycolumns

GET_SELINFOS(1) TYPE C,       ” read selection screen

GROUP_CHANGE_EDIT(1) TYPE C,  ” Settings by user for new group

NO_SCROLLING(1) TYPE C,        ” no scrolling

*        Detailed screen

DETAIL_POPUP(1) TYPE C,       ” show detail in popup

DETAIL_INITIAL_LINES(1) TYPE C, ” show also initial lines

DETAIL_TITLEBAR(30) TYPE C,   ” Titlebar for detail

*        Display variants

HEADER_TEXT(20) TYPE C,       ” Text for header button

ITEM_TEXT(20) TYPE C,         ” Text for item button

DEFAULT_ITEM(1) TYPE C,       ” Items as default

*       colour

INFO_FIELDNAME TYPE SLIS_FIELDNAME, ” infofield for listoutput

COLTAB_FIELDNAME TYPE SLIS_FIELDNAME, ” colors

*        others

LIST_APPEND(1) TYPE C,        ” no call screen

END OF SLIS_LAYOUT_ALV_SPEC.

 

TYPES: BEGIN OF SLIS_LAYOUT_ALV.

INCLUDE TYPE SLIS_LAYOUT_MAIN.

INCLUDE TYPE SLIS_LAYOUT_ALV_SPEC.

TYPES: END OF SLIS_LAYOUT_ALV.

 

C o l o r

Below is structure for Color in ALV Report.

 

TYPES: BEGIN OF SLIS_COLOR,

COL TYPE I,

INT TYPE I,

INV TYPE I,

END OF SLIS_COLOR.

 

TYPES: BEGIN OF SLIS_COLTYPES,

HEACOLFIR      TYPE SLIS_COLOR, ” heading_cols_first

HEACOLNEX      TYPE SLIS_COLOR, ” heading_cols_nex

HEAROWFIR      TYPE SLIS_COLOR, ” heading_rows_first

HEAROWNEX      TYPE SLIS_COLOR, ” heading_rows_next

LISBODFIR      TYPE SLIS_COLOR, ” list_body_first

LISBODNEX      TYPE SLIS_COLOR, ” list_body_next

LISBOD         TYPE SLIS_COLOR, ” list_body

HIGCOLKEY      TYPE SLIS_COLOR, ” highlight_col_key

HIGCOL         TYPE SLIS_COLOR, ” highlight_col

HIGROW         TYPE SLIS_COLOR, ” highlight_row

HIGSUM         TYPE SLIS_COLOR, ” highlight_sum

HIGSUMHIG      TYPE SLIS_COLOR, ” highlight_sum_high

HIGSUMLOW      TYPE SLIS_COLOR, ” highlight_sum_low

HIGINS         TYPE SLIS_COLOR, ” highlight_inserted

HIGPOS         TYPE SLIS_COLOR, ” highlight_positive

HIGNEG         TYPE SLIS_COLOR, ” highlight_negative

HIG            TYPE SLIS_COLOR, ” highlight

HEAHIE         TYPE SLIS_COLOR, ” heading_hier

LISBODHIE      TYPE SLIS_COLOR, ” list_body_hierinfo

END OF SLIS_COLTYPES.

You can give touch of color for your report by setting this properties.

Examples of using.

E v e n t

With this function we can handle event. The way to handle is

first you must call function “REUSE_ALV_EVENTS_GET” with input parameter  of I_LIST_TYPE with value :

  1. 0 : Simple List (default)
  2. 1 : Hierarchy – sequential List
  3. 2 : Simple Block List
  4. 3 : Hierarchy – sequential block list

NB: I still don’t know what the differences for each type

and Output parameter of ET_EVENTS with table which has type SLIS_T_EVENT.

Here is the constants for Event Constants.

CONSTANTS:

* Events

SLIS_EV_ITEM_DATA_EXPAND   TYPE SLIS_FORMNAME VALUE ‘ITEM_DATA_EXPAND’,

SLIS_EV_CALLER_EXIT_AT_START TYPE SLIS_FORMNAME VALUE ‘CALLER_EXIT’,

SLIS_EV_USER_COMMAND       TYPE SLIS_FORMNAME VALUE ‘USER_COMMAND’,

SLIS_EV_TOP_OF_PAGE        TYPE SLIS_FORMNAME VALUE ‘TOP_OF_PAGE’,

SLIS_EV_TOP_OF_COVERPAGE   TYPE SLIS_FORMNAME VALUE ‘TOP_OF_COVERPAGE’,

SLIS_EV_END_OF_COVERPAGE   TYPE SLIS_FORMNAME VALUE ‘END_OF_COVERPAGE’,

SLIS_EV_FOREIGN_TOP_OF_PAGE TYPE SLIS_FORMNAME

VALUE ‘FOREIGN_TOP_OF_PAGE’,

SLIS_EV_FOREIGN_END_OF_PAGE TYPE SLIS_FORMNAME

VALUE ‘FOREIGN_END_OF_PAGE’,

SLIS_EV_PF_STATUS_SET      TYPE SLIS_FORMNAME VALUE ‘PF_STATUS_SET’,

SLIS_EV_LIST_MODIFY        TYPE SLIS_FORMNAME VALUE ‘LIST_MODIFY’,

SLIS_EV_TOP_OF_LIST        TYPE SLIS_FORMNAME VALUE ‘TOP_OF_LIST’,

SLIS_EV_END_OF_PAGE        TYPE SLIS_FORMNAME VALUE ‘END_OF_PAGE’,

SLIS_EV_END_OF_LIST        TYPE SLIS_FORMNAME VALUE ‘END_OF_LIST’,

SLIS_EV_AFTER_LINE_OUTPUT  TYPE SLIS_FORMNAME VALUE ‘AFTER_LINE_OUTPUT’,

SLIS_EV_BEFORE_LINE_OUTPUT TYPE SLIS_FORMNAME VALUE                                                 ‘BEFORE_LINE_OUTPUT’.

 

Below is Structure of SLIS_T_EVENT.

 

*— Structure for event handling

TYPES: BEGIN OF SLIS_ALV_EVENT,

NAME(30),

FORM(30),

END OF SLIS_ALV_EVENT.

TYPES: SLIS_T_EVENT TYPE SLIS_ALV_EVENT OCCURS 0.

 

Then you can check what events has occured. by Check the SLIS_ALV_EVENT-NAME with event – constants. Check the code below.

 

FORM EVENTTAB_BUILD.

DATA: LS_EVENT TYPE SLIS_ALV_EVENT.

CALL FUNCTION ‘REUSE_ALV_EVENTS_GET’

EXPORTING

I_LIST_TYPE     = 0

IMPORTING

ET_EVENTS       = GT_EVENTS

EXCEPTIONS

LIST_TYPE_WRONG = 1

OTHERS          = 2.

 

*  check what event has occured.

READ TABLE GT_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE

INTO LS_EVENT.

*  if event occured.

IF SY-SUBRC = 0.

MOVE GC_FORMNAME_TOP_OF_PAGE TO LS_EVENT-FORM.

APPEND LS_EVENT TO GT_EVENTS.

ENDIF.

ENDFORM.

Note: You must call this function before creating call function COMMENT.

 

S o r t   a n d    S u b t o t a l

Below is Structure Sort (SLIS_T_SORTINFO_ALV).

* information for sort and subtotals

TYPES: BEGIN OF SLIS_SORTINFO_ALV,

SPOS LIKE ALVDYNP-SORTPOS,

FIELDNAME TYPE SLIS_FIELDNAME,

TABNAME TYPE SLIS_FIELDNAME,

UP LIKE ALVDYNP-SORTUP,                 “Ascending

DOWN LIKE ALVDYNP-SORTDOWN,       “Descending

GROUP LIKE ALVDYNP-GROUPLEVEL,   “Grouping

SUBTOT LIKE ALVDYNP-SUBTOTALS,    “Field Subtotal

COMP(1) TYPE C,

EXPA(1) TYPE C,

END OF SLIS_SORTINFO_ALV.

TYPES: SLIS_T_SORTINFO_ALV TYPE SLIS_SORTINFO_ALV OCCURS 1.

Every field to be configured is added to SLIS_T_SORTINFO_ALV. This table will be use as input parameter of function “REUSE_ALV_LIST_DISPLAY”.
G r o u p

not yet studied.

C o m m e n t

This function use for creating header and footer ALV report. This is the structure for use Comment.

 

* Header table for top of page

TYPES: BEGIN OF SLIS_LISTHEADER,

TYP(1) TYPE C,   ” H = Header, S = Selection, A = Action

KEY(20) TYPE C,

INFO TYPE SLIS_ENTRY,

END OF SLIS_LISTHEADER.

TYPES: SLIS_T_LISTHEADER TYPE SLIS_LISTHEADER OCCURS 1.

Take a look code below.

Data GT_LIST_TOP_PAGE type slis_t_listheader.

FORM COMMENT_BUILD.

DATA: GS_LINE TYPE SLIS_LISTHEADER, TEXT(60) TYPE C.

GS_LINE-TYP = ‘H’.

GS_LINE-INFO = ‘Hello Header’.

APPEND GS_LINE TO GT_LIST_TOP_PAGE.

ENDFORM.

 

It will pring ‘Hello Header’ in top-of-page ALV report.
F i l t e r

 

P r i n t

This standard Type in SLIS type-groups.

 

TYPES: SLIS_LIST_TYPE(1) TYPE N,

SLIS_CHAR_1(1) TYPE C,

SLIS_TEXT40(40) TYPE C.

TYPES: SLIS_TABNAME(30) TYPE C,

SLIS_FIELDNAME(30) TYPE C,

SLIS_FORMNAME(30) TYPE C,

SLIS_ENTRY(60) TYPE C,

SLIS_EDIT_MASK(60) TYPE C,

SLIS_COLDESC(4) TYPE C.

author by Sandi Wijaya

ABAP -ALV DrillDown Report to Transcation Code ME23N

TABLES:     ekko.

type-pools: slis.                                 ”ALV Declarations
*Data Declaration
*—————-
TYPES: BEGIN OF t_ekko,
ebeln TYPE ekpo-ebeln,
ebelp TYPE ekpo-ebelp,
statu TYPE ekpo-statu,
aedat TYPE ekpo-aedat,
matnr TYPE ekpo-matnr,
menge TYPE ekpo-menge,
meins TYPE ekpo-meins,
netpr TYPE ekpo-netpr,
peinh TYPE ekpo-peinh,
END OF t_ekko.

DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
wa_ekko TYPE t_ekko.

*ALV data declarations
data: fieldcatalog type slis_t_fieldcat_alv with header line,
gd_tab_group type slis_t_sp_group_alv,
gd_layout    type slis_layout_alv,
gd_repid     like sy-repid,
gt_events     type slis_t_event,
gd_prntparams type slis_print_alv.

************************************************************************
*Start-of-selection.
START-OF-SELECTION.

perform data_retrieval.
perform build_fieldcatalog.
perform build_layout.
perform build_events.
perform build_print_params.
perform display_alv_report.

*&———————————————————————*
*&      Form  BUILD_FIELDCATALOG
*&———————————————————————*
*       Build Fieldcatalog for ALV Report
*———————————————————————-*
form build_fieldcatalog.

fieldcatalog-fieldname   = ’EBELN’.
fieldcatalog-seltext_m   = ’Purchase Order’.
fieldcatalog-col_pos     = 0.
fieldcatalog-outputlen   = 10.
fieldcatalog-emphasize   = ’X’.
fieldcatalog-key         = ’X’.
*  fieldcatalog-do_sum      = ’X’.
*  fieldcatalog-no_zero     = ’X’.
append fieldcatalog to fieldcatalog.
clear  fieldcatalog.

fieldcatalog-fieldname   = ’EBELP’.
fieldcatalog-seltext_m   = ’PO Item’.
fieldcatalog-col_pos     = 1.
append fieldcatalog to fieldcatalog.
clear  fieldcatalog.

fieldcatalog-fieldname   = ’STATU’.
fieldcatalog-seltext_m   = ’Status’.
fieldcatalog-col_pos     = 2.
append fieldcatalog to fieldcatalog.
clear  fieldcatalog.

fieldcatalog-fieldname   = ’AEDAT’.
fieldcatalog-seltext_m   = ’Item change date’.
fieldcatalog-col_pos     = 3.
append fieldcatalog to fieldcatalog.
clear  fieldcatalog.

fieldcatalog-fieldname   = ’MATNR’.
fieldcatalog-seltext_m   = ’Material Number’.
fieldcatalog-col_pos     = 4.
append fieldcatalog to fieldcatalog.
clear  fieldcatalog.

fieldcatalog-fieldname   = ’MENGE’.
fieldcatalog-seltext_m   = ’PO quantity’.
fieldcatalog-col_pos     = 5.
append fieldcatalog to fieldcatalog.
clear  fieldcatalog.

fieldcatalog-fieldname   = ’MEINS’.
fieldcatalog-seltext_m   = ’Order Unit’.
fieldcatalog-col_pos     = 6.
append fieldcatalog to fieldcatalog.
clear  fieldcatalog.

fieldcatalog-fieldname   = ’NETPR’.
fieldcatalog-seltext_m   = ’Net Price’.
fieldcatalog-col_pos     = 7.
fieldcatalog-outputlen   = 15.
fieldcatalog-do_sum      = ’X’.
fieldcatalog-datatype     = ’CURR’.
append fieldcatalog to fieldcatalog.
clear  fieldcatalog.

fieldcatalog-fieldname   = ’PEINH’.
fieldcatalog-seltext_m   = ’Price Unit’.
fieldcatalog-col_pos     = 8.
append fieldcatalog to fieldcatalog.
clear  fieldcatalog.
endform.                    ” BUILD_FIELDCATALOG

*&———————————————————————*
*&      Form  BUILD_LAYOUT
*&———————————————————————*
*       Build layout for ALV grid report
*———————————————————————-*
form build_layout.
gd_layout-no_input          = ’X’.
gd_layout-colwidth_optimize = ’X’.
gd_layout-totals_text       = ’Totals’(201).
*  gd_layout-totals_only        = ’X’.
*  gd_layout-f2code            = ’DISP’.  ”Sets fcode for when double
*                                         ”click(press f2)
*  gd_layout-zebra             = ’X’.
*  gd_layout-group_change_edit = ’X’.
*  gd_layout-header_text       = ’helllllo’.
endform.                    ” BUILD_LAYOUT

*&———————————————————————*
*&      Form  DISPLAY_ALV_REPORT
*&———————————————————————*
*       Display report using ALV grid
*———————————————————————-*
form display_alv_report.
gd_repid = sy-repid.
call function ’REUSE_ALV_GRID_DISPLAY’
exporting
i_callback_program      = gd_repid
i_callback_top_of_page   = ’TOP-OF-PAGE’  ”see FORM
i_callback_user_command = ’USER_COMMAND’
*            i_grid_title           = outtext
is_layout               = gd_layout
it_fieldcat             = fieldcatalog[]
*            it_special_groups       = gd_tabgroup
it_events               = gt_events
is_print                = gd_prntparams
i_save                  = ’X’
*            is_variant              = z_template
tables
t_outtab                = it_ekko
exceptions
program_error           = 1
others                  = 2.
if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
endform.                    ” DISPLAY_ALV_REPORT

*&———————————————————————*
*&      Form  DATA_RETRIEVAL
*&———————————————————————*
*       Retrieve data form EKPO table and populate itab it_ekko
*———————————————————————-*
form data_retrieval.

select ebeln ebelp statu aedat matnr menge meins netpr peinh
up to 10 rows
from ekpo
into table it_ekko.
endform.                    ” DATA_RETRIEVAL

*——————————————————————-*
* Form  TOP-OF-PAGE                                                 *
*——————————————————————-*
* ALV Report Header                                                 *
*——————————————————————-*
Form top-of-page.
*ALV Header declarations
data: t_header type slis_t_listheader,
wa_header type slis_listheader,
t_line like wa_header-info,
ld_lines type i,
ld_linesc(10) type c.

* Title
wa_header-typ  = ’H’.
wa_header-info = ’EKKO Table Report’.
append wa_header to t_header.
clear wa_header.

* Date
wa_header-typ  = ’S’.
wa_header-key = ’Date: ’.
CONCATENATE  sy-datum+6(2) ’.’
sy-datum+4(2) ’.’
sy-datum(4) INTO wa_header-info.   ”todays date
append wa_header to t_header.
clear: wa_header.

* Total No. of Records Selected
describe table it_ekko lines ld_lines.
ld_linesc = ld_lines.
concatenate ’Total No. of Records Selected: ’ ld_linesc
into t_line separated by space.
wa_header-typ  = ’A’.
wa_header-info = t_line.
append wa_header to t_header.
clear: wa_header, t_line.

call function ’REUSE_ALV_COMMENTARY_WRITE’
exporting
it_list_commentary = t_header.
*            i_logo             = ’Z_LOGO’.
endform.

*——————————————————————*
*       FORM USER_COMMAND                                          *
*——————————————————————*
*       –> R_UCOMM                                                *
*       –> RS_SELFIELD                                            *
*——————————————————————*
FORM user_command USING r_ucomm LIKE sy-ucomm
rs_selfield TYPE slis_selfield.

* Check function code
CASE r_ucomm.
WHEN ’&IC1′.
*   Check field clicked on within ALVgrid report
IF rs_selfield-fieldname = ’EBELN’.
*     Read data table, using index of row user clicked on
READ TABLE it_ekko INTO wa_ekko INDEX rs_selfield-tabindex.
*     Set parameter ID for transaction screen field
SET PARAMETER ID ’BES’ FIELD wa_ekko-ebeln.
*     Sxecute transaction ME23N, and skip initial data entry screen
CALL TRANSACTION ’ME23N’ AND SKIP FIRST SCREEN.
ENDIF.
ENDCASE.
ENDFORM.

*&———————————————————————*
*&      Form  BUILD_EVENTS
*&———————————————————————*
*       Build events table
*———————————————————————-*
form build_events.
data: ls_event type slis_alv_event.

call function ’REUSE_ALV_EVENTS_GET’
exporting
i_list_type = 0
importing
et_events   = gt_events[].
read table gt_events with key name =  slis_ev_end_of_page
into ls_event.
if sy-subrc = 0.
move ’END_OF_PAGE’ to ls_event-form.
append ls_event to gt_events.
endif.

read table gt_events with key name =  slis_ev_end_of_list
into ls_event.
if sy-subrc = 0.
move ’END_OF_LIST’ to ls_event-form.
append ls_event to gt_events.
endif.
endform.                    ” BUILD_EVENTS

*&———————————————————————*
*&      Form  BUILD_PRINT_PARAMS
*&———————————————————————*
*       Setup print parameters
*———————————————————————-*
form build_print_params.
gd_prntparams-reserve_lines = ’3′.   ”Lines reserved for footer
gd_prntparams-no_coverpage = ’X’.
endform.                    ” BUILD_PRINT_PARAMS

*&———————————————————————*
*&      Form  END_OF_PAGE
*&———————————————————————*
form END_OF_PAGE.
data: listwidth type i,
ld_pagepos(10) type c,
ld_page(10)    type c.

write: sy-uline(50).
skip.
write:/40 ’Page:’, sy-pagno .
endform.

*&———————————————————————*
*&      Form  END_OF_LIST
*&———————————————————————*
form END_OF_LIST.
data: listwidth type i,
ld_pagepos(10) type c,
ld_page(10)    type c.

skip.
write:/40 ’Page:’, sy-pagno .
endform.

alv – slis_layout_alv

It is used for column widht optimize , alternate colors, subtotal text etc.

no_colhead(1) type c, ” no headings
no_hotspot(1) type c, ” headings not as hotspot
zebra(1) type c, ” striped pattern
no_vline(1) type c, ” columns separated by space
no_hline(1) type c, “rows separated by space B20K8A0N5D
cell_merge(1) type c, ” not suppress field replication
edit(1) type c, ” for grid only
edit_mode(1) type c, ” for grid only
numc_sum(1) type c, ” totals for NUMC-Fields possib.
no_input(1) type c, ” only display fields
f2code like sy-ucomm, ”
reprep(1) type c, ” report report interface active
no_keyfix(1) type c, ” do not fix keycolumns
expand_all(1) type c, ” Expand all positions
no_author(1) type c, ” No standard authority check
* PF-status
def_status(1) type c, ” default status space or ‘A’
item_text(20) type c, ” Text for item button
countfname type lvc_fname

 

ABAP System Fields

System Information

Information on the Current SAP System

SY-DBSYS

Central database system, for example INFORMIX, ORACLE

SY-HOST

Application server, for example HS0333, PAWDF087

SY-OPSYS

Operating system of application server, for example HP-UX, SINIX

SY-SAPRL

Release status of the SAP System, for example 30D, 46A

SY-SYSID

Name of the SAP System, for example B20, I47

Information on the User Session

SY-LANGU

One-digit language key, for example D, E, F. Either logon language of user or set using the SET LOCALE LANGUAGE statement.

SY-MANDT

Client number the user logged on with, for example 000, 400.
For database accesses with Open SQL, SY-MANDT is used as the first key field of the WHERE clause.

SY-MODNO

Indexes external modes. Zero in first mode. In new modes, opened using the Create Mode function or by calling a transaction using /o, it is raised by 1. If previous modes were deleted, the free numbers are used first. Modes opened using CALL TRANSACTION … STARTING NEW TASK start back at 0.

SY-UNAME

Logon name of user, for example KELLERH, BC400-01.

Date and Time Information

The following system fields are always set automatically. If necessary, the GET TIME statement synchronizes the application server time with that of the database server and writes it to the system field SY-UZEIT. SY-DATUM and the system fields for the local time zone, that is SY-TIMLO, SY-DATLO, and SY-ZONLO are also reset.

SY-DATLO

Local date of user, for example 19981129, 19990628.

SY-DATUM

Current (application server) date, for example 19981130, 19990627.

SY-DAYST

During daylight saving time X, otherwise empty.

SY-FDAYW

Factory calendar weekday, Sunday 0 … Saturday 6.

SY-TIMLO

Local time of user, for example 154353, 225312.

SY-TZONE

Time difference to Greenwich Mean Time (UTC) in seconds, for example 3600, 10800.

SY-UZEIT

Current (application server) time, for example 164353, 215312.

SY-ZONLO

Time zone of user, for example CET, UTC.

Information on the Current ABAP Program

SY-CALLD

SY-CALLD contains SPACE if the program is the first and only program in a call chain. SY_CALLD contains ‘X’ if the program is a called program in a call chain.

  • SY-CALLD is set to ‘X‘ in a program called using CALL TRANSACTION, CALL DIALOG, or SUBMIT … AND RETURN.
  • SY-CALLD is set to space in a program called using LEAVE TO TRANSACTION, entering a transaction code on a screen, and processing batch input folders.
  • With SUBMIT (without RETURN) SY-CALLD retains the previous value.
SY-CPROG

In externally called procedures, the name of the calling program, otherwise the name of the current program. If an externally called procedure calls another external procedure, SY-CPROG keeps the name of the first main program and is not given the name of the main program of the further caller.

SY-DBNAM

With executable programs this is the linked logical database.

SY-DYNGR

Screen group of current screen. You can assign several screens to a common screen group. You can use this, for example, to modify all of the screens in the group in a uniform way.

SY-DYNNR

Number of current screen During the selection screen processing, SY-DYNNR contains the screen number of the current selection screen. During list processing, SY-DYNNR contains the number of the container screen. While a subscreen is being processed, SY-DYNNR contains its screen number. This also applies to tabstrips.

SY-LDBPG

With executable programs, the database program of the linked logical database.

SY-REPID

Name of current ABAP program. With externally called procedures this is the name of the procedure’s main program.

If SY-REPID was transferred to an external procedure as an actual parameter before Release 6.10, the formal parameter was not given the name of the caller, but the name of the procedure’s main program. SY-REID had to be transferred to an auxiliary variable before the call or you had to use SY-PROG.

As of Release 6.10, SY-REPID is a separate constant that is no longer part of the structure SYST or SY. It can be transferred to external procedures directly.

SY-TCODE

Name of current transaction code.

Background Processing

SY-BATCH

SY-BATCH is set to X in an ABAP program running in the background. Otherwise it is empty.

Batch Input

SY-BINPT

SY-BINPT is set to X during processing of batch input folders and in ABAP programs called with CALL TRANSACTION USING. Otherwise it is empty.

  • OPTIONS FROM in the CALL TRANSACTION USINGstatement can set SY-BINPT to empty for the whole program execution, as well as at the end of the BDC data.
  • In CATT procedures, SY-BINPT is always empty.

 

ABAP Programming

Constants

SY-ABCDE

Contains the Alphabet. Can be used to access individual letters independently of the codepage by specifying offset.

SY-ULINE

Contains a horizontal line with length 255. Can be used when creating the list.

SY-VLINE

Contains a vertical line (|). Can be used when creating the list

Loops

SY-INDEX

SY-INDEX contains the number of loop passes in DO and WHILE loops, including the current loop pass.

Character Strings

SY-FDPOS

Found location for operations with character-type fields.

  • If the operators CO, CN, CA, NA, CS, NS, CP, NP are used in comparisons, SY-FDPOS is assigned offset values depending on the comparison result.
  • SEARCH … FOR … sets SY-FDPOS to the offset of the found search string.

Internal Tables

SY-TABIX

Current line in an internal table. With the following statements SY-TABIX is set for index tables. With hashed tables, SY-TABIX is not filled or it is set to 0.

  • APPENDsets SY-TABIX to the index of the last table row, that is the total number of entries in the target table.
  • COLLECTsets SY-TABIX to the index of the existing or appended table row. With hashed tables, SY-TABIX is set to 0.
  • LOOP ATsets SY-TABIX to the index of the current table row at the beginning of every loop pass. After leaving a loop, SY-TABIX is set to the value it had before entering the loop. With hashed tables, SY-TABIX is set to 0.
  • READ TABLE sets SY-TABIX to the index of the table row read. If no row is found with binary search while reading, SY-TABIX contains the index of the next-highest row or the total number of rows +1. If no row is found with linear search while reading, SY-TABIX is undefined.
  • SEARCH itab FOR sets SY-TABIX to the index of the table row, in which the search string was found.
SY-TFILL

With the statements DESCRIBE TABLE, LOOP AT, and READ TABLE, SY-TFILL is filled with the row number of the addressed internal table.

SY-TLENG

With the statements DESCRIBE TABLE, LOOP AT, and READ TABLE, the system fills SY-TLENG with the row size of the addressed internal table.

Database Accesses

SY-DBCNT

SQL statements set the content of SY-DBCNT to the number of database lines processed. With SELECT loops in Open SQL, SY-DBCNT is set after the ENDSELECT statement. In Native SQL, SY-DBCNT is set after the ENDEXEC statement.

  • DELETEsets SY-DBCNT to the number of lines deleted.
  • FETCHsets SY-DBCNT to the number of lines already read by the current cursor.
  • INSERTsets SY-DBCNT to the number of lines inserted.
  • MODIFYsets SY-DBCNT to the number of lines processed.
  • UPDATE sets SY-DBCNT to the number of lines changed.

Return Value

SY-SUBRC

Return value set by the following ABAP statements. In general, a content of 0 means that the statement was executed without problems.

  • ASSIGNsets SY-SUBRC to 0 if assignment to field symbol is possible, otherwise 4.
  • ASSIGN dref->* sets SY-SUBRC to 0 if dereferencing is possible, otherwise 4.
  • AUTHORITY-CHECK sets SY-SUBRC to 0 if the user has the necessary authorization, otherwise 4, 8, 12, 16, 24, 28, 32, or 36 depending on the cause.
  • CALL DIALOG with USING sets SY-SUBRC to 0, if processing was successful, otherwise <>0.
  • CALL FUNCTION sets SY-SUBRC according to the exception handling.
  • CALL METHOD sets SY-SUBRC according to the exception handling.
  • CALL SELECTION-SCREEN sets SY-SUBRC to 0 if the user chose Enter or Execute and 4 if the user chose Cancel.
  • CALL TRANSACTION with USING sets SY-SUBRC to 0 if processing was successful, otherwise <>0.
  • CATCH SYSTEM-EXCEPTIONS sets SY-SUBRC if there are runtime errors after the ENDCATCH statement. The value is specified in the program.
  • COMMIT WORK sets SY-SUBRC to 0.
  • COMMIT WORK AND WAIT sets SY-SUBRC to 0 if update was successful, otherwise <>0.
  • COMMUNICATION INIT DESTINATIONRETURNCODE sets SY-SUBRC as specified.
  • CONCATENATE sets SY-SUBRC to 0 if the result fits into target variable, otherwise 4.
  • CREATE OBJECT sets SY-SUBRC if the exceptions of the instance constructor are handled.
  • CREATE OBJECT in OLE2 sets SY-SUBRC to 0 if an external object was created, otherwise 1,2, 3 with different causes.
  • DELETEsets SY-SUBRC to 0 if operation was successful, otherwise 4 or <> 0 depending on cause.
  • DEMAND … MESSAGES INTO sets SY-SUBRC to 0 if a message table is empty, otherwise <> 0.
  • DESCRIBE LIST sets SY-SUBRC to 0 if row or list exists, otherwise 4 or 8.
  • EXEC SQL – ENDEXEC sets SY-SUBRC to 0 in almost all cases. Only if no set was read with FETCH is SY-SUBRC 4.
  • FETCHsets SY-SUBRC to 0 if at least one row was read, otherwise 4.
  • GENERATE SUBROUTINE POOL sets SY-SUBRC to 0 if generation was successful, otherwise 8.
  • GET CURSOR sets SY-SUBRC to 0 if the cursor is correctly positioned, otherwise 4.
  • GET PARAMETER sets SY-SUBRC to 0 if value found in SAP Memory, otherwise 4.
  • IMPORTsets SY-SUBRC to 0 if import of data objects was successful, otherwise 4.
  • INSERTsets SY-SUBRC to 0 if operation was successful, otherwise 4.
  • LOAD REPORT sets SY-SUBRC to 0 if operation was successful, otherwise 4 or 8 depending on cause.
  • LOOPsets SY-SUBRC to 0 if loop over extract was passed at least once, otherwise 4.
  • LOOP ATsets SY-SUBRC to 0 if loop over internal table was passed at least once, otherwise 4.
  • MODIFYsets SY-SUBRC to 0 if operation was successful, otherwise 4.
  • MODIFY LINE sets SY-SUBRC to 0 if list row was changed, otherwise <> 0.
  • MODIFYsets SY-SUBRC to 0 if operation was successful, otherwise 4.
  • OLE2 automation, bundled commands set SY-SUBRC to 0 if all were successfully executed, otherwise 1, 2, 3, 4 depending on cause.
  • OPEN DATASET sets SY-SUBRC to 0 if the file was opened, otherwise 8.
  • Open SQL commands set SY-SUBRC to 0 if operation was successful, otherwise <>0.
  • OVERLAYsets SY-SUBRC to 0 if at least one character is overlayed, otherwise 4.
  • READ DATASET sets SY-SUBRC to 0 if the read operation was successful, otherwise 4 or 8 depending on cause.
  • READ LINE sets SY-SUBRC to 0 if list row exists, otherwise <> 0.
  • READ TABLE sets SY-SUBRC to 0 if the table row was found, otherwise 2, 4, 8 depending on cause.
  • REPLACEsets SY-SUBRC to 0 if search string could be replaced, otherwise <> 0.
  • ROLLBACK WORK always sets SY-SUBRC to 0.
  • SCROLLsets SY-SUBRC to 0 if scrolling in list successful, otherwise 4 or 8 depending on cause.
  • SEARCHsets SY-SUBRC to 0 if search string was found, otherwise 4.
  • SELECTsets SY-SUBRC to 0 if at least one row was read, otherwise 4 or even 8 with SELECT SINGLE FOR UPDATE.
  • SET COUNTRY sets SY-SUBRC to 0 if country ID was found in table T005X, otherwise 4.
  • SET BITsets SY-SUBRC to 0 if bit was set, otherwise <> 0.
  • SET TITLEBAR sets SY-SUBRC to 0 if title exists, otherwise 4.
  • SHIFT … UP TO sets SY-SUBRC to 0 if position was found in character string, otherwise 4.
  • SPLITsets SY-SUBRC to 0 if size of target fields is sufficient, otherwise 4.
  • UPDATEsets SY-SUBRC to 0 if operation successful, otherwise 4.
  • WRITE … TO sets SY-SUBRC to 0 if assignment successful, otherwise 4.

 

Screens

Screens

System fields are set at the PAI event for every screen. These can be also used for interactive list processing, except for SY-DATAR, SY-LOOPC, and SY-STEPL.

SY-CUCOL

Horizontal cursor position Counting starts at column 2

SY-CUROW

Vertical cursor position Counting starts at row 1

SY-DATAR

Set to X at time of PAI if at least one screen input field was changed by the user or other data transfer, otherwise empty.

SY-LOOPC

Number of rows currently displayed in a screen table (table control).

SY-PFKEY

GUI status of current screen. Can be set at PBO using SET PF-STATUS.

SY-SCOLS

Number of columns in current screen.

SY-SROWS

Number of rows in current screen.

SY-STEPL

Index of current row in a screen table (table control). Is set at every loop pass. Outside a loop, for example during the POV event for a table row, SY-STEPL is not set appropriately.

SY-TITLE

Text that appears in the title bar of the screen. For selection screens and lists this is the program name, otherwise SAP. Can be set during PBO using SET TITLEBAR.

SY-UCOMM

Function code that triggered the event PAI. Every user action that triggers PAI is assigned a unique function code, with one exception: Choosing ENTER triggers PAI and different function codes can be transferred to SY-UCOMM:

  • If there is an entry in the command field of the standard toolbar, this is transferred to SY-UCOMM as the function code.
  • If there is no entry in the command field and a function code is assigned to the ENTER key, this function code is transferred to SY-UCOMM.
  • If the command field does not contain an entry and no function code is assigned to the ENTERkey, it is empty and the content of SY-UCOMM is not affected.

Selection Screens

SY-SLSET

Variant used to fill the selection screen.

Creating Lists

When creating a list you can use the following system fields to navigate. They help to ensure that output statements do not overwrite any existing output and that the system does not try to write outside the list. The current output position is always in the system fields SY-COLNO and SY-LINNO and is rest for every output statement. The remaining system fields contain further values for the list creation.

SY-COLNO

Current column during list creation. Counting starts at 1. SY-COLNO is set by the following output statements:

  • WRITE, ULINE, SKIPset SY-COLNO to the next output position.
  • BACKsets SY-COLNO to 1.
  • POSITION col sets  SY-COLNO to col. If collies outside the page, the subsequent output statements are ignored.
  • NEW-LINE sets SY-COLNO to 1.
  • NEW-PAGE sets SY-COLNO to 1.
SY-LINCT

Page length of list. SY-LINCT is 0 for a standard list of any length and has a value unequal to 0 for lists with fixed page length.

  • LINE-COUNT in the statements REPORT, PROGRAM, FUNCTION POOL sets SY-LINCT for the current program.
  • LINE-COUNT in the SUBMIT statement sets SY-LINCT for the called program.
SY-LINNO

Current row during the list creation. Counting begins at 1 and includes the page header. SY-LINNO is set by the following output statements:

  • WRITE, ULINE, SKIPraise SY-LINNO by 1 in the case of a line break.
  • BACK sets SY-LINNO to the first row after the page header. BACKin connection with RESERVE sets SY-LINNO to the first row of a block of lines.
  • NEW-LINE raises SY-LINNO by 1.
  • SKIP TO LINE lin sets SY-LINNO to lin. If lin does not lie between 1 and the page length, the system ignores the statement.
SY-LINSZ

Line width of list Without further influence this is the standard window width: If SY-SCOLS >= 84, SY-LINSZ = SY-SCOLS; if SY-SCOLS < 84, SY-LINSZ = 84.

To change the width of the output list, use the LINE-SIZE option of the REPORTor NEW PAGE statement.

  • LINE-SIZE in the statements REPORT, PROGRAM, FUNCTION POOL sets SY-LINSZ for the current program.
  • LINE-SIZE in the SUBMIT statement sets SY-LINSZ for the called program.
SY-PAGNO

Current page during the list creation.

  • WRITE, ULINE, SKIPraise SY-PAGNO by 1 in the case of a line break.
  • NEW-PAGE raises SY-PAGNO by 1, but only if at least one output follows both on the current page and after the NEW-PAGE statement.
  • NEW-SECTION of the NEW-PAGE PRINT ON statement sets SY-PAGNO to 1.
SY-TVAR0 … SY-TVAR9

In the program, you can assign values to these system fields. During the TOP-OF-PAGE event, the system replaces the placeholders of the program’s list and column headers with the contents of the system fields SY-TVAR0 to SYTVAR9.

SY-WTITL

Is set to N in the statements REPORT, PROGRAM, and FUNCTION-POOLif the NO STANDARD PAGE HEADING addition is used, otherwise empty. NEW-PAGE does not set SY-WTITL.

List Processing

At each interactive list event and for READ LINE, the system automatically fills the following system fields:

SY-CPAGE

Page number of the first displayed page of the list from which the event was triggered. Counting starts at 1

SY-LILLI

Line from which the event was triggered Counting begins at 1 and includes the page header.

SY-LISEL

Contents of the line from which the event was triggered

SY-LISTI

Index of the list from which the event was triggered

SY-LSIND

Index of the list that is being created (basic list: 0, detail list > 0). Each time an interactive list event occurs, the system automatically increases SY-LSIND by 1. SY-LSIND can be changed in the ABAP program to navigate between detail lists. Changes to SY-LSIND are not taken into account until the end of the list event. Therefore, any manipulation of SY-LISND should be done using the last command of the processing block.

SY-LSTAT

ID for list levels within the program. SY-LSTAT can be filled with values during list creation in the ABAP program. The value valid when the list is completed is saved with the list. In the case of an interactive list event, SY-LSTAT is set to the value it was assigned during the creation of the list from which the event takes place. SY-LSTAT is no longer maintained and should therefore no longer be used.

SY-STACO

Number of the first displayed column of the list from which the event was triggered. Counting starts at 1.

SY-STARO

Number of the upper-most displayed row of the upper-most page of the list, from which the event was triggered. Counting begins at 1. This does not include the page header.

Printing Lists

When printing lists, the spool and runtime systems require certain internal information, which is available in the following system fields and is set during print activation.

SY-CALLR

Contains a value that displays where printing was started, for example NEW-PAGE for program-controlled printing or RSDBRUNT for printing from the selection screen.

SY-PRDSN

Contains the name of the spool file during printing.

SY-SPONO

Contains the name of the spool number during printing.

SY-MAROW, SY-MACOL

The SET MARGINstatement fills the system fields SY-MAROW and SY-MACOL, which determine the number of lines on the upper margin and the number of columns on the left margin when printing.

Print Parameters

The print parameters are transferred to the spool system by the runtime system in a structure of dictionary type PRI_PARAMS. Before this structure was used, its purpose was served by system fields. Today a subset of the PRI_PARAMS structure is still written to system fields with the same names when printing is activated. This information is redundant and should not be used.

Messages

If you execute the MESSAGE statement, the following system fields are set. If you execute the MESSAGE … RAISING statement in function modules and methods, these fields are also set in the calling program, if it handles the exception.

SY-MSGID

SY-MSGID contains the message ID.

SY-MSGNO

SY-MSGNO contains the message number.

SY-MSGTY

SY-MSGTY contains the message type.

SY-MSGV1,…,SY-MSGV4

SY-MSGV1 to SY-MSGV4 contain the field contents that are used for the message’s placeholders.

Special Actions that Fill Message Fields
  • If you request database locks using the ENQUEUE function module, the field SY-MSGV1 contains the name of the user who holds the lock, in the case of the FOREIGN_LOCK exception.
  • IN the case of CALL TRANSACTION or CALL DIALOG with the USING addition, a message displayed during the called screen sequence is returned in the fields SY-MSGID, SY-MSGTY, SY-MSGNO, SY-MSGV1, … , SY-MSGV4.
  • During Remote Function Call (RFC), error messages are transferred from the remote system to the calling system and SY-MSGID, SY-MSGTY, SY-MSGNO,SY-MSGV1, SY-MSGV2, SY-MSGV3, SY-MSGV4 are set. If short dumps or type X messages occur, the system also sets the fields.

 

Internal system fields

Internal system fields are only for internal use in the ABAP runtime environment and are defined in the kernel. Under no circumstances must they be overwritten in ABAP programs and they should also not be read (processed).

SY-CFWAE

Undocumented

SY-CHWAE

Undocumented

SY-DEBUG

Undocumented

SY-DSNAM

Name of spool output file.

SY-ENTRY

Undocumented

SY-FFILE

Flat file (USING/GENERATING DATASET).

SY-FLENG

Length of a field.

SY-FODEC

Number of decimal places of a field.

SY-FOLEN

Output length of a field.

SY-FTYPE

Data type of a field.

SY-GROUP

Bundling

SY-INPUT

Undocumented

SY-LPASS

Undocumented

SY-NEWPA

Undocumented

SY-NRPAG

Undocumented

SY-ONCOM

On Commit flag. This system field is set to different values depending on the call status of an ABAP program. Of these, only the value of ‘P’ is guaranteed. If at all, SY-ONCOM must only be queried for ‘P’.

The value ‘P’ means that the program is already executing a subroutine started using PERFORM … ON COMMIT and therefore a further subroutine call using PERFORM … ON COMMIT would cause a runtime error.

SY-PAUTH

Undocumented

SY-PLAYO

Undocumented

SY-PLAYP

Undocumented

SY-PNWPA

Undocumented

SY-PRI40

Undocumented

SY-PRINI

Undocumented

SY-PRLOG

Undocumented

SY-REPI2

Undocumented

SY-RSTRT

Undocumented

SY-SFOFF

Undocumented

SY-SUBCS

Call status of an executable program.

SY-SUBTY

Call type of an executable program.

SY-TABID

Undocumented

SY-TLOPC

Undocumented

SY-TSTIS

Undocumented

SY-XCODE

Extended function code Is filled, like SY-UCOMM, by user actions on lists. Before the length of SY-UCOMM was increased from 4 to 70 characters, SY-XCODE was used internally to evaluate lengthy entries in the command field of the list’s standard toolbar. Use SY-UCOMM in application programs.

SY-XFORM

SYSTEM-EXIT subroutine.

SY-XPROG

SYSTEM-EXIT program.

 

Obsolete System Fields

In the transition from R/2 to R/3, some system fields were carried over that are no longer filled. These system fields are obsolete and can no longer be used.

SY-APPLI

In R/2, ID for which SAP applications are installed. No longer filled.

SY-BATZD

In R/2, ID for daily background scheduling. No longer filled.

SY-BATZM

In R/2, ID for monthly background scheduling. No longer filled.

SY-BATZO

In R/2, ID for single background scheduling. No longer filled.

SY-BATZS

In R/2, ID for immediate background scheduling. No longer filled.

SY-BATZW

In R/2, ID for weekly background scheduling. No longer filled.

SY-BREP4

In R/2, root name of request report for background processing. No longer filled.

SY-BSPLD

In R/2, ID for immediate spool output for background processing. No longer filled.

SY-CCURS

In R/2, rate specification/result field from CURRENCY CONVERSION. No longer filled.

SY-CCURT

In R/2, table rate from CURRENCY CONVERSION. No longer filled.

SY-CDATE

In R/2, rate date from CURRENCY CONVERSION. No longer filled.

SY-CTABL

In R/2, rate table from CURRENCY CONVERSION. No longer filled.

SY-CTYPE

In R/2, rate type from CURRENCY CONVERSION. No longer filled.

SY-DCSYS

Dialog system of R/2 System No longer filled.

SY-FMKEY

Previously, current function code menu. No longer filled.

SY-LOCDB

Local database, not implemented.

SY-LOCOP

Local database operation, not implemented.

SY-MACDB

Previously, name of file for matchcode access. No longer filled.

SY-MARKY

Current line character for the MARK statement. However, the language element MARK will only be supported for a short time.

SY-PAGCT

In R/2, maximum number of pages per list. No longer filled.

SY-PREFX

ABAP prefix for background jobs. No longer filled.

SY-SFNAM

Undocumented

SY-SPONR

In R/2, you could process spool files using the TRANSFER statement, set by SY-SPONR. No longer filled.

SY-TFDSN

Previously, name of external storage file for extracts. No longer filled.

SY-TMAXL

Previously, maximum number of entries in an internal table. No longer filled.

SY-TNAME

Previously, name of an internal table after an access. No longer filled.

SY-TOCCU

With the statements DESCRIBE TABLE, LOOP AT, and READ TABLE, SY-TOCCU was filled with the value of the initial main memory requirements for the addressed internal table. No longer filled.

SY-TPAGI

Previously, ID whether an internal table is stored in the paging area. No longer filled.

SY-TTABC

Previously, index of last read row in an internal table. No longer filled.

SY-TTABI

Previously, offset of internal tables in roll area. No longer filled.

SY-WAERS

Previously, company code currency after reading booking segment. No longer filled.

SY-WILLI

In R/2, number of selected list row for detail list in window. Use SY-LILLI.

SY-WINCO

In R/2, cursor position for detail list in window. Use SY-CUCOL.

SY-WINDI

In R/2, index of list for detail list in window. Use SY-LSIND.

SY-WINRO

In R/2, cursor position for detail list in window. Use SY-CUROW.

SY-WINSL

In R/2, content of selected row for detail list in window. Use SY-LISEL.

SY-WINX1

In R/2, window coordinate for detail list in window. No longer used.

SY-WINX2

In R/2, window coordinate for detail list in window. No longer used.

SY-WINY1

In R/2, window coordinate for detail list in window. No longer used.

SY-WINY2

In R/2, window coordinate for detail list in window. No longer used.

 

abap debugger ok-codes

/h activate debugging

/hs activate system debugging

/ha skip dynpro (PAI, PBO) and directly debug ABAP code

/hx detach debugger

/hmusa create memory snapshot (can be used in the transaction S_MEMORY_INSPECTOR for memory consumption analysis)

jdbg in SM37 restart of a finished or crashed background job for debugging

/ron start ABAP Runtime Analysis measurement (transaction SE30)

/roff stop ABAP Runtime Analysis measurement (transaction SE30)

 

MM and FI connection

Area and Tech Name and Description

Purchasing
EKKO – PO Header
EKPO – PO Item
EBAN – Purchase requisition
EKBE – History per Purchase doc.
EKKN – Account Assignment in Purchasing Document /span>

Accounting
BKPF – Accounting Document Header
BSEG – Accounting Document Segment
CSKS – Cost Center Master Data
PRPS – WBS master data
AUFK – Order master data

CEPC – Profit Center master data
RBSELBEST – PO associated with aparked invoice

Line items (Rep: RPUDRIG0)
COVP – CO Object: Line Items (See FM HRGPBS_DRILL_READ_COVP)
COOI – Commitments Management: Line Items

PPDHD – Transfer to Accounting: Document Header
PPDIT – Transfer to Accounting: Lines in HR IDOCs
(See FM HRGPBS_DRILL_SELECT_POST_LINE)

Order data (Network)
AUFK – Order master data
AFKO – Order header data
AFPO – Order item data

AFVC – Operation within an order
AFVV – quantities/dates/values in the operation

Invoice data
EKKO – PO Header
RSEG – Incoming invoice (Invoice doc, PO doc)
RBKP – Invoice receipt

Project plan/WBS
PROJ – Project data
PRPS – WBS
PRHI – WBS breakdown within project

Sales
VBAK – Header
VBAP – Item
VBPA – Sales Document Partner

Shipment
VTTK – Shipment Header
VTTP – Shipment Item

Delivery
LIKP – Delivery Header
LIPS – Delivery item

Vendor
LFA1 – Vendor Master
LFB1 – Vendor Master (Company Code)

Customer
KNA1 – Customer Master
KNB1 – Customer Master (Company Code)

Material
MARA – Material data
MARC – Material Plant Details

HR
PNP – Get Pernr (Personnel data)
PCH – Get Objec

TEM
TEM table structure

sap mm transaction code (t-code)

List of mm Tcode

Transaction codes for materials

MM01: Create material
MM02: Change material
MM03: Display material

Transaction codes for Reservations

MB21: Create Reservation
MB22: Change Reservation
MB23: Display Reservation
MB25: List of Reservations

Purchasing display transaction codes

ME53: Display purchase requisition
ME23 Display purchase order
ME43: Display RFQ
ME48: Display quotation
ME33K: Display contract
ME33L: Display scheduling agreement
ME13: Display info record
ME03: Display source list
MEQ3: Display quota arrangement
MP02: Display approved manufacturer parts list
ME62: Display vendor evaluation
MN03: Display RFQ message
MN06: Display purchase order message
MN09: Display outline purchase agreement message
MN12: Display scheduling agreement delivery schedule message
MN15: Display service entry sheet message
MN26: Display inbound delivery message
WWNC: Display messages for settlement run
MEB3: Display rebate arrangements
WWSC: Display conditions for subsequent
MEK3: Display conditions in purchasing

Transaction codes for processing RFQ (Request for quotation)

ME41: Create RFQ
ME42: Change RFQ
ME43: Display RFQ
ME44: Maintain RFQ supplement
ME45: Release RFQ

Transaction codes to maintain quotations

ME47: Enter quotation
ME48: Display quotation
ME49: Quotation price comparison list

Transaction codes to process a purchase requisition

ME51N: Create purchase requisition
ME52N: Change purchase requisition
ME53N: Display purchase requisition

Transaction codes to release Purchase Requisitions

ME54: Individual release for purchase requisitions
ME55: Individual release for purchase requisitions
ME5F: Release reminder for purchase requisitions

Transaction codes to process Purchase Orders

ME21N: Create purchase order
ME25: Create purchase order – vendor unknown
ME22N: Change purchase order
ME23N: Display purchase order
ME56: Assign source to purchase requisition
ME57: Assign and process purchase requisitions
ME58: Order for assigned purchase requisitions
ME59: Generate purchase orders from requisitions automatically
ME24: Maintain PO supplement
ME28: Release purchase order

Transaction codes to process a purchasing info record

ME11: Create purchasing info record
ME12: Change purchasing info record
ME13: Display purchasing info record
ME14: Display changes to purchasing info record
ME15: Flag purchasing info record for deletion

Transaction codes to process physical inventory documents.

MI01: Create Physical Inventory Document
MI02: Change Physical Inventory Document
MI03: Display Physical Inventory Document
MI21: Print Physical Inventory Document
MI07: Process List of Differences
MI08: Create List of Differences with Document
MI10: Create List of Differences without Document
MI20: Print List of Differences
MI11: Recount Physical Inventory Document

Transaction cods for Physical Inventory

MI01: Create Physical Inventory Document
MI02: Change Physical Inventory Document
MI03: Display Physical Inventory Document
MI21: Print Physical Inventory Document
MI07: Process List of Differences
MI08: Create List of Differences with Document
MI10: Create List of Differences without Document
MI20: Print List of Differences
MI11: Recount Physical Inventory Document
MI22: Display Physical Inventory Documents for Material.
MI23: Display Physical Inventory Data for Material.
MIDO: Display Changes.
MI24: Physical Inventory List.
MIAL: Read Physical Inventory Document Archive.
MI04: Enter Physical Inventory Count with Document
MI09: Enter Physical Inventory Count without Document
MI05: Change Physical Inventory Count
MI06: Display Physical Inventory Count

Transaction codes to process a purchase contract

ME31K: Create contract
ME32K: Change contract
ME33K: Display contract
ME34K: Maintain contract supplement
ME3P: Recalculate contract prices
MLRP: Periodic invoicing plans

Vendor Evaluation transaction codes

ME61: Maintain vendor evaluation
ME62: Display vendor evaluation
ME63: Re-evaluate automatic sub criteria
ME6A: Display changes to vendor evaluation
ME6F: Print evaluation sheet
ME6G: Vendor evaluation in the background

Transaction codes for Scheduling Agreements

ME31L: Create scheduling agreement
ME37: Create stock transport scheduling agreement
ME32L: Change scheduling agreement
ME33L: Display scheduling agreement
ME34L: Maintain scheduling agreement supplement
ME3R: Recalculate scheduling agreement prices
ME85: Re-number schedule lines
ME86: Aggregate schedule lines
ME87: Aggregate PO history
ME88: Reset agreed cumulative quantity and reconciliation date

INFORMATION