The MODIFY Statement in Open SQL

 The MODIFY Statement in Open SQL

What is the MODIFY Statement?

The MODIFY statement in Open SQL is used for inserting or updating entries in a database table. It has two primary functions:

  1. Insert: Adds a new line if no entry with the same primary key exists.
  2. Update: Modifies an existing line if an entry with the same primary key exists.

Syntax

The basic syntax is:

MODIFY <database table> FROM <work area>

How it Works

  • Inserting a New Line: A new line is inserted if the primary key in the work area is unique.
  • Updating an Existing Line: The existing line is overwritten if a matching primary key is found.
  • Return Code: SY-SUBRC is set to 0 post execution.

Example

Consider this ABAP code snippet:

DATA: gwa_employee TYPE zemployee.

gwa_employee-id      = 6.
gwa_employee-name    = 'JOSEPH'.
gwa_employee-place   = 'FRANKFURT'.
gwa_employee-phone   = '7897897890'.
gwa_employee-dept_id = 5.

MODIFY zemployee FROM gwa_employee.

In this example, the zemployee table is modified based on gwa_employee data.

Before the MODIFY Execution

ZEMPLOYEE table before MODIFY

After the MODIFY Execution

ZEMPLOYEE table after MODIFY Statement in Open SQL

Observations

  • When there was no entry with the key 6, a new entry was added.
  • Upon modifying the entry with key 6 again but with different data, the existing record was updated.

ZEMPLOYEE table after second MODIFY Statement in Open SQL

error: Content is protected !!