shm*_*lki 4 abap loops dynamic where-clause
我必须根据 where 条件在我的内部表上执行循环,但根据我的程序的模式,必须在运行时修改 where 条件的字段。
我知道在 SELECT 语句中这是可能的,但是当我在循环中执行此操作时出现错误。
这是我的代码:
CASE gv_cdvue.
WHEN 'L'.
lv_condi = 'dcmdr GE gv_daybf OR dcmdr LE gv_daybf '.
WHEN 'C'.
lv_condi = 'dcldr GE gv_daybf OR dcldr LE gv_daybf '.
WHEN 'E'.
WHEN OTHERS.
ENDCASE.
LOOP AT gt_plcad INTO ls_plcad WHERE (lv_condi).
....
ENDLOOP.
Run Code Online (Sandbox Code Playgroud)
我的错误是:
Statement concluding with "...(LV_CONDI)" ended unexpectedly.
Run Code Online (Sandbox Code Playgroud)
由于 SAP 不兼容,您会收到错误消息。循环中动态where条件添加7.0 EhP2版本。你应该高于 7.0 Ehp2 然后才可以编写动态 where 条件。
我希望这个答案对您有所帮助。