从使用Web Dynpro ABAP设计的门户下载无扩展名的PDF文件

2020-08-13 23:25发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

使用WebDynpro ABAP设计的门户网站, 屏幕将在表格中显示发票,并显示一个PDF按钮,单击该按钮将以PDF格式下载发票副本。

但是现在单击PDF按钮后,将下载不带文件类型或扩展名的发票

令人惊讶的是,该问题仅在我使用Google Chrome浏览器访问门户时发生,但在使用Internet Explorer时同样可以正常工作。

由于发票没有文件类型,因此当我尝试打开它时会收到错误消息,因为"该文件没有与执行此操作相关的应用程序"。

有人可以建议我这里的问题是什么吗?

方法PDF。

常量:gc_objtp类型为toav0-sap_object值'VBRK'。

gv_id = i_vbeln。 "将发票编号传递给变量

CALL FUNCTION'ARCHIV_GET_CONNECTIONS' 出口 对象类型= gc_objtp object_id = gv_id until_ar_date = sy-datum 桌子 连接= gt_connect 参数= gt_param。 描述表gt_connect线gv_line。 读取表gt_connect INTO gwa_connect INDEX gv_line。 如果sy-subrc = 0。 通话功能'ALINK_RFC_TABLE_GET' 出口 im_docid = gwa_connect-arc_doc_id im_crepid = gwa_connect-archiv_id 输入 ex_message = gwa_message 桌子 ex_document = gt_doc。 如果sy-subrc = 0。 描述表gt_doc行gv_size。 gv_size = gv_size * sy-tleng。 *转换为XString 通话功能'SCMS_BINARY_TO_XSTRING' 出口 input_length = gv_size 输入 缓冲区= gt_content 桌子 binary_tab = gt_doc。 gv_mimetype ='应用程序/pdf'。 gv_name = gv_id。 呼叫方法cl_wd_runtime_services => attach_file_to_response 出口 i_filename = gv_name i_content = gt_content i_mime_type = gv_mimetype。 万一。 万一。 终结法。

(108.2 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

使用WebDynpro ABAP设计的门户网站, 屏幕将在表格中显示发票,并显示一个PDF按钮,单击该按钮将以PDF格式下载发票副本。

但是现在单击PDF按钮后,将下载不带文件类型或扩展名的发票

令人惊讶的是,该问题仅在我使用Google Chrome浏览器访问门户时发生,但在使用Internet Explorer时同样可以正常工作。

由于发票没有文件类型,因此当我尝试打开它时会收到错误消息,因为"该文件没有与执行此操作相关的应用程序"。

有人可以建议我这里的问题是什么吗?

方法PDF。

常量:gc_objtp类型为toav0-sap_object值'VBRK'。

gv_id = i_vbeln。 "将发票编号传递给变量

CALL FUNCTION'ARCHIV_GET_CONNECTIONS' 出口 对象类型= gc_objtp object_id = gv_id until_ar_date = sy-datum 桌子 连接= gt_connect 参数= gt_param。 描述表gt_connect线gv_line。 读取表gt_connect INTO gwa_connect INDEX gv_line。 如果sy-subrc = 0。 通话功能'ALINK_RFC_TABLE_GET' 出口 im_docid = gwa_connect-arc_doc_id im_crepid = gwa_connect-archiv_id 输入 ex_message = gwa_message 桌子 ex_document = gt_doc。 如果sy-subrc = 0。 描述表gt_doc行gv_size。 gv_size = gv_size * sy-tleng。 *转换为XString 通话功能'SCMS_BINARY_TO_XSTRING' 出口 input_length = gv_size 输入 缓冲区= gt_content 桌子 binary_tab = gt_doc。 gv_mimetype ='应用程序/pdf'。 gv_name = gv_id。 呼叫方法cl_wd_runtime_services => attach_file_to_response 出口 i_filename = gv_name i_content = gt_content i_mime_type = gv_mimetype。 万一。 万一。 终结法。

(108.2 kB)
付费偷看设置
发送
2条回答
我是小鹏鹏啊
1楼-- · 2020-08-14 00:08

您好 SAYAK CHOWDHURY

我想说的是,您需要在

 gv_name = | {gv_id} .pdf |。

亲切的问候,

Mateusz
我是小鹏鹏啊
2楼-- · 2020-08-14 00:06

嗨,Sayak,

我相信您会将文件名作为发票号传递,但是您可以从表TOAAT中找到文件名并将其传递。 希望它能解决您的问题。

在屏幕截图中,该文件没有扩展名,因此您被迫使用某些应用程序打开。

__

此致

J

一周热门 更多>