海洋网络做网站不负责,邢台太行中学怎么样,wordpress 错位,舆情分析网站SAP系统做打印单据用的, 感觉很不好用, 特别是要嵌入韩文时必须使用嵌入的word编辑器,运行速度简直不可忍受. 见过一些Adobe interactive form的示例, 看着相当不错, 不过据说需要花money额外买licence, 哪有smartform这种免费东西来得实惠. 
一般打印需求,会要求有标题抬头,打…SAP系统做打印单据用的, 感觉很不好用, 特别是要嵌入韩文时必须使用嵌入的word编辑器,运行速度简直不可忍受. 见过一些Adobe interactive form的示例, 看着相当不错, 不过据说需要花money额外买licence, 哪有smartform这种免费东西来得实惠. 
一般打印需求,会要求有标题抬头,打印主体, 打印页脚. 
在smartform中实现时, 抬头window作为secondary window, 而打印主体则是作为Main window, 页脚部分区域包含页码等内容,注意它的类型为Final window, 不然输出时可能有错误. 
1. 合理使用Table , template. 
前者是如同列表般输出, 可以多行多列重复输出. 而且可以设置table 的header, footer. Table 一行的高度是可调的,可以根据内容的多少自动整高度 
Template则需要固定格式输出, 需要将所需要的表格画出格子, 然后将内容分配给各自的格子. 注意它的格子的大小是固定的, 如内容超出格子,将不会显示多余内容. 上例中是采用的Loop中嵌套Table输出. 注意 Table中其实对应的内表只有一行,只是这一行数据在显示时采用了多行显示. 
每一行对应的抬头都是在Mani area中. 
2. Table输出控制新页 
譬如在输出20行后,打开新页输出. 
我们需要得到输出的当前行, 而且需要注意与ABAP程序不同, sy-tabix不能标识此时table中的当前行索引, 需要采用一自增变量来作为内表索引号. 判断是否需要分页,采用余数MOD 计算 
1 定义Table内的索引及分页标记g_page 2 根据分页标记变量决定是否转到新页 
如果等于0的情况下 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的类型定义中 2 定义输出内表 3 初始化时获取程序输出内表内容 
5. 在smartform中插入图片 
首先在SE78 中上传图片 
然后在Smartform中插入Graphic元素,如果需要调整图片大小,则需要调整DPI属性, 其值越大,图片越小.