原创 Tab Zhu [ SAP TAB ](javascript:void\(0\);)
点击 ** 蓝字 ** 关注我们
富强 民主 文明 和谐
自由 平等 公正 法制
爱国 敬业 诚信 友善
_**T** _
**使用内表来过滤数据FILTER**
**不念过** **去**
**START**
**不畏将来**
内表的过滤条件为 (物料群组=01,工厂=1000) 或 (物料群组=01,工厂=3000)
*… FILTER type( itab [EXCEPT] [IN ftab] [USING KEY keyname]* WHERE c1 op f1 [AND c2 op f2 […]] )
TYPES:BEGIN OF ty_filter, matkl TYPE ekpo-matkl, werks TYPE ekpo-werks, END OF ty_filter, ty_filter_tab TYPE SORTED TABLE OF ty_filter WITH UNIQUE KEY matkl werks.DATA lt_ekpo TYPE STANDARD TABLE OF ekpo.SELECT * FROM ekpo INTO TABLE lt_ekpo.
DATA lt_ekpo_sorted TYPE SORTED TABLE OF ekpo WITH UNIQUE KEY ebeln ebelp.SELECT * FROM ekpo INTO TABLE lt_ekpo_sorted ORDER BY ebeln ebelp.
"1.直接用where条件去过滤DATA(lt_ekpo_filter_01) = FILTER #( lt_ekpo_sorted WHERE ebeln = '4500000048' )."Output filtered recordscl_demo_output=>display( lt_ekpo_filter_01 ).
"制作过滤条件table,过滤条件一定要有key值DATA(lt_filter) = VALUE ty_filter_tab(( matkl = '01' werks = '1000' )( matkl = '01' werks = '3000' )).
"2.按照过滤条件table过滤数据,DATA(lt_ekpo_filter_02) = FILTER #( lt_ekpo IN lt_filter WHERE matkl = matkl AND werks = werks )."Output filtered recordscl_demo_output=>display( lt_ekpo_filter_02 ).
"3.排除过滤DATA(lt_ekpo_filter_03) = FILTER #( lt_ekpo EXCEPT IN lt_filter WHERE matkl = matkl AND werks = werks )."Output filtered recordscl_demo_output=>display( lt_ekpo_filter_03 ).2.过滤出 (物料群组=01,工厂=1000) 或 (物料群组=01,工厂=3000) 的数据
3.过滤排除掉 (物料群组=01,工厂=1000) 或 (物料群组=01,工厂=3000) 的数据
**不念过** **去**
**END**
**不畏将来**
微信号 : TAB_JXZHU
● 长按二维码关注我
● 扫码关注我