前文:
SAP Adobe Form 教程一 簡單示例
SAP Adobe Form 教程二 表
原文標題:SAP Adobe Interactive Form Tutorial. Part III. Date Time and Floating Fields
本文鏈接:https://www.cnblogs.com/hhelibeb/p/15501044.html
準備
首先依然還是創建interface和form,細節見前文,

得到form如下,把引數NAME拖放到context,

將 DATE 和 TIME 欄位拖放到 Context, 這些是系統生成的變數,


接著在Layout區域作業,
如何使用floating field?
floating field,即根據系結列印的欄位,具體列印內容取決于運行期間系結的欄位,
前往Layout,

插入標準文本欄位,


展開/拉伸(如在ms paint中所做的)文本欄位邊界,以便在其中寫文本,

輸入下面的文本或任何所需的行,但選擇一個你想保留為floating field的單詞,floating field意味著,它可以列印任何系結的欄位,
My name is NAME, I am SAP Technical consultant. Thank you SAP Yard.
對于本示例,我們希望NAME是動態的, 選擇文本(NAME),右鍵單擊它并選擇它作為floating field, NAME一詞更改為 {TextField},


將floating field與我們拖到背景關系區域的NAME欄位系結,

欄位{Text Field}將具有動態長度(從背景關系到系結NAME欄位的最大長度),它將根據輸入進行擴展和壓縮,名稱“Ram”只有3個字符,但名稱“Wolfeschlegelsteinhausenbergerdorff”有30多個字符,但{TextField}仍會接受它,畢竟,這是一個floating field,
如何使用日期和時間?
前往Data view,

將日期和時間欄位拖放到Layout中,

通過在選擇型別下選擇日期模式來更改日期格式,

可以在區域設定下通過選擇所需的國家/地區來選擇基于國家/地區的模式,
我們還可以使用上述針對日期欄位的相同步驟來格式化時間,
Adobe Form中存在以下系統欄位,

檢查,保存和激活,
按F8運行,傳入NAME值,

接著繼續運行,

會得到日期時間和包含輸入的NAME的文本,

通過驅動程式呼叫的話,可以使用以下代碼,
1 *======================================================================* 2 * YRAM_ADOBE_FORM_PROGRAM3 * 3 *======================================================================* 4 * Project : SAP Adobe Forms Tutorial * 5 * Author : Ramanjula Naidu DARURU (www.SAPYard.com) * 6 * Description : Driver Program for Printing Floating Field, Date & Time * 7 *======================================================================* 8 REPORT yram_adobe_form_program3. 9 10 * Selection Screen 11 PARAMETERS: p_name TYPE name1. 12 13 **&&~~ Data Objects 14 DATA: gv_fm_name TYPE rs38l_fnam, " FM Name 15 gs_fp_docparams TYPE sfpdocparams, 16 gs_fp_outputparams TYPE sfpoutputparams. 17 18 CONSTANTS : gv_form_name TYPE fpname VALUE 'YRAM_ADOBE_FORM3'. 19 20 *======================================================================* 21 * START of Calling the Form 22 *======================================================================* 23 *&---------------------------------------------------------------------* 24 **&&~~ Form Processing: Call Form - Open 25 * 26 CALL FUNCTION 'FP_JOB_OPEN' 27 CHANGING 28 ie_outputparams = gs_fp_outputparams 29 EXCEPTIONS 30 cancel = 1 31 usage_error = 2 32 system_error = 3 33 internal_error = 4 34 OTHERS = 5. 35 IF sy-subrc <> 0. 36 " Suitable Error Handling 37 ENDIF. 38 *&---------------------------------------------------------------------* 39 **&&~~ Get the Function module name based on Form Name 40 * 41 CALL FUNCTION 'FP_FUNCTION_MODULE_NAME' 42 EXPORTING 43 i_name = gv_form_name 44 IMPORTING 45 e_funcname = gv_fm_name. 46 IF sy-subrc <> 0. 47 " Suitable Error Handling 48 ENDIF. 49 *&---------------------------------------------------------------------* 50 **&&~~ Take the FM name by execuing the form - by using Pattern- 51 **&&~~ call that FM and replace the FM Name by gv_fm_name 52 **&&~~ Call the Generated FM 53 CALL FUNCTION gv_fm_name "'/1BCDWB/SM00000176' 54 EXPORTING 55 /1bcdwb/docparams = gs_fp_docparams 56 name = p_name 57 EXCEPTIONS 58 usage_error = 1 59 system_error = 2 60 internal_error = 3 61 OTHERS = 4. 62 IF sy-subrc <> 0. 63 * Implement suitable error handling here 64 ENDIF. 65 *&---------------------------------------------------------------------* 66 67 *&---------------------------------------------------------------------* 68 *&---- Close the spool job 69 CALL FUNCTION 'FP_JOB_CLOSE' 70 EXCEPTIONS 71 usage_error = 1 72 system_error = 2 73 internal_error = 3 74 OTHERS = 4. 75 IF sy-subrc <> 0. 76 * <error handling> 77 ENDIF.YRAM_ADOBE_FORM_PROGRAM3
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/345542.html
標籤:其他
