我已经创建了数据库表ZSP_EMP_DET,在其中我通过屏幕提供值来执行CRUD操作。
所以,我试着找出记录是否已经存在于表中,若找到,通过屏幕更新值,但值并没有在DB表中被修改。
DATA zsp_emp_det TYPE zsp_emp_det.
DATA gwa_emp type table of zsp_emp_det.
gwa_emp-empid = zsp_emp_det-empid. "it is a name given to input fields on screen
SELECT * from ZSP_EMP_DET
where empid = gwa_emp-empid.
IF sy-subrc = 0.
gwa_emp-fname = zsp_emp_det-fname.
gwa_emp-lname = zsp_emp_det-lname.
gwa_emp-loc = zsp_emp_det-loc.
gwa_emp-designation = zsp_emp_det-designation.
gwa_emp-bdate = zsp_emp_det-bdate.
gwa_emp-doj = zsp_emp_det-doj.
MODIFY zsp_emp_det FROM gwa_emp.
MESSAGE 'Data Modified Successfully' TYPE 'S'.
ELSE.
MESSAGE 'Data is not Modified' TYPE 'E'.
ENDIF.
您需要填充结构中的主字段。我不确定桌子的结构。您可以使用移动对应来填充您的结构,也可以选择如下结构。
SELECT *
FROM ZSP_EMP_DET
INTO gwa_emp
where empid = gwa_emp-empid.