




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、SAP ABAP開發(fā)開發(fā)-Form開發(fā)Form與與ABAP程序結(jié)構(gòu)程序結(jié)構(gòu)ABAP程序FormDBForm是什么?是什么?lForm就是打印表格,用于報表按一定格式的輸出打印。lForm分兩種lSmartform-新一代的智能表格。lForm-上一代的表格。Form輸出樣式輸出樣式Form存放路徑存放路徑lSmartForm 存放路徑lSAP菜單/工具/打印表格/Smartforms - 智能表格 l事務(wù)碼是Smartforms.lForm存放路徑lSAP菜單/工具/打印表格/SAP腳本/SE71 表格l事務(wù)碼是SE71.Smartform說明說明 l使用Smartforms事務(wù)碼進入SAP
2、智能表初始畫面。Smartform說明說明l定義Smartform的全局設(shè)置l表格屬性l表格接口l全局定義Smartform說明說明l設(shè)定全局設(shè)置-表格屬性l設(shè)置Smartform描述。l設(shè)置頁格式。l設(shè)置報表樣式。Smartform說明說明l設(shè)定全局設(shè)置-表格接口l用于設(shè)置通過Call Function調(diào)用SmartForm時的參數(shù)。l導(dǎo)入-對應(yīng)Call Function Exporting 參數(shù)。l導(dǎo)出對應(yīng)Call Function Import參數(shù)。l表對應(yīng)Call Function Table 參數(shù)。l例外對應(yīng)Call Function Exceptions參數(shù)。Smartform說明
3、說明l設(shè)定全局設(shè)置-全局定義l用于定義SmartForm內(nèi)部使用的全局變量,初始化程序。l全局數(shù)據(jù)定義全局變量。l類型定義全局使用類型。l字段符號定義全局的Field-symbol變量。l初始化存放SmartForm開始執(zhí)行時的初始處理內(nèi)容。l格式化程序l貨幣/數(shù)量字段定義貨幣/數(shù)量類型的全局變量的參考字段。Smartform說明說明l設(shè)置頁和窗口l什么是頁?lSmartform的組成元素。l頁類似于Dialog中的Screen。lSmartform是由頁組成,包含至少一頁或多頁。l每一頁包含多個節(jié)點,節(jié)點可以是窗口、地址、圖形等。Smartform說明說明l設(shè)置頁和窗口l什么是窗口?l頁的組
4、成元素。l窗口分為主窗口、次窗口、拷貝窗口、最終窗口。Smartform說明說明l設(shè)置頁和窗口l窗口類型-主窗口l主窗口一般用于數(shù)據(jù)的列表顯示,用于LOOP循環(huán)顯示;當然也可顯示非列表內(nèi)容。l一個Form中只能包含一個主窗口。l主窗口可分頁輸出,及連續(xù)輸出到幾頁。l無論輸出幾頁,主窗口的寬度必須一致,高度和位置可以任意指定。Smartform說明說明l設(shè)置頁和窗口l窗口類型-次窗口l次窗口主要用于非列表顯示內(nèi)容的輸出。l每一頁中能包含多個次窗口。l次窗口不可分頁輸出。Smartform說明說明l設(shè)置頁和窗口l窗口類型-拷貝窗口、最終窗口使用方式同次窗口。Smartform說明說明l設(shè)置頁和窗口
5、-頁的組成Smartform說明說明l窗口節(jié)點l圖形節(jié)點l地址節(jié)點l文本節(jié)點l表節(jié)點l模板節(jié)點l流邏輯l循環(huán)節(jié)點l程序行l(wèi)命令節(jié)點l文件夾Smartform說明說明l窗口節(jié)點-圖形節(jié)點l建立圖形節(jié)點可以顯示一幅圖形??梢栽谝粋€頁面顯示多個圖形。l設(shè)置圖形節(jié)點的一般屬性,即可指定要顯示的圖形。Smartform說明說明l窗口節(jié)點-文本節(jié)點l建立文本節(jié)點輸出文本內(nèi)容,是最后一級節(jié)點。l可以使用文本編輯器,編輯文本內(nèi)容,可以直接輸出文本,也可動態(tài)輸出文本。Smartform說明說明l窗口節(jié)點-表l列表內(nèi)容顯示,可按一定條件循環(huán)顯示Internal Table中內(nèi)容。l可自定義表的顯示格式、列寬、列數(shù)
6、量。l可以進行匯總統(tǒng)計。l表包含表頭、主要區(qū)域、腳標三部分。l表頭,即顯示列標題。l主要區(qū)域,即Loop循環(huán)顯示區(qū)。l腳標,即Footer區(qū)。Smartform說明說明l窗口節(jié)點-模板l模板用于按一定格式輸出一組文本。l可自定義模板的顯示格式、列寬、列數(shù)量。l模板通常在次窗口中輸出文本。l可設(shè)置模板的執(zhí)行條件。l可根據(jù)模板的列數(shù),增加相同數(shù)量的文本節(jié)點。Smartform說明說明l窗口節(jié)點-流邏輯可選節(jié)點l此節(jié)點可根據(jù)設(shè)定的條件判斷true 和false,并可輸出不同的內(nèi)容。l可選節(jié)點相當于IF.ELSE ENDIF語句。l包含True和False節(jié)點。lTrue和False節(jié)點下可定義其他節(jié)
7、點,如文本、表、模板節(jié)點等。Smartform說明說明l窗口節(jié)點-流邏輯循環(huán)節(jié)點l此節(jié)點用于輸出Internal Table內(nèi)容。l循環(huán)節(jié)點的下級節(jié)點一般設(shè)置為模板節(jié)點。l循環(huán)節(jié)點定義要輸出Internal Table的內(nèi)容,下級的模板節(jié)點則定義循環(huán)輸出的每行格式。Smartform說明說明l窗口節(jié)點-流邏輯程序行l(wèi)可在程序行中增加邏輯程序處理。l程序行相當于程序中subroutine,需要設(shè)置輸入和輸出參數(shù)。Smartform說明說明l窗口節(jié)點-流邏輯命令行l(wèi)用于設(shè)置頁面跳轉(zhuǎn)。l可設(shè)置要跳轉(zhuǎn)的頁面及跳轉(zhuǎn)后的段落樣式。l命令行是最后一級節(jié)點。Smartform說明說明l表格繪制器l選擇 按鈕,
8、或按F9打開/關(guān)閉表格繪制器。l表格繪制器可以顯示一個頁面的結(jié)構(gòu)組成。l主窗口區(qū)域l次窗口區(qū)域l圖形區(qū)域Smartform說明說明l文本編輯器l在文本節(jié)點選擇一般屬性選項中的 按鈕,進入文本編輯器。如圖Smartform說明說明l檢查及激活Smartform。l可使用 按鈕檢查Smartform是否存在錯誤。l當檢查Smartform無誤后,可使用 激活Smartform,只有激活的Smartform,程序才可使用。Smartform說明說明l在程序中調(diào)用Smartform。l指定Smartform (1)。lDATA L_FM_NAME TYPE RS38L_FNAM.l CALL FUNC
9、TION SSF_FUNCTION_MODULE_NAMEl EXPORTINGl FORMNAME = Smartform名稱l IMPORTINGl FM_NAME = L_FM_NAMEl EXCEPTIONSl NO_FORM = 1l NO_FUNCTION_MODULE = 2l OTHERS = 3.Smartform說明說明l在程序中調(diào)用Smartform。l指定Smartform (2)。l打印控制設(shè)置SSFCOMPOP、SSFCTRLOP類型參數(shù),配置打印控制。直接打印,不顯示Dialog顯示Dialog,手工打印。l詳見ZABAP_SMARTFORM_002程序設(shè)置。Sm
10、artform說明說明l在程序中調(diào)用Smartform。l指定Smartform (3)。l調(diào)用SSF_OPEN函數(shù)設(shè)置打印機,打開輸出請求,使用用戶打印設(shè)置必須調(diào)用SSF_OPEN。l CALL FUNCTION SSF_OPENl EXPORTINGl OUTPUT_OPTIONS = SSFCOMPOP類型變量l CONTROL_PARAMETERS = SSFCTRLOP類型變量l USER_SETTINGS = Xl EXCEPTIONSl FORMATTING_ERROR = 1l INTERNAL_ERROR = 2l SEND_ERROR = 3l USER_CANCELED
11、= 4l OTHERS = 5.Smartform說明說明l在程序中調(diào)用Smartform。l指定Smartform (4)。l調(diào)用Smartforms的Function Module打印l CALL FUNCTION L_FM_NAMEl EXPORTINGl CONTROL_PARAMETERS = SSFCTRLOP類型變量 l OUTPUT_OPTIONS = SSFCOMPOP類型變量l USER_SETTINGS = Xl Smartform中定義參數(shù) = 自定義變量l TABLESl Smartform中定義Table = 自定義Internal table .Smartform
12、說明說明l在程序中調(diào)用Smartform。l指定Smartform (5)。l關(guān)閉打印機設(shè)置l CALL FUNCTION SSF_CLOSEl EXCEPTIONSl FORMATTING_ERROR = 1l INTERNAL_ERROR = 2l SEND_ERROR = 3l OTHERS = 4.Smartform說明說明lSmartform程序?qū)嵗?。lSmartform實例lZTEST_XJL004l調(diào)用Smartform實例lZABAP_SMARTFORM_001lZABAP_SMARTFORM_002Smartform 樣式說明樣式說明lSmartform樣式lSmartfor
13、m樣式用于定義表格中使用的段落格式、字符格式等內(nèi)容。l在Smartform的表格屬性中指定樣式。Smartform 樣式說明樣式說明lSmartform樣式l表頭數(shù)據(jù)l段落格式l字符格式Smartform 樣式說明樣式說明lSmartform樣式表頭數(shù)據(jù)l表頭數(shù)據(jù)定義該樣式的默認設(shè)置。l表頭數(shù)據(jù)中的標準段落必須指定。l包括標準段落如標準段落為空,則使用Smartform默認的段落格式??蓮臉邮街袆?chuàng)建的段落格式中選擇作為默認格式。l標準字體大小Smartform 樣式說明樣式說明lSmartform樣式段落格式l定義不同段落的格式l縮進和空格設(shè)置對齊方式、行間距、段落縮進。l字體設(shè)置字體格式。l
14、標簽用于設(shè)置一個段落中多個標簽的位置,并設(shè)定對齊方式。即在文本中使用段落時,一個文本可以輸出多種不同對齊方式。標簽的位置是從0開始計算。在文本中使用,來分隔標簽。l編號與框架按提綱方式設(shè)置段落。Smartform 樣式說明樣式說明lSmartform樣式字符格式l定義不同字符格式l可針對某一個字符修改其字符格式,在文本節(jié)點中使用。l格式: 文本Smartform 文本模塊文本模塊lSmartform文本模塊l文本模塊用于定義文本模板,以便在Smartform報表中使用。l文本模塊中只需定義文本內(nèi)容即可使用。l在文本節(jié)點中使用文本模塊時,文本節(jié)點一般屬性要選擇文本模塊,此時在名稱處選項定義的文本
15、模塊即可。Form說明說明l打開Form編輯器l使用SE71打開Form編輯器。l在此刻創(chuàng)建、修改、顯示Form內(nèi)容。Form說明說明lForm屬性設(shè)置l管理數(shù)據(jù)lForm描述。l基本設(shè)置l設(shè)置默認頁格式l設(shè)置紙張方向l設(shè)置文本默認值。Form說明說明lForm層級Var windowMain windowPageConst window圖形FormForm說明說明lForm-維護頁l在Form編輯畫面點擊 編輯Form頁。l選擇 編輯/創(chuàng)建元素 菜單創(chuàng)建Form頁。l選擇 編輯/復(fù)制元素 菜單復(fù)制Form頁。l選擇 編輯/刪除元素 菜單刪除Form頁。l設(shè)置頁屬性。l設(shè)置頁描述,下一頁。l設(shè)
16、置每頁計數(shù)器。Form說明說明lForm-維護窗口lForm窗口分四種l主窗口主窗口僅允許定義一個。l常數(shù)窗口Form輸出時,所有頁面該窗口的尺寸相同。l可變窗口Form輸出時,所有頁面該窗口的尺寸可以不同。l圖形窗口增加一個圖形輸出,可在圖形繪制器中創(chuàng)建一個圖形窗口時選擇圖形,圖形窗口的文本是不可編輯的。Form說明說明lForm-Main WindowlMain WindowlTop Area位于窗口的頂部。大小依賴于文本的大小。lBody Area位于窗口的中部。大小根據(jù)Top Area和Bottom Area區(qū)的大小而自動調(diào)配。lBottom Area位于窗口的底部。大小依賴于文本的大
17、小。l注:當輸出Body區(qū)時,才會同時輸出TOP和Bottom區(qū)內(nèi)容。Form說明說明lForm-維護頁窗口l頁窗口就是最終Form輸出的格式。l頁窗口由頁和窗口組合而成。l一個頁窗口只可包含一個主窗口。l一個頁窗口可包含多個常數(shù)、可變、圖形窗口。l可設(shè)定每個窗口的大小,及位置。Form說明說明lForm-維護段落格式lForm的段落格式可以直接在SE71中維護。l在Form編輯畫面點擊 即可維護段落格式。l段落格式分為標準、字體、記錄、框架協(xié)議四個部分。lForm的段落格式與Smartform樣式中的段落格式定義相同。Form說明說明lForm-維護字符格式lForm的字符格式可以直接在SE
18、71中維護。l在Form編輯畫面點擊 即可維護字符格式。l字符格式分為標準、字體兩個部分。lForm的字符格式與Smartform樣式中的字符格式定義相同。Form說明說明lForm-維護文本內(nèi)容l可在窗口和頁窗口畫面中維護窗口要顯示的文本內(nèi)容。l雙擊選擇一個窗口,并選擇編輯/文本元素菜單項,即可維護一個文本內(nèi)容。lForm中一個窗口對應(yīng)一個文本內(nèi)容,Smartform中是一個文本節(jié)點對應(yīng)一個文本內(nèi)容。l每個window要顯示的內(nèi)容全部在文本中定義。Form說明說明lForm-維護文本內(nèi)容l/E 文本元素l一個window可以分為很多個區(qū)域,/E文本元素用于標示這些區(qū)域。l每個/E表示一個區(qū)域
19、。該區(qū)域以/E開始,到下一個/E 文本元素時結(jié)束。l每個/E文本元素都要有一個唯一的名稱,長度不超過有30個字符長,以便在程序打印Form時調(diào)用。l這些文本元素僅在本W(wǎng)indow中有效。不同Window可有相同名稱的文本元素。Form說明說明lForm-維護文本內(nèi)容l*缺省段l顯示該行內(nèi)容時,使用在Form 基本設(shè)置中所定義的缺省段格式。l每一個*缺省段,對應(yīng)當前行顯示內(nèi)容。l空 連續(xù)文本l當一行文本太長需要折行時,可使用空來表示是上一行的延續(xù)。Form說明說明lForm-維護文本內(nèi)容l= 擴展行l(wèi)行的長度比默認要長。l( 原始行l(wèi)/ 換行l(wèi)自動換行。l/=換行及擴展行 l自動換行且行的長度比
20、默認長。Form說明說明lForm-維護文本內(nèi)容l/( 換行和原始行l(wèi)/: 命令行l(wèi)可在命令行中使用ABAP命令,可以定義子過程。l/* 注釋行l(wèi) 類似于ABAP程序的*整行注釋。Form說明說明lForm-維護文本內(nèi)容l使用自定義的段落格式l除了以上SAP中已存在的格式,還可使用自定義的段落格式。l直接使用自定義的段落格式即可。l例如:自定義H1 段落格式。 在文本定義時,直接引用H1 即可。l Form說明說明lForm維護文本內(nèi)容l設(shè)置FramelPOSITION用來指定框或者線的起始點 。lSIZE用來指定框的高度和寬度 。lBOX用來畫一個框或者是垂直、水平直線 。Form說明說明l
21、Form維護文本內(nèi)容l定義變量lDEFINE/: DEFINE &symbol_name& = valuel/: DEFINE &symbol1& = mail /: DEFINE &symbol2& = SAP&symbol1& /: DEFINE &symbol1& = script &symbol2& 的值是 SAPscriptForm說明說明lForm維護文本內(nèi)容l設(shè)置日期格式lSET DATE MASK /: SET DATE MASK = date_mask 設(shè)置為空則表示是缺省值。l/
22、: SET DATE MASK =Beijing, MM/DD/YY &DATE& - Beijing, 03/01/07 (輸出)Form說明說明lForm維護文本內(nèi)容l設(shè)置時間格式lSET TIME MASK /: SET TIME MASK = time_mask 設(shè)置為空則表示是缺省值。l/: SET TIME MASK = HH:MM &TIME& - 10:08(輸出)Form說明說明lForm維護文本內(nèi)容l使用控制語句lIF 語句/: IF condition /:ELSEIF condition /: ELSE/: ENDIFForm說明說明lF
23、orm維護文本內(nèi)容l使用控制語句lCASE 語句/: CASE symbol /: WHEN value1 :/: WHEN value2 :/: WHEN valuen : /: WHEN OTHERS. (可選可選): /: ENDCASEForm說明說明lForm-調(diào)用ABAP程序中的子過程lForm中調(diào)用子過程l/:Perform 子過程名 IN Program 程序名 /:Using &Invar1& /:Using &Invar2& /:Changing &Outvar1& /:Changing &Outvar2& /
24、:Endperform.Form說明說明lForm-調(diào)用ABAP程序中的子過程l在程序中定義子過程。lFORM l TABLES IN_TAB STRUCTURE ITCSYl OUT_TAB STRUCTURE ITCSY.l.lENDFORM.l注: IN_TAB 對應(yīng)Form中使用的using 參數(shù),OUT_TAB 對應(yīng)Form中使用的Changing參數(shù)。Form說明說明lForm-符號l使用& &來引用符號。l系統(tǒng)符號l由SAPscript提供。l標準符號l在系統(tǒng)表TTDTG中定義。l程序符號l由運行時刻的程序提供,即ABAP程序中定義的變量。l文本符號l在文本中,使
25、用DEFINE控制命令。Form說明說明lForm-系統(tǒng)符號l&DATE& -顯示當前日期l&DAY& - 顯示當前的天數(shù)l&MONTH& -顯示當前的月數(shù)l&YEAR& - 顯示當前年號,四位數(shù)字l&NAME_OF_DAY& - 當前天數(shù)的名字,比如Mondayl&NAME_OF_MONTH& - 當前月的名字,比如1月l&TIME& - 顯示當前時間l&HOURS& - 顯示小時l&MINUTES& - 顯示分鐘Form說明說明lForm-系統(tǒng)符號
26、l&SECONDS& - 顯示秒l&PAGE& - 顯示當前頁數(shù)l&NEXTPAGE& - 顯示當前頁的下一頁l&DEVICE& - 用來指定外部打印設(shè)備類型l&SAPCE& - 用來生成空格字符串l&ULINE& - 用來在輸出文本中插入一個帶下劃線的字符l&VLINE& -用來在輸出文本中插入一個垂直方向的字符 Form說明說明lForm-格式輸出選項lOffset(偏移量) l&symbol+offset&l舉例: &symbol& = 1234
27、56789 l&symbol+3& 輸出為 456789l&symbol+7& 輸出為 89 lOutput Length(輸出長度)l&symbol(length)&l舉例: &symbol& = 123456789 l&symbol(3)& 輸出為 123 l&symbol(7)& 輸出為 1234567 Form說明說明lForm-格式輸出選項l略去符號位 針對數(shù)值型變量l&symbol(S)&l舉例: &symbol& = 1234- l&symbol
28、(s)& 輸出為 1234l去掉前導(dǎo)0l&symbol(Z)&l舉例: &symbol& = 01 l&symbol(z)& 輸出為 1 Form說明說明lForm-格式輸出選項lSpace Compression l就是將每一個空字符串用單個的空格字符來代替。字符前的空格則被刪除。l&symbol(C)&l舉例: &symbol& = This is book . l&symbol(c)& 輸出為This is book .l設(shè)置小數(shù)位數(shù)l&symbol(.n)&l舉例: &symbol& = 12,345. 67l&symbol(.1)& 輸出為 12,345.7l&symbol(.4)& 輸出
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 端口映射技術(shù)應(yīng)用分析-深度研究
- 跨境電子商務(wù)的競爭動態(tài)-深度研究
- 葡萄糖酸鋅的藥代動力學(xué)研究-深度研究
- 人工智能輔助診斷-第1篇-深度研究
- 單細胞多組學(xué)數(shù)據(jù)分析方法-深度研究
- 面部表情識別-深度研究
- 魯棒性度量方法創(chuàng)新-深度研究
- 綠色環(huán)保修復(fù)技術(shù)-深度研究
- 食品安全與環(huán)境污染-深度研究
- 全球數(shù)據(jù)流動治理框架-深度研究
- 醫(yī)療器械臨床試驗質(zhì)量管理規(guī)范培訓(xùn)
- 中小學(xué)語文教師教學(xué)培訓(xùn)核心素養(yǎng)下的整本書閱讀教學(xué)培訓(xùn)課件如何教好孩子閱讀
- 藥品生產(chǎn)質(zhì)量管理規(guī)范知識課件
- 杭州園區(qū)招商規(guī)劃方案
- 呼吸內(nèi)科科室醫(yī)療質(zhì)量指標分析與持續(xù)改進
- 河邊基礎(chǔ)施工方案
- 國民經(jīng)濟行業(yè)分類大類一覽表
- 2023新北師大版高中英語選擇性必修三全冊課文翻譯(英漢對照)
- 廣州光伏發(fā)電安裝限高屋頂搭建不得超過2.8米四周不得圍蔽
- 重修課程免聽申請表
- 紅頭文件格式樣板
評論
0/150
提交評論