abap根据销售组织 分销渠道 客户 物料号拼接信息objek获取ausp表中的
时间: 2024-03-16 07:44:27 浏览: 19
属性值?
您好,针对您的问题,我可以提供以下 ABAP 代码片段供参考:
```
DATA: lv_objek TYPE char30 VALUE '',
lt_ausp TYPE STANDARD TABLE OF ausp.
* 设置 objek 变量值,例如:'VKORG0001VTWEG0001KUNNR000001MATNR000000000000100001'
lv_objek = 'VKORG' && 销售组织 && 'VTWEG' && 分销渠道 && 'KUNNR' && 客户 && 'MATNR' && 物料号.
* 查询 ausp 表
SELECT * FROM ausp INTO TABLE lt_ausp
WHERE objek = lv_objek.
* 遍历结果表,获取属性值
LOOP AT lt_ausp ASSIGNING FIELD-SYMBOL(<fs_ausp>).
WRITE: / <fs_ausp>-atinn, <fs_ausp>-atwrt.
ENDLOOP.
```
其中,lv_objek 变量是根据传入的销售组织、分销渠道、客户和物料号拼接后的 objek 参数,用于查询 ausp 表。在查询结果表中,使用 FIELD-SYMBOLS 语句遍历结果表,获取属性值并输出即可。
希望以上信息能够帮助到您,如有问题请随时追问。
相关问题
abap根据knmt表销售组织 分销渠道 客户 物料号拼接信息objek获取ausp表中的数据具体代码
好的,根据您的需求,我提供以下 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 语句遍历结果表,获取属性值并输出即可。
希望以上信息能够帮助到您,如有问题请随时追问。
abap alv获取表中字段,可以是内表吗
可以使用内表来获取ABAP ALV表中的字段。在ABAP中,内表是一种数据结构,可以存储和处理表格数据。你可以通过内表来获取ALV表中的字段值。
首先,你需要在ABAP程序中定义一个内表来存储ALV表的数据。你可以使用"TYPE TABLE OF"语句来定义内表,然后指定相应的数据类型。例如:
```
DATA: lt_data TYPE TABLE OF my_structure.
```
在这个例子中,`my_structure`是一个结构体类型,用于定义ALV表的字段结构。
接下来,你可以使用ALV函数模块或方法来获取ALV表的数据,并将其存储到内表中。例如,使用函数模块`REUSE_ALV_GRID_DISPLAY`:
```
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_structure_name = 'MY_STRUCTURE'
TABLES
t_outtab = lt_data.
```
在这个例子中,`MY_STRUCTURE`是ALV表的字段结构名称,`lt_data`是用于存储数据的内表。
一旦数据存储到内表中,你就可以使用内表操作来访问和处理ALV表的字段值。例如,使用`READ TABLE`语句来访问特定行和字段的值:
```
DATA: lv_fieldvalue TYPE my_structure-fieldname.
READ TABLE lt_data INDEX 1 INTO DATA(ls_data).
IF sy-subrc = 0.
lv_fieldvalue = ls_data-fieldname.
...
ENDIF.
```
在这个例子中,`lt_data`是存储ALV表数据的内表,`ls_data`是用于存储特定行数据的结构体变量,`fieldname`是ALV表中的字段名。
通过以上步骤,你可以使用内表来获取ABAP ALV表中的字段值。