zl程序教程

您现在的位置是:首页 >  大数据

当前栏目

Document Builder: 怎样根据document ID使用API获得document的所有数据

数据API 所有 怎样 ID 根据 获得 Document
2023-09-14 09:03:03 时间

Created by Jerry Wang, last modified on Jul 21, 2014

以如下document为例,期望通过document id 3857获得该document的所有信息:

 

clipboard1

 

 

 

使用如下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:

clipboard2

 

mo_element_counter is filled:

clipboard3

 

with all 8 entries:

 

clipboard4

 

 

可以和UI上的document summary里的信息比较:

 

clipboard5

 

 

attribute mo_current_varroot 里面包含所有变量的user input value:

 

clipboard6

 

 

 

clipboard7