SAP介绍:概念、核心、开发语言、优缺点与集成
一、SAP概念
SAP (Systems Applications and Products in data processing ) 是一款用于ERP(企業資源計劃, 英文全稱:Enterprise Resource Planning)管理的軟件,目前是全球銷量第一的ERP軟件,也是全球ERP實施最成功的ERP軟件,被很多世界500強的大企業實施,也包含大量的中小企業。
SAP以前的版本叫R/3,目前使用的版本為ECC6.x(SAP 企業核心組件,SAP Enterprise Central Component)。ECC相當于在Netweaver(SAP最新的集成應用平臺)上實現的R/3,是一個運行環境和開發環境集成在一起的一個運行服務器,SAP的使用的二次開發語言是ABAP語言。SAP內置一些默認的模擬數據,如IDES公司數據,這是模擬一個全球性公司,包含各類數據。SAP是典型的客戶端/服務器架構,有一個GUI客戶端,通過客戶端鏈接到SAP的服務器。SAP還有一個WEB端的GUI,稱為webGUI,可以使用瀏覽器連接SAP,使用webGUI需要在SAP中進行一定的配置才能使用,菜單功能和GUI基本一致,但打印功能不好用,而且對鍵盤和快捷鍵支持的不好,在一般公司中使用的不多。
SAP還包含其他一些產品名,如SAP A1(SAP All-in One,SAP R/3部分行業預配置), SAP B1(SAP Business One ---SAP主要面向中小企業產品)。
二、SAP的核心模塊
SAP系統有5大核心模塊,即一般SAP軟件都帶這5大常用核心模塊:
? ?FI 財務會計:
集中公司有關會計的所有資料,提供完整的文獻和全面的資訊,同時作為企業實行控制和規劃的最新基礎。
? ?CO 管理會計:
公司管理系統中規劃與控制工具的完整體系,具有統一的報表系統,協調公司內部處理業務的內容和過程。
? ?PP 生產計劃:
提供各種制造類型的全面處理:從重復性生產、訂制生產、訂裝生產,加工制造、批量及訂存生產直至過程生產,具有擴展MPRⅡ的功能。另外還可以選擇連接PDC、制程控制系統,CAD和PDM。
? ?MM 物料管理:
以工作流程為導向的處理功能對所有采購處理最佳化,可自動評估供應商,透過精確的庫存和倉儲管理降低采購和倉儲成本,并與發票核查相整合。
? ?SD 銷售與分銷:
積極支援銷售和分銷活動,具有出色的定價、訂單快速處理、按時交貨,交互式多層次可變配置功能,并直接與盈利分析和生產計劃模組連接。
三、SAP軟件的優缺點
SAP軟件有如下優缺點:
1、優點:
? ?SAP是全球所有ERP產品中對企業構架和財務控制考慮得最細致的系統,也是整體控制邏輯和整體系統結構是最嚴謹的系統,可以讓企業引進先進的管理理念;
? ?對產品在各種行業的適用性考慮得最多的系統,既應用的行業最廣;
? ?SAP系統是整體穩定性最好的系統;
? ?如中國最大的幾家企業集團(中石油、中石化、中海油、幾個鋼鐵集團等等)如果要在整個企業全面展開各個專業的、統一的ERP實施,SAP是唯一能適合的產品,特別是財務模塊;
? ?應用最廣的產品。它集成性好,財務、物資、項目、設備、人力資源等等功能都具備;
2、缺點:
? ?系統過重,配置、操作異常復雜,做一個業務可能使用到好多個頁面。
? ?實施成本很高,二次開發(ABAP語言開發)的成本相當高,使用成本也很高,一般都需要養一些SAP的顧問,每個顧問都只關注SAP的某一塊功能,因為SAP的學習成本很高。
? ?license費用相當昂貴,使用成本高。
? ?SAP的報表系統不能完全滿足需要。
? ?實際運行上看,SAP目前就是一個包含了巨大數據的大信息孤島
? ?基于流程的的功能很弱,一般企業生成單據都需要走審批流程,一般要通過外掛系統的工作流軟件進行審批,再將數據寫入到SAP中。
? ?在靈活性方面,SAP比其它幾個著名系統也有很大欠缺,可以說SAP鋼性很強(穩定性)而柔性不足;
四、SAP的開發語言
SAP的開發語言為ABAP/4,是第四代支持結構化程序設計的語言。它合并了所有通常的控制結構和模塊化概念。同時,它還支持面向對象的程序設計方法,這就為ABAP的應用開發開拓了更廣闊的空間。而且,它還可以實現和其他編程語言的合成,如VB,JAVA,C/C++等。
SAP的每一個功能有一個T-code(事務代碼),代表一個功能碼,輸入事務代碼就可以打開一個功能頁面進行操作。打開一個T-code,在一個字段或功能界面上按F1鍵,彈出幫助信息,點擊幫助信息的"技術信息"Tab頁面,可以看到屏幕的程序名。如下圖所示。
使用ABAP語言,可以開發下面的程序:
? ?報表的開發:
? ?SmartForm表單打印開發:
? ?批量處理業務開發:
? ?SAP增強(類似于擴展,功能增強)開發
? ?對話框頁面開發
? ?系統間接口開發(RFC、BAPI、IDOC)
系統間接口,主要是RFC、BAPI和IDOC,下面接收一下這三種接口。
? ?RFC(Remote Function Call)
RFC是SAP系統和其他(SAP或非SAP)系統間的一個重要而常用的雙向接口技術,也被視為SAP與外部通信的基本協議。簡單地說,RFC過程就是系統調用當前系統外的程序模塊,從而實現某個功能,而且調用系統和被調用系統中至少有一個必須是SAP ABAP系統。這種遠程功能調用也可在同一系統內部進行(如本地SAP系統內的遠程調用);但通常情況下,調用程序和被調用程序處于不同系統。
? ?BAPI
BAPI(business application programming interface)是面向對象程序設計方法中的一組程序接口。它允許程序員通過SAP將第三方軟件整合成R/3專有產品。為了完成一些特殊的商業任務,如上傳交易數據等,R/3系統中內置了BAPI。
? ?它實際上是一種特殊的Remote Function Modules (RFC)是為了提供使用外部程序來進行交易活動
? ?它提供的基于企業目標(Business Object) 技術的接口應用界面
? ?SAP采用了Object-oriented技術,邏輯定義了SAP R/3系統的所有功能目標,并且將所有的目標(Objects) 和BAPIs存儲于企業對象庫(Business Objects Repository).
? ?SAP R/3 企業目標的目標類型(Object Type) 相當于目標設計語言中類(Class) 的概念,其定義結構由以下幾部分組成:基本數據,接口界面,鍵(Key Fields),方法(Methods),特征(Attributes),事件(Events)
BAPI在SAP系統內部以Function Module的方式實現.所有的BAPI Function都
? ?支持Remote Function Call (RFC)
? ?處理過程中不激活對話窗口
? ?IDoc
SAP R/3于SAP R/3或其他外部系統交換數據用過的文件格式. SAP系統里有很多自己已經定義好的IDOC Message type, 例如, 同一個系統的兩個Client有一個賬號同步功能可以通過IDOC的設置來實現. 假如client 110 某賬號改了密碼, 這次改動的數據會自動Outbound發送到client120, 而120通過Inbound接收數據,寫入數據表。IDOC主要用于以消息方式在系統之間傳遞數據,如兩個SAP系統間的數據同步。
五、外部系統與SAP的集成
外部系統與SAP的集成,主要是外部系統調用SAP發布的接口(RFC、BAPI、WebService等),對于調用RFC或BAPI,對于Java程序主要通過SAP發布的JCO Driver(類似JDBC Driver),目前JCO Driver版本為3.x。
外部系統與SAP集成主要有下面幾種方式:
1、將SAP的主數據或業務數據同步到外部系統。同步包括定時同步和人工觸發同步兩種。
2、外部系統走審批流程,審批流程通過后,通過JCO將數據同步到SAP中
外部系統與SAP集成的需求動因:
1、解決SAP錄入繁雜的特點,可以將多個頁面的錄入集成在一個頁面進行錄入
2、節省SAP的license費用,由于SAP按用戶數(登錄賬號)收費,每個用戶費用有幾萬,因此用戶一般不會買大量的登錄賬號,但外部系統包含用戶的組織機構和大量人員,不同人員有不同的賬號,因此可以在外部系統登陸,然后使用一些公共賬號登陸SAP系統。一個解決方案是使用用戶池(類似線程池),外部系統用戶登錄后,從用戶池中拿到一個SAP的用戶登錄SAP系統,然后使用RFC更改其SAP的權限,使其有權進行SAP的操作。
3、解決SAP對流程審批支持不好的缺點,審批流程放在外部系統,審批后將數據寫入SAP。
4、將SAP當做一個中心數據庫,多個外部系統協同工作。
5、將SAP中的數據以外部報表形式展現出來,供決策者使用,SAP本身是一個偏操作的系統,難以進行決策支持分析。
6、降低企業對SAP用戶的培訓壓力,簡化操作,減輕SAP操作人員負擔,降低SAP的使用成本,通過外部系統可以對SAP的功能進行一定的擴展,降低SAP二次開發成本。
一、SAP概念
SAP (Systems Applications and Products in data processing ) 是一款用于ERP(企業資源計劃, 英文全稱:Enterprise Resource Planning)管理的軟件,目前是全球銷量第一的ERP軟件,也是全球ERP實施最成功的ERP軟件,被很多世界500強的大企業實施,也包含大量的中小企業。
SAP以前的版本叫R/3,目前使用的版本為ECC6.x(SAP 企業核心組件,SAP Enterprise Central Component)。ECC相當于在Netweaver(SAP最新的集成應用平臺)上實現的R/3,是一個運行環境和開發環境集成在一起的一個運行服務器,SAP的使用的二次開發語言是ABAP語言。SAP內置一些默認的模擬數據,如IDES公司數據,這是模擬一個全球性公司,包含各類數據。SAP是典型的客戶端/服務器架構,有一個GUI客戶端,通過客戶端鏈接到SAP的服務器。SAP還有一個WEB端的GUI,稱為webGUI,可以使用瀏覽器連接SAP,使用webGUI需要在SAP中進行一定的配置才能使用,菜單功能和GUI基本一致,但打印功能不好用,而且對鍵盤和快捷鍵支持的不好,在一般公司中使用的不多。
SAP還包含其他一些產品名,如SAP A1(SAP All-in One,SAP R/3部分行業預配置), SAP B1(SAP Business One ---SAP主要面向中小企業產品)。
二、SAP的核心模塊
SAP系統有5大核心模塊,即一般SAP軟件都帶這5大常用核心模塊:
? ?FI 財務會計:
集中公司有關會計的所有資料,提供完整的文獻和全面的資訊,同時作為企業實行控制和規劃的最新基礎。
? ?CO 管理會計:
公司管理系統中規劃與控制工具的完整體系,具有統一的報表系統,協調公司內部處理業務的內容和過程。
? ?PP 生產計劃:
提供各種制造類型的全面處理:從重復性生產、訂制生產、訂裝生產,加工制造、批量及訂存生產直至過程生產,具有擴展MPRⅡ的功能。另外還可以選擇連接PDC、制程控制系統,CAD和PDM。
? ?MM 物料管理:
以工作流程為導向的處理功能對所有采購處理最佳化,可自動評估供應商,透過精確的庫存和倉儲管理降低采購和倉儲成本,并與發票核查相整合。
? ?SD 銷售與分銷:
積極支援銷售和分銷活動,具有出色的定價、訂單快速處理、按時交貨,交互式多層次可變配置功能,并直接與盈利分析和生產計劃模組連接。
三、SAP軟件的優缺點
SAP軟件有如下優缺點:
1、優點:
? ?SAP是全球所有ERP產品中對企業構架和財務控制考慮得最細致的系統,也是整體控制邏輯和整體系統結構是最嚴謹的系統,可以讓企業引進先進的管理理念;
? ?對產品在各種行業的適用性考慮得最多的系統,既應用的行業最廣;
? ?SAP系統是整體穩定性最好的系統;
? ?如中國最大的幾家企業集團(中石油、中石化、中海油、幾個鋼鐵集團等等)如果要在整個企業全面展開各個專業的、統一的ERP實施,SAP是唯一能適合的產品,特別是財務模塊;
? ?應用最廣的產品。它集成性好,財務、物資、項目、設備、人力資源等等功能都具備;
2、缺點:
? ?系統過重,配置、操作異常復雜,做一個業務可能使用到好多個頁面。
? ?實施成本很高,二次開發(ABAP語言開發)的成本相當高,使用成本也很高,一般都需要養一些SAP的顧問,每個顧問都只關注SAP的某一塊功能,因為SAP的學習成本很高。
? ?license費用相當昂貴,使用成本高。
? ?SAP的報表系統不能完全滿足需要。
? ?實際運行上看,SAP目前就是一個包含了巨大數據的大信息孤島
? ?基于流程的的功能很弱,一般企業生成單據都需要走審批流程,一般要通過外掛系統的工作流軟件進行審批,再將數據寫入到SAP中。
? ?在靈活性方面,SAP比其它幾個著名系統也有很大欠缺,可以說SAP鋼性很強(穩定性)而柔性不足;
四、SAP的開發語言
SAP的開發語言為ABAP/4,是第四代支持結構化程序設計的語言。它合并了所有通常的控制結構和模塊化概念。同時,它還支持面向對象的程序設計方法,這就為ABAP的應用開發開拓了更廣闊的空間。而且,它還可以實現和其他編程語言的合成,如VB,JAVA,C/C++等。
SAP的每一個功能有一個T-code(事務代碼),代表一個功能碼,輸入事務代碼就可以打開一個功能頁面進行操作。打開一個T-code,在一個字段或功能界面上按F1鍵,彈出幫助信息,點擊幫助信息的"技術信息"Tab頁面,可以看到屏幕的程序名。如下圖所示。
使用ABAP語言,可以開發下面的程序:
? ?報表的開發:
? ?SmartForm表單打印開發:
? ?批量處理業務開發:
? ?SAP增強(類似于擴展,功能增強)開發
? ?對話框頁面開發
? ?系統間接口開發(RFC、BAPI、IDOC)
系統間接口,主要是RFC、BAPI和IDOC,下面接收一下這三種接口。
? ?RFC(Remote Function Call)
RFC是SAP系統和其他(SAP或非SAP)系統間的一個重要而常用的雙向接口技術,也被視為SAP與外部通信的基本協議。簡單地說,RFC過程就是系統調用當前系統外的程序模塊,從而實現某個功能,而且調用系統和被調用系統中至少有一個必須是SAP ABAP系統。這種遠程功能調用也可在同一系統內部進行(如本地SAP系統內的遠程調用);但通常情況下,調用程序和被調用程序處于不同系統。
? ?BAPI
BAPI(business application programming interface)是面向對象程序設計方法中的一組程序接口。它允許程序員通過SAP將第三方軟件整合成R/3專有產品。為了完成一些特殊的商業任務,如上傳交易數據等,R/3系統中內置了BAPI。
? ?它實際上是一種特殊的Remote Function Modules (RFC)是為了提供使用外部程序來進行交易活動
? ?它提供的基于企業目標(Business Object) 技術的接口應用界面
? ?SAP采用了Object-oriented技術,邏輯定義了SAP R/3系統的所有功能目標,并且將所有的目標(Objects) 和BAPIs存儲于企業對象庫(Business Objects Repository).
? ?SAP R/3 企業目標的目標類型(Object Type) 相當于目標設計語言中類(Class) 的概念,其定義結構由以下幾部分組成:基本數據,接口界面,鍵(Key Fields),方法(Methods),特征(Attributes),事件(Events)
BAPI在SAP系統內部以Function Module的方式實現.所有的BAPI Function都
? ?支持Remote Function Call (RFC)
? ?處理過程中不激活對話窗口
? ?IDoc
SAP R/3于SAP R/3或其他外部系統交換數據用過的文件格式. SAP系統里有很多自己已經定義好的IDOC Message type, 例如, 同一個系統的兩個Client有一個賬號同步功能可以通過IDOC的設置來實現. 假如client 110 某賬號改了密碼, 這次改動的數據會自動Outbound發送到client120, 而120通過Inbound接收數據,寫入數據表。IDOC主要用于以消息方式在系統之間傳遞數據,如兩個SAP系統間的數據同步。
五、外部系統與SAP的集成
外部系統與SAP的集成,主要是外部系統調用SAP發布的接口(RFC、BAPI、WebService等),對于調用RFC或BAPI,對于Java程序主要通過SAP發布的JCO Driver(類似JDBC Driver),目前JCO Driver版本為3.x。
外部系統與SAP集成主要有下面幾種方式:
1、將SAP的主數據或業務數據同步到外部系統。同步包括定時同步和人工觸發同步兩種。
2、外部系統走審批流程,審批流程通過后,通過JCO將數據同步到SAP中
外部系統與SAP集成的需求動因:
1、解決SAP錄入繁雜的特點,可以將多個頁面的錄入集成在一個頁面進行錄入
2、節省SAP的license費用,由于SAP按用戶數(登錄賬號)收費,每個用戶費用有幾萬,因此用戶一般不會買大量的登錄賬號,但外部系統包含用戶的組織機構和大量人員,不同人員有不同的賬號,因此可以在外部系統登陸,然后使用一些公共賬號登陸SAP系統。一個解決方案是使用用戶池(類似線程池),外部系統用戶登錄后,從用戶池中拿到一個SAP的用戶登錄SAP系統,然后使用RFC更改其SAP的權限,使其有權進行SAP的操作。
3、解決SAP對流程審批支持不好的缺點,審批流程放在外部系統,審批后將數據寫入SAP。
4、將SAP當做一個中心數據庫,多個外部系統協同工作。
5、將SAP中的數據以外部報表形式展現出來,供決策者使用,SAP本身是一個偏操作的系統,難以進行決策支持分析。
6、降低企業對SAP用戶的培訓壓力,簡化操作,減輕SAP操作人員負擔,降低SAP的使用成本,通過外部系統可以對SAP的功能進行一定的擴展,降低SAP二次開發成本。
總結
以上是生活随笔為你收集整理的SAP介绍:概念、核心、开发语言、优缺点与集成的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 欢迎来到傻狍子的世界
- 下一篇: 大型国企用泛微OA,让会务管理有序,让会