第011章 讀取并處理 數(shù)據(jù)庫表_第1頁
第011章 讀取并處理 數(shù)據(jù)庫表_第2頁
第011章 讀取并處理 數(shù)據(jù)庫表_第3頁
第011章 讀取并處理 數(shù)據(jù)庫表_第4頁
第011章 讀取并處理 數(shù)據(jù)庫表_第5頁
已閱讀5頁,還剩26頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

28))。始終需要指定集團(tuán)。數(shù)據(jù)通過主機(jī)變量在數(shù)據(jù)庫表和ABAP/4程序之間傳送。這些變量在ABAP/4程序中聲明,在自身的SQL語句中,這些變量前面要有一個(gè)冒號(hào)(:)??蓪⒒咀侄魏徒Y(jié)構(gòu)化字段用作主機(jī)變量。如果SELECT語句的結(jié)果是表,那么,就使用PERFORMING<form>選項(xiàng)在閉循環(huán)中逐行讀取數(shù)據(jù)。對(duì)于每一行,都將調(diào)用一次子程序<form>。在該子程序中,可通過將數(shù)據(jù)附加到內(nèi)表以便對(duì)其作進(jìn)一步的處理。有關(guān)自身的SQL的詳細(xì)信息,參見EXECSQL的關(guān)鍵字文檔。DATA:BEGINOFWA,

CLIENT(3),

ARG1(3),

ARG2(3),

ENDOFWA.DATAF3VALUE'1'.EXECSQLPERFORMINGLOOP_OUTPUT.

SELECTCLIENT,ARG1INTO:WAFROMTABLE_001WHEREARG2=:F3

ENDEXEC.FORMLOOP_OUTPUT.

WRITE:/WA-CLIENT,WA-ARG2.

ENDFORM.在該示例中,工作區(qū)WA和字符字段F3都在自身的SQLSELECT語句中用作主機(jī)變量。WA是目標(biāo)區(qū),所選數(shù)據(jù)將讀入該目標(biāo)區(qū)。F3用在WHERE條件中。在子程序LOOP_OUTPUT中,將讀入WA中的數(shù)據(jù)寫到屏幕上。setZ_018pagepage3030在ABAP/4程序的執(zhí)行過程中鎖定數(shù)據(jù)庫對(duì)象xe"DEQUEUE"xe"ENQUEUE"xe"數(shù)據(jù)庫表,鎖定"在SAP系統(tǒng)中,應(yīng)用程序必須鎖定它們使用的對(duì)象。這是因?yàn)槊總€(gè)程序都由兩個(gè)任務(wù)組成:_ 對(duì)話任務(wù),在該任務(wù)中輸入或更改數(shù)據(jù)_ 更新任務(wù),在該任務(wù)中更改數(shù)據(jù)庫對(duì)話任務(wù)將用戶輸入的數(shù)據(jù)傳送給更新任務(wù)。然后更新任務(wù)讀取即將修改的數(shù)據(jù)并相應(yīng)地修改數(shù)據(jù)庫。通常,對(duì)話任務(wù)和更新任務(wù)是異步操作的。這意味著對(duì)話任務(wù)并不等待更新任務(wù)根據(jù)用戶的輸入修改數(shù)據(jù)庫,而是立即返回到和用戶的對(duì)話中。因?yàn)閷?duì)話任務(wù)和更新任務(wù)是異步操作的,所以必須鎖定所有涉及的對(duì)象,直到已成功地更改了數(shù)據(jù)庫。在ABAP/4程序的執(zhí)行過程中,必須鎖定程序中的所有對(duì)象。例如,可能必須鎖定客戶主記錄行來修改相應(yīng)的商業(yè)區(qū)數(shù)據(jù)。在該情況下,只要鎖定是活動(dòng)的,其它用戶就不能修改該客戶主記錄行。其它用戶的對(duì)話必須等到該應(yīng)用程序(包括更新任務(wù))結(jié)束。要完全鎖定一個(gè)數(shù)據(jù)對(duì)象,請(qǐng)使用SAP鎖定機(jī)制(ENQUEUE/DEQUEUE)。每個(gè)應(yīng)用程序都提供了大量可用于鎖定數(shù)據(jù)對(duì)象的功能模塊。要獲得一個(gè)可用于鎖定或解鎖的功能模塊的列表,請(qǐng)選擇“ABAP/4開發(fā)工作臺(tái)”屏幕上的“功能庫”。這將進(jìn)入“ABAP/4功能庫:初始屏幕””,在這里選擇“實(shí)用程序->查找”。在后續(xù)“ABAP/4庫信息系統(tǒng):功能模塊”屏幕中,在“功能模塊”字段中輸入*queue*,然后單擊“執(zhí)行”。此操作開始搜索名稱中包含ENQUEUE或DEQUEUE的功能模塊。另外,可直接搜索用于處理要鎖定的數(shù)據(jù)庫對(duì)象的功能模塊。請(qǐng)?jiān)凇肮δ苣K”區(qū)域中輸入該對(duì)象的名稱(包括用于類屬搜索的星號(hào))。詳細(xì)信息,參見文檔系統(tǒng)服務(wù)(頁Error!Notavalidlink.)。setZ_020pagepage3030檢查ABAP/4程序用戶的權(quán)限xe"AUTHORITY-CHECK"xe"權(quán)限檢查"xe"數(shù)據(jù)庫表,權(quán)限檢查"與使用邏輯數(shù)據(jù)庫讀取數(shù)據(jù)不同,運(yùn)行時(shí)在ABAP/4程序中使用SQL語句處理數(shù)據(jù)不會(huì)觸發(fā)權(quán)限檢查(參見邏輯數(shù)據(jù)庫的優(yōu)點(diǎn)(頁Error!Notavalidlink.))。因?yàn)殚_放式SQL和自身的SQL語句允許無限制地訪問所有數(shù)據(jù)庫表,所以這將帶來問題。不是要為所有用戶授予在ABAP/4程序中使用SQL語句訪問所有數(shù)據(jù)的權(quán)限。但是,發(fā)布程序之后,所有具有該程序使用權(quán)限的用戶都能啟動(dòng)它。所以,作為編寫SQL報(bào)表程序的程序員有責(zé)任檢查調(diào)用該程序的用戶是否有權(quán)訪問將在其中處理的數(shù)據(jù)。要在ABAP/4程序中檢查用戶權(quán)限,請(qǐng)使用AUTHORITY-CHECK語句,如下所示:語法AUTHORITY-CHECKOBJECT'<object>'

ID'<name1>'FIELD<F1>

ID'<name2>'FIELD<F2>

ID'<name10>'FIELD<F10>.<object>是即將檢查的授權(quán)對(duì)象的名稱。必須在ID后列出在<object>中定義的所有授權(quán)字段的名稱(<name1>,<name2>)。必須在<F1>,<F2>中為即將檢查的權(quán)限輸入值以作為變量或字母。然后,該語句將為命名的對(duì)象搜索該用戶的參數(shù)文件,以檢查該用戶是否有<f>中所有值的授權(quán)。然后SY-SUBRC將設(shè)置為0。可用DUMMY替換.FIELD<f>跳過字段的檢查。必須檢查系統(tǒng)字段SY-SUBRC中的內(nèi)容來檢查AUTHORITY-CHECK的結(jié)果并作出相應(yīng)的動(dòng)作。有關(guān)可能的返回代碼值的列表和詳細(xì)信息,請(qǐng)參考AUTHORITY-CHECK的關(guān)鍵字文檔。關(guān)于常用授權(quán)的概念,參見文檔用戶、權(quán)限和系統(tǒng)安全性(頁Error!Notavalidlink.)。假設(shè)存在權(quán)限對(duì)象F_SPFLI和字段ACTVT、NAME及CITY。SELECT*FROMSPFLI.

AUTHORITY-CHECKOBJECT'F_SPFLI'

ID'ACTVT'FIELD'02'

ID'NAME'FIELDSPFLI-CARRID

ID'CITY'DUMMY.

I

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論