SAP ABAP程序設(shè)計基礎(chǔ)教程第8章選擇屏幕與列表屏幕_第1頁
SAP ABAP程序設(shè)計基礎(chǔ)教程第8章選擇屏幕與列表屏幕_第2頁
SAP ABAP程序設(shè)計基礎(chǔ)教程第8章選擇屏幕與列表屏幕_第3頁
SAP ABAP程序設(shè)計基礎(chǔ)教程第8章選擇屏幕與列表屏幕_第4頁
SAP ABAP程序設(shè)計基礎(chǔ)教程第8章選擇屏幕與列表屏幕_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第8章選擇屏幕與列表屏幕標(biāo)準(zhǔn)列表屏幕通用操作功能 在列表運行期維護(hù)列表頭 編程期間維護(hù)列表頭 文本符號(Text Symbols)的使用機制 生成列表屏幕生成列表屏幕 生成基礎(chǔ)列表屏幕 多層詳細(xì)列表屏幕(Details List Screen)的創(chuàng)建過程 列表隱藏域(列表隱藏域(Hide)的使用)的使用 標(biāo)準(zhǔn)列表屏幕的格式化輸出標(biāo)準(zhǔn)列表屏幕的格式化輸出 使用 WRITE、SKIP和ULINE輸出語句輸出的內(nèi)容將被系統(tǒng)輸出傳遞到標(biāo)準(zhǔn)列表,標(biāo)準(zhǔn)列表屏幕的格式化輸出SKIP: 將當(dāng)前行的輸出位置定位到指定的行,主要用法為:SKIP : 跳到下一行。SKIP n:在當(dāng)前光標(biāo)位置跳過n(n0)行。SKI

2、P TO LINE line : 將光標(biāo)定位在第line行上(line0)ULINE:畫橫線ULINE.:在當(dāng)前位置畫一道橫線ULINE AT m(n ):在當(dāng)前行的第m個位置畫一個長度為n的橫線ULINE /m(n): 先用“/”換一行,然后在當(dāng)前行的第m個位置畫一個長度為n的橫線。WRITE:向列表屏幕緩沖區(qū)(List Buffer)輸出文本,當(dāng)START-OF-SELECTION事件結(jié)束的時候,列表屏幕緩沖區(qū)中的內(nèi)容將集中輸出到列表屏幕。WRITE的主要用法是:WRITE AT / () . :在指定位置、按指定輸出數(shù)據(jù)對象的值到列表屏幕緩沖區(qū)。其中:斜線/ 表示開始新的一行。 是最長為

3、三位數(shù)字的數(shù)字或變量,表示在屏幕當(dāng)前行上的第幾個位置。 是最長為三位數(shù)字的數(shù)字或變量,表示要輸出長度。如果語句中的和是直接的數(shù)字,而不是變量,則可以忽略關(guān)鍵字AT 。WRITE語句的格式化選項語句的格式化選項 對于WRITE語句,還可以使用不同的格式化選項,語法為:WRITE . .對所有數(shù)據(jù)類型的格式化選項:對數(shù)字?jǐn)?shù)據(jù)類型的格式化選項:對日期數(shù)據(jù)類型的格式化選項:WRITE語句的格式化輸出 用用WRITE語句輸出符號和圖標(biāo)語句輸出符號和圖標(biāo) 可以用WRITE語句在屏幕上輸出符號和圖標(biāo),其語法如下:WRITE AS SYMBOL.WRITE AS ICON.用用WRITE語句顯示復(fù)選框語句顯示

4、復(fù)選框 可以使用WRITE語句向列表屏幕顯示復(fù)選框,語法如下:WRITE AS CHECKBOX.通過語句輸入幫助插入通過語句輸入幫助插入WRITE語句語句 啟動輸入模式工具-1 啟動輸入模式工具-2 啟動輸入模式工具-3 定制WRITE的符號輸出-1 定制WRITE的符號輸出-2 定制WRITE的符號輸出-3 定制WRITE的符號輸出-4 定制WRITE的符號輸出-5 設(shè)置列表的格式設(shè)置列表的格式 在ABAP中,缺省的列表的行寬是83個字符,缺省的每頁的行數(shù)是6萬行,可以通過在報表聲明語句的后面添加如下子句來改變?nèi)笔〉膱蟊淼男袛?shù)和列數(shù)的設(shè)置:REPORT LINE-SIZE LINE-COU

5、NT .其中的每頁的行數(shù)包含了列表頭(headings),列表內(nèi)容,與列表腳注行(footer lines)。如: REPORT zmy_list_test_200 LINE-SIZE 30 LINE-COUNT 12.就是將報表zmy_list_test_200的列表屏幕的每頁行數(shù)和每行字段數(shù)量分別改成了12和30??梢栽贏BAP程序中使用:NEW-PAGE LINE-SIZE LINE-COUNT .語句來覆蓋一個列表緩沖區(qū)(List Buffer)的缺省值,如果要恢復(fù)成系統(tǒng)的缺省值,可以將和的值設(shè)置成0.可以在報表聲明語句的后面添加如下所示的子句來屏蔽報表的表頭(List Headers

6、)和報表的列頭(Column Headers):REPORT NO STANDARD PAGE HEADING.也可以在ABAP程序中使用: NEW-PAGE NO-TITLE/WITH-TITLE NEW-PAGE NO-HEADING/WITH-HEADING來覆蓋系統(tǒng)的缺省的設(shè)置??梢栽诔绦虻腡OP-OF-PAGE事件塊中用代碼生成報表頁的表頭,這對想在表頭中輸出某個程序變量的情況尤其有用。在程序中首次遇到WRITE/ULINE/SKIP語句,生成初始的列表緩沖區(qū)時,TOP-OF-PAGE事件別觸發(fā),如:REPORT zmy_list_test_200 NO STANDARD PAGE

7、HEADING. TOP-OF-PAGE. WRITE : / This is a list header which is set by the program. START-OF-SELECTION. “ 可以在程序中使用:SET LEFT SCROLL-BOUNDARY .語句來鎖定列表左邊的由指定個數(shù)的字段的數(shù)量, 這樣當(dāng)列表在橫向滾動的時候,這幾個字段列將始終顯示。選擇屏幕 選擇屏幕的工作流程 選擇屏幕的功能 選擇屏幕聲明選擇屏幕聲明 選擇屏幕單值輸入變量的定義與使用 多值輸入多值輸入 選擇屏幕后期事件處理選擇屏幕后期事件處理 選擇屏幕事件SELECTION-SCREEN中的輸入檢查

8、與錯誤消息 選擇屏幕的設(shè)計與調(diào)用 選擇屏幕的封裝選擇屏幕的封裝可以使用語法:SELECTION-SCREEN BEGIN OF BLOCK WITH FRAME TITLE title . SELECTION-SCREEN END OF BLOCK .來創(chuàng)建一個選擇屏幕??蛇x項 WITH FRAME TITLE title 確定選擇屏幕是否帶有邊框,而TITLE title選項決定是否在邊框上帶有文字說明。選擇屏幕字段的校驗可以為選擇屏幕中的單個字段指定校驗,采用語法:AT SELECTION-SCREEN ON .事件塊中指定的代碼來校驗單個字段。也可以為指定的選擇屏幕中的某個代碼塊中的所有

9、字段指定校驗,采用:AT SELECTION-SCREEN ON BLOCK .事件塊中指定的代碼來校驗整個選擇屏幕塊。創(chuàng)建選擇屏幕字段的F1 Help和F4 HelpF1 Help: AT SELECTION-SCREEN ON HELP-REQUEST FOR F4 Help: AT SELECTION-SCREEN ON VALUE-REQUEST FOR 選擇屏幕的調(diào)用選擇屏幕的調(diào)用 定義一個選擇屏幕的語法是:SELECTION-SCREEN BEGIN OF SCREEN TITLE title AS Window SELECTION-SCREEN END OF SCREEN .其中

10、為必須指定的四位數(shù)字的選擇屏幕的編號,AS Window可選項用于指定該選擇屏幕是一個單獨顯示的模態(tài)對話框(Modal Dialog Box), TITLE title 可選項用于指定屏幕的標(biāo)題。在選擇屏幕定義塊的內(nèi)部,可以使用PARAMETERS, SELECT-OPTIONS來定義屏幕變量。調(diào)用一個選擇屏幕的語法是:CALL SELECTION-SCREEN STARTING AT x1 y1 ENDING AT x2 y2 . 其中為要被調(diào)用的選擇屏幕的四位數(shù)字編號,STARTING可選項中的(x1 , y1)和(x2 ,y2)分別表示選擇屏幕顯示的左上角和右下角的(列號,行號)。采用邏

11、輯數(shù)據(jù)庫讀取數(shù)據(jù) 在創(chuàng)建報表程序時指定要使用的邏輯數(shù)據(jù)庫 用TCode SE36查看邏輯數(shù)據(jù)庫F1S 用邏輯數(shù)據(jù)庫F1S讀取數(shù)據(jù)與采用三個嵌套的SELECT語句的比較 邏輯數(shù)據(jù)庫的事件邏輯數(shù)據(jù)庫的事件 使用FIS邏輯數(shù)據(jù)庫的報表程序的事件觸發(fā)順序 一個使用了邏輯數(shù)據(jù)庫F1S的報表程序 執(zhí)行邏輯數(shù)據(jù)庫F1S的事件處理流程 邏輯數(shù)據(jù)庫的流程終止邏輯數(shù)據(jù)庫的流程終止 STOP語句:語句:結(jié)束整個報表的輸出,并且觸發(fā)END-OF-SELECTION事件EXIT語句:語句:退出所有的GET代碼塊,并且不觸發(fā)任何的后續(xù)事件,直接 轉(zhuǎn)向基礎(chǔ)列表屏幕輸出屏幕顯示(Basic List Screen)。因 此EXIT的功能用于退出GET事件塊,其功能與STOP基本一 致,只是它不會觸發(fā)后續(xù)事件。REJECT.語句:語句:中止當(dāng)前GET事件并轉(zhuǎn)向邏輯數(shù)據(jù)庫同一層的下一個 GET事件,即轉(zhuǎn)向數(shù)據(jù)庫中的下一行數(shù)據(jù),格式如下: REJECT. 如: if spfli-connid = 0017 . REJECT. endif.REJECT node_name.語句:語句:中止當(dāng)前和所有的同一級別節(jié)點的所有后續(xù)GET事件,執(zhí)行當(dāng)前層

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論