查看指定 SAP CRM One Order 的 note 数据

简介: 查看指定 SAP CRM One Order 的 note 数据

源代码:

REPORT znote_browse_tool.
PARAMETERS: id   TYPE crmd_orderadm_h-object_id OBLIGATORY DEFAULT '25949',
            type TYPE crmd_orderadm_h-process_type OBLIGATORY DEFAULT 'CX01'.
TYPES: text_line(cl_crm_odata_oppt_constant=>gc_oppt_notes_textlength)  TYPE c.
TYPES: BEGIN OF ty_text_detail,
         tdid    TYPE stxh-tdid,
         "tdobject type stxh-tdobject, "CRM_ORDERH
         tdname TYPE stxh-tdname,
         tdspras TYPE stxh-tdspras,
         tdfuser TYPE stxh-tdfuser,
         tdfdate TYPE stxh-tdfdate,
         tdftime TYPE stxh-tdftime,
         tdluser TYPE stxh-tdluser,
         tdldate TYPE stxh-tdldate,
         tdltime TYPE stxh-tdltime,
         tdtext  TYPE ttxit-tdtext,
         content TYPE string,
       END OF ty_text_detail.
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.
DATA: et_notes TYPE crmt_odata_oppt_notest.
DATA: ls_text_detail TYPE ty_text_detail,
      lt_text_detail TYPE STANDARD TABLE OF ty_text_detail.
DATA: lt_text_object TYPE STANDARD TABLE OF ttxit,
      ls_text_object LIKE LINE OF lt_text_object,
      lv_xml         TYPE string.
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    LIKE lv_textname.
SELECT tdid tdtext FROM ttxit INTO CORRESPONDING FIELDS OF TABLE lt_text_object
   WHERE tdspras = sy-langu
     AND tdobject  = cl_crm_odata_oppt_constant=>gc_oppt_notes_tdobject.
LOOP AT lt_stxh INTO ls_stxh.
  ls_notes-header_guid = lv_char32.
  MOVE-CORRESPONDING ls_stxh TO ls_text_detail.
  READ TABLE lt_text_object INTO ls_text_object WITH KEY tdid = ls_stxh-tdid.
  IF sy-subrc = 0.
    ls_text_detail-tdtext = ls_text_object-tdtext.
  ENDIF.
  CALL FUNCTION 'BAPI_USER_GET_DETAIL'
    EXPORTING
      username = ls_stxh-tdfuser
    IMPORTING
      address  = ls_bupa_addr
    TABLES
      return   = ls_return.
  ls_notes-creator = ls_bupa_addr-fullname.
  CONVERT DATE ls_stxh-tdfdate TIME ls_stxh-tdftime INTO TIME STAMP ls_notes-created_at TIME ZONE 'UTC'.
  CLEAR lt_lines.
  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.
  ls_text_detail-content = ls_notes-content.
  APPEND ls_text_detail TO lt_text_detail.
  CLEAR: ls_notes, ls_stxh, lt_lines, lt_text_table, ls_thead, ls_bupa_addr, ls_text_detail.
ENDLOOP.
CALL TRANSFORMATION id SOURCE data = lt_text_detail RESULT XML lv_xml.
CALL METHOD cl_demo_output=>display_xml( lv_xml ).

使用方法:


指定任务 id 和任务类型:

5d4c6812c8535adbb050f4ddf2e1bce8.png

输出结果:

5d4c6812c8535adbb050f4ddf2e1bce8.png

目录
相关文章
|
13天前
|
人工智能 搜索推荐 Serverless
使用金庸的著作,来测试阿里通义千问最新开放的长文档处理功能
使用金庸的著作,来测试阿里通义千问最新开放的长文档处理功能
31 7
使用金庸的著作,来测试阿里通义千问最新开放的长文档处理功能
|
1月前
|
中间件
什么是 SAP CRM 系统里的 Initial Download
什么是 SAP CRM 系统里的 Initial Download
22 0
|
9天前
|
存储
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
19 0
|
13天前
|
数据库
SAP CRM产品主数据无法根据产品描述字段进行搜索的原因
SAP CRM产品主数据无法根据产品描述字段进行搜索的原因
15 5
|
13天前
|
Web App开发 开发者 存储
介绍一个 webp 格式转 png 格式的软件:XNConvert
介绍一个 webp 格式转 png 格式的软件:XNConvert
19 6
介绍一个 webp 格式转 png 格式的软件:XNConvert
|
13天前
什么是 SAP ABAP 里的 Subscreen
什么是 SAP ABAP 里的 Subscreen
12 1
什么是 SAP ABAP 里的 Subscreen
|
1月前
|
中间件
如何在 SAP CRM 系统调试 Product Initial Download
如何在 SAP CRM 系统调试 Product Initial Download
14 0
|
1月前
|
前端开发 搜索推荐 开发者
SAP UI5 sap.m.Column 控件的 minScreenWidth 属性介绍
SAP UI5 sap.m.Column 控件的 minScreenWidth 属性介绍
27 0
|
1月前
|
JavaScript 前端开发 开发者
SAP UI5 控件 sap.m.ListBase 的 inset 属性的作用介绍
SAP UI5 控件 sap.m.ListBase 的 inset 属性的作用介绍
13 0
|
1月前
|
Web App开发 数据采集 前端开发
纯技术讨论:如何让 SAP UI5 应用无法被别人在浏览器里调试 - 这种做法不推荐试读版
纯技术讨论:如何让 SAP UI5 应用无法被别人在浏览器里调试 - 这种做法不推荐试读版
15 0