Abap 使用selectdatasource~*语法的工作示例

Abap 使用selectdatasource~*语法的工作示例,abap,Abap,对于SAP关键字文档中给出的示例在相应ABAP版本的系统中不被接受,我仍然感到困惑 我试图在ABAP7.40系统上运行给定的forselectdatasource~*…,但得到了错误 此处不允许使用“,”,因为它包含无效字符或是关键字[…] 删除,时,错误为 不存在名为“*”的组件。“*” 这个例子是 正确的例子是什么?和/或:我的系统应该接受哪个ABAP版本(以及如何检查)?您已经提到的关键字文档说明 当使用data_source~*时,语法检查是在a中执行的,它比常规语句更严格地处理语句 语

对于SAP关键字文档中给出的示例在相应ABAP版本的系统中不被接受,我仍然感到困惑

我试图在ABAP7.40系统上运行给定的for
selectdatasource~*…
,但得到了错误

此处不允许使用“,”,因为它包含无效字符或是关键字[…]

删除
时,错误为

不存在名为“*”的组件。“*”

这个例子是


正确的例子是什么?和/或:我的系统应该接受哪个ABAP版本(以及如何检查)?

您已经提到的关键字文档说明

当使用data_source~*时,语法检查是在a中执行的,它比常规语句更严格地处理语句 语法检查

严格模式上的文档页面标题为

SP08版本7.40中的严格模式


因此,我假设您至少需要SAP®BASIS 740 SP08。

我刚刚复制了该示例代码,它在我的7.40 SP11系统上工作得非常出色。您应该检查Netweaver的SP级别。可通过以下方式完成:

  • 从主菜单转到系统->状态
  • 按SAP System data中的Component(组件)按钮可查看系统的组件版本
  • 您应该看到如下内容:

    SAP_ABA
    组件是您的ABAP服务器,
    SP Level
    列表示您的AS的补丁级别

    必要的补丁级别可以在文档的一节中看到,在这里我们可以看到这种语法是可用的。
    没有发布特定更改的可搜索索引,因此您应该手动搜索。

    该代码适用于我,没有问题。您使用的是哪个SAP基础版本和修补程序级别/SP级别?适用于SAP ERP 6.0的EHP7。这就是您要求的吗?否。系统>状态,详细信息按钮,带组件的行SAP_BASIS是您需要的信息。
    TYPES BEGIN OF structure.
    TYPES carrname TYPE scarr-carrname.
    INCLUDE TYPE spfli AS spfli.
    TYPES url TYPE scarr-url.
    TYPES END OF structure.
    
    DATA itab TYPE STANDARD TABLE OF structure WITH EMPTY KEY.
    
    SELECT scarr~carrname, spfli~*, scarr~url
           FROM scarr INNER JOIN spfli ON scarr~carrid = spfli~carrid
           INTO TABLE @itab.
    
    cl_demo_output=>display( itab ).