SAP

GenScript SAP项目

项目背景

GenScript是一家做生物的跨国公司,我有幸任职在IT部门担任Java开发工程师(在职),主要负责公司内部的SCM系统的开发及维护,虽然叫SCM,但是个人感觉这个系统就是一个ERP,里面包括了客户管理、物料管理、订单管理、生产管理、库存管理、发货管理、报表和财务等众多模块,由于功能太多,所以使得整个系统非常臃肿,而且由于是跨国公司,系统又没有做分布式部署,使用人群又是在全球各个地方,使得整个系统使用起来很慢,并因为各个站点不同的需求都集中到一个系统中,导致很多逻辑和程序上的Bug,或者因为一个Bug影响到所有站点的用户,非常影响公司内客户的使用体验,有些Bug可能会导致公司同事的日常工作会进行不下去,所以最终领导层决定,将这些模块拆分开,形成了3个订单系统(包括客户管理、订单管理),1个生产系统,2个发货系统,1个物料系统,将库存管理、发货管理以及报表、财务部分都整合进SAP,各个系统之间通过数据库层面同步、WebService传输、RFC/JCO传输等方式进行数据同步,通过这样的拆分达到各个系统因为地理位置进行分布式部署的目的,从而解决前面提到的问题。

ABAP基础之数据类型

变量定义

1
DATA <f> [<length>] <type> [<value>] [<decimals>]
<f>: 变量名称, 最长30个字符, 不可含有 + . , : ( ) 等字符
<length><type>: 数据型态及长度, 如 LINE(20) TYPE C. MYNAME LIKE SY-UNAME.
<value>: 初值
<decimals>: 小数位数

ABAP基础之SQL语句

SELECT语句读取单一记录

1
SELECT SINGLE * FROM TABLE INTO WA WHERE ID=?.
IF SY-SUBRC = 0.
    ...do something

SELECT SINGLE MATNR ERSDA INTO (GV_MATNR, GV_ERSDA) FROM MARA WHERE ERSDA = '20150701'.

ABAP基础之结构与内表

定义结构

1
DATA: GS_1 TYPE ZTPX001.

TABLES: ZTPX001.

DATA: BEGIN OF GS_2,
    ZNUMBER LIKE ZTPX001-ZNUMBER,
    ZNAME LIKE ZTPX001-ZNAME,
    END OF  GS_2.

DATA: BEGIN OF GS_3.
DATA:   ZX TYPE C.
        INCLUDE STRUCTURE ZVPX001.
DATA: END OF GS_3.