SAP document builder一些常见问题的解答

jerrywangsap 2020-02-02

云栖社区 review Image ads type Workflow CRM ERP 文档系统

如果要想把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' ).

本文来自云栖社区合作伙伴“汪子熙”,了解相关信息可以关注微信公众号"汪子熙"。

登录 后评论
下一篇
云栖号资讯小编
966人浏览
2020-06-29
相关推荐
How to develop BADI (abap)
638人浏览
2015-04-25 10:58:43
SAP云平台的Document Service
965人浏览
2018-05-06 12:15:52
0
0
0
444