- 浏览: 286879 次
- 性别:
- 来自: 杭州
-
文章分类
最新评论
-
sunlin:
水文 其他erp就没这样的问题? 不能单方面拿sap说 ...
【转】揭秘SAP在华真相:天价收费与用户之灾 -
zjut_xiongfeng:
用当前日期所在月的第一天,比如2010-7-30的当前月第一天 ...
pb函数库之日期、时间函数 -
550627069:
你好!问下 在PB中显示当前日期的前一个月 应该怎么做?求教
pb函数库之日期、时间函数
REPORT ZSMARTFORMS_TO_PDF.
* Variable declarations
DATA:
W_FORM_NAME TYPE TDSFNAME VALUE 'ZTESTSMARTFORMS',"name ofsmartforms
W_FMODULE TYPE RS38L_FNAM,
W_CPARAM TYPE SSFCTRLOP,
W_OUTOPTIONS TYPE SSFCOMPOP,
W_BIN_FILESIZE TYPE I," Binary File Size
W_FILENAME TYPE STRING,
W_FILE_PATH TYPE STRING,
W_FULL_PATH TYPE STRING.
* Internal tables declaration
* Internal table to hold the OTF data
DATA:
T_OTF TYPE ITCOO OCCURS 0 WITH HEADER LINE,
* Internal table to hold OTF data recd from the SMARTFORM
T_OTF_FROM_FM TYPE SSFCRESCL,
* Internal table to hold the data from the FM CONVERT_OTF
T_PDF_TAB LIKE TLINE OCCURS 0 WITH HEADER LINE.
* This function module call is used to retrieve the name of the Function
* module generated when the SMARTFORM is activated
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = W_FORM_NAME
* VARIANT = ' '
* DIRECT_CALL = ' '
IMPORTING
FM_NAME = W_FMODULE
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Calling the SMARTFORM using the function module retrieved above
* GET_OTF parameter in the CONTROL_PARAMETERS is set to get the OTF
* format of the output
W_CPARAM-NO_DIALOG = 'X'.
W_CPARAM-PREVIEW = SPACE. " Suppressing the dialog box
W_CPARAM-GETOTF = 'X'. " for print preview
* Printer name to be used is provided in the export parameter
* OUTPUT_OPTIONS
W_OUTOPTIONS-TDDEST = 'LP01'.
CALL FUNCTION W_FMODULE
EXPORTING
* ARCHIVE_INDEX =
* ARCHIVE_INDEX_TAB =
* ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = W_CPARAM
* MAIL_APPL_OBJ =
* MAIL_RECIPIENT =
* MAIL_SENDER =
OUTPUT_OPTIONS = W_OUTOPTIONS
* USER_SETTINGS = 'X'
IMPORTING
* DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO = T_OTF_FROM_FM
* JOB_OUTPUT_OPTIONS =
EXCEPTIONS
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4
OTHERS = 5
.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
t_otf[] = t_otf_from_fm-otfdata[].
* Function Module CONVERT_OTF is used to convert the OTF format to PDF
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
FORMAT = 'PDF'
MAX_LINEWIDTH = 132
* ARCHIVE_INDEX = ' '
* COPYNUMBER = 0
* ASCII_BIDI_VIS2LOG = ' '
* PDF_DELETE_OTFTAB = ' '
IMPORTING
BIN_FILESIZE = W_BIN_FILESIZE
* BIN_FILE =
TABLES
otf = T_OTF
lines = T_PDF_TAB
EXCEPTIONS
ERR_MAX_LINEWIDTH = 1
ERR_FORMAT = 2
ERR_CONV_NOT_POSSIBLE = 3
ERR_BAD_OTF = 4
OTHERS = 5
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* To display File SAVE dialog window
CALL METHOD cl_gui_frontend_services=>file_save_dialog
* EXPORTING
* WINDOW_TITLE =
* DEFAULT_EXTENSION =
* DEFAULT_FILE_NAME =
* FILE_FILTER =
* INITIAL_DIRECTORY =
* WITH_ENCODING =
* PROMPT_ON_OVERWRITE = 'X'
CHANGING
filename = W_FILENAME
path = W_FILE_PATH
fullpath = W_FULL_PATH
* USER_ACTION =
* FILE_ENCODING =
EXCEPTIONS
CNTL_ERROR = 1
ERROR_NO_GUI = 2
NOT_SUPPORTED_BY_GUI = 3
others = 4
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Use the FM GUI_DOWNLOAD to download the generated PDF file onto the
* presentation server
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
BIN_FILESIZE = W_BIN_FILESIZE
filename = W_FULL_PATH
FILETYPE = 'BIN'
* APPEND = ' '
* WRITE_FIELD_SEPARATOR = ' '
* HEADER = '00'
* TRUNC_TRAILING_BLANKS = ' '
* WRITE_LF = 'X'
* COL_SELECT = ' '
* COL_SELECT_MASK = ' '
* DAT_MODE = ' '
* CONFIRM_OVERWRITE = ' '
* NO_AUTH_CHECK = ' '
* CODEPAGE = ' '
* IGNORE_CERR = ABAP_TRUE
* REPLACEMENT = '#'
* WRITE_BOM = ' '
* TRUNC_TRAILING_BLANKS_EOL = 'X'
* WK1_N_FORMAT = ' '
* WK1_N_SIZE = ' '
* WK1_T_FORMAT = ' '
* WK1_T_SIZE = ' '
* IMPORTING
* FILELENGTH =
tables
DATA_TAB = T_PDF_TAB
* FIELDNAMES =
* EXCEPTIONS
* FILE_WRITE_ERROR = 1
* NO_BATCH = 2
* GUI_REFUSE_FILETRANSFER = 3
* INVALID_TYPE = 4
* NO_AUTHORITY = 5
* UNKNOWN_ERROR = 6
* HEADER_NOT_ALLOWED = 7
* SEPARATOR_NOT_ALLOWED = 8
* FILESIZE_NOT_ALLOWED = 9
* HEADER_TOO_LONG = 10
* DP_ERROR_CREATE = 11
* DP_ERROR_SEND = 12
* DP_ERROR_WRITE = 13
* UNKNOWN_DP_ERROR = 14
* ACCESS_DENIED = 15
* DP_OUT_OF_MEMORY = 16
* DISK_FULL = 17
* DP_TIMEOUT = 18
* FILE_NOT_FOUND = 19
* DATAPROVIDER_EXCEPTION = 20
* CONTROL_FLUSH_ERROR = 21
* OTHERS = 22
.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
发表评论
-
ranges 语法
2011-06-23 13:17 931RANGES语句:要用与选择表相同的结构创建内表,可使 ... -
开发的误区
2011-06-22 23:28 8091.传输请求号的时候按传输序列号大小 传输绝对没问题,这是一个 ... -
ALV 颜色
2011-06-22 09:06 998关于ALV GRID的颜色 A ... -
数据库左连接与右连接
2011-06-09 11:48 2945左连接与右连接 左 ... -
co02权限增强
2011-06-09 11:12 1230CO02 有无撤销技术实现权限的增强 标 ... -
EXIT 出口查找程序
2011-06-03 11:23 1108SPAN { font-family: "Co ... -
ALE development
2011-05-30 09:41 9331. Introduction to ALE developm ... -
abap动态内表
2011-05-20 11:43 1193This Tutorial details about c ... -
DYNP_VALUES_UPDATE 實時更新 Selection Screen
2011-05-19 15:56 1856DYNP_VALUES_UPDATE 實時更新 Selecti ... -
Smartforms 中更改默认编辑器的两种方法
2011-04-12 19:07 1780Smartforms 中更改默认编辑器的两种方法(Tow Me ... -
Implicit enhancement points
2011-03-22 14:35 1221SAP Implicit enhancement poin ... -
如何将应用程序文档加进SAP R/3并有效利用?
2011-03-21 18:31 916如何将应用程序文档加进SAP R/3并有效利用? sap ... -
sap 长文本
2011-03-21 18:13 1708SAP长文本编辑 在 ... -
获取当前 GRID
2011-03-21 11:36 809SPAN { font-family: "Co ...
相关推荐
SAP ABAP Smartforms 是一种用于创建和管理电子表格和表单的SAP工具,它允许用户在SAP系统中定制打印表单,使表单设计更加灵活、高效。它基于ABAP面向对象的编程技术和SAPScript的传统打印表单设计,被广泛应用于...
6. **打印和导出功能**:生成的SMARTFORMS可以轻松打印或导出为PDF、Excel等格式,便于分发和存档。 7. **版本控制**:SMARTFORMS允许维护多个版本,方便更新和回滚,确保业务连续性。 8. **集成到业务流程**:...
本教程将围绕Smartforms展开,涵盖如何新建样式、添加图片、设置纸张格式以及打印条形码或二维码。 1. **新建样式**:在Smartforms中,样式定义了打印输出的整体布局和格式。"smartforms打印新建样式.docx"可能详细...
本文将对SAP SmartForms进行详细的介绍,并通过实例讲解SmartForms的开发步骤。 一、SAP SmartForms概述 SAP SmartForms是SAP系统中的报表制作工具,用于创建复杂的商业报表。SmartForms可以根据业务需求,生成...
当Smartforms遇到运行异常时,可能表现为错误消息、表单无法正常显示或功能失效。 描述中提到的"插件"通常是为了增强或修复原生功能而开发的第三方组件。在这种情况下,SAP Gui77 Smartforms 插件可能是由SAP官方或...
在SAP系统中,访问权限是基于角色分配的,如果用户的角色未包含编辑SmartForms的权限,他们将无法进行修改。 2. **软件版本冲突**:更新或补丁安装不正确可能导致SmartForms组件与系统其他部分不兼容,从而影响编辑...
- **发布和集成**:完成表单后,将其发布到生产系统,并在需要的地方调用,如ABAP报告、BADI或BAPI。 4. **SmartForms与ABA Programs的区别** 相比传统的ABAP编程创建输出,SmartForms提供了更直观的用户界面和更...
此外,可以设置不同的输出选项,如直接打印、保存到文件或发送电子邮件。 6. **集成与兼容性**:SmartForms与其他SAP组件如Workflow、Adobe Forms等无缝集成,可以在SAP业务流程中扮演重要角色。同时,它还与多种...
在ABAP开发中,Smartforms是一种强大的工具,用于创建复杂的打印输出和报告。它结合了图形化的用户界面和编程逻辑,使得设计和实现业务文档变得更为直观和高效。以下是对Smartforms的详细步骤和相关知识点的说明: ...
### ABAP Smartforms 学习操作手册精要 #### SMARTFORMS:新一代报表设计利器 SMARTFORMS,作为SAPScript的升级版,是SAP系统中用于设计和生成复杂打印输出的一种强大工具。与传统的SAPScript相比,SMARTFORMS提供...
本篇文章将深入探讨这两者,并结合“分页”这一功能,来阐述如何在实际应用中高效地处理大量数据。 ALV是一个标准的SAP图形用户界面组件,用于以表格形式展示数据。它提供了丰富的交互性,如排序、过滤、选择等。...
自己工作中开发的smartforms程序,有打印SO,DO,Billing等等,可以直接上载到sap系统查看参考,希望对大家有帮助,由于是本人亲自写出来的心血,因此,对初学smartforms的同学有很大的帮助哦!
4. **处理输出**:Smartform执行后,可以将结果保存到内部表或直接打印。使用`OUTPUT TO`或`OUTPUT AS`语句可以控制输出目的地。 5. **错误处理**:在调用Smartform后,检查返回的错误信息,通过`IF sy-subrc <> 0`...
通过上述代码,可以看到开发者是如何将数据库中的数据(ZZZ_MAKT)加载到内部表(ITAB)中,并通过Loop遍历该表。在每次迭代中,数据会被填充到Template中预设的Text Elements,进而形成一致且格式化的输出。最后,...
### SAP SmartForms:深入解析与应用实例 #### 核心概念与作用 SAP SmartForms是一种用于在SAP系统中创建复杂...对于刚接触ABAP的开发者来说,掌握SmartForms将极大地提高他们在SAP环境下的工作效率和项目实施能力。
7. **打印和导出**:Smartforms生成的表单可以直接打印,也可以导出为PDF、RTF等格式,便于电子分发和存档。此外,Smartforms还可以与SAP的Print Control集成,实现更高级的打印设置和模板管理。 8. **版本管理和...
1. **打开SMARTFORMS界面**: 在工具栏中选择“打印表格”>“SMARTFORMS-智能表格”,这将引导您进入SMARTFORMS的设计环境。 2. **创建表格**: 在SMARTFORMS界面中,选择“表格”单选按钮,输入表格名称(如ZMMF015...
SmartForms 帮助程序中内表数据传递到 SmartForms 里的几种方法有:接口内表和用 memory id 或簇数据库。这两种方法都有其优点和缺点,需要根据实际情况选择合适的方法。 在 SmartForms 中,背景图片上传可以通过 ...
本文将详细介绍如何在SMARTFORMS中使用自定义的表结构来实现更加灵活的数据展示功能。 #### SMARTFORMS基础知识 SMARTFORMS的设计主要包括以下几个方面: 1. **表格属性设置**:包括输出选项(页格式、字符密度等...