select - 列出没有特定语言键的材料
问题描述
我对 ABAP 编码很陌生。我的任务是实现一个列出所有材料的报告,这些材料没有特定的语言键。例如,用户在选择屏幕中输入“EN”作为语言键。因此,应该显示所有没有语言键“EN”的材料。有两个表:MARA(材料数据)和 MAKT(语言键 = SPRAS),它们通过主键(MATNR)连接。
我尝试过这种方式,但它不起作用:
SELECT * FROM MARA INNER JOIN MAKT ON MARA~MATNR EQ MAKT~MATNR WHERE MAKT~SPRAS NOT IN S_SPRAS
解决方案
我假设 S_SPRAS 是具有多项选择的选择选项。在这种情况下,如果您需要显示没有指定语言的材料,请使用:
SELECT * INTO TABLE lt_mara
FROM MARA
WHERE NOT EXISTS (
SELECT * FROM MAKT WHERE MAKT~MATNR = MARA~MATNR AND MAKT~SPRAS IN S_SPRAS )
如果您需要显示至少没有一种指定语言的材料,它会更复杂,并且取决于您的运行时版本 - 更高的 7.50 或更低。
推荐阅读
- python - 如何使用 Selenium 和 BeautifulSoup 从元素内的多个文本节点中提取文本
- php - 仅获得与 a 有很多关系的第一个结果
- dart - 如何在 for 循环中等待未来函数的返回?
- react-native - 反应原生导航两个标题栏
- amazon-web-services - 如何通过 CLI 或 Boto3 获取 EC2 实例的 TimeZone
- javascript - 有没有办法合并文档值(购物车总价和数量)
- spring - 在 SpringBoot 中缓存计算的响应
- c# - 在 Windows 10 上安装兼容性 shim 数据库时出错
- javascript - 如何将带有单选选项的 JavaScript 数组传递给另一个 PHP 文件?
- c++ - 模板类型是可选的吗?