ALV报表——采购订单查询(第一个ALV报表)

ALV报表 创建之前声明

            本文章只是记录个人第一个ALV报表的练习,所描述的是实现报表的每一个步骤,并对部分知识做描述,欢迎指导。


一 最终界面

输入字段定义:

字段名

字段描述

参考字段

备注

 

工厂

EKKO-WERKS

必输项

 

供应商

EKKO-LIFNR

 

 

物料号

EKPO-MATNR

 

二 用到的表和字段

Table:

TABLE NAME

EKKO

EKPO

Field:

输出字段名

参考DB

参考字段

类型

长度

备注

公司代码

EKKO

BUKRS

 

 

 

工厂

EKPO

WERKS

 

 

 

供应商

EKKO

LIFNR

 

 

 

采购订单类型

EKKO

BSART

 

 

 

采购组织

EKKO

EKORG

 

 

 

采购组

EKKO

EKGRP

 

 

 

币别

EKKO

WAERS

 

 

 

采购订单号

EKPO

EBELN

 

 

 

采购项次

EKPO

EBELP

 

 

 

物料号

EKPO

MATNR

 

 

 

库存地点

EKPO

LGORT

 

 

 

采购数量

EKPO

MENGE

 

 

 

采购单价

EKPO

NETPR

 

 

 

三 步骤

(一)写代码的前期工作

1.通过T-CODE SE38 进入ABAP编辑器,创建程序。如图1 所示 ,

  • “程序”的后边填写要创建的程序名称(注意名字的命名要有意义,遵守命名规则);
  • “子对象”中选择“源程序”,之后选择“创建”;
  • 进入 ABAP:程序属性 ,设置刚刚新增程序的属性。在"Title"的位置填写程序的介绍,或者说是一个程序的说明;
  • “Attributes”中的 "Type "选择 “可执行程序”,“Status” 类型选择“测试程序”(type、Status 的其他类型另行介绍);
  • 最后点击“ 保存 ”
图1-ABAP编辑器创建程序

2. 创建程序的时候会让选择一个开发类,这里因为我要传到测试系统,所以选了一个事先已经存在的开发类(自己事先创建的Package)而非本地对象,如图 2 所示。                      

图2-选择程序的开发类

3.要传输到测试系统还需要一个CTS (传输号),如图 3 所示,创建一个CTS,

4.注意,创建请求的“短描述”一定要有意义,最好 写上功能 版本 和 日期 时间。如图4所示。维护好短描述,点击保存按钮,返回到传输号请求,如图 5,这样 CTS(传输号)就建好了,之后我们的操作保存时都要保存到这个传输号中(主传输号)。

图4 5-创建请求(CTS描述)
图5 - 保存CTS号

5.经过以上操作后,会直接跳到编写程序代码界面,如图 6 所示。在这里我们可以打开左边的导航,如图7所示,此时,只有一个名为ZMMZRPOLIST_B1的空程序,我们还可以切换到 package,查看我们创建的程序是否包含在之前指定的开发类,如图 8 所示。

图7 - 显示导航

现在要真正的编写程序了!!

(二)代码实现

这里我将程序分成了3个包含(块)来实现:ZMMZRPOLIST_B1_top(存放全局)、ZMMZRPOLIST_B1_e01(存放事件)、ZMMZRPOLIST_B1_f01(存放子程序),如图9,所示。

注意

  • top 一般放全局数据,eo1定义事件、f01定义我们编写的子程序(如,处理数据的程序、显示数据的程序等)
  • 书写顺序(最好)top → e01→f01
图9 - 定义包含

1.双击 TOP,因为现在系统中不存在对应TOP对象,所以会有个提示框询问是否创建,此时选择 “是” ,如图10 所示;

  选择是之后,会先让我们设置TOP属性,只需要维护Title和Status就好(有没有注意到type自动选择了INCLUDE程序),如图11所示。

图10 创建 TOP 对象
图11 - 设置TOP属性

看,当我们保存时,这里又要我们选择开发类了,选择的还是和之前一样就行。具体如图12所示。

图12-选择开发类

同样的还要选择传输号,如图12所示,因为之前就创建了个主传输号并且没有被释放发布,所以选择默认的就行,我们这里点击就好。

图 13 -选择传输号

好吧,现在才是开始叙写第一个包含

1.1首先写上主程序名

 REPORT  zmmzrpolist_bln .

1.2 引入表并从表中获取我们要的字段存放到我们新建的临时表中。这里类型为标准表中的数据,最好用“LIKE”声明,如果用type得到的数据可能不全,从而导致之后的数据显示有误。

************************************************************************
* Trables 标准表
************************************************************************
TABLES: ekko,ekpo.

************************************************************************
* Business Data Define
************************************************************************
DATA:BEGIN OF gs_list ,
  bukrs LIKE ekko-bukrs, "公司代码
  werks LIKE ekpo-werks, "工厂
  lifnr LIKE ekko-lifnr, "供应商
  bsart LIKE ekko-bsart, "采购订单类型
  ekorg LIKE ekko-ekorg, "采购组织
  ekgrp LIKE ekko-ekgrp, "采购组
  waers LIKE ekko-waers, "币别
  ebeln LIKE ekpo-ebeln, "采购订单号
  ebelp LIKE ekpo-ebelp, "采购项次
  matnr LIKE ekpo-matnr, "物料号
  lgort LIKE ekpo-lgort, "库存地点
  menge LIKE ekpo-menge, "采购数量
  netpr LIKE ekpo-netpr, "采购单价
  END OF gs_list.

 DATA gt_list LIKE STANDARD TABLE OF gs_list.

1.3定义ALV变量

************************************************************************
* ALV Define 定义ALV变量
************************************************************************
TYPE-POOLS:slis."制定alv类型组

DATA:
      gt_fieldcat  TYPE slis_t_fieldcat_alv,  "用于定义ALV列字段相关类型数据,是表字段的整体
      gs_layout     TYPE slis_layout_alv.     "用于定义布局类型数据对象

1.4定义选择屏幕输入条件

  • OBLIGATORY:表示必选。如果某个屏幕输入元素处于隐藏状态,即使它是必输入的,则在提交时也不会提示你必输入(但如果是必须的,在隐藏前一要输入,否则会出错并要求重新输入),只有在显示状态时且不输入时才会提示。(COPY https://www.cnblogs.com/jiangzhengjun/p/4265184.html
  • MODIF ID key:设置修改组代码,方便屏幕的元素的批量修改,key中设定的代码将被赋给系统内表SCREEN-GROUP1字段(COPY https://www.cnblogs.com/jiangzhengjun/p/4265184.html
  • SELECTION-SCREEN:BEGIN OF BLOCK b1……SELECTION-SCREEN:END OF BLOCK b1.用来定义屏幕框架,即格式化选择屏幕
  • WITH FRAME TITLE text-s01:屏幕块名或者是说明(这里定义的是“选择条件”如图14所示)
  • PARAMETERS:设置单一的选择框,即为变量定义输入字段
  • SELECT-OPTIONS:设置一定范围,为选择标准定义 输入字段
************************************************************************
* SELECTION-SELECTION 定义选择屏幕输入条件
************************************************************************
SELECTION-SCREEN:BEGIN OF BLOCK b1 WITH FRAME TITLE text-s01.

PARAMETERS:   pa_werks  LIKE ekpo-werks  OBLIGATORY MEMORY ID wer . "工厂

SELECT-OPTIONS: so_lifnr FOR ekko-lifnr , "供应商
                so_matnr FOR ekpo-matnr. "物料

SELECTION-SCREEN:END OF BLOCK b1.
图14 - 定义选择屏幕
  • ​​“选择条件”即text-s01的设置 :

菜单栏中选择 “转到” -“文本元素”-“文本符号”如图15所示;输入文本定义的编码和要输出的文字如图16所示;当我们选择保存时,会弹出如图17所示的提示框,选择√即可;这时注意后边字段长度的变化如图18,现在是中文状态下,默认的最小、最大长度为当前状态的长度,但当我们想要在其他语言状态下显示为其他语言可能长度不够,所以,我们将最大长度设置的稍微长点

图15 - 进入选择屏幕的文本符号设置界面
图16 设置选择屏幕的文本符号
图17 - 提示信息
图18 - 文本长度
  • 不同语言显示的设置(这里我们设置的相关文本所在的程序要处于激活状态,我们之后还会涉及到其他文本,这一步骤可以留在最后设置)

菜单工具栏中选择“转到”→“翻译”,在目标语言中选择要实现的语言;这样就可以设置目标语言下显示的对应语言,具体效果如图19所示。

现在先让我们来展示下我们设置的选择屏幕,如图20所示,这时发现标有1和4的地方和我们最终要呈现的屏幕不一致,2和3的部分已实现,这就说明我们的程序在设置过程中还缺少了一些操作,接下来就是完善程序。

  • 菜单栏中选择“转到”→“文本元素”→“选择文本”,设置Selection texts,即将最后一列“dictionary”打上对勾,点击保存,将自动匹配数据库中对应的名字(当然Text可以自己设置,但是最好不要),具体效果如图21所示
图21 设置选择文本

再次展示屏幕,效果如果22所示

标题设置,如图23所示,

再次展示屏幕

图24 完善后的屏幕

2.新增子例程序

  • 'REUSE_ALV_FIELDCATALOG_MERGE'  "根据内表结构返回FIELDCAT字段结构信息
  • 'REUSE_ALV_GRID_DISPLAY'  " 输出ALV报表,定义其为GRID模式
  • i_grid_title                = '采购订单查询' "ALV 显示标题
  • gs_layout-colwidth_optimize = 'X'.  "设置LAYOUT输出格式最优化
  •  i_program_name      = sy-repid  "程序名
  •  i_internal_tabname  = 'gs_list'   "内表名称,必须为输出内表所自定义的STRUCTURE名
  •  i_inclname           = 'ZMMZRPOLIST_BLN_TOP'
  •  ct_fieldcat         = gt_fieldcat .  "导出FIELDCAT内表数据
  • ALV调用的几个标准函数 (前辈总结)

  • ALV详解:Function ALV(一)(非常推荐)(除此之外此前辈的博客都可以看下

  • 注意,多表链接字段引用格式ekko~bukrs
  • 数据查询语句SELECT(前辈总结)
FORM frm_build_fieldcat .     "处理数据               

  CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    EXPORTING
      i_program_name     = sy-repid
      i_internal_tabname = 'GS_LIST'
      i_inclname         = 'ZMMZRPOLIST_B1_TOP'
    CHANGING
      ct_fieldcat        = gt_fieldcat
    EXCEPTIONS
      program_error      = 1
      OTHERS             = 2.

 

ENDFORM.                   "frm_build_fieldcat


*&---------------------------------------------------------------------*
*&      Form  frm_build_layout
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM frm_build_layout. " 布局
  gs_layout-colwidth_optimize = 'X'.
ENDFORM.                    "frm_build_layout

*&---------------------------------------------------------------------*
*&      Form  frm_get_data
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM frm_get_data. "获得要显示的ALV报表数据
  SELECT
       ekko~bukrs ekpo~werks ekko~lifnr ekko~bsart ekko~ekorg
       ekko~ekgrp ekko~waers ekpo~ebeln ekpo~ebelp ekpo~matnr
       ekpo~lgort ekpo~menge ekpo~netpr
       INTO CORRESPONDING FIELDS OF TABLE gt_list
       FROM ekko JOIN ekpo
                  ON ekko~ebeln = ekpo~ebeln
       WHERE werks = pa_werks AND
             lifnr  IN so_lifnr AND
             matnr IN so_matnr.



    IF sy-subrc NE 0.
          "无数据
         g_data_found = ''.
         MESSAGE S001 DISPLAY LIKE 'E'.
         LEAVE LIST-PROCESSING.
         RETURN.
     ELSE.
       g_data_found = 'X'.
    ENDIF.

ENDFORM.                    "frm_get_datas


*&---------------------------------------------------------------------*
*&      Form  frm_dispaly_alv
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM frm_dispaly_alv .                      "设置显示ALV报表格式
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_callback_program = sy-repid
      i_grid_title       = text-s02
      it_fieldcat        = gt_fieldcat
      is_layout          = gs_layout
      i_save             = 'A'
    TABLES
      t_outtab           = gt_list
    EXCEPTIONS
      program_error      = 1
      OTHERS             = 2.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
       WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.

ENDFORM.                    " FRM_ALV_DISP

3.新增事件

同理双击ZMMZRPOLIST_B1_E01,书写事件。

  •  AT SELECTION-SCREEN用户在选择屏幕中执行某些功能后被触发。
  • START-OF-SELECTION:选择开始事件,如果报表中含有选择屏幕,则在选择屏幕的处理结束后触发,是报表程序的默认事件块;如果程序中部分代码不隶属于任何其它相关事件块关键字,则自动被插入该事件块的初始部分。
  • END-OF-SELECTION:选择结束事件,如果程序中使用逻辑数据库,则在所有逻辑数据库处理结束后触发;一般在该事件之中输出列表 (选择屏幕事件
AT SELECTION-SCREEN.


START-OF-SELECTION.
  PERFORM frm_build_fieldcat.  "处理数据
  PERFORM frm_build_layout.    "布局
  PERFORM frm_get_data.

END-OF-SELECTION.
  PERFORM frm_dispaly_alv.   "alv显示

(三)执行

1.完成以上操作之后(当然每一步都已经进行了保存),点击进行激活程序(程序只有激活后才可以生效),将和刚刚创建的程序相关的所有对象全选,点击,即可激活成功,集体效果如图25所示。

图25 激活程序

2.执行程序

2.1 点击 或者按F8键执行程序,输入相应的工厂可以看到如图26所示效果。

因为在开发系统没有数据,所以只显示了列标题。

图26 显示ALV报表

2.2可以进一步完善程序,加些判断,当没有数据时,显示无数据。可以自己加“消息”,也可以调用系统的。

message的建立(如图27所示):

  • T-CODE SE91
  • 键入MESSAGE CLASS ,即输入message的名称,方便以后调用,最好是,程序名_mess。
  • Create ML
图27-建立message class
  • 键入message class 短文(short text)描述,如图28

  • 这里任然要选择开发类和CTS号
  • 设置好CTS号,就可以设置MESSAGE ,具体效果如果29

MSSAGE简单介绍(具体的以后会补充):

“& & & &” :说明可以自己在引用MESSAGE 时,可以任意输入的文本,但是只能输入四个选项(可以少输,但message中最多只能输入4项)

“无相关数据”:就是我们需要message提示的信息了。

引用方法,(E代表警告)

MESSAGE S001 DISPLAY LIKE 'E'.

我们要把设置的message引入到程序中,这里要放到全局模块TOP中,如图30

另,在TOP 中再添加一个变量  DATA: g_data_found TYPE c.  

子例程中判断:

FORM frm_get_data.
  SELECT
       ekko~bukrs ekpo~werks ekko~lifnr ekko~bsart ekko~ekorg
       ekko~ekgrp ekko~waers ekpo~ebeln ekpo~ebelp ekpo~matnr
       ekpo~lgort ekpo~menge ekpo~netpr
       INTO CORRESPONDING FIELDS OF TABLE gt_list
       FROM ekko JOIN ekpo
                  ON ekko~ebeln = ekpo~ebeln
       WHERE werks = pa_werks AND
             lifnr  IN so_lifnr AND
             matnr IN so_matnr.

    IF sy-subrc NE 0. " 判断ALV 是否有数据 NE 是 等于
          "无数据
         g_data_found = ''.
         MESSAGE S001 DISPLAY LIKE 'E'.
         LEAVE LIST-PROCESSING.
         RETURN.
     ELSE.
       g_data_found = 'X'.
    ENDIF.

ENDFORM.                    

 

(四)创建T-CODE

为了方便调用程序,设置一个T-CODE,最好同程序名相同。

注意,

  • 标有 3 的 位置即在“创建 报告事务处理”中,“程序” 指的是我最开始利用T-CODE SE38 创建的 program。
  • 这里同样在创建时需要选择开发类和CTS。
图31 - 创建 T-CODE

详细代码:

*&---------------------------------------------------------------------*
*& Report  ZMMZRPOLIST_B1
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*


INCLUDE ZMMZRPOLIST_B1_top.   "全局数据
INCLUDE ZMMZRPOLIST_B1_e01.   "事件
INCLUDE ZMMZRPOLIST_B1_f01.   "子例程
*&---------------------------------------------------------------------*
*&  包括                ZMMZRPOLIST_B1_TOP
*&---------------------------------------------------------------------*

REPORT  zmmzrpolist_b1
       MESSAGE-ID    ZMMZRPOLIST_B1_MES.


************************************************************************
* Trables
************************************************************************
TABLES: ekko,ekpo.

************************************************************************
* Business Data Define
************************************************************************
DATA:BEGIN OF gs_list ,
  bukrs LIKE ekko-bukrs, "公司代码
  werks LIKE ekpo-werks, "工厂
  lifnr LIKE ekko-lifnr, "供应商
  bsart LIKE ekko-bsart, "采购订单类型
  ekorg LIKE ekko-ekorg, "采购组织
  ekgrp LIKE ekko-ekgrp, "采购组
  waers LIKE ekko-waers, "币别
  ebeln LIKE ekpo-ebeln, "采购订单号
  ebelp LIKE ekpo-ebelp, "采购项次
  matnr LIKE ekpo-matnr, "物料号
  lgort LIKE ekpo-lgort, "库存地点
  menge LIKE ekpo-menge, "采购数量
  netpr LIKE ekpo-netpr, "采购单价
  END OF gs_list.

 DATA gt_list LIKE STANDARD TABLE OF gs_list.

DATA: g_data_found TYPE c.   "用来判断是否ALV中有数据的变量,可以不设置此变量直接判断

************************************************************************
* ALV Define 定义ALV变量
************************************************************************
TYPE-POOLS:slis."制定alv类型组

DATA:
      gt_fieldcat  TYPE slis_t_fieldcat_alv,  "用于定义ALV列字段相关类型数据,是表字段的整体
      gs_layout     TYPE slis_layout_alv.     "用于定义布局类型数据对象

************************************************************************
* SELECTION-SELECTION 定义选择屏幕输入条件
************************************************************************
SELECTION-SCREEN:BEGIN OF BLOCK b1 WITH FRAME TITLE text-s01.

PARAMETERS:   pa_werks  LIKE ekpo-werks  OBLIGATORY MEMORY ID wer . "工厂

SELECT-OPTIONS: so_lifnr FOR ekko-lifnr , "供应商
                so_matnr FOR ekpo-matnr. "物料

SELECTION-SCREEN:END OF BLOCK b1.
*&---------------------------------------------------------------------*
*&  包括                ZMMZRPOLIST_B1_E01
*&---------------------------------------------------------------------*

AT SELECTION-SCREEN.


START-OF-SELECTION.
  PERFORM frm_build_fieldcat.  "处理数据
  PERFORM frm_build_layout.    "布局
  PERFORM frm_get_data.

END-OF-SELECTION.
  PERFORM frm_dispaly_alv.   "alv显示
*&---------------------------------------------------------------------*
*&  包括                ZMMZRPOLIST_B1_F01
*&---------------------------------------------------------------------*



FORM frm_build_fieldcat .

  CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    EXPORTING
      i_program_name     = sy-repid
      i_internal_tabname = 'GS_LIST'
      i_inclname         = 'ZMMZRPOLIST_B1_TOP'
    CHANGING
      ct_fieldcat        = gt_fieldcat
    EXCEPTIONS
      program_error      = 1
      OTHERS             = 2.

  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.


ENDFORM.                   "frm_build_fieldcat


*&---------------------------------------------------------------------*
*&      Form  frm_build_layout
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM frm_build_layout.
  gs_layout-colwidth_optimize = 'X'.
ENDFORM.                    "frm_build_layout

*&---------------------------------------------------------------------*
*&      Form  frm_get_data
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM frm_get_data.
  SELECT
       ekko~bukrs ekpo~werks ekko~lifnr ekko~bsart ekko~ekorg
       ekko~ekgrp ekko~waers ekpo~ebeln ekpo~ebelp ekpo~matnr
       ekpo~lgort ekpo~menge ekpo~netpr
       INTO CORRESPONDING FIELDS OF TABLE gt_list
       FROM ekko JOIN ekpo
                  ON ekko~ebeln = ekpo~ebeln
       WHERE werks = pa_werks AND
             lifnr  IN so_lifnr AND
             matnr IN so_matnr.



    IF sy-subrc NE 0. " 判断ALV 是否有数据 NE 是 等于
          "无数据
         g_data_found = ''.
         MESSAGE S001 DISPLAY LIKE 'E'.
         LEAVE LIST-PROCESSING.
         RETURN.
     ELSE.
       g_data_found = 'X'.
    ENDIF.

ENDFORM.                    "frm_get_datas


*&---------------------------------------------------------------------*
*&      Form  frm_dispaly_alv
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM frm_dispaly_alv .
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_callback_program = sy-repid
      i_grid_title       = text-s02
      it_fieldcat        = gt_fieldcat
      is_layout          = gs_layout
      i_save             = 'A'
    TABLES
      t_outtab           = gt_list
    EXCEPTIONS
      program_error      = 1
      OTHERS             = 2.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
       WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.

ENDFORM.                    " FRM_ALV_DISP

(五)传输到测试系统

1.释放传输请求号(CTS)

(在释放之前,确保暂时不会有其他修改或者完善的地方了,比如是否还要完善各语言系统间的翻译等)

1.1 T-CODE SE09 ,进入到TRANSPORT ORGANIZER,显示可修改的CTS,如图32所示

图32 - Transport Organizer

1.2 在建立程序中会有两个传输请求号,我们首先释放里层传输号(子传输号),然后是主传输号

具体操作,光标定位到传输号,  点击   。具体如图 33所示。

图33 - 释放 CTS

在释放主传输号会跳转到如图34界面,这时候,要不断点击  ,进行刷新,直到所有红色区域消失如图 35 所示,然后点击 ,返回上一层级如图36所示,可以看到多了些东西,并且传输号后出现√,那么说明CTS释放完成。到此,开发系统的操作已经完成。

图34-刷新CTS
图35 - 完全释放CTS
图 36 - 检查传输组织请求

2.接下来进入到测试系统

2.1 T-CODE 输入STMS进入传输管理系统,点击图标,如图37所示

图37 - 传输管理系统

2.2 选择要传输到的系统,双击,如图38

图 38 -选择传输系统

2.3 点击   输入传输号(主传输号),如图 39 所示;此时可以看到如图40 所示,状态(St的位置)为  ,说明还没有将程序传输到测试系统。

图39 - 选择传输号
图 40 - 传输请求 状态显示

2.4 光标定位到Request(CTS号)上,点击   ,如图41 所示。

图41 - 改变传输状态

2.5输入传输到的系统(测试系统)的集团号即可,如图42所示。

图42 - 维护传输请求集团

接下来选择“是”就好了!如图43所示。

图43 - 进行传输

2.6 最后,可以看到 状态位置 已变成,说明传输完成,接下来就可以测试程序是否能够有效执行了,具体效果如图44所示。

图44 - 完成传输

 *-----------------更新 20200514

其他传输CTS 方法——直接在开发机传输

开发机 stms 

点击 小车

因为先传输到测试机,所以定位测试机,进行双击

找到找传输的内容,按F9 选中,点击进行单个传输

 

输入目标客户系统端号(测试机)

登陆目标系统

回车后,可以看到传输界面中 小车的标识,标识正在传输

传输完成会显示

刷新之后,状态就变成

至此 CTS 传输到 测试机功能结束

传到生产机,方法同(均在开发机传输)

*----------------------------更新 20200514 end

以上操作只是简单的显示了数据,至于其他的功能后续会有完善(比如汇总、某行双击出现详细信息等)

注意,每一次重新更改都会创建一个新的传输号,这样就都需要释放-传输,删除程序也是一样哦!

 

最后再提醒一下,以上操作只是个人练习,实际应用中有标准的查询,最好就不要再建立采购订单的查询。

标准表查询:T-CODE S000进入标准SAP菜单,后勤中可以进行各种条件的选择查询采购订单,具体如图

  • 17
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值