`
王三
  • 浏览: 173743 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Smartform小结

    博客分类:
  • ABAP
阅读更多

SAP系统中做打印单据用的, 感觉很不好用, 特别是要嵌入韩文时必须使用嵌入的word编辑器,运行速度简直不可忍受. 见过一些Adobe interactive form的示例, 看着相当不错, 不过据说需要花money额外买licence, 哪有smartform这种免费东西来得实惠.

一般打印需求,会要求有标题抬头,打印主体, 打印页脚.

在smartform中实现时, 抬头window作为secondary window, 而打印主体则是作为Main window, 页脚部分区域包含页码等内容,注意它的类型为Final window, 不然输出时可能有错误.

1. 合理使用Table , template.

前者是如同列表般输出, 可以多行多列重复输出. 而且可以设置table 的header, footer. Table 一行的高度是可调的,可以根据内容的多少自动整高度

Template则需要固定格式输出, 需要将所需要的表格画出格子, 然后将内容分配给各自的格子. 注意它的格子的大小是固定的, 如内容超出格子,将不会显示多余内容.

clip_image002

上例中是采用的Loop中嵌套Table输出. 注意 Table中其实对应的内表只有一行,只是这一行数据在显示时采用了多行显示.

每一行对应的抬头都是在Mani area中.

2. Table 输出控制新页

譬如在输出20行后,打开新页输出.

我们需要得到输出的当前行, 而且需要注意与ABAP程序不同, sy-tabix不能标识此时table中的当前行索引, 需要采用一自增变量来作为内表索引号. 判断是否需要分页,采用余数MOD 计算

1> 定义Table内的索引及分页标记g_page

clip_image006

2> 根据分页标记变量决定是否转到新页

image

如果等于0的情况下

image

3. 调用两个smartform.

固定输出的内容需要采用两页输出, 方便的实现是分别实现两个smartform对应两页内容,调用流程如下:

FM: SSF_OPEN

FM: SSF_FUNCTION_MODULE_NAME FORM1

FM: SSF_FUNCTION_MODULE_NAME FORM2

FM: SSF_CLOSE

4. 程序与smartform 间传递内表数据

因为一般smartform 要打印的内表类型都是定制化的, 而在标准smartform中如果传入的是内表类型, 则需要定义stuture类型在DDIC 中. 但这样会比较繁琐。可以通过下面的方法访问程序中的内表,而不用定义DDIC中的结构,如下:

1> Copy 结构类型到smartform的类型定义中

image

2> 定义输出内表

image

3> 初始化时获取程序输出内表内容

image

5. 在smartform 中插入图片

首先在SE78 中上传图片

然后在Smartform中插入Graphic元素,如果需要调整图片大小,则需要调整DPI属性, 其值越大,图片越小.

clip_image020

1
0
分享到:
评论

相关推荐

    SMARTFORM知识 SMARTFORM知识

    SMARTFORM是SAP系统中用于创建复杂打印输出的工具,它是基于SAPScript的一个增强版本。SMARTFORM的主要特征在于其图形化的用户界面,这使得非程序员也能方便地设计和编辑打印格式,而无需深入的编程知识。以下是...

    smartform

    关于SMARTFORM的详细介绍

    sap smartform

    SAP SmartForm SAP SmartForm 是在 SAP Basis Release 4.6C 中引入的工具,用于创建和维护表单。它允许用户使用简单的图形工具执行简单的修改,以满足业务流程中的需求。SAP SmartForm 的主要优点是可以减少编程...

    一个表结构smartform分页

    smartform实现分页,只有一个结构,单号改变是则分页

    SAP SMARTFORM 教程

    SAP SmartForm是SAP系统中用于打印文档输出的一种报表技术。SmartForm的开发基于图形化的界面,可以设计出复杂的打印格式,包含多个页面、字体、表格、图像和自定义对象。SmartForm常用于生成发票、订单确认、提单等...

    打印销售订单smartform

    该smartform对应博客中的smartform连续打印,并自动补充空行这篇博客,该smartform实现分页打印,及自动补充空行,并显示当前页和总页数等功能

    smartform实例讲解

    ### SMARTFORM实例讲解 #### 一、SMARTFORM概述与特性 **SMARTFORM**是一种由SAP提供的用于报表设计和生成的工具,它基于SAPScript技术,并在其基础上进行了改进和扩展,提供了更加强大和直观的报表设计能力。...

    查找SmartForm对应的传输请求号

    SAP ABAP中如何查找SmartForm对应的传输请求号,查找SmartForm对应的版本

    SAP ABAP开发学习——第16课:SmartForm(视频教程)

    在本课程中,我们将深入探讨SAP ABAP中的SmartForm技术。SmartForm是SAP用于创建高度结构化和复杂的业务文档的工具,如发票、报告和订单。它提供了丰富的图形化界面,允许开发者通过拖放功能来设计和布局文档内容。...

    smartform教程

    详细的建立smartform的教程,如何建立一个SMARTFORM的过程及如何生成请求、如何调用FUNCTION等。

    打印销售订单smartform修改版

    该smartform是对资源里销售订单smartform的完善,主要完善是用一个全局变量表示每页显示的行项目数,不需要每个流程里指定该数据,该smartform对应博客中的smartform连续打印,并自动补充空行这篇博客,该smartform...

    控制连打smartform

    控制连打smartform例子,报表的代码见博客

    SmartForm 打印程序.rar_SMARTFORM

    标题 "SmartForm 打印程序.rar_SMARTFORM" 暗示了这是一个关于 SmartForm 打印程序的压缩文件,可能包含了模板和相关的指导文档,例如 "SmartForm 打印程序.txt"。这个文本文件很可能是对 SmartForm 设计和配置的...

    SAP SMARTFORM的开发技术.pdf

    SAP SMARTFORM的开发技术 SAP SMARTFORM是基于SAPscript的基础上产生的一种新的FORM制作方式,具有图形界面。一个SMARTFORM的程序逻辑主要是取数和打印两部分,程序中的数据内表传递到SMARTFORM中一般有两种方式:...

    SAP_SMARTFORM FAQ

    SAP_SMARTFORM FAQSAP_SMARTFORM FAQSAP_SMARTFORM FAQSAP_SMARTFORM FAQSAP_SMARTFORM FAQSAP_SMARTFORM FAQ

    K2 Smartform 介绍

    ### K2 Smartform 介绍 #### 一、概述 在当今快速发展的信息技术领域,构建一个高效、直观的用户界面(User Interface,简称UI)对于软件开发来说至关重要。然而,这通常是一项复杂且耗时的任务。根据Gartner的...

    Gui smartform 报错补丁安装包.zip

    标题中的 "Gui Smartform 报错补丁安装包.zip" 提供了解决 SAP GUI Smartforms 错误的补丁。这个补丁包专门设计用于 SAP GUI 的两个特定版本:730 和 740。这些版本是 SAP GUI 的重要迭代,提供了许多改进和新特性,...

    SAP中如何通过SMARTFORM 在ZEBRA 打印机打印条码

    SAP中如何通过SMARTFORM 在ZEBRA 打印机打印条码

    SMARTFORM基础知识.pptx

    SMARTFORM基础知识 SMARTFORM 是在 SAPScript 的基础之上产生的一种新的 FORM 制作方式,它完全兼容 SAPScript。在做SMARTFORM 的过程中基本上不需要多少编程知识,它有一个图形界面来帮助我们完成工作。 概述 * ...

    ABAP smartform超详细入门讲解

    ABAP智能表单(Smartform)是SAP ABAP平台上的一种报表工具,用于生成复杂的商业报表、文档和表单。下面是ABAP智能表单的详细入门讲解。 创建Smartform 创建Smartform是指在ABAP工作台中创建一个新的智能表单对象...

Global site tag (gtag.js) - Google Analytics