Convert String to Uppercase in SAP ABAP
In SAP ABAP, you can convert a string or character field to uppercase using different methods.
1. Using TRANSLATE TO UPPER CASE
(Recommended)
The TRANSLATE
statement converts a string to uppercase in-place.
DATA: lv_string TYPE string VALUE 'sap abap programming'.
TRANSLATE lv_string TO UPPER CASE.
WRITE: lv_string. " Output: SAP ABAP PROGRAMMING
✅ Works for both STRING
and CHAR
.
✅ Modifies the variable directly.
2. Using CONVERSION_EXIT_ALPHA_INPUT
(For ALPHA Conversion)
If you’re dealing with numeric fields stored as CHAR, use CONVERSION_EXIT_ALPHA_INPUT
first.
DATA: lv_string TYPE char10 VALUE '00001234'.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT' EXPORTING input = lv_string IMPORTING output = lv_string.
TRANSLATE lv_string TO UPPER CASE.
WRITE: lv_string. " Output: 1234 (without leading zeros)
✅ Removes leading zeros before converting to uppercase. ❌ Only useful for numeric CHAR fields.
3. Using TOUPPER
(Newer ABAP Syntax)
For inline data declarations, use TOUPPER
.
DATA(lv_upper) = to_upper( 'sap abap' ).
WRITE: lv_upper. " Output: SAP ABAP
✅ Shorter syntax, ideal for modern ABAP (7.40+).
4. Using XSDBOOL
in SQL Queries
For uppercase conversions in SQL statements, use UPPER
.
SELECT UPPER(name) INTO @DATA(lv_upper) FROM my_table WHERE id = 1.
WRITE: lv_upper.
✅ Converts database field to uppercase before fetching.
🚀 Summary: Best Methods to Convert to Uppercase
Method | Use Case |
---|---|
TRANSLATE lv_string TO UPPER CASE | ✅ Best for general string conversion |
TOUPPER( lv_string ) | ✅ Modern ABAP syntax (7.40+) |
CONVERSION_EXIT_ALPHA_INPUT | ✅ Removes leading zeros before uppercase |
SELECT UPPER(column) | ✅ Convert text in SQL queries |