如果要想把DOCX render成PDF 格式,需要server上部署了ADS Adobe document service。用report FP_PDF_TEST_00 檢查ADS是否setup 正确 。
如果能看到下面的ADS version資訊說明已經ready。
下圖是一個我們系統裡SM59 指向的ADS destination
附件的第21頁的note有詳細的consume ADS的說明。
Reviewe的用途:
用SM30, 編輯這個view SWFDEVENA,
這裡SAP 提供了一個很靈活的架構可以讓我們把document 上發生的事件和一個workflow 綁定起來,我們可以自行開發一些workflow來響應這些事件。
SAP deliver的标準的workflow裡有和review發生互動的:
這個workflow隻是增加了一部自動給review 發郵件提示其去review以及reviewer手動處理的流程。自動發郵件和reviewer 處理分别有SAP标準的BOR object SELFITEM和DECISION實作。
Navigation 失敗的問題。像此類問題我一般用debug的方式找到原因:系統去CRMC_IB_BOR_UIOB裡面找entry,
找不到就報CRM_UIU_CT-022的message。你打上斷點然後看SQL 語句的where條件就知道系統想找什麼樣的entry了,照着維護進去就行。
Due icon顯示成X:
在這個方法上設斷點,
然後看你系統上icon的url determine出來是怎樣的:
拿到這個url後到SE80, mime repository裡去看這個icon的圖檔是否正确上傳了:
另外, 代碼中如何提取出已審批通過的document?
能提供更細節的資訊嗎?你們希望在什麼樣的context下寫code?
如果你們寫代碼的上下文裡能夠拿到content和document ID,可以通過下面的report 拿到文檔的内容-存在ls_output-data裡面
PARAMETERS: content TYPE /ipro/tdocmnt-content DEFAULT 'DLA',
document TYPE /ipro/tdocmnt-docmnt_id.
*data: document TYPE /ipro/tdocmnt-docmnt_id value '0000000815'.
DATA: lt_contents TYPE /ipro/tt_contents,
lo_content TYPE REF TO /ipro/if_content,
lo_doc_factory TYPE REF TO /ipro/if_docb_factory,
lo_document TYPE REF TO /ipro/if_document,
lv_content TYPE string,
lo_exception TYPE REF TO /ipro/cx_serializer_failed_at,
lv_error_text TYPE string.
lv_content = content.
CALL FUNCTION '/IPRO/CONTENT_FACTORY'
EXPORTING
piv_name = lv_content
IMPORTING
pet_contents = lt_contents.
READ TABLE lt_contents INTO lo_content INDEX 1.
CHECK lo_content IS BOUND.
lo_doc_factory = lo_content->get_docb_factory( ).
TRY.
lo_document ?= lo_doc_factory->open( piv_docmnt_id = document ).
CATCH /ipro/cx_serializer_failed_at INTO lo_exception.
lv_error_text = lo_exception->get_name( ).
WRITE: /,lv_error_text.
ENDTRY.
data: ls_output TYPE /IPRO/S_OUTPUT.
WRITE sy-uzeit.
lo_document->/ipro/if_output~enable( '1' ).
ls_output = lo_document->/IPRO/IF_OUTPUT~GENERATE( '1' ).
本文來自雲栖社群合作夥伴“汪子熙”,了解相關資訊可以關注微信公衆号"汪子熙"。