zoukankan      html  css  js  c++  java
  • 如何取SO中的特性

    方法一、从VBAP中取得cuobj,然后调用FM:VC_I_GET_CONFIGURATION;

    image

    但是如果数据量大,那么程序效率会有影响;另外一个问题,这种方法只能获取SO现在的特性值,看不到特性修改的状态;

    方法二、

    经过上网查资料和反复验证,终于找到了相关的数据库表了。如下表可以使用:

    IBIN:中间转换表,主要通过INSTANCE转换。

    IBINVALUES:记录所维护的特性清单。

    IBSYMBOL:存储具体特性值的表(类似于AUSP)。

    相关取值代码的片段:

    SELECT VBAP-EBELN, VBAP-POSNR,

    CABN~ATINN"内部特性

    CABN

    ~ATNAM"特性名称

    IBSYMBOL

    ~ATWRT"特性值APPENDING CORRESPONDING FIELDS OF TABLE ITAB_TX

    FROM VBAP

    INNER

    JOIN IBIN ON IBIN~INSTANCE = VBAP~CUOBJ

    INNER

    JOIN IBINVALUES ON IBINVALUES~IN_RECNO = IBIN~IN_RECNO

    INNER

    JOIN IBSYMBOL ON IBSYMBOL~SYMBOL_ID = IBINVALUES~SYMBOL_ID

    INNER

    JOIN CABN ON CABN~ATINN = IBSYMBOL~ATINN

    WHERE VBAP-CUOBJ = cuobj_list.

    通过SE16N看,先从VBAP中得到CUOBJ,然后 = INSTANCE 得到IN_RECNO.

    image

    进入表IBINVALUES根据IN_RECNO = IBIN-IN_RECNO;可以得到SYMBOL_ID.

    image

    再进表IBSYMBOL根据SYMBOL_ID = 上面的,得到ATWRT ;

    这样不必反复调用FM,实际上这个FM也是要去查询相关的数据库表,经过计算后返回特性值。即是减少了大大的数据库查询交互次数,性能当然能得到提升了。

  • 相关阅读:
    2021.4.14
    每日总结
    每日总结
    每日总结
    oracle db组面试 复习数据库
    二叉树根结点到叶节点的最短距离
    minheap 最小堆的实现
    Maximum element in a sorted and rotated array排序和旋转数组中的最大元素
    树和图bfs的一个共同点
    117. Populating Next Right Pointers in Each Node II 不完全二叉树连接右边节点
  • 原文地址:https://www.cnblogs.com/chrisrockdl/p/13156491.html
Copyright © 2011-2022 走看看