ABAP,PDF,ADS,FORM,PRINT

ABAP怎么直接打印PDF文件?

https://faskomyabap.blogspot.com/2017/10/how-to-print-pdf-file-content-from-abap.html
里面的程序可以直接將本地文件打印出來,讀一下過程,這個程序是把本地PDF文件使用upload函數到ABAP中,先是二進制,然后轉成XSTRING,然后使用 連招 ADS_SR_OPEN, ADS_GET_PATH , ADS_SR_CONFIRM , ADS_SR_CLOSE可以直接打印或者發送到SPOOL。因為沒找到官方文檔 ,問了下deepseek,是這么解釋這四個函數的作用的:

  • ADS_SR_OPEN: 打開與存檔系統的連接。初始化與外部存檔系統(如文檔管理系統DMS)的會話,建立通信通道。
  • ADS_GET_PATH:獲取文檔存儲路徑。根據文檔的唯一標識符(如存檔鍵)獲取其在存檔系統中的物理路徑或URL。
  • ADS_SR_CONFIRM:確認操作并提交更改。在文檔存儲或修改后,顯式確認操作以確保事務一致性(類似數據庫提交)。
  • ADS_SR_CLOSE:關閉連接。結束與存檔系統的會話,釋放資源。

還有一套函數也可以實現:RSPO_R_RHELP_PRIN,ADS_CREATE_PDF_SPOOLJOB

它的原理都是一樣的,先轉XSTRING,然后調ADS的API。ADS_CREATE_PDF_SPOOLJOB函數里也會調上面那4個函數。

常見問題

(如果百思不得解,試試升級GUI版本和SAP ABA組件,別問為什么,一問一個不吱聲)

相關的程序和函數

TCODE:

  • SP01: Spool Request List
  • SPAD: Spool Administration
  • PDF!

程序:

  • RSPO0020: Display Report for ADS Spool Job Parts
    在這里插入圖片描述

  • RSTXPDFT4: Converting OTP or Spool to PDF
    在這里插入圖片描述

函數組:

  • SPOO
  • SPADS

函數:

  • RSPO_OUTPUT_SPOOL_REQUEST
  • ADS_SR_OPEN
  • ADS_GET_PATH
  • ADS_SR_CONFIRM
  • ADS_SR_CLOSE
  • RSPO_R_RHELP_PRIN
  • ADS_CREATE_PDF_SPOOLJOB
  • SSF_FUNCTION_MODULE_NAME
  • SSF_GET_DEVICE_TYPE
  • CONVERT_OTF,輸入PDF,輸出BIN二進制
  • CONVERT_OTF_2_PDF,
  • CONVERT_ABAPSPOOLJOB_2_PDF
  • GUI_DOWNLOAD

Link

  • https://community.sap.com/t5/enterprise-resource-planning-blogs-by-members/save-print-output-as-pdf-file-in-front-end-system-using-pdf-printer-output/ba-p/13212479
  • https://www.kodyaz.com/articles/sap-tutorial-convert-spool-request-to-pdf-file-using-rstxpdf4-abap-report.aspx
  • https://community.sap.com/t5/application-development-blog-posts/convert-download-abap-report-to-pdf/ba-p

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/76145.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/76145.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/76145.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++Cherno 學習筆記day17 [66]-[70] 類型雙關、聯合體、虛析構函數、類型轉換、條件與操作斷點

b站Cherno的課[66]-[70] 一、C的類型雙關二、C的union(聯合體、共用體)三、C的虛析構函數四、C的類型轉換五、條件與操作斷點——VisualStudio小技巧 一、C的類型雙關 作用:在C中繞過類型系統 C是強類型語言 有一個類型系統,不…

011_異常、泛型和集合框架

異常、泛型和集合框架 異常Java的異常體系異常的作用 自定義異常異常的處理方案異常的兩種處理方式 泛型泛型類泛型接口泛型方法、通配符和上下限泛型支持的類型 集合框架集合體系結構Collection Collection集合Collection的遍歷方式認識并發修改異常問題解決并發修改異常問題的…

Kubernetes 集群搭建(三):使用dashboard用戶界面(需要訪問外網獲取yaml)

(一)簡介 K8s Dashboard是Kubernetes提供的一種基于Web的用戶界面工具,用于可視化地管理和監控Kubernetes集群 主要功能: 資源查看與管理: 查看Kubernetes集群中的各種資源,如節點、Pod、服務、部署等。 對…

【數據挖掘】嶺回歸(Ridge Regression)和線性回歸(Linear Regression)對比實驗

這是一個非常實用的 嶺回歸(Ridge Regression)和線性回歸(Linear Regression)對比實驗,使用了 scikit-learn 中的 California Housing 數據集 來預測房價。 📦 第一步:導入必要的庫 import num…

大疆無人機系列知識

目錄 知識 開發者文檔 (上云) 無人機的應用 知識 大疆行業無人機接入音視頻平臺協議詳解_大疆無人機 視頻流-CSDN博客 開發者文檔 (上云) 上云API 無人機的應用 【大疆無人機地圖測繪技術學習:高精度、高效率的…

CNN注意力機制的進化史:深度解析10種注意力模塊如何重塑卷積神經網絡

🌟 引言:注意力為何改變CNN的命運? 就像人類視覺會優先聚焦于重要信息,深度學習模型也需要"學會看重點"。從2018年SENet首提通道注意力,到2024年SSCA探索空間-通道協同效應,注意力機制正成為CNN…

Linux/樹莓派網絡配置、遠程登錄與圖形界面訪問實驗

一.準備工作 1.修改網絡適配器(選擇本機網卡) 2.創建一個新的用戶。 3.使用新用戶登錄,使用ip a指令查看IP(現代 Linux 發行版(如 Ubuntu、Debian、CentOS、Fedora 等))。 通過sudo arp-sca…

Python----TensorFlow(TensorFlow介紹,安裝,主要模塊,高級功能)

一、TensorFlow TensorFlow 是由谷歌大腦團隊于 2015 年推出的開源機器學習框架。作為深度學習的第二代系統,TensorFlow 支持多種編程語言,包括 Python、C、Java 和 Go,廣泛應用于 CNN、RNN 和 GAN 等深度學習算法。 TensorFlow 可以…

【動態規劃】 深入動態規劃 回文子串問題

文章目錄 前言例題一、回文子串二、 最長回文子串三、回文串分割IV四、分割回文串II五、最長回文子序列六、讓字符串成為回文串的最小插入次數 結語 前言 那么,什么是動態規劃中的回文子串問題呢? 動態規劃中的回文子串問題是一個經典的字符串處理問題。…

lodash庫介紹(一個現代JavaScript實用工具庫,提供模塊化、性能優化和額外功能)JavaScript庫(防抖、節流、函數柯里化)JS庫

https://www.lodashjs.com/ 文章目錄 Lodash庫全解析簡介核心優勢一致性API模塊化設計性能優化 常用功能分類數組操作對象操作函數增強 高級應用場景數據轉換鏈函數組合 性能考量大數據集處理 最佳實踐按需引入利用FP模塊 結語 Lodash庫全解析 簡介 Lodash是一個現代JavaScri…

Spring MVC 國際化機制詳解(MessageSource 接口體系)

Spring MVC 國際化機制詳解(MessageSource 接口體系) 1. 核心接口與實現類詳解 接口/類名描述功能特性適用場景MessageSource核心接口,定義消息解析能力支持參數化消息(如{0}占位符)所有國際化場景的基礎接口Resource…

PyTorch張量范數計算終極指南:從基礎到高階實戰

在深度學習領域,張量范數計算是模型正則化、梯度裁剪、特征歸一化的核心技術。本文將以20代碼實例,深度剖析torch.norm的9大核心用法,并揭示其在Transformer模型中的關鍵應用場景。 🚀 快速入門(5分鐘掌握核心操作&…

榮耀90 GT信息

外觀設計 屏幕:采用 6.7 英寸 AMOLED 榮耀綠洲護眼屏,超窄邊框設計,其上邊框 1.6mm,左右黑邊 1.25mm,屏占較高,帶來更廣闊的視覺體驗。屏幕還支持 120Hz 自由刷新率,可根據使用場景自動切換刷新…

【Java中級】11章、枚舉 - java引用數據類型,枚舉介紹、快速入門,了解枚舉類的基本使用方式【1】

文章內容: 自定義實現枚舉enum關鍵字實現枚舉 ??內容涉及枚舉的定義,快速入門,注意事項和小題鞏固知識點 🌈 跟著B站一位老師學習的內部類內容,現寫這篇文章為學習內部類的小伙伴提供思路支持,希望可以一…

局域網訪問 Redis 方法

局域網訪問 Redis 方法 默認情況下,Redis 只允許本機 (127.0.0.1) 訪問。如果你想讓局域網中的其他設備訪問 Redis,需要 修改 Redis 配置,并確保 防火墻放行端口。 方法 1:修改 Redis 配置 1. 修改 redis.conf(或 me…

如何應對客戶頻繁變更需求

如何應對客戶頻繁變更需求?要點包括: 快速響應、深入溝通、靈活規劃、過程記錄、風險管控。這些策略既能降低項目失控風險,也能幫助團隊在變動環境中保持高效率。其中深入溝通尤為關鍵,它不僅能夠讓團隊第一時間了解客戶意圖&…

Set 集合

默認情況下, Scala 使用的是不可變集合, 如果你想使用可變集合, 需要引用 scala.collection.mutable.Set Set 默認是不可變集合,數據無序 數據不可重復 遍歷集合 創建可變集合 mutable.Set 打印集合 集合添加元素 向集合中…

最新 OpenHarmony 系統一二級目錄整理

我們在學習 OpenHarmony 的時候,如果對系統的目錄結構了解,那么無疑會提升自己對 OpenHarmony 更深層次的認識。 于是就有了今天的整理。 首先在此之前,我們要獲取源碼 獲取源碼的方式 OpenHarmony 主干代碼獲取 方式一(推薦&am…

STL常用容器整理

STL常用容器操作整理 STL常用容器操作整理(string/vector/set/map)一、string(字符串)構造函數元素訪問修改操作容量操作子串與查找 二、vector(動態數組)構造函數元素訪問修改操作容量操作 三、set&#x…

Unity 實現傷害跳字

核心組件: Dotween TextMeshPro 過程軌跡如下圖: 代碼如下: using System.Collections; using System.Collections.Generic; using DG.Tweening; using TMPro; using UnityEngine; using UnityEngine.Pool;public class …