版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,SAP BC400 ABAP 工作臺(tái)簡(jiǎn)介,博科技術(shù) BONCK,段霄鵬 2013.3,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,3,目錄, ,課程概覽 第一單元:ABAP程序的執(zhí)行流程 第二單元:ABAP工作臺(tái)簡(jiǎn)介 第三單元:ABAP字典簡(jiǎn)介 第四單元:ABAP語(yǔ)言的基本元素 第五單元:數(shù)據(jù)獲取,博科技術(shù) BONC
2、K,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,4,目錄, ,第六單元:程序分析工具 第七單元:在ABAP中使用子程序 第八單元:ABAP事件簡(jiǎn)介 第九單元:用戶會(huì)話 第十單元:組件重用 第十一單元:調(diào)整SAP標(biāo)準(zhǔn)軟件(概覽),博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations
3、and Concepts,5,課程概覽 BC400這門(mén)課程主要介紹SAP的編程語(yǔ)言 ABAP以及ABAP的開(kāi)發(fā)環(huán)境ABAP工作 臺(tái),做為入門(mén)課程將面向一般概念和基本 原理,當(dāng)然還要介紹一些相關(guān)技術(shù),以利 于后面其他課程的學(xué)習(xí)。 課程中將使用大量實(shí)例幫助理解課程中講 到的概念,讓學(xué)員用ABAP工作臺(tái)快速構(gòu)建 高性能的商業(yè)應(yīng)用。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,6,課程概覽 課程目標(biāo), ,理解和使用基
4、本ABAP語(yǔ)法元素 實(shí)現(xiàn)不同類型的用戶會(huì)話 程序讀取訪問(wèn)數(shù)據(jù)庫(kù) 使用ABAP工作臺(tái)開(kāi)發(fā)工具, 理解開(kāi)發(fā)過(guò)程是如何組織和傳輸?shù)?學(xué)習(xí)本課程后應(yīng)該可以 創(chuàng)建包含用戶會(huì)話和數(shù)據(jù)庫(kù)訪問(wèn)的ABAP程序 說(shuō)明不同開(kāi)發(fā)對(duì)象類型和它們的主要用途 用合適的工具創(chuàng)建出說(shuō)明開(kāi)發(fā)對(duì)象功能的簡(jiǎn)單例子,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,7,第一單元 ABAP程序的執(zhí)行流程 單元目標(biāo) 本單元完成后,應(yīng)該能: 描述SAP NetW
5、eaver應(yīng)用服務(wù)器的結(jié)構(gòu)原理 描述簡(jiǎn)單的會(huì)話程序如何被ABAP運(yùn)行時(shí)環(huán)境 處理 本單元的課程為 SAP R/3的系統(tǒng)結(jié)構(gòu) 使用選擇屏幕和清單的ABAP程序示例,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,8,第一單元 ABAP程序的執(zhí)行流程 第一課 系統(tǒng)架構(gòu) 表示層,應(yīng)用層,數(shù)據(jù)庫(kù)層,SAPGUI,SAPGUI,SAPGUI,SAPGUI,SAPGUI,SAPGUI,分配器,工作進(jìn)程,工作進(jìn)程,分配器,工作
6、進(jìn)程,工作進(jìn)程,工作進(jìn)程,工作進(jìn)程,工作進(jìn)程,工作進(jìn)程,SAP NetWeaver 應(yīng)用服務(wù)器的客戶端/服務(wù)器架構(gòu)圖,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,9,第一單元 ABAP程序的執(zhí)行流程 第一課 系統(tǒng)架構(gòu) SAP NetWeaver 應(yīng)用服務(wù)器 具有模塊化架構(gòu), 遵循面向軟件的客戶端/服務(wù)器原則。 在 SAP NetWeaver 應(yīng)用服務(wù)器 中,表示層、應(yīng) 用邏輯和數(shù)據(jù)存儲(chǔ)可以分派給不同的系統(tǒng),這
7、就 使整個(gè)系統(tǒng)具有良好的可伸縮性。 雖說(shuō) SAP 自己的提法是 C/S 架構(gòu),但實(shí)際上使 用的就是現(xiàn)在流行的三層結(jié)構(gòu),即瀏覽器/應(yīng)用服 務(wù)器/數(shù)據(jù)庫(kù),而且在可伸縮性和平臺(tái)上做的非常 之好。 它的 SAPGUI 雖說(shuō)是個(gè)傳統(tǒng)客戶端軟件,但具有 瀏覽器的某些特性,客戶端并沒(méi)有事先畫(huà)好的屏 幕,所有屏幕布局都是從應(yīng)用服務(wù)器傳輸過(guò)來(lái)的。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,10,第一單元 ABAP程序的執(zhí)行流
8、程 第一課 系統(tǒng)架構(gòu) 最底層是數(shù)據(jù)庫(kù)層。SAP 自己并不提供底層數(shù)據(jù)庫(kù),而 使用其他廠商的數(shù)據(jù)庫(kù)管理系統(tǒng)(支持所有主流數(shù)據(jù)庫(kù))。 只有 SAP 自身管理和運(yùn)行所需的程序和元數(shù)據(jù)沒(méi)有保存 在數(shù)據(jù)庫(kù)里,而應(yīng)用系統(tǒng)運(yùn)行的幾乎所有數(shù)據(jù)都存儲(chǔ)在數(shù) 據(jù)庫(kù)中。 ABAP 程序運(yùn)行在應(yīng)用服務(wù)層。ABAP 程序包括 SAP 提 供的標(biāo)準(zhǔn)程序和我們自己開(kāi)發(fā)的程序。ABAP 程序從數(shù)據(jù) 庫(kù)讀數(shù)據(jù),處理數(shù)據(jù),有可能還要儲(chǔ)存數(shù)據(jù)。 第三層是表示層。這一層就是用戶界面,用戶可以通過(guò)它 訪問(wèn)程序,輸入數(shù)據(jù),接收工作進(jìn)程處理的結(jié)果。SAP把 表示層也稱為服務(wù)器,因?yàn)樗墓ぷ髂J礁鷚eb瀏覽器類 似,負(fù)責(zé)把應(yīng)用服務(wù)器傳來(lái)的界面
9、布局?jǐn)?shù)據(jù)轉(zhuǎn)換成用戶可 瀏覽的界面,這種處理也可以稱為一種“服務(wù)”。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,11,第一單元 ABAP程序的執(zhí)行流程 第一課 系統(tǒng)架構(gòu) 在 SAP 系統(tǒng)中,軟件的技術(shù)分布完全獨(dú)立與它 所安裝硬件的物理位置。 從縱向上說(shuō),所有三層既可以安裝在同一臺(tái)計(jì)算 機(jī)上,也可以各層獨(dú)立安裝在各自的計(jì)算機(jī)上。 從橫向上說(shuō),表示層和應(yīng)用層可以分別安裝在任 意多的計(jì)算機(jī)上。 而數(shù)據(jù)庫(kù)組件的橫向安
10、裝能力則取決于數(shù)據(jù)庫(kù)管 理系統(tǒng)本身的設(shè)計(jì)(也就是說(shuō),只要數(shù)據(jù)庫(kù)管理 系統(tǒng)支持多機(jī)分布安裝,SAP 就支持對(duì)它的多機(jī) 訪問(wèn))。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,12,第一單元 ABAP程序的執(zhí)行流程 第一課 系統(tǒng)架構(gòu), 前面那個(gè)復(fù)雜的三層結(jié)構(gòu)圖可 以簡(jiǎn)化成左圖的樣子,在本課 程中,我們更關(guān)心一個(gè)用戶和 一個(gè) ABAP 程序之間的交互。, 應(yīng)用服務(wù)器上,包括用戶分配 器在內(nèi)的擴(kuò)展進(jìn)程對(duì)我們理解 ABA
11、P 程序運(yùn)行并不是非常重 要,因此我們這個(gè)圖中沒(méi)有明 確區(qū)分分配器和工作進(jìn)程,只 有當(dāng)與我們所講的 ABAP 程序 相關(guān)時(shí),才會(huì)詳細(xì)介紹。 ABAP 程序運(yùn)行在應(yīng)用服務(wù)器 上,用戶會(huì)話和數(shù)據(jù)庫(kù)訪問(wèn)的 設(shè)計(jì)顯得更為重要。,表 示 層,應(yīng) 用 層 數(shù) 據(jù) 庫(kù) 層,工作進(jìn)程 ABAP程序,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,13,第一單元 ABAP程序的執(zhí)行流程 第一課 系統(tǒng)架構(gòu), 從用戶角度看,他只關(guān)心業(yè)
12、 務(wù)流轉(zhuǎn)和數(shù)據(jù)的輸入輸出, 而根本無(wú)需關(guān)注技術(shù)層面的 程序。因此,對(duì)用戶來(lái)說(shuō), SAP 系統(tǒng)的應(yīng)用層和數(shù)據(jù)庫(kù) 就是一個(gè)黑盒(Black Box)。 從技術(shù)角度講,有三種類型 的屏幕:標(biāo)準(zhǔn)屏幕、選擇屏,幕和清單,每種屏幕為用戶 提供不同的服務(wù)。程序員應(yīng) 該根據(jù)任務(wù)的需要,為用戶 提供合適的屏幕。,表 示 層,應(yīng) 用 層,數(shù) 據(jù) 庫(kù) 層,黑 盒,Dynpro List,Selection Screen,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundati
13、ons and Concepts,14,ABAP,運(yùn)行時(shí)系統(tǒng) 數(shù)據(jù)表,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 程序開(kāi)始 ABAP程序,ABAP程序塊,ABAP程序塊,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,15,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 上頁(yè)圖說(shuō)明了在各個(gè)服務(wù)層之間的數(shù)據(jù)交互,需 要說(shuō)明的是,實(shí)際處理時(shí)應(yīng)用層與數(shù)據(jù)庫(kù)的交互 比上圖中更為頻繁,不僅僅在處理用戶操
14、作時(shí)才 讀寫(xiě)數(shù)據(jù)庫(kù)。后面的例子會(huì)詳細(xì)說(shuō)明這一過(guò)程。 當(dāng)用戶觸發(fā)一個(gè)操作,例如按了回車、功能鍵、 菜單、按鈕等時(shí),就會(huì)把控制權(quán)從表示層傳遞給 應(yīng)用層。 只有跟用戶操作相關(guān)的那部分程序會(huì)被執(zhí)行。 如果在程序中觸發(fā)了其他會(huì)話,系統(tǒng)會(huì)把屏幕傳 遞給表示層,同時(shí)交出控制權(quán)。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,16,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例, 1、程序開(kāi)始 用戶登錄到系統(tǒng)之后,就
15、會(huì)出現(xiàn)初始屏幕,在初始 屏幕里,可以通過(guò)菜單路 徑或事務(wù)碼來(lái)啟動(dòng) ABAP 程序。 知識(shí)庫(kù)(Repository), 它是 SAP 系統(tǒng)中非常重 要的組成部分,負(fù)責(zé)存儲(chǔ) 系統(tǒng)運(yùn)行的基本數(shù)據(jù),例 如:程序庫(kù)、數(shù)據(jù)字典、 ABAP 對(duì)象等,被保存在 數(shù)據(jù)庫(kù)中,后面會(huì)專題講,解它。,數(shù)據(jù)表,程序開(kāi)始,知識(shí)庫(kù),1,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,17,ABAP 運(yùn)行時(shí)系統(tǒng),ABAP程序,選擇屏幕 知識(shí)庫(kù),
16、ABAP 程序塊 數(shù)據(jù)表,數(shù)據(jù)對(duì)象,xxx: xxx xxx: xxx xxx xxx,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 2 程序開(kāi)始,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,18,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 2、系統(tǒng)讀取程序上下文 上下文(Context),在漢語(yǔ)里面還真沒(méi)什么合適的詞 可以跟這個(gè)英文單詞對(duì)應(yīng)的,只可意會(huì)不可言傳。 系統(tǒng)在程序開(kāi)始后,會(huì)把
17、所有程序上下文讀到應(yīng)用服 務(wù)器上。程序上下文包括:存儲(chǔ)變量和復(fù)雜對(duì)象的內(nèi) 存區(qū),用戶會(huì)話的屏幕信息,ABAP程序塊等。上述的 這些東西都存儲(chǔ)在知識(shí)庫(kù)中。 上頁(yè)的例子里,用到了一個(gè)選擇屏幕與用戶交互,一 個(gè)變量和一個(gè)結(jié)構(gòu),還有一個(gè)ABAP程序塊。顯示數(shù)據(jù) 的清單則根據(jù)用戶輸入動(dòng)態(tài)生成。 ABAP 運(yùn)行時(shí)環(huán)境控制后面的程序流。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,19,ABAP 運(yùn)行時(shí)系統(tǒng),ABAP程序,
18、選擇屏幕 知識(shí)庫(kù),ABAP 程序塊 數(shù)據(jù)表,數(shù)據(jù)對(duì)象,xxx: xxx xxx: xxx xxx xxx,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 3 程序開(kāi)始,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,20,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 3、運(yùn)行時(shí)系統(tǒng)發(fā)送選擇屏幕 如果運(yùn)行時(shí)系統(tǒng)包含了選擇屏幕,ABAP運(yùn)行 時(shí)系統(tǒng)就會(huì)把屏幕發(fā)送給表示層服務(wù)器,在用 戶沒(méi)有輸入完成前
19、,表示層服務(wù)器就控制著程 序流。 選擇屏幕可以做一些基礎(chǔ)的輸入有效性檢查, 如必輸字段、日期/數(shù)值格式等。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,21,ABAP 運(yùn)行時(shí)系統(tǒng),ABAP程序,選擇屏幕 知識(shí)庫(kù),ABAP 程序塊 數(shù)據(jù)表,數(shù)據(jù)對(duì)象,xxx: xxx xxx: xxx xxx xxx,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 4 程序開(kāi)始,博科技術(shù) BONCK,BC400: ABA
20、P Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,22,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 4、輸入的值被插入數(shù)據(jù)對(duì)象 用戶完成了在選擇屏幕的輸入后,就可以通過(guò)觸發(fā)執(zhí) 行來(lái)處理程序。 輸入的數(shù)據(jù)自動(dòng)被保存到程序相應(yīng)的數(shù)據(jù)對(duì)象中, ABAP 運(yùn)行時(shí)系統(tǒng)又重新獲得程序的控制權(quán)。 在我們的示例中,只有一個(gè)程序塊,運(yùn)行時(shí)系統(tǒng)就順 序處理ABAP程序塊。 如果用戶輸入的類型不對(duì),會(huì)自動(dòng)觸發(fā)錯(cuò)誤消息,用 戶必須糾正他的輸入。(這里的類型與選擇屏幕的
21、有 效性檢查不同,包含例如 2月30日這種日期超范圍等 錯(cuò)誤。),博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,23,ABAP 運(yùn)行時(shí)系統(tǒng),ABAP程序,選擇屏幕 知識(shí)庫(kù),ABAP 程序塊 數(shù)據(jù)表,數(shù)據(jù)對(duì)象,xxx: xxx xxx: xxx xxx xxx,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 5 程序開(kāi)始,博科技術(shù) BONCK,BC400: ABAP Workbench Foundatio
22、ns and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,24,ABAP 運(yùn)行時(shí)系統(tǒng),ABAP程序,選擇屏幕 知識(shí)庫(kù),ABAP 程序塊 數(shù)據(jù)表,數(shù)據(jù)對(duì)象,xxx: xxx xxx: xxx xxx xxx,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 6 程序開(kāi)始,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,2
23、5,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 5、程序從數(shù)據(jù)庫(kù)請(qǐng)求數(shù)據(jù)記錄 在示例中,讀數(shù)據(jù)庫(kù)的操作寫(xiě)在ABAP程序過(guò) 程塊中。關(guān)于取哪張數(shù)據(jù)表哪些字段的信息都 被傳遞給數(shù)據(jù)庫(kù)。 6、數(shù)據(jù)庫(kù)把數(shù)據(jù)記錄返回給程序 數(shù)據(jù)庫(kù)把數(shù)據(jù)記錄返回給程序,ABAP運(yùn)行時(shí) 系統(tǒng)確保把數(shù)據(jù)保存在相應(yīng)的數(shù)據(jù)對(duì)象中。 如果只讀一條記錄,則通常使用一個(gè)包含了所 需字段的結(jié)構(gòu)。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,
24、26,ABAP 運(yùn)行時(shí)系統(tǒng),ABAP程序,選擇屏幕 知識(shí)庫(kù),ABAP 程序塊 數(shù)據(jù)表,數(shù)據(jù)對(duì)象,xxx: xxx xxx: xxx xxx xxx,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 7 程序開(kāi)始,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,27,第一單元 ABAP程序的執(zhí)行流程 第二課 程序運(yùn)行示例 7、運(yùn)行時(shí)系統(tǒng)發(fā)送清單 在程序塊中,也編寫(xiě)了關(guān)于清單布局顯示格式 的代碼,在生成了清單后
25、,運(yùn)行時(shí)系統(tǒng)就把清 單發(fā)送給表示層服務(wù)器。 上面簡(jiǎn)要介紹了一個(gè)ABAP程序的運(yùn)行流程 和一些基本概念,下面將依次介紹ABAP程 序開(kāi)發(fā)中用到的概念、工具和方法。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,28,第二單元 ABAP工作臺(tái)簡(jiǎn)介 單元目標(biāo) 本單元完成后,應(yīng)該能: 描述知識(shí)庫(kù)的結(jié)構(gòu) 說(shuō)出和使用知識(shí)庫(kù)查詢工具 使用對(duì)象瀏覽器查看知識(shí)庫(kù)對(duì)象 說(shuō)出和使用軟件開(kāi)發(fā)組織實(shí)用程序 創(chuàng)建包(開(kāi)發(fā)類) 創(chuàng)建程序 創(chuàng)
26、建事務(wù)碼,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,29,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第一課 知識(shí)庫(kù)和對(duì)象瀏覽器, 知識(shí)庫(kù)包含了所有系統(tǒng) 開(kāi)發(fā)對(duì)象程序、函 數(shù)模塊、數(shù)據(jù)庫(kù)表定義 等等。在知識(shí)庫(kù)中既有 SAP 提供的表,也有客,戶自定義的表。知識(shí)庫(kù) 在數(shù)據(jù)庫(kù)中,并且通常 都與客戶端無(wú)關(guān),這就 意味著知識(shí)庫(kù)可以被所 有客戶端訪問(wèn)。, 除知識(shí)庫(kù)外,數(shù)據(jù)庫(kù)還 包含應(yīng)用和定制表,這 些表是客戶端相關(guān)的, 都有一個(gè)客
27、戶端列。,表 示 層,應(yīng) 用 層 數(shù),據(jù) 庫(kù) 層,ABAP程序,客戶端無(wú)關(guān) 知識(shí)庫(kù),客戶端相關(guān) 應(yīng)用表/定制表,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第一課 知識(shí)庫(kù)和對(duì)象瀏覽器,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundati
28、ons and Concepts,30,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第一課 知識(shí)庫(kù)和對(duì)象瀏覽器 知識(shí)庫(kù)的結(jié)構(gòu) 知識(shí)庫(kù)根據(jù)應(yīng)用組件進(jìn)行劃分。 在一個(gè)應(yīng)用組件中,又進(jìn)一步根據(jù)細(xì)節(jié)邏輯關(guān)系把相 關(guān)對(duì)象劃分給多個(gè)包(開(kāi)發(fā)類,本文中統(tǒng)一稱為包)。 創(chuàng)建一個(gè)知識(shí)庫(kù)對(duì)象時(shí),必須指定一個(gè)包。 知識(shí)庫(kù)信息系統(tǒng) 知識(shí)庫(kù)信息系統(tǒng)是 SAP 提供的一個(gè)功能強(qiáng)大的信息查 詢工具,它可以根據(jù)用戶的各種要求來(lái)查找需要的知 識(shí)庫(kù)對(duì)象。 可以根據(jù)創(chuàng)建者、創(chuàng)建時(shí)間、所屬組件和包、激活狀 態(tài)等等條件來(lái)查找。 可以通過(guò)事務(wù)碼 SE80 來(lái)打開(kāi)知識(shí)庫(kù)信息系統(tǒng)。,博科技術(shù) BONCK,BC400: ABAP Workbench Fou
29、ndations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,31,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第一課 知識(shí)庫(kù)和對(duì)象瀏覽器 可以通過(guò)應(yīng)用層次功能 來(lái)顯示按層級(jí)組織的知 識(shí)庫(kù)對(duì)象。 事務(wù)碼是 SE81。 展開(kāi)某個(gè)節(jié)點(diǎn)就顯示該 節(jié)點(diǎn)下的所有包,雙擊 包名稱或者將光標(biāo)定位 在包名稱上點(diǎn)擊“信息 系統(tǒng)”按鈕,就能轉(zhuǎn)到 知識(shí)庫(kù)信息系統(tǒng)中并顯 示該包的內(nèi)容。 這樣的導(dǎo)航方法可以讓 我們很方便的返回到同 一個(gè)應(yīng)用組件,查看組 件中各個(gè)包的關(guān)系。,博科技術(shù) BONCK,BC400: ABAP Workbench
30、 Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,32,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第一課 知識(shí)庫(kù)和對(duì)象瀏覽器 ABAP 工作臺(tái)工具 ABAP 工作臺(tái)包括了開(kāi)發(fā)和編輯知識(shí)庫(kù)對(duì)象所需的全 部工具,這些工具覆蓋了整個(gè)軟件開(kāi)發(fā)周期。主要的 工具有:, ,ABAP 編輯器,用來(lái)編寫(xiě)源代碼 ABAP 字典,用來(lái)編輯數(shù)據(jù)庫(kù)表、數(shù)據(jù)類型等 屏幕制作器,用來(lái)繪制屏幕(含用戶會(huì)話的代碼) 菜單制作器,用來(lái)制作用戶界面(菜單欄、標(biāo)準(zhǔn)工具欄、應(yīng),用工具欄、功能鍵等) 函數(shù)編制器,用來(lái)維護(hù)函數(shù)模塊
31、類制作器,用來(lái)全局類和接口 我們可以直接調(diào)用這些工具編輯相應(yīng)的知識(shí)庫(kù)對(duì)象, 但是更好更方便的方法是使用對(duì)象瀏覽器。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第一課 知識(shí)庫(kù)和對(duì)象瀏覽器,博科技術(shù) BONCK,ABAP 工作臺(tái)工具,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workb
32、ench Foundations and Concepts,33,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第一課 知識(shí)庫(kù)和對(duì)象瀏覽器 全屏打開(kāi)/關(guān)閉,導(dǎo)航區(qū) 右鍵菜單,工具區(qū) 右鍵菜單,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,34,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第一課 知識(shí)庫(kù)和對(duì)象瀏覽器 對(duì)象瀏覽器 所有我們需要的知識(shí)庫(kù)對(duì)象都可以用對(duì)象瀏覽器這一 核心開(kāi)發(fā)工具來(lái)顯示。只需要雙擊某個(gè)對(duì)象,就可以 打開(kāi)相應(yīng)的編輯工具來(lái)
33、直接修改它了。 對(duì)象瀏覽器的屏幕分兩個(gè)部分 左面是層級(jí)顯示的導(dǎo)航區(qū) 右面是使用相應(yīng)工具編輯開(kāi)發(fā)對(duì)象的工具區(qū) 可以通過(guò)“全屏打開(kāi)/關(guān)閉”按鈕來(lái)打開(kāi)或隱藏導(dǎo)航區(qū) 可以使用右鍵菜單來(lái)使用相關(guān)的編輯功能,右鍵菜單 的內(nèi)容會(huì)根據(jù)所編輯的對(duì)象而變化,因此該菜單一般 稱為上下文菜單(Context Menu)。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,35,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第一課 知識(shí)庫(kù)和對(duì)象瀏覽器 對(duì)象
34、都顯示在導(dǎo)航區(qū)。 如果選擇了一個(gè)包,則 這個(gè)包里所有的知識(shí)庫(kù) 對(duì)象都會(huì)列出來(lái)。, 雙擊一個(gè)對(duì)象就可以開(kāi) 始編輯它。 可以通過(guò)前后箭頭來(lái)訪 問(wèn)以前訪問(wèn)過(guò)的對(duì)象。 可以把經(jīng)常使用的對(duì)象 添加到收藏夾里。, 導(dǎo)航區(qū)的按鈕僅影響導(dǎo) 航區(qū),對(duì)于工具區(qū)則由 工具欄進(jìn)行控制。,刷新 收藏夾,上級(jí)對(duì)象,上一個(gè)/下 一個(gè)對(duì)象,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,36,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第一課 知識(shí)庫(kù)和對(duì)象瀏
35、覽器,顯示相應(yīng)的工具。 可以用前后箭頭在不同對(duì) 象間切換。 如果覺(jué)得不直觀,還可以 打開(kāi)一個(gè)導(dǎo)航歷史子窗口。,導(dǎo)航箭頭,打開(kāi)/關(guān)閉,導(dǎo)航歷史 在工具欄,根據(jù)編輯對(duì)象,導(dǎo)航歷史,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,37,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第一課 知識(shí)庫(kù)和對(duì)象瀏覽器 顯示對(duì)象清單 (同步導(dǎo)航區(qū)和工具區(qū)) 有時(shí)候?yàn)榱烁`活的使 用,會(huì)導(dǎo)致導(dǎo)航區(qū)和工具 區(qū)不同步。 可以雙擊導(dǎo)航區(qū)的對(duì)象使 工具區(qū)的
36、內(nèi)容向?qū)Ш絽^(qū)同 步。 也可以使用“顯示對(duì)象清單” 功能來(lái)使導(dǎo)航區(qū)的菜單向 工具區(qū)同步。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,38,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) 從本課可以學(xué)會(huì)如何創(chuàng)建程序、事務(wù)碼和 包,以及如何為知識(shí)庫(kù)對(duì)象指定包。 本課中將學(xué)習(xí)到 說(shuō)出和使用組織軟件開(kāi)發(fā)的工具 創(chuàng)建包 創(chuàng)建程序 創(chuàng)建事務(wù)碼,博科技術(shù) BONCK,BC400: ABAP Workbench F
37、oundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,39,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) 關(guān)于組織開(kāi)發(fā) SAP 出于管理和安全考慮,對(duì)組織開(kāi)發(fā)的工作非常重 視。為了保證運(yùn)行系統(tǒng)不受開(kāi)發(fā)干擾,至少需要一套 開(kāi)發(fā)系統(tǒng)用于配置和開(kāi)發(fā),一套生產(chǎn)系統(tǒng)用于最終用 戶使用,而有些時(shí)候會(huì)增加專門(mén)的配置系統(tǒng)和測(cè)試系 統(tǒng),形成更加完備的開(kāi)發(fā)管理體系。 開(kāi)發(fā)一般在開(kāi)發(fā)系統(tǒng)上進(jìn)行,被編輯和增加的開(kāi)發(fā)對(duì) 象在項(xiàng)目完成后傳輸?shù)缴a(chǎn)系統(tǒng)上。在項(xiàng)目開(kāi)始的時(shí) 候,項(xiàng)目經(jīng)理創(chuàng)建一個(gè)變更請(qǐng)求,并
38、根據(jù)開(kāi)發(fā)人員的 分工為他們創(chuàng)建各自的任務(wù)請(qǐng)求。開(kāi)發(fā)人員可以把自 己修改的開(kāi)發(fā)對(duì)象保存在自己的請(qǐng)求中,便于管理。 可以使用 SE01、SE09、SE10 等事務(wù)碼創(chuàng)建和管理 請(qǐng)求號(hào)。按 SAP 的開(kāi)發(fā)組織原則,開(kāi)發(fā)人員不能自己 創(chuàng)建和釋放請(qǐng)求,只能使用項(xiàng)目經(jīng)理分配的請(qǐng)求。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) 關(guān)于組織開(kāi)發(fā) 可以使用 SE01、SE09、SE10 等事務(wù)碼創(chuàng)建和管理 請(qǐng)求號(hào)。按 SAP 的開(kāi)發(fā)組織原則,開(kāi)發(fā)人員不能自己 創(chuàng)建
39、和釋放請(qǐng)求,只能使用項(xiàng)目經(jīng)理分配的請(qǐng)求。,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,40,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) 創(chuàng)建包 有幾種常用的方法可以創(chuàng)建包 在對(duì)象瀏覽器中,對(duì)象選Package,在對(duì)象名稱框 中輸入要?jiǎng)?chuàng)建的包的名字,然后回車,如果這個(gè)包 已經(jīng)存在,系統(tǒng)會(huì)打開(kāi)這個(gè)包,否則,會(huì)提示你是 否要?jiǎng)?chuàng)建這個(gè)包,選擇“是”。 在對(duì)象瀏覽器的首頁(yè),關(guān)閉所有對(duì)象,選擇菜單 “WorkbenchEdit
40、Object”,會(huì)打開(kāi)創(chuàng)建對(duì)象的對(duì) 話框,找“Development Coordination”選項(xiàng)卡,在 Package欄中輸入要?jiǎng)?chuàng)建的包的名字,再回車。 如果已經(jīng)打開(kāi)了某個(gè)包,可以在上面使用上下文菜 單“CreatePackage”。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,41,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) 下面是對(duì)創(chuàng)建包時(shí)的屬性的說(shuō)明, ,Package:包的名稱 短文
41、本:包的說(shuō)明,比較直觀的說(shuō)明 Appl. Component:應(yīng)用程序組件,按照應(yīng)用模塊劃分的類別 Software Component:軟件組件,定制開(kāi)發(fā)應(yīng)用 HOME Transport Layer:傳輸路徑,該包能夠傳遞到那些服務(wù)器 Package Type:包類型 Not a Main Package:可以包含知識(shí)庫(kù)對(duì)象和其他包 Main Package:只能包含其他包 Structure Package:只能包含 Main Package,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,第二單元
42、 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā),BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,42,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) 關(guān)于傳輸路徑 可以使用傳輸管理系統(tǒng)(事務(wù)碼 STMS)管理多個(gè)傳 輸路徑,每個(gè)傳輸路徑指定了請(qǐng)求的傳遞方向,如圖。 創(chuàng)建了包之后,還必須為包指定一個(gè)請(qǐng)求號(hào),知 識(shí)庫(kù)對(duì)象都要附加在請(qǐng)求號(hào)上按指定傳輸路徑傳 遞到目標(biāo)服務(wù)器上。,博科技術(shù) BONCK,BC400: ABAP Wor
43、kbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,43,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) ABAP 編程語(yǔ)言的簡(jiǎn)介 ABAP 編程語(yǔ)言的基本特性 專為基于會(huì)話的商業(yè)應(yīng)用而設(shè)計(jì)。 強(qiáng)類型:每個(gè)變量必須指定類型,系統(tǒng)支持類型的自動(dòng)轉(zhuǎn)換。 多語(yǔ)言應(yīng)用:采用了可翻譯的文本元素,可以根據(jù)需要支持 多國(guó)語(yǔ)言。 允許 SQL 訪問(wèn):可以使用 Native SQL 和 Open SQL 兩種方 式訪問(wèn) SAP 數(shù)據(jù)庫(kù),可以使用 Native SQL 訪問(wèn)非
44、SAP 數(shù)據(jù) 庫(kù)。 面向?qū)ο螅鹤畛醯?ABAP 不支持面向?qū)ο?,但現(xiàn)在已經(jīng)支持。 平臺(tái)無(wú)關(guān):運(yùn)行在 ABAP運(yùn)行時(shí)系統(tǒng)之上,與操作系統(tǒng)和數(shù) 據(jù)庫(kù)完全無(wú)關(guān)。 向上兼容:與以前版本的程序完全兼容,以前寫(xiě)的程序無(wú)須 重寫(xiě)就能用在新系統(tǒng)上。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,44,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) ABAP 編程語(yǔ)言的簡(jiǎn)介 ABAP 基本語(yǔ)法特點(diǎn), ,由各自獨(dú)立的語(yǔ)句
45、構(gòu)成。 每個(gè)語(yǔ)句的第一個(gè)單詞必須是ABAP關(guān)鍵字。 單詞之間至少要用一個(gè)空格分隔。 每個(gè)語(yǔ)句結(jié)束必須要用句號(hào)。 支持分塊縮進(jìn),便于閱讀。 一個(gè)語(yǔ)句可以跨多行,只要不遇到句號(hào),就認(rèn)為是一個(gè)延續(xù),的語(yǔ)句。 可以把多個(gè)語(yǔ)句放在一行。 ABAP不區(qū)分大小寫(xiě),關(guān)鍵字和用戶操作數(shù)都一樣,為了便于 閱讀,一般把關(guān)鍵字大寫(xiě),而操作數(shù)小寫(xiě)。 由于編程的時(shí)候隨時(shí)切換大小寫(xiě)比較麻煩,可以在 ABAP編 輯器 中用“規(guī)范化打印機(jī)”按鈕來(lái)自動(dòng)轉(zhuǎn)換。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workb
46、ench Foundations and Concepts,45,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) ABAP 編程語(yǔ)言的簡(jiǎn)介 ABAP 基本語(yǔ)法特點(diǎn)(續(xù)上頁(yè)) 注釋行由第一列的星號(hào)(*)開(kāi)頭,并且必須寫(xiě)在第一 列,前面不能有空格。 編譯器忽略注釋行,不會(huì)執(zhí)行。 在行末的注釋用雙引號(hào)(”)作為前導(dǎo)。 如果連續(xù)多行的第一個(gè)關(guān)鍵字相同,可以使用鏈語(yǔ)句的方式 減少輸入。這是 ABAP 獨(dú)特的一個(gè)分塊縮進(jìn)方法。 第一個(gè)關(guān)鍵字后面用一個(gè)冒號(hào)表示鏈語(yǔ)句開(kāi)始。 鏈語(yǔ)句的最后一句結(jié)束還是用句號(hào),但是中間的分隔由句號(hào)改 成逗號(hào)。 空格和換行跟基本語(yǔ)句一樣,可以任意加。 注意,這樣的寫(xiě)法并不
47、會(huì)提高執(zhí)行效率,僅僅為了顯示好看。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,46,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) ABAP 編程語(yǔ)言的簡(jiǎn)介 程序執(zhí)行的返回碼 這實(shí)際上是 ABAP 異常捕獲機(jī)制的一部分。 有些語(yǔ)句執(zhí)行完成后會(huì)向一個(gè)特定的系統(tǒng)字段 sy-subrc 寫(xiě)入 表示執(zhí)行結(jié)果的值。 0 值都表示執(zhí)行成功,而非 0 值則根據(jù)功能不同有特別的定 義,這些值的意義都需要查看 AB
48、AP 聯(lián)機(jī)幫助中相應(yīng)關(guān)鍵字 的說(shuō)明。 常用的需要檢查返回碼的語(yǔ)句有 SELECT、AUTHORITY- CHECK 等。 其他系統(tǒng)字段 ABAP 設(shè)置了一個(gè)結(jié)構(gòu) syst 用來(lái)保存系統(tǒng)運(yùn)行時(shí)的各種參 數(shù),用 sy-xxxxx 的形式調(diào)用,具體有哪些系統(tǒng)字段可以查看 聯(lián)機(jī)幫助。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,47,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) ABAP 編程語(yǔ)言的簡(jiǎn)介
49、獲取語(yǔ)言幫助 光標(biāo)定位在關(guān)鍵字上,按F1,直接調(diào)出幫助文檔,如果查詢 出多條結(jié)果,則出現(xiàn)命中列表,從中選擇某條結(jié)果查看。, 光標(biāo)定位在關(guān)鍵字上,按工具欄的,按鈕,打開(kāi)幫助導(dǎo),航,不但可以查關(guān)鍵字,還能查其他相關(guān)內(nèi)容,如功能模塊、 表、邏輯數(shù)據(jù)庫(kù)、權(quán)限對(duì)象等。 SAP 的幫助系統(tǒng)相當(dāng)完善,但是要找到所需內(nèi)容也不 是很容易,需要不斷積累經(jīng)驗(yàn)。 SAP 還有很多對(duì)學(xué)習(xí)語(yǔ)言有幫助的示例和功能,如 ABAP文檔與范例(事務(wù)碼ABAPDOCU)、BAPI手冊(cè) (事務(wù)碼BAPI)、數(shù)據(jù)模型(事務(wù)碼SD11)等。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and
50、 Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,48,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) 創(chuàng)建 ABAP 程序 創(chuàng)建程序的方法 創(chuàng)建程序有很多種方法,如通過(guò)對(duì)象瀏覽器或者ABAP編輯器 等。一般來(lái)說(shuō),創(chuàng)建報(bào)表程序就用SE38,創(chuàng)建對(duì)話框程序用 SE80。 SE38使用起來(lái)很簡(jiǎn)單,輸入程序名,按創(chuàng)建按鈕即可,它創(chuàng) 建出來(lái)的只有一個(gè)單獨(dú)的程序和對(duì)應(yīng)的文本對(duì)象。 SE80則有個(gè)導(dǎo)航過(guò)程,可以同時(shí)創(chuàng)建包含程序等。 此外,SE80是對(duì)象瀏覽器,用它還可以創(chuàng)建和修改所有知識(shí) 庫(kù)對(duì)象,如包、GUI標(biāo)
51、題、GUI狀態(tài)(菜單、工具欄)、屏幕、 事務(wù)碼等等。 創(chuàng)建了應(yīng)用程序后,就可以進(jìn)入ABAP編輯器來(lái)修改和 調(diào)試代碼,隨著SAP升級(jí),ABAP編輯器也在不斷改進(jìn)。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,49,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā),激活,保存的程序 (為進(jìn)一步的開(kāi)發(fā)和調(diào)試),活動(dòng)的程序 (為系統(tǒng)范圍的使用和傳輸),程序A (非活動(dòng)版本) 程序C (非活動(dòng)版本) 在編輯者執(zhí)
52、行時(shí), 當(dāng)前的,相應(yīng)的運(yùn)行時(shí)對(duì)象 通常被生成。,程序A (活動(dòng)版本) 程序B (活動(dòng)版本) 程序C (活動(dòng)版本) 在執(zhí)行時(shí), 使用激活時(shí)生成的運(yùn)行時(shí)對(duì)象。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,50,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) 創(chuàng)建 ABAP 程序 活動(dòng)和不活動(dòng)的知識(shí)庫(kù)對(duì)象 當(dāng)創(chuàng)建或者修改保存了一個(gè)知識(shí)庫(kù)對(duì)象后,系統(tǒng)先把它保存 為不活動(dòng)的版本。 知識(shí)庫(kù)對(duì)象就可能同時(shí)有一個(gè)活
53、動(dòng)版本和一個(gè)不活動(dòng)版本, 在開(kāi)發(fā)結(jié)束后,必須把不活動(dòng)的“編輯版本”激活,這個(gè)版本就 變成了新的活動(dòng)版本。 只有當(dāng)一個(gè)請(qǐng)求號(hào)內(nèi)部所有的開(kāi)發(fā)對(duì)象都變成活動(dòng)版本的時(shí) 候,才可以進(jìn)行釋放和傳輸。, 如果同時(shí)有激活和非激活兩個(gè)版本,可以使用,按鈕來(lái)在,這兩個(gè)版本中切換,以驗(yàn)證修改。 當(dāng)激活程序的時(shí)候,系統(tǒng)會(huì)先顯示一個(gè)未激活對(duì)象的清單, 可以選擇需要激活的程序來(lái)激活。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,51,第
54、二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) 創(chuàng)建 ABAP 程序 激活時(shí)系統(tǒng)的工作步驟, ,把對(duì)象保存成未激活版本 對(duì)未激活版本的語(yǔ)法和一致性檢查 在檢查成功后,用激活版本替換舊的激活版本 如果對(duì)象是程序的話,為以后執(zhí)行生成相關(guān)的運(yùn)行對(duì)象, 生成了開(kāi)發(fā)對(duì)象后,系統(tǒng)創(chuàng)建獨(dú)立的運(yùn)行時(shí)對(duì)象 (LOAD編譯)并且保存到知識(shí)庫(kù)中,這個(gè)版本就是 運(yùn)行時(shí)所執(zhí)行(解釋執(zhí)行)的版本。 由于有活動(dòng)版本和非活動(dòng)版本之分,就可以實(shí)現(xiàn)不影 響當(dāng)前系統(tǒng)狀態(tài)而修改知識(shí)庫(kù)對(duì)象,所有開(kāi)發(fā)對(duì)象都 在激活之后才對(duì)整個(gè)系統(tǒng)是“可見(jiàn)的”。 事實(shí)上,SAP的很多對(duì)象都要激活才能使用,跟蹤調(diào) 試也必須激活后進(jìn)行,因此建議隨時(shí)激
55、活。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,51,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) 創(chuàng)建 ABAP 程序,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,52,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課
56、開(kāi)發(fā)程序和組織開(kāi)發(fā) 創(chuàng)建事務(wù)碼 創(chuàng)建和修改事務(wù)碼的方法 用SE93來(lái)管理事務(wù)碼 在SE80中,按所屬程序來(lái)管理 事務(wù)碼的屬性,必須選擇正確的事務(wù)碼開(kāi)始程序類 型,否則運(yùn)行事務(wù)碼會(huì)無(wú)法打開(kāi)目標(biāo)程序, ,Program and Screen:對(duì)話框程序 Program and Selection Screen:報(bào)表程序 Method of a Class:面向?qū)ο蟪绦?Transaction with variant:帶變式的程序 Transaction with parameters:帶參數(shù)的程序, 事務(wù)碼主要就是指定程序和屏幕,附帶的有變式和參 數(shù)等??偟膩?lái)說(shuō),使用起來(lái)是非常靈活的。 事務(wù)碼也
57、必須指定包和傳輸請(qǐng)求。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,53,第二單元 ABAP工作臺(tái)簡(jiǎn)介 第二課 開(kāi)發(fā)程序和組織開(kāi)發(fā) 關(guān)閉開(kāi)發(fā)項(xiàng)目 當(dāng)開(kāi)發(fā)人員完成所負(fù)責(zé)程序的開(kāi)發(fā)和調(diào)試之后,可以 激活全部開(kāi)發(fā)對(duì)象,然后釋放自己的請(qǐng)求號(hào),從而提 交開(kāi)發(fā),準(zhǔn)備進(jìn)行傳輸。 創(chuàng)建的開(kāi)發(fā)對(duì)象加入請(qǐng)求時(shí),會(huì)自動(dòng)加上相應(yīng)的鎖, 以避免被其他人任意修改。 釋放請(qǐng)求后,所有請(qǐng)求開(kāi)始時(shí)給開(kāi)發(fā)對(duì)象加上的鎖都 會(huì)被釋放。 當(dāng)所有相關(guān)請(qǐng)
58、求都被釋放后,項(xiàng)目經(jīng)理可以釋放和檢 查主請(qǐng)求,完成項(xiàng)目。 主請(qǐng)求釋放時(shí),會(huì)把所有開(kāi)發(fā)對(duì)象的更改都放置到系 統(tǒng)指定的傳輸目錄中,等待管理員把請(qǐng)求按照傳輸路 徑傳到目標(biāo)系統(tǒng)里。 當(dāng)前服務(wù)器也會(huì)保留一份開(kāi)發(fā)對(duì)象到版本管理庫(kù)中。,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,54,第三單元 ABAP字典簡(jiǎn)介 單元目標(biāo) 本單元完成后,應(yīng)該能: 解釋在應(yīng)用開(kāi)發(fā)中使用數(shù)據(jù)模型的意圖和好處 描述SAP航班數(shù)據(jù)模型 描述數(shù)據(jù)元素
59、和域的意義和結(jié)構(gòu) 描述透明表的意義和結(jié)構(gòu) 描述結(jié)構(gòu)的意義和結(jié)構(gòu) 在你的程序中使用提及的字典元素,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,博科技術(shù) BONCK,BC400: ABAP Workbench Foundations and Concepts,55,第三單元 ABAP字典簡(jiǎn)介 第一課 數(shù)據(jù)模型和描述性元素 數(shù)據(jù)模型 在商業(yè)應(yīng)用軟件開(kāi)發(fā)時(shí),部分實(shí)際世界必須被描述成 數(shù)據(jù)形式,業(yè)務(wù)單元描述成實(shí)體。實(shí)體之間互相有關(guān) 聯(lián),形成潛在的數(shù)據(jù)模型?;蛘呓凶鰧?shí)體關(guān)系模型 (ERM)。 在 ABAP字典中,我們把這些數(shù)據(jù)模型及其之間的關(guān) 系定義成表(透明表)。在激活表的時(shí)候,對(duì)應(yīng)的數(shù) 據(jù)庫(kù)表也會(huì)同時(shí)建立,以后實(shí)際的應(yīng)用數(shù)據(jù)都會(huì)保存 到這些表里。,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
評(píng)論
0/150
提交評(píng)論