Smartform 介绍
Smartform是 SAP用來打印單據的一種可視化技術,可以在程序中調用,Smartform中除了可以設計格式之外還可以添加代碼。
Smart forms?是 SAP Script form的基礎上產生的新的表單制作工具,但是smart forms?使用更加方便,會直接生成功能塊( function module),ABAP程序中調用更加方便。
注意:中文環境下創建的 form?一般只能在中文環境下打開,英文環境下的節點可能打不開。
事務:smartforms。
組成:form通常是由?頁面( pages ),窗口( windows ),地址欄( Address),圖形( graphics,logo等?),數據(data),文本內容等( text )
文本模塊 ( Text Module?)
?一段固定的文本信息,表頭、或者附加條款說明,可以在form中直接引用。
Smartform Style:設置字體、段落、抬頭。(包括定義條形碼)
1、?字體 Charactor Formats
設置字體大小、字體族、字體樣式(?粗體、斜體、下劃線、顏色 )、輸出位置、條形碼
? ?
style中的長度單位:
TW ( twip ) 、PT( point)磅、IN( inch?)、MM( millimeter )、CM( centimeter?)、LN( line )、CH(? character)。?
轉換關系: 1IN = 2.54 cm = 25.4mm = ?72 PT =?1440TW
sap?的字體不是從當前系統獲取字體庫,除了默認字體,其他的需要在SAP中額外安裝,然后通過SE73實現對字段屬性的基本維護。
注:條形碼的創建可以參考:條形碼管理 SE73 Bar code開發_SAP小白kenny的博客-CSDN博客
2、段落格式 paragraph formats
設置段落格式:左對齊、右對齊、居中對齊,縮進、行間距、字體格式等、
注意:可以通過改變行間距控制 smart forms?的table控件的行高。
??
3、抬頭數據 Header Data
設置style的默認類型。
Form?表格:
由?頁面( pages ),窗口( windows ),地址欄( Address),圖形( graphics,logo等?),數據(data),文本內容等( text )。
全局設定 global settings:
表格屬性 forms attributes :
form?紙張大小、使用的Smart Style
注:如果需要自定義紙張類型,可以參考:SAP 定義打印機紙張類型_SAP小白kenny的博客-CSDN博客_sap打印機紙張設置
如果系統自帶紙張類型不滿足需要,還可以自定義紙張類型。
表格接口 forms interface :
Smart forms?生成的function module的參數。
全局定義 global definitions
如果需要在smart forms內部添加邏輯,則需要在這里定義全局變量,如果有數字、金額欄位,還需要在這里定義。
核心部分在頁和窗口:
節點元素:
form?中元素的輸出順序在page的先后順序決定,系統會自動創建一個初始頁。節點類型決定節點的處理過程:打印節點內容(?文本、圖片、地址 ),執行節點的語句,另外所有節點的可以增加條件屬性,當滿足條件子節點才會處理。
Page?節點:
每個form至少有一個page,當page的內容超過一頁,會自動輸出到page節點指定的next?所指定的 next page,一般下一頁都是自己,除非要有單獨的一頁封面和封底。
下一頁除了可以通過next page來設置,還可以通過 command?命令控件指定。
窗口元素:
頁面中包含主窗口 main windows 和?子窗口 secondary windows,主窗口可以連續打印,既可以分頁顯示,每個頁面( page )只可以有一個主窗口,?但可以有多個子窗口。分頁情況下子窗口每頁都會顯示,相當于頁眉頁腳。
窗口中模版的寬高度不能超過窗口的寬高度,同樣表的寬高度也不能超過,否則顯示不出。
文本節點:
文本節點一般是在已經定義的窗口中添加各種類型的文本元素,同樣地址類型的文本元素可以直接通過Address節點添加,
smart forms包含以下文本類型:
文本元素:form中直接創建的編輯文本,
文本模塊:獨立于smart forms,可直接添加的文本,
包含文本:可直接插入的script?標準文本,可通過SE75,
動態文本:可綁定全局變量的文本
主窗口 main windows:可在多頁連續輸出。
子窗口 secondary windows:文本確定在制定頁。
表格節點 table :用于顯示表格的內容。
模板節點 template :把文本定義在靜態表格的單元格中,
標題 header?和?腳注 footer:用于顯示表格的總計數據。
事件 event?用于顯示表格的小計數據。
table和template等節點可以控制邊框,邊框的默認寬度是15TW,但是實際工作建議20TW,用來適應針式、激光、噴墨打應機。15TW在某些時候可能打不出來。
table和template的區別:
1、table是動態表格,template是靜態表格,template + loop?可以達到動態格式
2、template可控制行高,table不能直接控制行高,需要在smart style的段落中設置行間距,同時將無換頁屬性打上
3、template是固定長度,超過會截斷,table會自動換行。注:table中如果自動換行行數超過一定程度會報錯。
TABLE節點的循環問題:
table節點分為表頭 header,主要區域 main area,腳標 footer,其中循環只是存在于主要區域,所以表頭、腳標是每頁會執行一次。
圖片節點 graphic :
圖片節點經常會用來展現一些Logo,但是必須在SE78中預先上傳,可以參考:SE78、SMW0 上傳圖片_SAP小白kenny的博客-CSDN博客_se78上傳圖片
地址節點 Address:沒用到過。
總結
以上是生活随笔為你收集整理的Smartform 介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Eclipse 中文语言包! 大家一起
- 下一篇: java.lang.NoClassDef