条件条件和选择语句中的字符串模板

2020-08-22 12:38发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家们,


我正在尝试在带where条件的select语句中使用字符串模板。 但是语法检查失败,并缺少一些转义和语法错误。
代码如下:

 Data(lv_vendor)='1234'
 
 从表中选择*
 到@data(lt_table)其中
 供应商eq lv_vendor或
 供应商eq @ | {lv_vendor alpha = in} |。
 

这有可能吗,如何使用转义的符号进行归档?

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家们,


我正在尝试在带where条件的select语句中使用字符串模板。 但是语法检查失败,并缺少一些转义和语法错误。
代码如下:

 Data(lv_vendor)='1234'
 
 从表中选择*
 到@data(lt_table)其中
 供应商eq lv_vendor或
 供应商eq @ | {lv_vendor alpha = in} |。
 

这有可能吗,如何使用转义的符号进行归档?

付费偷看设置
发送
8条回答
土豆飞人
1楼 · 2020-08-22 13:13.采纳回答

Sandra Rossi 提供了有关版本控制的重要提示。 我使用的是NW ABAP 7.4。 该声明在我的系统中不起作用。 非常感谢您的回答。 不幸的是,我无法为您的右anwer提供奖励。 Sandra Rossi



所以这是最合适的答案:

https://answers.sap.com/comments/12998477 /view.html

我是小鹏鹏啊
2楼-- · 2020-08-22 13:16

没问题,对我来说很好。 让我们将整个答案存储在同一位置。

这一步可以在我的系统上编译并很好地执行:

 DATA(lv_partner)= CONV but000-partner(`106221`)。
 选择*从but000
     合作伙伴情商@lv_partner或
         合作伙伴EQ @(| {lv_partner ALPHA = IN} |)
     

(不要忘记只有在有足够空间的情况下才添加前导零,因此在这里我声明了正确长度的变量)。

@(...)之类的主机表达式仅从ABAP 7.50起存在

,如果版本低于7.50:

 TYPES ty_custid TYPE ztravel_app_884-customer_id。
 data(custid_ext)= CONV ty_custid('77')。  "输入/输出字段
 data(custid_int)= CONV ty_custid(| {custid_ext ALPHA = IN} |)。  "内部领域
 选择 *
       来自ztravel_app_884
      在哪里customer_id = @custid_int
       插入表@DATA(testola)。
Baoming ROSE
3楼-- · 2020-08-22 13:21

您需要将其放在'()之间,如下所示:

 @(| {lv_vendor alpha = in} |  )
野沐沐
4楼-- · 2020-08-22 13:15

Rico Stoll 不知道为什么会出现错误,这可能是因为abap的版本较旧 ? 但是下面的代码在ABAp云中对我来说很好用。

 data(custid)='77'。
     选择 *
       来自ztravel_app_884
      在哪里customer_id = @(| {custid ALPHA = IN} |)
       到表@DATA(testola)。
 

-Mahesh

SAP砖家
5楼-- · 2020-08-22 13:15

使用@ lv_vendor而不是lv_vendor。 确切的错误消息是什么?

lukcy2020
6楼-- · 2020-08-22 13:18

并且,请检查注释: https://launchpad.support.sap.com/#/notes/0002433966 看看它是否适用于您的系统!

奄奄一息的小鱼
7楼-- · 2020-08-22 13:15

您好Rico Stoll

尝试以下代码,您错过了TABLE关键字 Rico Stoll 。 尝试使用下面的代码。

 SELECT * FROM表
 插入表@DATA(lt_table)
 供应商EQ lv_vendor在哪里或
       供应商EQ @(| {lv_vendor ALPHA = IN} |)。

致谢!

一周热门 更多>