ABAP开发中的屏幕跳转
这里介绍常见的几种在开发中常用到的事务代码跳转功能。
1、最常用到的是“SET PARAMETER”语句赋值,然后再使用“CALL TRANSACTION”语句跳转屏幕。
比如采购订单、销售订单、交货单、采购发票、销售发票等事务代码,均可以利用给参数赋值来直接跳转,如下面的例子。
SET PARAMETER ID 'AUN' FIELD '384'.
CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.
2、物料主数据显示“MM03”指定跳转到某个页签。
SET PARAMETER ID 'MXX' FIELD I_PSTAT.
SET PARAMETER ID 'MAT' FIELD I_MATNR.
SET PARAMETER ID 'WRK' FIELD I_WERKS.
SET PARAMETER ID 'LAG' FIELD I_LGORT.
SET PARAMETER ID 'BWT' FIELD I_BWTAR.
CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.
其中根据维护状态“PSTAT”判定显示哪个页签。
维护状态 (K,E,D,B,L,A)
- A Work scheduling
- B Accounting
- C Classification
- D MRP
- E Purchasing
- F Production resources/tools
- G Costing
- K Basic data
- L Storage
- P Forecasting
- Q Quality management
- S Warehouse management
- V Sales
- X Plant stocks
- Z Storage location stocks
3、事务代码MIGO无法使用“SET PARAMETER”的跳转。
因为有些字段是没有parameter ID的,这时要通过调用函数MIGO_DIALOG进行跳转。
操作可以在 MIGO 事务中执行“GOACTION”:
- A01 收货
- A02 返回交货
- A03 取消
- A04 显示
- A05 下达收货冻结库存
- A06 后续交货
- A07 发货
- A08 转移过帐
- A09 出库
- A10 入库
- A11 后续调整
参考凭证-事务 MIGO“REFDOC”:
- R01 采购订单
- R02 物料凭证
- R03 交货单
- R04 内向交货
- R05 外向交货
- R06 传送
- R07 运输标识代码
- R08 订单
- R09 预留
- R10 其他
比如下面的例子,显示物料凭证(当然你可以使用MB03的功能)。
CALL FUNCTION 'MIGO_DIALOG'
EXPORTING
I_ACTION = 'A04'
I_REFDOC = 'R02'
* I_NOTREE = 'X'
* I_NO_AUTH_CHECK =
* I_SKIP_FIRST_SCREEN = 'X'
* I_DEADEND = 'X'
* I_OKCODE = 'OK_GO'
* I_LEAVE_AFTER_POST =
* I_NEW_ROLLAREA = 'X'
* I_SYTCODE =
* I_EBELN =
* I_EBELP =
I_MBLNR = '4900000174'
I_MJAHR = '2013'
* I_ZEILE =
* I_TRANSPORT =
* I_ORDER_NUMBER =
* I_ORDER_ITEM =
* I_TRANSPORT_MEANS =
* I_TRANSPORTIDENT =
* I_INBOUND_DELIV =
* I_OUTBOUND_DELIV =
* I_RESERVATION_NUMB =
* I_RESERVATION_ITEM =
* EXT =
EXCEPTIONS
ILLEGAL_COMBINATION = 1.