天天看點

用代碼顯示SAP CRM某個訂單維護的長文本

REPORT znote_display_tool.

PARAMETERS: id   TYPE crmd_orderadm_h-object_id OBLIGATORY DEFAULT '1656',

           type TYPE crmd_orderadm_h-process_type OBLIGATORY DEFAULT 'ASOP',

           tid TYPE stxh-tdname OBLIGATORY DEFAULT '0090FA0D8DC21EE3ABCE672A80C1470C'.

TYPES: text_line(cl_crm_odata_oppt_constant=>gc_oppt_notes_textlength)  TYPE c.

DATA: lv_char32   TYPE char32, " CRMD_ORDERADM_H-guid,

     lv_textname TYPE string,

     lv_id       LIKE id,

     lv_guid     TYPE crmd_orderadm_h-guid,

     lt_stxh     TYPE STANDARD TABLE OF stxh,

     ls_stxh     LIKE LINE OF lt_stxh,

     ls_notes    TYPE crmt_odata_oppt_notes.

DATA: ls_thead                TYPE thead.

DATA: lt_text_table           TYPE TABLE OF text_line.

DATA: ls_bupa_addr            TYPE bapiaddr3.

DATA: ls_return               TYPE STANDARD TABLE OF bapiret2.

DATA: lt_lines                TYPE STANDARD TABLE OF tline.

lv_id = id.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

 EXPORTING

   input  = lv_id

 IMPORTING

   output = lv_id.

SELECT SINGLE guid FROM crmd_orderadm_h INTO lv_guid WHERE object_id = id AND process_type = type.

IF sy-subrc <> 0.

 WRITE: / 'No opportunity found' COLOR COL_GROUP.

 RETURN.

ENDIF.

lv_char32 = lv_guid.

CONCATENATE lv_char32 '%' INTO lv_textname.

SELECT * FROM stxh INTO TABLE lt_stxh

                  WHERE  tdobject  EQ   'CRM_ORDERH'

                    AND  tdname    EQ tid.

IF lines( lt_stxh ) <> 1.

 WRITE: / 'Cound not read given text' COLOR COL_NEGATIVE.

READ TABLE lt_stxh INTO ls_stxh INDEX 1.

CALL FUNCTION 'READ_TEXT'

   id       = ls_stxh-tdid

   language = ls_stxh-tdspras

   name     = ls_stxh-tdname

   object   = ls_stxh-tdobject

   header   = ls_thead

 TABLES

   lines    = lt_lines

 EXCEPTIONS

   OTHERS   = 1.

CHECK sy-subrc EQ 0.

CALL FUNCTION 'CONVERT_ITF_TO_STREAM_TEXT'

   itf_text    = lt_lines

   text_stream = lt_text_table.

CONCATENATE LINES OF lt_text_table INTO ls_notes-content RESPECTING BLANKS.

CALL METHOD cl_demo_output=>display_text( ls_notes-content ).

繼續閱讀