SAP 根据工厂 加 权限组 获取邮箱地址 ZSDT050- WERKS = LIPS- WERKS & ZSDT050- ZAUGRP = BUT000- AUGRP 或 VBAK- ZAUGRP 取值:ZSDT050- ZQXZYX ZSDT050- ZCGYYX ZSDT050- ZYWGLYYX ZSDT050- ZQTYX1 ZSDT050- ZQTYX2
时间: 2024-02-14 13:08:53 浏览: 130
根据你的描述,我理解为你想要根据工厂和权限组来获取对应的邮箱地址。如果是这样,你可以使用SAP ABAP语言编写代码来实现。具体的实现过程如下:
1. 首先,需要定义一些数据类型和变量,例如:
```
TYPES: BEGIN OF ty_email,
email_address TYPE ad_smtpadr,
END OF ty_email.
DATA: lt_email TYPE STANDARD TABLE OF ty_email,
ls_email TYPE ty_email,
lv_werks TYPE werks_d,
lv_zaugrp TYPE zaugrp,
lv_email_address TYPE ad_smtpadr.
```
其中,`ty_email`是一个结构体,包含了一个邮箱地址`email_address`;`lt_email`是一个标准表,用于存储邮箱地址;`ls_email`是一个结构体变量,用于存储单个邮箱地址;`lv_werks`和`lv_zaugrp`分别表示工厂和权限组;`lv_email_address`用于存储单个邮箱地址的字符串。
2. 接下来,需要根据工厂和权限组查询对应的邮箱地址,例如:
```
SELECT zqxzyx zcgyyx zywglyyx zqtyx1 zqtyx2
FROM zsd_t050
INTO CORRESPONDING FIELDS OF TABLE lt_email
WHERE werks = lv_werks
AND zaugrp = lv_zaugrp.
```
其中,`zsd_t050`是一个自定义的数据表,存储了工厂、权限组和邮箱地址等信息,`CORRESPONDING FIELDS OF`表示将查询结果直接映射到`lt_email`表中的对应字段,`WHERE`语句表示查询条件。
3. 最后,将查询到的邮箱地址进行处理,例如:
```
LOOP AT lt_email INTO ls_email.
lv_email_address = ls_email-email_address.
" do something with the email address here
ENDLOOP.
```
这里使用`LOOP AT`遍历查询结果,将单个邮箱地址赋值给`lv_email_address`,然后可以对邮箱地址进行进一步的处理。
以上就是根据工厂和权限组获取邮箱地址的基本流程,具体的实现方式可能因为不同的SAP版本和数据结构而有所不同,需要根据实际情况进行调整。
阅读全文