SAP CRM Text customizing 的读取逻辑

简介: SAP CRM Text customizing 的读取逻辑

代码:

*&---------------------------------------------------------------------*
*& Report  ZNOTE_GET_CUSTOMIZING
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT znote_get_customizing.
PARAMETERS: type TYPE crmc_proc_type-process_type OBLIGATORY DEFAULT 'OPPT'.
                                                            "OPP00001
DATA: lv_text_procedure     TYPE comt_text_det_procedure.
DATA: lt_text               TYPE STANDARD TABLE OF comc_text_pd.
DATA: ls_text               TYPE comc_text_pd.
DATA: lt_text_object        TYPE STANDARD TABLE OF ttxit,
      lv_start TYPE i,
      lv_end TYPE i.
CONSTANTS: BEGIN OF ct_supported_note,
             edit TYPE comc_text_pd-changeable VALUE space,
             log  TYPE comc_text_pd-changeable VALUE 'P',
           END OF ct_supported_note.
GET RUN TIME FIELD lv_start.
SELECT SINGLE text_procedure INTO lv_text_procedure FROM crmc_proc_type
    WHERE process_type = type
      AND object_type = cl_crm_odata_oppt_constant=>gc_oppt_bus_object.
CHECK sy-subrc EQ 0.
SELECT object textprocedure textid seqno changeable INTO CORRESPONDING FIELDS OF TABLE lt_text
  FROM comc_text_pd
  WHERE object        = cl_crm_odata_oppt_constant=>gc_oppt_notes_tdobject
    AND textprocedure = lv_text_procedure
    AND ( changeable = ct_supported_note-edit OR changeable = ct_supported_note-log ).
CHECK sy-subrc EQ 0.
SORT lt_text BY seqno.
IF lt_text IS NOT INITIAL.
  SELECT tdid tdtext FROM ttxit INTO CORRESPONDING FIELDS OF TABLE lt_text_object
    FOR ALL ENTRIES IN lt_text WHERE tdid = lt_text-textid AND tdspras = sy-langu
     AND tdobject  = cl_crm_odata_oppt_constant=>gc_oppt_notes_tdobject.
ENDIF.
GET RUN TIME FIELD lv_end.
lv_end = lv_end - lv_start.
WRITE: / 'time:', lv_end.

这段代码是在 SAP CRM 系统中开发的 ABAP 代码。该代码的主要目的是从“COMC_TEXT_PD”和“TTXIT”两个 SAP CRM 系统表中获取与指定 process_type 和 tdobject 相关的所有文本。这段代码包括以下主要步骤:


  1. 使用“PARAMETERS”语句定义一个名为“type”的参数,其数据类型为“crmc_proc_type-process_type”,默认值为“OPPT”,必须输入。
  2. 使用“DATA”语句定义一些内部表和变量。
  3. 使用“CONSTANTS”语句定义一个常量“ct_supported_note”,它包含两个字段,“edit”和“log”,其中“edit”字段的值为“space”,“log”字段的值为“P”。
  4. 使用“GET RUN TIME FIELD”语句获取代码的开始时间。
  5. 使用“SELECT SINGLE”语句从“CRMC_PROC_TYPE”表中选择一个单一的“text_procedure”字段值,并将其存储在名为“lv_text_procedure”的变量中。
  6. 使用“CHECK”语句检查最后一次 SELECT 语句的结果代码(sy-subrc)是否为0,如果不是,则表示未找到与指定条件相匹配的记录,代码将终止。
  7. 使用“SELECT”语句从“COMC_TEXT_PD”表中选择所有相关记录,并将结果存储在名为“lt_text”的内部表中。
  8. 再次使用“CHECK”语句检查结果代码(sy-subrc)是否为0,如果不是,则表示未找到任何匹配的记录,代码将终止。
  9. 使用“SORT”语句按“seqno”字段对内部表“lt_text”进行排序。
  10. 如果内部表“lt_text”不为空,则使用“SELECT”语句从“TTXIT”表中选择与“tdid”和“tdspras”字段相匹配的所有记录,并将结果存储在名为“lt_text_object”的内部表中。
  11. 使用“GET RUN TIME FIELD”语句获取代码的结束时间,并计算从开始时间到结束时间的运行时间。
  12. 最后使用“WRITE”语句输出代码的运行时间。


在简单的概括中,这段代码的目的是根据给定的 process_type 和 tdobject,从 SAP CRM 系统的“COMC_TEXT_PD”和“TTXIT”表中检索相关文本,并计算代码的运行时间。


相关文章
|
28天前
|
人工智能 搜索推荐 Serverless
使用金庸的著作,来测试阿里通义千问最新开放的长文档处理功能
使用金庸的著作,来测试阿里通义千问最新开放的长文档处理功能
66 7
使用金庸的著作,来测试阿里通义千问最新开放的长文档处理功能
|
24天前
|
存储
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
使用 ABAP 代码打印出 SAP CRM 系统里所有维护了 Sales Area 的 business partner id
21 0
|
28天前
|
数据库
SAP CRM产品主数据无法根据产品描述字段进行搜索的原因
SAP CRM产品主数据无法根据产品描述字段进行搜索的原因
17 5
|
28天前
|
Web App开发 开发者 存储
介绍一个 webp 格式转 png 格式的软件:XNConvert
介绍一个 webp 格式转 png 格式的软件:XNConvert
28 6
介绍一个 webp 格式转 png 格式的软件:XNConvert
|
28天前
什么是 SAP ABAP 里的 Subscreen
什么是 SAP ABAP 里的 Subscreen
16 1
什么是 SAP ABAP 里的 Subscreen
|
2月前
|
中间件
什么是 SAP CRM 系统里的 Initial Download
什么是 SAP CRM 系统里的 Initial Download
24 0
|
2月前
|
中间件
什么是 SAP CRM Initial Download
什么是 SAP CRM Initial Download
20 0
|
2月前
|
存储 数据管理 数据处理
SAP CRM 里 Attachment 搜索的实现逻辑介绍
SAP CRM 里 Attachment 搜索的实现逻辑介绍
21 0
|
3月前
|
存储 数据库 容器
深入介绍 SAP CRM 附件存储的底层实现机制
深入介绍 SAP CRM 附件存储的底层实现机制
30 0
|
3月前
|
JavaScript 前端开发 数据库
如何在 SAP CRM 里通过 navigation framework 跳转到 ABAP Webdynpro 页面
如何在 SAP CRM 里通过 navigation framework 跳转到 ABAP Webdynpro 页面
21 0