我需要讀取發票,訂單等存儲的文本 在ABAP中,我們可以使用READ_TEXT功能模塊,但我需要在CDS視圖內讀取它。 有沒有辦法直接在SELECT語句中從數據庫表中讀取文本?READ_TEXT CDS中的類似功能查看
回答
主要問題是將二進制轉換爲文本,我認爲。因爲,sap腳本文本以編碼的二進制格式存儲。有SAP HANA SQL功能,它是BINTOSTR。它可能有幫助。我沒有漢納平臺。不幸的是,我無法嘗試。
@AbapCatalog.sqlViewName: 'ZMYSELECT'
@AbapCatalog.compiler.CompareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'BinToStr'
define view ztmp_cds_demo
as select from vbak as k
left outer join stxh as h on k.mandt = h.mandt
and h.tdobject = 'VBBK'
and k.vbeln = h.tdname
and h.tdspras= 'T'
inner join stxl as l on h.tdobject = l.tdobject
and h.tdname = l.tdname
and h.tdid = l.tdid
and h.tdspras = l.tdspras {
//cast(BINTOSTR(cast(CLUSTR as binary)) as varchar) as id,
cast(BINTOSTR(cast(CLUSTD as binary)) as varchar) as text
}
注意:您可能需要更改連接,爲您的情況添加一些參數等。 相關鏈接: https://blogs.sap.com/2014/02/25/alternative-to-readtext-function-module/
How to convert BLOB to varchar with SAP HANA database using SQL
MerhabaOğuz,不幸的是,當我在CDS視圖中嘗試查詢時,我得到了bintostr函數是未知的錯誤,阻止激活。當我直接對HANA db執行查詢時,遇到無效的字符編碼錯誤。所以我還不能解決問題 – Eralper
的東西,我有一個ABAP 7.50系統(EHP8)使用CDS時,我的OData服務僅僅是創建一個單獨的OData服務,是一個通用的「標準文本」做讀者。這是一個在SEGW中建模的基於ABAP的純OData服務。
然後,無論何時我想在我的應用程序中顯示標準文本,我都會打電話給此服務。效果很好。似乎在S4中你可以在CDS中完成這一切。
嗨傑森,謝謝你通知這個選項。據我所知,您可以在OData方法中調用函數模塊read_text,以獲取通過CDS等獲取的數據。因此,您可能讀取每個記錄的基礎,對嗎?我其實想要做的是大衆閱讀。你認爲這有可能嗎? – Eralper
在你自己的odata服務中,你可以做任何你想做的事情......包括大衆閱讀標準文本。 ;-) –
在我看到的每一個文本閱讀中,都會遇到以下IMPORT命令代碼塊,我要在AMDP或CDS視圖SELECT語句中執行。我想知道這是否有辦法?從內部表cluster_tab將rt_lines 導入l_cp 接受截斷「對於Unicode-> Nonunicode 重要,忽略轉換錯誤。 – Eralper
- 1. MySQL查詢類似Intersect的功能
- 2. 具有類似功能的組功能
- 3. 類似功能的使者
- 4. DRY查看功能
- 5. SQLite查看功能?
- 6. 查看HTML功能
- 7. 類似的功能在C#中的String.Format
- 8. Java/Scala中的類似Scipy的功能?
- 9. R中的類似於SQL的功能
- 10. 在java中尋找類似的功能
- 11. 類似的功能SwingUtilities.invokeLater在android中?
- 12. 功能類似於Matlab中的head()
- 13. Joomla中類似Facebook的功能1.7-2.5
- 14. 類似於中繼器的功能
- 15. 在java中與fork()類似的功能
- 16. 類似Python中的.rdata功能?
- 17. 似乎無法綁定功能,可以查看在Backbone.js的
- 18. jQuery功能類似於ziggo.nl
- 19. TortoiseHg複製類似功能
- 20. 類似功能strcmpi在python
- 21. iOS功能類似ti viewDidLoad()
- 22. Vim:在緩衝區中查找類似於TextMate的功能
- 23. 查看瀏覽器中的JQuery功能
- 24. Django查看功能似乎不起作用
- 25. Dask Bag read_text()line order
- 26. Angular2 - 全局查看功能
- 27. 作爲html功能查看
- 28. 使用jQuery查看功能
- 29. 異步功能查看
- 30. 功能從MY_Controller查看 - 笨
我相信你可以爲STXH,STXL和STXB表創建兩個CDS視圖,一個用於sap腳本文本,一個用於非sap腳本文本。但是,最終,您必須解壓縮ABAP中的文本。你爲什麼需要它?如果是關於性能問題,您可以查看批量閱讀標準文本,https://archive.sap.com/discussions/message/10063502#10063502 – Oguz
Merhaba Oguz,我已經有一個CDS,它從各種表中讀取有關發票的數據。我需要顯示項目文本等等。因爲我無法從CDS視圖中的表格中讀取它們,所以我必須在ABAP代碼中操作CDS數據,例如將所有內容都捕捉到內部表循環中並使用FM讀取。但是這種類型的編碼與HANA方法不匹配,推動數據讀取到數據庫級別 – Eralper
Merhaba Eralper。我對此很好奇,你的問題解決了嗎? – Oguz