91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用ABAP操作Excel的方法有哪些

發布時間:2021-12-29 16:51:23 來源:億速云 閱讀:138 作者:iii 欄目:服務器

本篇內容介紹了“使用ABAP操作Excel的方法有哪些”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

在SAPGUI里根據關鍵字OLE搜索,能找到通過ABAP操作Excel的一種辦法:

使用ABAP操作Excel的方法有哪些

這段文檔說的比較清楚,微軟的Word和Excel這種Office應用,提供了一種所謂automation的接口,暴露的公有類的方法和屬性可以被其他應用消費。

作為ABAP應用開發人員,我們通過調用OLE對象的方法CALL METHOD, GET PROPERTY,SET PROPERTY等來訪問微軟Word和Excel的automation接口,代碼看起來像這樣:

使用ABAP操作Excel的方法有哪些

上面這個函數RH_START_EXCEL_DATA_OLE調用微軟Excel的automation接口,新建一個Excel workbook,然后準備把ABAP內表里的數據寫到Excel里。

你也許會問,我咋知道Excel里有哪些公有的類和方法可以被ABAP調用呢?

在Excel里點擊右鍵,選擇View Code:

使用ABAP操作Excel的方法有哪些

打開Microsoft Visual Basic Object Brower,所有可用的類和方法都列在這里了,上面ABAP代碼第218行調用的workbook的open方法在列表里也能找到。

使用ABAP操作Excel的方法有哪些

這個解決方案只在windows平臺有效,并且需要運行SAPGUI的Presentation Server上安裝有微軟的Excel應用。

我們采用OLE的方式操作Excel時,打開Windows操作系統的任務管理器,會發現一個以/automation -Embedding參數啟動的Excel進程。

使用ABAP操作Excel的方法有哪些

這里的-Embedding參數,來自OLE的全稱:Object Linking and Embedding里的一部分。OLE是微軟的一項非常古老的技術了。

使用ABAP操作Excel的方法有哪些

微軟和SAP兩位大佬,Bill Gates和Hasso Plattner 1993年的照片:

使用ABAP操作Excel的方法有哪些

關于OLE,Jerry知道的就這么點了,在SAP研究院里如今我們還是會和微軟的技術打交道,比如微軟的Azure.

使用ABAP操作Excel的方法有哪些

如果Jerry沒記錯的話, 微軟Office從2007版本開始, 采用新的支持Office Open XML標準的格式來管理Excel和Word等文件。Jerry 2014年在SAP成都研究院CRM開發團隊負責CRM Document Builder這個模塊,當時編寫過使用ABAP操作Word文檔的代碼。

以Word為例,下圖是我創建了一個最簡單的Word文檔,包含了一個Header區域,一個由三行彩色文字組成的段落,還有一張圖片。

使用ABAP操作Excel的方法有哪些

我們把這個Word文檔的擴展名從.docx改成.zip, 然后雙擊,就可以用解壓軟件比如winrar打開。

于是發現這一個最簡單的按照Office Open XML協議實現的Word文檔,實際上由如此多的xml和文件夾構成。

使用ABAP操作Excel的方法有哪些

使用SAP標準的類CL_DOCX_DOCUMENT讀取Word文件內容:

使用ABAP操作Excel的方法有哪些

上述代碼的簡要說明:

(1) 將word文檔的二進制內容傳入方法cl_docx_document=>load_document,得到一個文檔對象引用,然后就可以借助該對象引用調用各種方法了。

(2) word文檔的創建者,創建時間,最后修改時間等信息都存儲在所謂的“Core property part”內,可以通過方法lo_document->get_corepropertiespart獲得"Core property part"的引用,再使用該引用調用方法get_data獲得實際內容。

下圖是get_data返回的內容的一個例子,可以看出是xml格式。

使用ABAP操作Excel的方法有哪些

(3) 現在我們準備讀取Word文檔的正文了。使用方法lo_document->get_maindocumentpart得到Word文檔正文,文字的字體類型,顏色也包含在內。如下圖所示:

使用ABAP操作Excel的方法有哪些使用ABAP操作Excel的方法有哪些

(4) Word文檔里插入的圖片的二進制內容當然也是可以讀取出來的。使用方法:lo_image_parts->get_part返回。

Excel的例子我沒有動手做過,不過原理類似,大家可以用開發包S_OOXML_CORE里的CL_XLSX_DOCUMENT來操作格式為xlsx的Excel文檔。

使用ABAP操作Excel的方法有哪些

除此之外,還有一個著名的開源項目, abap2xlsx, Jerry沒有試過,感興趣的朋友可以試試。

使用ABAP操作Excel的方法有哪些

最后,大家在SE24里使用關鍵字XSLX以及SE38里搜索_OLE,

使用ABAP操作Excel的方法有哪些

可以從搜索列表里選一些點進去,參考SAP標準程序是如何操作Excel文檔的。

使用ABAP操作Excel的方法有哪些

“使用ABAP操作Excel的方法有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宣汉县| 和平区| 酉阳| 南阳市| 武清区| 彰武县| 浦北县| 遵义县| 潜江市| 仪征市| 溧水县| 鸡泽县| 临夏县| 福建省| 东城区| 张家界市| 邵阳市| 黔西| 修水县| 桐梓县| 井陉县| 明溪县| 仙桃市| 民勤县| 环江| 汽车| 克什克腾旗| 沾化县| 成都市| 麻江县| 揭东县| 城口县| 大足县| 福建省| 新竹市| 九龙县| 那曲县| 汝南县| 讷河市| 镇坪县| 扶沟县|