將一個打印假脫機號轉換成PDF下載到本地的方法

將一個打印假脫機號轉換成PDF下載到本地的方法

作者:袁雲飛(AlbertYuan)- 微信號yuanalbert

以下內容均爲原創,希望對初學者有一些輔助作用,本人主要從事MM/QM/WM的相關工作,不專業處請多多指點,十足乾貨,碼字不易,且行且珍惜,你們的關注就是我努力的動力,轉載請引用出處,感激不盡;

輸出一個PDF文件的方法非常多,小夥伴們可能已經掌握了比較多的方法了;而且有ABAP老師的幫忙也能通過創建自己的報表輸出的方式去轉換成PDF進行下載;

這裏我們討論的一個方法算是一個比較基礎功能,通過從假脫機數據集裏找出假脫機號,然後將這些打印輸出的假脫機號下載成一個PDF完成(當然在輸出執行的時候我們完全可以直接產生PDF輸出也能實現);

言歸正傳,SAP給我們提供了一個標準的程序“RSTXPDFT4”,這個程序可以直接將提供的假脫機號,轉換爲PDF然後下載到我們指定的本地文件夾中;我們可以通過寫一個簡單的報表的方式去調用該程序,實現假脫機打印的PDF輸出;

在這裏插入圖片描述
同理,程序RSTXPDFT3也能實現類似的功能;

本身這個程序的作用是有限的,不過通過分析程序,我們能獲得兩個有用的函數;
CONVERT_OTFSPOOLJOB_2_PDF
CONVERT_ABAPSPOOLJOB_2_PDF
前一個是用於消息輸出所產生的假脫機,比如打印輸出;後一個表示針對我們的報表的後臺作業所產生的假脫機輸出;利用這兩個函數就能自己寫報表去完成各種假脫機的PDF輸出的功能;

那麼如何判斷假脫機的是哪一種呢,我們知道output輸出打印產生的假脫機一般是OTF類型的,而報表後臺輸出的類型一般是TEXT的;

所以我們通過函數RSTS_GET_ATTRIBUTES得到假脫機號的對象類型,然後使用各自的函數來進行轉換即可;

在這裏插入圖片描述
所有假脫機號可以通過TSP01表裏進行搜索到;上圖函數參數的入參輸入如下:
AUTHORITY=SP01
PART=1
NAME=tsp01-rqo1name
在這裏插入圖片描述
然後分析輸出結果的對象值;
在這裏插入圖片描述
只要前三位是OTF或者從第二位開始是OTF字符與,就表示該假脫機是打印消息輸出產生;調用對應函數即可;

然後通過調用對應的子程序進行下載輸出作業即可完成;
在這裏插入圖片描述

當然這裏只是提綱挈領的討論了一個大致的步驟,小夥伴們可以根據這個思路去分析一下RSTXPDFT4程序的執行過程,就很容易理清楚來龍去脈了,然後根據自己需要使用必要的函數去用在自己的報表功能的設計上;

以上爲本章全部內容,希望對小夥伴們有所幫助;

發佈了102 篇原創文章 · 獲贊 1 · 訪問量 8438
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章