SmartForms最全开发手册-最全_第1页
SmartForms最全开发手册-最全_第2页
SmartForms最全开发手册-最全_第3页
SmartForms最全开发手册-最全_第4页
SmartForms最全开发手册-最全_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、引言目的及范围 本文档主要介绍Smarform使用方法。可适用于ABAP开发人员,分析人员使用。-最全参考资料SAP程序设计/saphelp_nw70/helpdata/en/a5/de6838abce021ae10000009b38f842/frameset.htm文档结构文档的各章节介绍的内容如下:概述整个form的属性及用法完整案例附注Smartform应用及概述Smarform主要是SAP针对商业处理中固定格外文件批量打印的一种工具。主要分为Form、Style、Text module三个组成部分,此三个组成部分都可以被单独创建和重复利用(T-CODE:SMARTFORMS),下面将分

2、别讲解三种工具的使用方法。上传背景图片输入TCODE:SE78: 选择 Form GraphicsStored on Document ServerGraphics General GraphicsBMAP Bitmap Images点击 按钮导入图片图片属性,导入成功FORM创建创建界面输入T-CODE:SMARTFORMS,进入以下界面,输入Form名称:ZHZP_SM_TEST,点击Create进入编辑窗口:此窗口分为三个区域:左边区域:包括全部变量,和树形结构的节点导航。当点击相应的节点时,中间区域将会显示该节点的属性, 中间区域:维护各个节点的属性等右边区域:图形化窗口绘制,可以手动

3、调节节点分布位置,实现节点在页面的布局点击保存并选择PACKAGE和CR节点 全局设置 包含表格属性, 表格接口, 全局定义表格属性Form的基本属性,包括创建信息和输出参数表格接口包含Form的标准参数和自定义参数,用于与调用程序交互全局定义定义用于整个Form的变量,类型,初始化,单位等Field按钮控制Form中参数和系统变量的显示节点介绍Form是由不同类型的节点组成。 一个Form包含了一个或者多个Page,第一个Page是Form执行的的开始(当创建Form时,系统默认创建这个Page),下面将讲解每个节点的功能及其包含的子节点,输入区域节点类型描述可能包含的下级节点Page(页面

4、)页面Window,graphic,addressWindow(窗口)一个页面的输出区域:包含三种类型:Main window,Secondary window,Copies window,Final windowWindow是所有数据的输出区域。你可以在Form Painter中设置它的大小和位置。Main Window 和Secondary Window。一个Form中只有一个Main Window,且在创建Form时系统默认已创建除page和window以外的所有节点此两种节点创建FORM时,系统默认创建一个PAGE,和一个Main window不包含下级节点的节点节点类型描述Text(

5、文本)通过此节点可以打印除过地址外所有文本Graphic(图形)通过此节点可以加入图片Address(地址)通过此节点可以处理地址,当打印时,系统会直接读取地址数据并格式化列表输出节点类型描述可能包含的下级节点Template(模板)通过此节点打印固定数据表格除Page、Window、Template、TableTable(表格)通过此节点打印动态数据的表格创建此类型的节点,系统会自动创建三个节点:Header , Main Area and Footer。LOOP,FOLDER,TABEL节点可以备用Table line(表行)通过此节点打印Tableh或者Template中的一行Table

6、 cellTable cell(单元格)根据行类型打印单元格与Temlate共存Old table nodeRelease 6.10之前的功能,现在不能创建,只能修改已存在的与Temlate共存逻辑空控制节点节点类型描述可能包含的下级节点Command(命令)通过此节点执行特殊的命令(下一页、段落、打印机控制)Loop(循环)通过 此节点重复处理它包含的子节点除Page和Window所有节点Alterantive(可选的)设置条件,分支选择系统默认两个节点:True和False.他们下面可以包含除Page和Window所有的节点其他节点Folder(文件夹)通过此节点可以实现逻辑单元的封装除P

7、age和Window所有节点Program lines(程序行)通过此节点执行ABAP语句所有节点共同的选项General Attributes(一般属性)节点的描述或者内容Output Options(输出选项)位置、样式、方框、阴影等属性,还有其他的一些输出属性Conditons(条件)如果条件为真,显示节点创建模板:Template节点用于创建文档中的静态表格,即在打印前已经确认了行数。如果打印的行数不确定,需要用Table节点或者Loop循环Template输出,以下为创建过程:鼠标右键-创建-模板点击创建后出现模板的属性设置界面,有三个页签:页签功能描述Templage(模板)设置阴

8、影、边框和行类型Output Options(输出选项)打印时的样式、边框、阴影等Conditons(条件)条件满足则执行此节点及其下级节点这里最重要的是行类型的设置,它代表了表格中一行数据的样式(比如多少个单元格,每个单元格长度宽度,边框等),可以设置设置不同的行类型。点击修改笔可以直接在白色编辑区域直接画,也可以点击细节直接输入数据。点击细节画面.注意字段“参考“是引用另一行样式设置,则不需要再重新设置样式:系统提供了很多打印样式,可以选择,也可以自己设置样式,具体设置详见下一章节介绍。条件页签:此节点执行条件:只有满足了设置了条件,才能执行此节点及它包含下一节点的内容额外属性:设置的事件

9、将会执行创建文件夹鼠标右键-创建-文件夹有两个页签,功能同创建模板的一样创建文本Text输出文本,有四种类型,一般情况下选择E或者M类型即可类型功能描述备注D Dynamic Type(动态文本)此种类型在Netweaver7.0中没有介绍E Text Element(文本元素)创建新的文本支持静态和动态I Include Text(包含文本)引用SAPscript TextsM Text Module(文本模板)引用Text Module鼠标右键-创建-文本有四个页签,其中“输出选项和”条件“同以上两种节点。针对文本节点,在输出选项需要特殊处理:设置行与列的位置,可参考在模板中设置的行类型。

10、详见下图设置 文本类型 类型为 文本元素;可以直接输入要显示/打印的内容,如Airline,也可以动态数据输出,则需要点击“添加“按钮注意:字段前后需要增加符号“&“ 执行SMARTFORMSForm创建成功并激活后,系统自动生成一个FM.执行FM可以预览结果并打印。手动执行此FM或者程序调用这个FM实现执行Form的功能。程序调用将在案例中讲解,此处讲解执行执行FM.F8或者点击执行按钮生成的FM:执行FM,可以选择打印机,并提供打印预览和直接打印的功能创建smartforms 样式Smartforms的样式主要就是定义一些字体, 颜色,字体大小 一些对齐方式什么的,然后段落的格式,首先输入

11、TCODE:smartforms进入创建smartforms的界面。如图:点击创建之后进入样式创建界面样式中分三部分,表头,段落,字符,我们可以针对自己想要的样式来定义一些,然后用与smartforms中,三部分的解释如下:页签功能描述备注表头数据表头数据,包括标准配置和管理创建时系统默认显示此页签段落格式段落格式,可以段落设置字符格式字符格式,可以字体设置创建表头数据创建Style时系统默认显示配置表头数据页签功能描述备注标准设置标准设置,可以针对字体,默认标准段落,及预览效果其中标准字段需要设置下面创建的段落格式,否则不能激活管理管理信息,主要显示谁创建什么时间创建然后创建段落的格式有左对

12、齐,右对齐,居中的完后需要回到表头数据中把标准段落填上,不然无法激活点击保存,激活,这样样式就是初步完成,后面根据samrtforms中的应用情况做想应得调整.文本模块创建文本模块作为Form中节点文本一个类型,维护了它,则可以多个Form共同使用,提供Form创建的效率。两个页签组成:页签功能描述备注文本输出文本管理样式选择,翻译(国际化)及创建信息同 创建文本一样,可以动态和静态类型案例案例描述以下是客户预订航班清单,要求只有第一页有表头。我们将依次案例创建Form。航空公司航班航班日期客户预定日期票价AA00172011.08.31000037292011.06.09 803,58 输入

13、Tcode:SMARTFORMS,创建Form: zhzp_sm_test系统默认生成Page和Window进入维护界面:设置背景图片在PAGE1中可以设置背景图片创建接口参数I_CARRID,I_CONNID,I_FLDATE,I_FLAG为查询条件:航空公司,航班,日期,输出方式标识如果有要输出的数据可以在EXPORT中定义,如输出或输入有表格则可以通过Tables定义,这里我们只定义四个个查询输入参数,取数逻辑由于简单就放到smartforms中来实现了。创建全局变量全局变量GT_SBOOK用于保存预订的航班清单,GW_SBOOK用于循环处理时工作区。GV_TABIX用于流程控制,后面将

14、讲到。创建节点程序行:此处写代码获取要打印的航班清单。当然,要打印的数据可通过接口传,这里只是为了演示节点的创建过程。输入参数,输出参数,代码段创建节点可选条件这里创建这个节点是用于碰到打印输出是以表格还是模板TURE节点下创建节点循环循环处理航班清单循环下创建节点程序行:用于实现第一页有表头的条件判断。创建节点模板(Template)此节点需要创建在Loop下。并设置每行的样式,可以设置很多不同的,这里我们简单设置一种模板下创建可选择节点条件设置:只有第一行才执行打印表头创建文本在可选的节点的True节点中创建,此处将创建表头False中创建内容另外还有一点比较重要就是行列的设置最终的节点分

15、布创建表格(table)节点这类型的创建,我们讲解的时候再创建.程序调用FormFM: SSF_FUNCTION_MODULE_NAME获取Form生成的FM,动态调用此FM代码如下:REPORTzhzp_call_sm_sbook.DATA:lv_fm_nameTYPErs38l_fnam.DATA:control_parametersTYPEssfctrlop.DATA:output_optionsTYPEssfcompop.PARAMETERS:p_carridTYPEs_carr_id,p_connidTYPEs_conn_id,p_fldateTYPEs_date,p_flagTYP

16、EflagDEFAULTX.control_parameters-no_dialog=X.control_parameters-preview=X.output_options-tddest=LONP.*获取Form生成的FMCALLFUNCTIONSSF_FUNCTION_MODULE_NAMEEXPORTINGformname=ZHZP_SM_TESTForm的名称IMPORTINGfm_name=lv_fm_nameEXCEPTIONSno_form=1no_function_module=2OTHERS=3.IFsy-subrc0.MESSAGETheFormisnotexitTYPE

17、E.ENDIF.*执行Form生成的FM进行打印CALLFUNCTIONlv_fm_nameEXPORTINGcontrol_parameters=control_parametersoutput_options=output_optionsuser_settings=spacei_carrid=p_carridi_connid=p_connidi_fldate=p_fldatei_flag=p_flagEXCEPTIONSformatting_error=1internal_error=2send_error=3user_canceled=4my_exception=5OTHERS=6.IFsy-subrc0.MESSAGEPrintfailTYPEE.ENDIF.附注合并单元格对于在实际的报表开发中经常回需要合并单元格的情况,合

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论