用代碼顯示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.
  RETURN.
ENDIF.

READ TABLE lt_stxh INTO ls_stxh INDEX 1.

CALL FUNCTION 'READ_TEXT'
  EXPORTING
    id       = ls_stxh-tdid
    language = ls_stxh-tdspras
    name     = ls_stxh-tdname
    object   = ls_stxh-tdobject
  IMPORTING
    header   = ls_thead
  TABLES
    lines    = lt_lines
  EXCEPTIONS
    OTHERS   = 1.
CHECK sy-subrc EQ 0.
CALL FUNCTION 'CONVERT_ITF_TO_STREAM_TEXT'
  TABLES
    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 ).
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章