接觸SAP 時間也不短了,但卻真正做的項目並不是很多,只是接觸面還算比較多。
今天再次做項目時,發現時間一長,有些東西已經忘的差不多了,也因此想起來是該自已總結匯總一下,以方便自己之後的學習和使用。
今天就先列一個準備寫的目錄,以提醒自己之後不斷補充吧。
SAP 的很多參考資訊,參看百科會更清析。
http://baike.baidu.com/view/8784.htm?fr=ala0_1
之前沒有真正瞭解時,我和很多人一樣,以為是一家美國公司。後來真正開始使用時,再一查,才發現原來是家德國公司。不過還算是和美國有點關係,因為其5位創始人原來在IBM公司就職。沒成想現在自己創立的公司開發的軟體,被賣給老東家使用。
它的意義還是值得一提:SAP 是的“Systems Applications and Products in Data Processing"的簡稱。
個人理解,其實它就是一個ERP系統,不過是一個世界級的ERP系統,目前應該算是世界第一了,其後第二名應該是Oracle 。當然不僅個一般的ERP 系統,而且很龐大的一個系統,其幾乎涵蓋了各個行業,為不同的行業準備了不同的模組。不同的行業均可以選擇自己合適的模組和功能,當然也是非常昂貴的:)
最常用的模組應該是PP, MM, SD,FI,HR
其它模組還有:
FI 應收、應付、總帳、合并、投資、基金、現金等;
CO 利潤及成本中心,產品成本、項目會計、獲利分析等;
AM 固定資產、技術資產、投資控制等;
SD 銷售計劃、詢價報價、訂單管理、運輸發貨、發票等;
MM 採購、庫房管理、庫存管理、MRP、供應商評價等;
PP 工廠資料、生產計劃、MRP、能力計劃、成本會計等;
QM 品質計劃、品質檢測、品質控制、品質文檔等;
PM 維護及檢測計劃、單據處理、曆史資料、報告分析等;
HR 薪資、差旅、工時、招聘、發展計劃、人事成本等;
PS 專案計劃、預算、能力計劃、資源管理、結果分析等;
WF 工作定義、流程管理、電子郵件、資訊傳送自動化等;
PI SAP與其他系統的整合;
IS 針對不同行業提供特殊應用。
基礎部分:R/3系統核心、資料庫、支援各類平台的介面、ABAP/4工具語言, NetWeaver 等。
Report
相關T-Code : SE38 / SE71
種類有很多,有Flat Report / ALV Report / Excel Report / Script Form
Flat Report : 主要使用Write 語句來進行螢幕輸出的方式來輸出報表;
ALV Report : 應該是最常用的一種報表形式,主要使用ALV 函數的方式來輸出,形式類似於Excel 的輸出格式,很方式和靈活的對輸出結果進行組織;
Excel Report: 即使用Excel 的方式輸出,當然也是用函數的方式輸出;
Script Form : 是SAP 標準功能使用的一種Hardcopy 形式的報表,類似於Crystal Report 的樣式,但開發方法卻是完全不同,此需要使用Script 指令碼語言來進行輸出和控制;
Query
相關T-Code : SQ01 / SQ02
屬於SAP系統內建的一種方便的自訂報表方法,可以簡單的產生類似於 ALV 的報表樣式,而且可以寫代碼控制每個欄位和輸出
BAPI
相關T-Code : SE37
BAPI(business application programming interface)是物件導向程式設計方法中的一組程式介面。它允許程式員通過SAP將第三方軟體整合成R/3專有產品。為了完成一些特殊的商業任務,如上傳交易資料等,R/3系統中內建了BAPI。
屬於RFC - Remote function call 的形式,主要用於SAP外部功能和應用調用SAP 的內部功能,當然也可以用於SAP內部的使用
其它資訊可參考:http://baike.baidu.com/view/370222.htm?fr=ala0_1
BADI
相關T-Code :SE18 / SE19
BADI(bussiness Add-Ins),也相當於一組附加介面,用以方便實現對現有的標準程式的一些擴充,如加入新的客戶定製的驗證和檢查等。
其它資訊可參考:http://wenku.baidu.com/view/d2a1e342336c1eb91a375dd7.html
Dialog Form
相關T-Code :SE80
在此T-Code中,一般要建立對應的Menu, Toolbar, Title, Screen, Include Code 及最終使用的Dialog Form 的T-Code。
關鍵點主要有:PBO – Process Before Output ; PAI- Process After Input;OK-Code 的使用;Table (Grid)功能的使用。
Workflow
相關T-Code : 參看http://help.sap.com/saphelp_40b/helpdata/en/9b/572614f6ca11d1952e0000e82dec10/content.htm
主要用於管理和維護 SAP 內部的一個工作流程的處理,目前我接觸的主要是一些檢查和自動發送e-Mail 的處理。
具本之後會單獨列一單講解。
WebDynpro
此功能是SAP Web 開發的一種方式,目前我接觸的主要是對 HRMS Protal 網站中的功能進行維護和開發。而其對應的開發環境,則是獨立於SAP 之外的一個環境,核心使用的是 Eclipse ,而主環境則使用 Boland 公司開發的一個 NetWeaver Developer 開發環境。而語言,則使用 Java。感覺其架構使用了經典的MVC (Module / Viewer / Controller)。
使用WebDynpro 開發Web 程式,會讓你感覺如同開發Windows 程式一樣方便和快捷,因其使用的MVC 架構非常好用,至少比ASP.Net 好用多了。
具體之後會單獨列一篇文章講解。
- ABAP 語言簡介
-
- 作為SAP內部二次開發使用的語言,也算是第四代支援物件導向的語言。雖然表面看起來沒有其它語言那麼方便使用和強大,但實際使用之後也會發現,因為其僅為SAP開發使用,故其有很多比較方便和人性化的地方。
- 其實作為一語言,其大部分和其它語言沒什麼不同,一樣有最基本的資料類型,有變更的聲明,有流程式控制制語言,有各種函數處理。但其最特別也最強大的是被稱之為 Internal Table (內表)的對象或使用方式。另一項很特別也功能很強的是它對SQL語言的內嵌支援,無法使用Connection 對象, Command 對象,而是直接寫Select … From … Into … Where …. 等SQL語名,而且支援即時檢查。要說.Net 中能和它對應的,也只能說是 VS2008 / 2010 才出現的 LINQ 語言了。而這種方式 SAP 已經使用了很多年了。
- 由於SAP不支援二次開發時直接使用後台資料庫,故所有對資料庫處理的動作均需要在ABAP程式內部實現。故其對資料的處理主要使用 內部的SQL 陳述式,及Internal Table (感覺類似於.Net 中的DataSet ) 。
- 而對於 ABAP語言,有太多的內容,無法細講,之後我的專門寫一章來介紹其中的重點。
-
- 各模組主要T-Code ,及相關涉及到的Table
主要會介紹我目前瞭解了一些的 MM / PP / SD / FI / HR 模組。先寫下一些以前常用的一些,以備後查。