SAP ABAP reference: transactions, tables and errors
Practitioner SAP ABAP reference pages: the transactions, tables, dumps, messages and functional issues a ABAP consultant actually meets, with root causes and safe resolution paths.
SAP transaction codes
SAP tables
- CDHDRChange Document Header
- CDPOSChange Document Items
- DD02LABAP Dictionary table catalog
- DD03LDD03L Table Field Catalog
- DD04TDD04T Data Element Text Table
- DD07TDomain Fixed Values Text Table
- E070Transport Request and Task Header Table
- E070CChange Request Client Attributes Table
- E071Transport request object list table
- E071KTransport request key entries for table content
- ENLFDIRENLFDIR function module source include mapping
- NASTNAST Output and Message Status Table
- REPOSRCProgram Source Administration Table
ABAP short dumps
- ASSERTION_FAILEDASSERTION_FAILED short dump
- ASSIGN_LENGTH_0ASSIGN_LENGTH_0 Runtime Error
- CALL_FUNCTION_CONFLICT_LENGCALL_FUNCTION_CONFLICT_LENG runtime error
- CALL_FUNCTION_CONFLICT_TYPECALL_FUNCTION_CONFLICT_TYPE Dump Causes and Fix
- CALL_FUNCTION_NOT_FOUNDCALL_FUNCTION_NOT_FOUND Runtime Error
- CALL_FUNCTION_PARM_MISSINGCALL_FUNCTION_PARM_MISSING Dump Analysis
- CALL_FUNCTION_REMOTE_ERRORCALL_FUNCTION_REMOTE_ERROR dump diagnosis
- CALL_FUNCTION_SEND_ERRORCALL_FUNCTION_SEND_ERROR dump diagnosis and fix
- COMPUTE_BCD_OVERFLOWCOMPUTE_BCD_OVERFLOW Runtime Error
- COMPUTE_BCD_ZERODIVIDECOMPUTE_BCD_ZERODIVIDE — Division by Zero on Packed Decimal Fields
- COMPUTE_INT_PLUS_OVERFLOWCOMPUTE_INT_PLUS_OVERFLOW dump explained
- COMPUTE_INT_ZERODIVIDECOMPUTE_INT_ZERODIVIDE runtime error diagnosis
- CONNE_IMPORT_WRONG_COMP_TYPECONNE_IMPORT_WRONG_COMP_TYPE — IMPORT Structure Mismatch
- CONVT_OVERFLOWCONVT_OVERFLOW runtime error diagnosis
- CX_SY_CONVERSION_NO_NUMBERCX_SY_CONVERSION_NO_NUMBER dump analysis
- CX_SY_CREATE_OBJECT_ERRORCX_SY_CREATE_OBJECT_ERROR — CREATE OBJECT Instantiation Failure
- CX_SY_DYNAMIC_OSQL_SEMANTICSCX_SY_DYNAMIC_OSQL_SEMANTICS — Dynamic Open SQL Semantic Error
- CX_SY_ITAB_LINE_NOT_FOUNDCX_SY_ITAB_LINE_NOT_FOUND Dump Analysis
- CX_SY_NO_HANDLERCX_SY_NO_HANDLER — Uncaught Exception With No Handler
- CX_SY_OPEN_SQL_DBCX_SY_OPEN_SQL_DB runtime error
- CX_SY_REF_IS_INITIALCX_SY_REF_IS_INITIAL — Dereferencing an Initial Data Reference
- CX_SY_ZERODIVIDECX_SY_ZERODIVIDE runtime exception
- DATA_LENGTH_0DATA_LENGTH_0 Runtime Error Diagnosis
- DATA_OFFSET_LENGTH_TOO_LARGEDATA_OFFSET_LENGTH_TOO_LARGE — Offset/Length Exceeds Object
- DBIF_RSQL_INVALID_CURSORDBIF_RSQL_INVALID_CURSOR runtime error
- DBIF_RSQL_INVALID_REQUESTDBIF_RSQL_INVALID_REQUEST short dump
- DBIF_RSQL_SQL_ERRORDBIF_RSQL_SQL_ERROR runtime error
- DBIF_RSQL_TABLE_UNKNOWNDBIF_RSQL_TABLE_UNKNOWN — Database Table Unknown
- DYNPRO_MSG_IN_HELPDYNPRO_MSG_IN_HELP Runtime Error
- DYNPRO_NOT_FOUNDDYNPRO_NOT_FOUND runtime error
- GETWA_NOT_ASSIGNEDGETWA_NOT_ASSIGNED — Field Symbol Not Assigned
- ITAB_DUPLICATE_KEYITAB_DUPLICATE_KEY Dump Causes and Fixes
- ITAB_ILLEGAL_INDEXITAB_ILLEGAL_INDEX dump causes and fixes
- MEMORY_NO_MORE_PAGINGMEMORY_NO_MORE_PAGING Runtime Error
- MESSAGE_TYPE_XMESSAGE_TYPE_X Runtime Error Dump
- MOVE_CAST_ERRORMOVE_CAST_ERROR dump: failed dynamic type cast
- MOVE_TO_LIT_NOTALLOWEDMOVE_TO_LIT_NOTALLOWED runtime error
- OBJECTS_OBJREF_NOT_ASSIGNEDOBJECTS_OBJREF_NOT_ASSIGNED — Unbound Object Reference
- OBJECTS_OBJREF_NOT_ASSIGNED_NOOBJECTS_OBJREF_NOT_ASSIGNED_NO — Object Reference Not Assigned
- PERFORM_CONFLICT_TYPEPERFORM_CONFLICT_TYPE runtime error
- POSTING_ILLEGAL_STATEMENTPOSTING_ILLEGAL_STATEMENT Runtime Error
- RAISE_EXCEPTIONRAISE_EXCEPTION Dump: Uncaught Classic Exception
SAP BAPIs
SAP function modules
- ALSM_EXCEL_TO_INTERNAL_TABLELegacy Excel Upload into an Internal Table
- BAL_DB_DELETEDelete Persisted Application Logs from the Database
- BAL_DB_DEQUEUERelease Application Log Database Locks
- BAL_DB_ENQUEUELock Application Logs for Consistent Update
- BAL_DB_LOADLoad Persisted Application Logs into BAL Memory
- BAL_DB_SAVEPersist Application Logs from Memory to the Database
- BAL_DB_SEARCHSearch Persisted Application Logs by Header Criteria
- BAL_DSP_LOG_DISPLAYDisplay Application Log Messages Held in Memory
- BAL_GLB_MEMORY_REFRESHReset Application Log Global Memory
- BAL_LOG_CREATECreate an Application Log in Memory
- BAL_LOG_EXCEPTION_ADDAdd an Exception to an Application Log
- BAL_LOG_MSG_ADDAdd a Message to an Application Log
- BAL_LOG_MSG_DELETEDelete a Message from an In-Memory Application Log
- BAL_LOG_REFRESHRemove a BAL Log from the Current Memory Context
- CALCULATE_DATECalculate a Future or Offset Date
- CHANGEDOCUMENT_READRead Change Document Header and Item Details
- CHANGEDOCUMENT_READ_HEADERSRead Change Document Headers
- CLOI_PUT_SIGN_IN_FRONTMove a Trailing Numeric Sign to the Front
- CLOSE_FORMClose and Finalize a SAPscript Output Session
- CONVERSION_EXIT_ALPHA_INPUTALPHA Conversion Exit for Numeric Key Fields
- CONVERSION_EXIT_ALPHA_OUTPUTConversion Exit ALPHA Output Function Module
- CONVERSION_EXIT_CUNIT_INPUTConvert External Commercial Unit to Internal SAP Unit
- CONVERSION_EXIT_CUNIT_OUTPUTConvert Internal SAP Unit to External Commercial Unit
- CONVERSION_EXIT_ISOLA_INPUTConvert ISO Language Code to SAP Language Key
- CONVERSION_EXIT_ISOLA_OUTPUTConvert SAP Language Key to ISO Language Code
- CONVERSION_EXIT_LUNIT_INPUTConvert External Technical Unit to Internal SAP Unit
- CONVERSION_EXIT_LUNIT_OUTPUTConvert Internal SAP Unit to External Technical Unit
- CONVERSION_FACTOR_GETRead Conversion Factors Between Units
- CONVERT_OTFConvert OTF Form Output to Another Format
- DATE_CHECK_PLAUSIBILITYValidate an ABAP Calendar Date
- DATE_COMPUTE_DAYGet Weekday Number for a Date
- DATE_CONVERT_TO_FACTORYDATEConvert Calendar Date to Factory Workday Sequence
- DATE_GET_WEEKGet SAP Calendar Week for a Date
- DATE_TO_DAYReturn Day Name or Day Information for a Date
- DAY_IN_WEEKReturn Numeric Day of Week
- DD_DOMVALUES_GETRead Fixed Values of a DDIC Domain
- DDIF_DOMA_GETRead an ABAP Dictionary Domain Definition
- DDIF_FIELDINFO_GETRead DDIC Field Metadata
- DDIF_NAMETAB_GETRead Runtime Nametab Metadata for a DDIC Object
- DDIF_TABL_GETRead Complete DDIC Table or Structure Definition
- DEQUEUE_ALLDEQUEUE_ALL Function Module Reference
- DEQUEUE_E_TABLERelease a Generic Table-Key Enqueue Lock
- DYNP_VALUES_READRead Current Values from a Dynpro Screen
- DYNP_VALUES_UPDATEUpdate Values on the Current Dynpro
- EASTER_GET_DATECalculate Easter Sunday for a Year
- END_FORMEnd the Current SAPscript Form Instance
- ENQUEUE_E_TABLESet a Generic Lock on a Table-Key Argument
- ENQUEUE_READReading the enqueue lock table from ABAP
- F4_DATEDisplay Standard Date Value Help
- F4IF_FIELD_VALUE_REQUESTInvoke DDIC-Based F4 Help for a Runtime Field
- F4IF_INT_TABLE_VALUE_REQUESTBuilding an F4 value help from an internal table
- FACTORYDATE_CONVERT_TO_DATEConvert a Factory-Date Sequence to a Calendar Date
- FILE_READ_AND_CONVERT_SAP_DATARead and Convert a Flat File into SAP Data
- FILENAME_GETResolve or Request a Logical/Physical Filename
- FP_FUNCTION_MODULE_NAMEResolve the Generated Function Module for an Adobe Form
- FP_JOB_CLOSEClose an Adobe Form Output Job
- FP_JOB_OPENOpen an Adobe Form Output Job
- FUNCTION_EXISTSCheck Whether a Function Module Exists
- GUI_DOWNLOADGUI_DOWNLOAD Function Module for Frontend File Export
- GUI_IS_AVAILABLECheck Whether an SAP GUI Frontend Is Available
- GUI_UPLOADUpload a Frontend File into an Internal Table
- HOLIDAY_CHECK_AND_GET_INFOCheck Whether a Date Is a Holiday and Return Details
- HOLIDAY_GETRead Holidays for a Date Range or Calendar Context
- HR_HK_DIFF_BT_2_DATESHong Kong Date Difference Function Module
- JOB_CLOSEJOB_CLOSE Function Module Reference
- JOB_OPENOpening a background job for step submission
- JOB_SUBMITJOB_SUBMIT Function Module for Background Job Steps
- LAST_DAY_OF_MONTHSGet the Last Day of a Calendar Month
- LVC_FIELDCATALOG_MERGEBuild an LVC Field Catalog from DDIC Metadata
- MONTH_NAMES_GETRead Language-Dependent Month Names
- MONTHS_BETWEEN_TWO_DATESCalculate Month Difference Between Dates
- NUMBER_CHECKValidate a Number Against a Number-Range Interval
- NUMBER_GET_INFORead Current Information for a Number-Range Interval
- NUMBER_GET_NEXTNUMBER_GET_NEXT Function Module
- NUMBER_RANGE_OBJECT_CLOSEClose Number-Range Object Maintenance Processing
- NUMBER_RANGE_OBJECT_LISTList Number-Range Objects
- NUMBER_RANGE_OBJECT_MAINTAINMaintain Number-Range Object Configuration
- NUMBER_RANGE_OBJECT_READRead Number-Range Object Definition Data
- NUMBER_RANGE_OBJECT_UPDATEUpdate Number-Range Object Definition Data
- OPEN_FORMOpen a SAPscript Form for Output
- POPUP_TO_CONFIRMGeneric confirmation popup function module
- POPUP_TO_CONFIRM_DATALOSSConfirm an Action that May Discard Data
- POPUP_TO_DECIDEDisplay a Two-Choice Decision Popup
- POPUP_TO_GET_VALUEPrompt for a Single DDIC Field Value
- POPUP_TO_INFORMDisplay an Informational Popup
- POPUP_TO_SELECT_MONTHSelect a Month in a Classic Popup
- POPUP_WITH_TABLE_DISPLAYDisplay an Internal Table in a Popup
- READ_TEXTREAD_TEXT function module for SAPscript long text
- REPS_OBJECT_ACTIVATEActivate a Generated Repository Object
- REUSE_ALV_BLOCK_LIST_APPENDAppend One Dataset to a Classic ALV Block List
- REUSE_ALV_BLOCK_LIST_DISPLAYDisplay the Appended Classic ALV Block List
- REUSE_ALV_BLOCK_LIST_INITInitialize a Classic ALV Block List
- REUSE_ALV_COMMENTARY_WRITEWrite Header/Commentary Blocks for Classic ALV
- REUSE_ALV_EVENTS_GETGet the Supported Event Catalogue for Classic ALV
- REUSE_ALV_FIELDCATALOG_MERGEBuilding an ALV field catalog from a DDIC structure
- REUSE_ALV_GRID_DISPLAYClassic ALV grid display function module
- REUSE_ALV_LIST_DISPLAYDisplay a Classic ALV List
- REUSE_ALV_VARIANT_DEFAULT_GETGet the User's Default Classic ALV Layout Variant
- REUSE_ALV_VARIANT_EXISTENCECheck Whether a Classic ALV Layout Variant Exists
- REUSE_ALV_VARIANT_F4Display F4 Help for Classic ALV Layout Variants
- RFC_GET_FUNCTION_INTERFACERead a Function Module's RFC Interface Metadata
- RKD_WORD_WRAPWrap Long Text into Fixed-Width Lines
- RS_ACCESS_PERMISSIONLock or Unlock an ABAP Program for Repository Editing
- RS_CORR_INSERTInsert a Repository Object into a Correction/Transport Request
- RS_DELETE_PROGRAMDelete an ABAP Program from the Repository
- RS_PROGRAM_CHECK_NAMEValidate an ABAP Program Name for Repository Creation
- RS_REFRESH_FROM_SELECTOPTIONSConvert a Report Selection Screen into a Range Table
- RS_VARIANT_CONTENTSRead the Values Stored in an ABAP Report Variant
- RS_VARIANT_VALUES_TECH_DATARead Technical Selection Values from a Report Variant
SAP S/4HANA changes
SAP technical topics
- ABAP Cloud and the released API modelABAP Cloud and the Released API Model
- ABAP Constructor Expressions: VALUE, CORRESPONDING, CONV, REDUCE and FILTERABAP Constructor Expressions: VALUE, CORRESPONDING, CONV, REDUCE and FILTER
- ABAP Conversion Exits: ALPHA, MATN1, CUNIT and Interface BoundariesABAP Conversion Exits: ALPHA, MATN1, CUNIT and Interface Boundaries
- ABAP Debugger: Session vs External Breakpoints and WatchpointsABAP Debugger: Session vs External Breakpoints and Watchpoints
- ABAP Internal Tables: Standard vs Sorted vs HashedABAP Internal Tables: Standard vs Sorted vs Hashed
- ABAP JOIN vs FOR ALL ENTRIESABAP JOIN vs FOR ALL ENTRIES
- ABAP Memory vs SAP Memory vs Shared MemoryABAP Memory vs SAP Memory vs Shared Memory
- ABAP RTTI and RTTS for Dynamic ProgrammingABAP RTTI and RTTS for Dynamic Programming
- ABAP SQL performance rules that still matter on HANAABAP SQL Rules That Still Matter on HANA
- ABAP Table Buffering: Single Record, Generic and Full BufferingABAP Table Buffering: Single Record, Generic and Full Buffering
- ABAP unit testing and test doublesABAP Unit Testing and Test Doubles
- ABAP Update Task: V1, V2, Update Function Modules and SM13ABAP Update Task: V1, V2, Update Function Modules and SM13
- ATC checks in an S/4HANA conversionATC Checks in an S/4HANA Conversion
- BAdIs versus user exits versus enhancement pointsBAdIs, User Exits and Enhancement Points Compared
- BDC: CALL TRANSACTION vs Batch Input Session MethodBDC: CALL TRANSACTION vs Batch Input Session Method
- Class-Based Exceptions in ABAP: TRY, CATCH, CLEANUP and RAISINGClass-Based Exceptions in ABAP: TRY, CATCH, CLEANUP and RAISING
- Clean core explained for ABAP developersClean Core for ABAP Developers
- Code pushdown from ABAP to HANAMoving ABAP Logic Down to the HANA Database
- Custom code migration for S/4HANACustom Code Migration for S/4HANA
- Custom fields and logic in S/4HANACustom Fields and Logic in S/4HANA
- Database Indexes on SAP HANA for ABAP DevelopersDatabase Indexes on SAP HANA for ABAP Developers
- Debugging Background Jobs, RFCs and Update Tasks in ABAPDebugging Background Jobs, RFCs and Update Tasks in ABAP
- Key user extensibility versus developer extensibilityKey User Extensibility vs Developer Extensibility
- Modern ABAP Open SQL: Host Variables, Expressions and PushdownModern ABAP Open SQL: Host Variables, Expressions and Pushdown
- Object-Oriented ABAP: Classes, Interfaces and InheritanceObject-Oriented ABAP: Classes, Interfaces and Inheritance
- Parallel Processing in ABAP with aRFC and Work Process GroupsParallel Processing in ABAP with aRFC and Work Process Groups
- SAP ALV: REUSE_ALV, CL_GUI_ALV_GRID and SALV ComparedSAP ALV: REUSE_ALV, CL_GUI_ALV_GRID and SALV Compared