关于sap:SAP-BTP-平台-ABAP-编程环境如何维护自定义-Unit-Of-Measure-数据库表-T006

103次阅读

共计 1834 个字符,预计需要花费 5 分钟才能阅读完成。

在 ABAP On-Premises 零碎下,咱们能够轻易在 SAPGUI 里对 Unit of Measure 数据库表即 T006 进行保护:
[图片]

ABAP 数据库表 T006 是 SAP 零碎中的一个重要数据表,它用于存储与度量单位相干的信息。在 SAP 零碎中,度量单位用于示意各种物料、服务和计量单位。这些信息对于物料治理、打算、制作、销售、洽购等业务流程至关重要。T006 表用于存储所有度量单位和相干的形容、转换因子等信息。依据要求,以下是对于 T006 数据库表的具体解释,以帮忙您更好地了解这个表的作用。

  1. 表的组成:T006 表蕴含多个字段,用于存储度量单位的不同属性。以下是一些次要字段的简要阐明:

    • MANDT:客户端。这是一个 3 位数字,用于惟一标识 SAP 零碎中的客户端。
    • MSEHI:度量单位的外部示意模式。这是一个 3 位字符,用于惟一标识度量单位。
    • MSEH3:度量单位的内部示意模式。这是一个 3 位字符,用于在零碎中显示度量单位。
    • MSEHL:度量单位的形容。这是一个长度可达 20 个字符的文本,用于形容度量单位的用处和含意。
    • MSEH6:度量单位与根本单位的转换因子。这是一个浮点数,用于示意从度量单位到根本单位的转换因子。
    • MSEH5:度量单位与其余度量单位的转换因子。这是一个浮点数,用于示意从度量单位到其余度量单位的转换因子。
    • KNUMF:度量单位与其余度量单位的比例关系。这是一个浮点数,用于示意度量单位之间的比例关系。
  2. 数据保护:T006 表中的数据由 SAP 零碎进行保护。当您在 SAP 零碎中创立新的度量单位时,零碎会主动将相干信息增加到 T006 表中。同样,当您更新或删除现有度量单位时,零碎也会自动更新 T006 表中的数据。这确保了 T006 表始终保持最新的度量单位信息。
  3. 与其余表的关联:T006 表与其余 SAP 数据库表之间存在关联。例如,物料主数据表 MARA 中的根本计量单位字段 MEINS 援用了 T006 表中的度量单位。这确保了物料主数据表中的度量单位与 T006 表中的度量单位保持一致。此外,在洽购、销售、制作等业务流程中,度量单位信息还与其余要害数据库表(如 EKPO、VBAP、AFPO 等)相关联。

然而在 SAP BTP ABAP 编程环境里,如何实现相似的工作呢?

许多 Business 应用程序在其业务流程中应用测量单位。

为了标准化这些流程,须要对单位和相干维度进行集中保护。

除此之外,还存在不同单位之间转换的业务需要。

咱们提供通用标准化单位、尺寸和 ISO 代码的子集,用作预交付内容。此外,还须要在客户应用程序中定义客户领有的单位和尺寸。

应用 API CL_UOM_MAINTENANCE 对单位进行增删改查。

创立新单位的一个例子:

CLASS zcl_uom_unit_create_test DEFINITION 
  PUBLIC 
  FINAL 
  CREATE PUBLIC . 
 
  PUBLIC SECTION. 
    INTERFACES if_oo_adt_classrun. 
  PROTECTED SECTION. 
  PRIVATE SECTION. 
ENDCLASS. 
 
CLASS zcl_uom_unit_create_test IMPLEMENTATION. 
  METHOD if_oo_adt_classrun~main. 
    DATA: lo_uom  TYPE REF TO cl_uom_maintenance, 
          ls_unit TYPE cl_uom_maintenance=>ty_uom_cre_ts. 
 
    cl_uom_maintenance=>get_instance( 
    RECEIVING 
      ro_uom = lo_uom ). 
 
    ls_unit-commercial = 'ZYX'. 
    ls_unit-technical  = 'ZYX'. 
    ls_unit-denominator = '1'. 
    ls_unit-numerator = '1'. 
    ls_unit-dec_disp = '3'. 
    ls_unit-long_text = 'Create Unit'. 
    TRY. 
        lo_uom->create( EXPORTING unit_dimid  = 'AAAADL' 
                                  unit_int    = 'ZYX' 
                                  unit_cre_ts = ls_unit 
                        IMPORTING error       = DATA(error) 
                         ). 
      CATCH cx_uom_error INTO DATA(lo_error). 
        out->write(| Exception raised |). 
        out->write(lo_error->get_text() ). 
    ENDTRY. 
 
  ENDMETHOD. 
ENDCLASS.

正文完
 0