带序列号的销售订单

2020-08-15 02:00发布

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

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


我想显示带有物料序列号的销售订单。

我正在dbacockpit中准备查询,如下所示:

选择VBAP.WERKS,VBAP.VBELN,KNA1.KUNNR,KNA1.NAME1,VBAP.POSNR,VBAP.MATNR,VBAP.ARKTX,OBJK.SERNR,VBAK.AUART,VBAK.ERDAT,VBAK.BSTNK,VBAK。 BSTDK,VBAK.ERNAM
从VBAP
左侧联接VBAK在VBAK.VBELN = VBAP.VBELN <左侧>左侧联接OBJK在OBJK.OBKNR = VBAP.PAOBJNR和OBJK.OBJVW ='S'和OBJK.MATNR = VBAP.MATNR
在KNA1.KUNNR上左加入KNA1 = VBAK.KUNNR
按VBAP.VBELN,VBAP.POSNR订购

上述查询正常,并根据要求给出结果。


在我使用SE38准备了ABAP代码后,如下所示:

报告ZSERIALNO。
 类型:SLIS。
 表格:VBAP,VBAK,KNA1,OBJK。

 类型:开始于TY_FINAL,
          WERKS型VBAP-WERKS,
          VBELN TYPE VBAP-VBELN,
          KUNNR型KNA1-KUNNR,
          NAME1 TYPE KNA1-NAME1,
          POSNR类型VBAP-POSNR,
          MATNR型VBAP-MATNR,
          ARKTX型VBAP-ARKTX
          SERNR型OBJK-SERNR,
          AUART类型VBAK-AUART
          ERDAT型VBAK-ERDAT
          BSTNK型VBAK-BSTNK,
          BSTDK类型VBAK-BSTDK,
          ERNAM TYPE VBAK-ERNAM,
 TY_FINAL结束。

 数据:LV_LINES TYPE TLINE,
        LV_LINES1 TYPE TLINE,
        T1_VBELN TYPE THEAD-TDNAME,
        TLINE的线型表
        WA_LINES TYPE TLINE。
 数据:LS_LINES TYPE TLINE,
        TLINE的LT_LINES类型标准表。
 数据:带标题行的TY_FINAL的IT_FINAL类型表,
        WA_FINAL TYPE TY_FINAL。

 数据:LT_FIELDCAT类型SLIS_T_FIELDCAT_ALV。
 数据:GS_LAYOUT类型SLIS_LAYOUT_ALV。
 数据:IT_LISTHEADER类型SLIS_T_LISTHEADER。

 SELECTION-SCREEN:带有框架标题测试的B1块开始。
 选择选项:VBAP-WERKS的P_WERKS无间隔无扩展义务。
 选择屏幕:B1块的结尾。

 初始化。

   TEST ='带有序列号的销售订单报告'。

 选择开始。
   执行GET_DATA。
   进行VALIDATE_DATA。
   进行FIELD_CATALOG。
   进行DISPLAY_ALV_REPORT。

 表格GET_DATA。
 选择VBAP〜WERKS,VBAP〜VBELN,KNA1〜KUNNR,KNA1〜NAME1,VBAP〜POSNR,VBAP〜MATNR,VBAP〜ARKTX,OBJK〜SERNR,VBAK〜AUART,VBAK〜ERDAT,VBAK〜BSTNK,VBAK〜BSTDK,VBAK 约纳姆
 从VBAP
 在VBAK〜VBELN上左连接VBAK = VBAP〜VBELN
 OBJK〜OBKNR上的左联接OBJK = SER03〜OBKNR和OBJK〜OBJVW ='S'并且OBJK〜MATNR = VBAP〜MATNR
 左连接KNA1到KNA1〜KUNNR = VBAK〜KUNNR
 进入表@IT_FINAL
 VBAP〜VBELN ='0050003286'
 和VBAP〜WERKS IN P_WERKS
 按VBAP〜VBELN,VBAP〜POSNR排序。
 ENDFORM。

 FORM VALIDATE_DATA。
   如果SY-SUBRC <> 0。
     消息"无效选择",类型为" E"。
   万一。
 ENDFORM。
 

出现以下错误:

程序ZSERIALNO
" SER03〜OBKNR"的类型或函数
" SER03〜OBKNR"的结果类型和" VBAP〜PAOBJNR"的类型与
中的
操作不兼容 问题。

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

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


我想显示带有物料序列号的销售订单。

我正在dbacockpit中准备查询,如下所示:

选择VBAP.WERKS,VBAP.VBELN,KNA1.KUNNR,KNA1.NAME1,VBAP.POSNR,VBAP.MATNR,VBAP.ARKTX,OBJK.SERNR,VBAK.AUART,VBAK.ERDAT,VBAK.BSTNK,VBAK。 BSTDK,VBAK.ERNAM
从VBAP
左侧联接VBAK在VBAK.VBELN = VBAP.VBELN <左侧>左侧联接OBJK在OBJK.OBKNR = VBAP.PAOBJNR和OBJK.OBJVW ='S'和OBJK.MATNR = VBAP.MATNR
在KNA1.KUNNR上左加入KNA1 = VBAK.KUNNR
按VBAP.VBELN,VBAP.POSNR订购

上述查询正常,并根据要求给出结果。


在我使用SE38准备了ABAP代码后,如下所示:

报告ZSERIALNO。
 类型:SLIS。
 表格:VBAP,VBAK,KNA1,OBJK。

 类型:开始于TY_FINAL,
          WERKS型VBAP-WERKS,
          VBELN TYPE VBAP-VBELN,
          KUNNR型KNA1-KUNNR,
          NAME1 TYPE KNA1-NAME1,
          POSNR类型VBAP-POSNR,
          MATNR型VBAP-MATNR,
          ARKTX型VBAP-ARKTX
          SERNR型OBJK-SERNR,
          AUART类型VBAK-AUART
          ERDAT型VBAK-ERDAT
          BSTNK型VBAK-BSTNK,
          BSTDK类型VBAK-BSTDK,
          ERNAM TYPE VBAK-ERNAM,
 TY_FINAL结束。

 数据:LV_LINES TYPE TLINE,
        LV_LINES1 TYPE TLINE,
        T1_VBELN TYPE THEAD-TDNAME,
        TLINE的线型表
        WA_LINES TYPE TLINE。
 数据:LS_LINES TYPE TLINE,
        TLINE的LT_LINES类型标准表。
 数据:带标题行的TY_FINAL的IT_FINAL类型表,
        WA_FINAL TYPE TY_FINAL。

 数据:LT_FIELDCAT类型SLIS_T_FIELDCAT_ALV。
 数据:GS_LAYOUT类型SLIS_LAYOUT_ALV。
 数据:IT_LISTHEADER类型SLIS_T_LISTHEADER。

 SELECTION-SCREEN:带有框架标题测试的B1块开始。
 选择选项:VBAP-WERKS的P_WERKS无间隔无扩展义务。
 选择屏幕:B1块的结尾。

 初始化。

   TEST ='带有序列号的销售订单报告'。

 选择开始。
   执行GET_DATA。
   进行VALIDATE_DATA。
   进行FIELD_CATALOG。
   进行DISPLAY_ALV_REPORT。

 表格GET_DATA。
 选择VBAP〜WERKS,VBAP〜VBELN,KNA1〜KUNNR,KNA1〜NAME1,VBAP〜POSNR,VBAP〜MATNR,VBAP〜ARKTX,OBJK〜SERNR,VBAK〜AUART,VBAK〜ERDAT,VBAK〜BSTNK,VBAK〜BSTDK,VBAK 约纳姆
 从VBAP
 在VBAK〜VBELN上左连接VBAK = VBAP〜VBELN
 OBJK〜OBKNR上的左联接OBJK = SER03〜OBKNR和OBJK〜OBJVW ='S'并且OBJK〜MATNR = VBAP〜MATNR
 左连接KNA1到KNA1〜KUNNR = VBAK〜KUNNR
 进入表@IT_FINAL
 VBAP〜VBELN ='0050003286'
 和VBAP〜WERKS IN P_WERKS
 按VBAP〜VBELN,VBAP〜POSNR排序。
 ENDFORM。

 FORM VALIDATE_DATA。
   如果SY-SUBRC <> 0。
     消息"无效选择",类型为" E"。
   万一。
 ENDFORM。
 

出现以下错误:

程序ZSERIALNO
" SER03〜OBKNR"的类型或函数
" SER03〜OBKNR"的结果类型和" VBAP〜PAOBJNR"的类型与
中的
操作不兼容 问题。

付费偷看设置
发送
7条回答
渐行渐远_HoldOn
1楼-- · 2020-08-15 02:57

您好 DIPAK NAKUM

您不能在JOIN条件下使用SER03,因为该表未用于 SQL查询的任何其他位置。

此外,您还需要在P_WERKS之前的at符号(@)。

问候,
Mateusz

< p>编辑:如果要获取VBAP记录的序列号,则应使用SDAUFNR和POSNR字段搜索SER02表以及VBAP。 然后通过OBKNR字段将OBJK与SER02中的记录连接。

hongfeng1314
2楼-- · 2020-08-15 02:47

请更详细地描述您的问题。

数据类型是您的问题吗?

在SER03〜OBKNR上左连接SER03 = VBAP〜PAOBJNR 
打一壶酱油
3楼-- · 2020-08-15 02:55
更新的查询:

 选择VBAP〜WERKS,VBAP〜VBELN,KNA1〜KUNNR,KNA1〜NAME1,VBAP〜POSNR,VBAP〜MATNR,VBAP〜ARKTX,OBJK〜SERNR,VBAK〜AUART,VBAK〜ERDAT,VBAK〜BSTNK,VBAK〜BSTDK,VBAK 约纳姆
 从VBAP
 在VBAK〜VBELN上左连接VBAK = VBAP〜VBELN
 在VBRP〜VBELN上左联接VBRP = VBAP〜VBELN
 OBJK〜OBKNR上的左联接OBJK = VBRP〜PAOBJNR和OBJK〜OBJVW ='S'并且OBJK〜MATNR = VBAP〜MATNR
 左连接KNA1到KNA1〜KUNNR = VBAK〜KUNNR
 进入表@IT_FINAL
 VBAP〜VBELN ='0050003286'
 和VBAP〜WERKS IN @P_WERKS
 按VBAP〜VBELN,VBAP〜POSNR排序。

 错误:
 " OBJK〜OBKNR"的类型或函数的结果类型
 " OBJK〜OBKNR"和" VBRP〜PAOBJNR"的类型与
 有问题的操作。


 
微wx笑
4楼-- · 2020-08-15 02:51

给出以下错误:

" SER03〜OBKNR"的类型或函数
" SER03〜OBKNR"的结果类型以及" VBAP〜PAOBJNR"的类型与所讨论的
操作不兼容。

CPLASF-自律
5楼-- · 2020-08-15 02:43

请在邮件正文编辑器中使用"代码"按钮来格式化ABAP编码。


亲切的问候,
Mateusz
xfwsx85
6楼-- · 2020-08-15 02:57

hi Mateusz Adamus

我应该使用哪个表代替序列号SER03?

一周热门 更多>