abap根据knmt表销售组织 分销渠道 客户 物料号拼接信息objek获取ausp表中的数据具体代码
时间: 2024-03-16 22:44:29 浏览: 152
好的,根据您的需求,我提供以下 ABAP 代码供参考:
```
DATA: lt_knmt TYPE STANDARD TABLE OF knmt,
lt_ausp TYPE STANDARD TABLE OF ausp,
lv_objek TYPE char30,
lv_vkorg TYPE vkorg,
lv_vtweg TYPE vtweg,
lv_kunnr TYPE kunnr,
lv_matnr TYPE matnr.
* 设置各变量值,例如:'0001' 为销售组织代码,'0001' 为分销渠道代码,'000001' 为客户代码,'000000000000100001' 为物料号
lv_vkorg = '0001'.
lv_vtweg = '0001'.
lv_kunnr = '000001'.
lv_matnr = '000000000000100001'.
* 查询 knmt 表,获取对应的 OBJNR
SELECT objnr FROM knmt INTO TABLE lt_knmt
WHERE vkorg = lv_vkorg
AND vtweg = lv_vtweg
AND kunnr = lv_kunnr
AND matnr = lv_matnr.
* 根据 OBJNR 拼接 objek 参数,查询 ausb 表
LOOP AT lt_knmt ASSIGNING FIELD-SYMBOL(<fs_knmt>).
lv_objek = <fs_knmt>-objnr.
SELECT * FROM ausp INTO TABLE lt_ausp
WHERE objek = lv_objek.
ENDLOOP.
* 遍历结果表,获取属性值
LOOP AT lt_ausp ASSIGNING FIELD-SYMBOL(<fs_ausp>).
WRITE: / <fs_ausp>-atinn, <fs_ausp>-atwrt.
ENDLOOP.
```
以上代码中,我们首先根据给定的销售组织、分销渠道、客户和物料号,查询 knmt 表获取 objnr 参数。然后,根据 objnr 拼接 objek 参数,查询 ausb 表获取属性值。最后,使用 FIELD-SYMBOLS 语句遍历结果表,获取属性值并输出即可。
希望以上信息能够帮助到您,如有问题请随时追问。
阅读全文