OVERLAY is a keyword used in SAP ABAP programming.This tutorial covers its introduction & syntax details.
OVERLAY
Basic form
OVERLAY c1 WITH c2.
Addition
… ONLY c3
Effect
The contents of the field c2 overlay the field c1 in all positions where c1 has the value SPACE ; c2 itself remains unchanged.
The return code value is set as follows:
SY-SUBRC = 0 At least one character in c1 is overlaid by a character from c2 .
SY_SUBRC = 4 No character in c1 was overlaid by a character from c2 .
Example
DATA: WORK(20) VALUE ‘Th t h s ch ng d.’,
HELP(20) VALUE ‘Grab a pattern’.
OVERLAY WORK WITH HELP.
WORK now contains ‘ That has changed. ‘ and the system field SY-SUBRC is set to 0.
Note
If c1 is longer than c2 , c1 is only overlaid by the length of c2 . The result for overlapping fields c1 and c2 is undefined.
Addition
… ONLY c3
Effect
The
contents of the field c2 overlay the field c1 only in those positions
where c1 has one of the characters existing as a value in c3 ; the
fields c2 and c3 remain unchanged.
Example
Linking field selection templates:
DATA: ONE(16), TWO(16).
ONE = ‘—-****++++….’.
TWO = ‘-*+.-*+.-*+.-*+.’.
OVERLAY ONE WITH TWO ONLY ‘.’.
OVERLAY TWO WITH ONE ONLY ‘.+’.
OVERLAY ONE WITH TWO ONLY ‘+*’.
Field ONE now contains ‘—–***-*++-*+.’ and field TWO contains ‘-*—***-*++-*+.’ .
Note
Performance
The
runtime required for the OVERLAY command in the example of the basic
form is about 45 msn (standardized microseconds). To execute the
addition … ONLY c3 , about 40 msn are needed.