Document Builder: 怎样根据document ID使用API获得document的所有数据
Created by Jerry Wang, last modified on Jul 21, 2014
以如下document為例,期望通過(guò)document id 3857獲得該document的所有信息:
?
?
?
?
使用如下report:
?
PARAMETERS: content ?TYPE /ipro/tdocmnt-content DEFAULT 'ZCR_KT' OBLIGATORY,
? ? ? ? ? ? document TYPE /ipro/tdocmnt-docmnt_id OBLIGATORY.
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 cx_root,
? ? ? ? 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( ).
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
? ?EXPORTING
? ? ? input = document
? ?IMPORTING
? ? ? output = document.
TRY.
? ? lo_document ?= lo_doc_factory->open( piv_docmnt_id = document ).
? CATCH cx_root INTO lo_exception.
? ? lv_error_text = lo_exception->get_text( ).
? ? WRITE: /,lv_error_text.
? ? RETURN.
ENDTRY.
DATA: lo_data TYPE REF TO /ipro/if_docb_attribute.
lo_data = lo_document->get_document_data( ).
?
?
輸入content ID和document ID:
?
mo_element_counter is filled:
?
with all 8 entries:
?
?
?
可以和UI上的document summary里的信息比較:
?
?
?
attribute mo_current_varroot 里面包含所有變量的user input value:
?
?
?
?
總結(jié)
以上是生活随笔為你收集整理的Document Builder: 怎样根据document ID使用API获得document的所有数据的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 格兰迪王者怎么开(格与布尔代数)
- 下一篇: cl_ibase_ibintx_buf