• UI-简答的BOL的取值塞值


    不知道从什么时候开始,习惯用BOL MODEL来做一些东西的了。某个项目开始正式接触标准主数据的时候,开始了用MAINTAIN BAPI和BUPA的一些FM。然后在一段时间内是以此类的FM来开发的。BP相关的东西还好,标准的FM就那几个FG,感觉不是很难,而且BP相关的表也不是很多,做起来也很容易上手。后来某个机会学习了UI的东西,接触到了BOL这玩意。。。说实话,当时感觉吊炸天了啊,完全不用记多少FM是要找找RELATIONSHIP就好了。。。而且,常用的也不是很多,所以搞起来也还好。搞这个,简单的话呢是不用记太多东西的但下面几个必须要知道:

     LV_HEADER_GUID LNODE_BTADMINH->GET_PROPERTY_AS_STRING'GUID' )."获取实体的属性值的

     LBTHEADERPARTNERSET ?= LNODE_BTADMINH->GET_RELATED_ENTITY'BTHeaderPartnerSet' )."根据名称找关联实体

    LVALUE_NODE_ST_H ?= LBTPARTNERALL->GET_FIRST). 1..N关系中必须要有的循环等同于LOOP

    LVALUE_NODE_ST_H ?= LBTPARTNERALL->GET_NEXT). 1..N关系中必须要有的循环等同于ENDLOOP

    current->set_property EXPORTING iv_attr_name 'STATUS'  iv_value ‘E0007’ )."给实体的属性塞值

    至于怎么开始怎么结束完全根据自己的程序功能来决定。

    BOL MODEL简例)

     ENTITY NAME       ENTITY               Attribute

    oneorder     (model)
    btorder    (root)      
    btadminh           BTOrderHeader
    btitems            BTHeaderItemsExt
    BTAdminI           BTOrderItemAll
    BTProductI         BTItemProductExt         unit
    BTSchedlinI        BTItemSchedlinExt
    BTSchedlinI        BTSchedlinFirst         quantity
    BTStatusI          BTItemStatusSet
    BTStatus           BTStatusICurrent

    ENTITY从上到下依次是REL来着。。。。简单的一个例子。

    下面是一段获取国家的代码仅供参考,分析上面的东西:

    IF LNODE_BTADMINH IS BOUND.
        LBTHEADERPARTNERSET ?= LNODE_BTADMINH->GET_RELATED_ENTITY'BTHeaderPartnerSet' ).
        IF LBTHEADERPARTNERSET IS BOUND.
          LBTPARTNERALL ?= LBTHEADERPARTNERSET->GET_RELATED_ENTITIESIV_RELATION_NAME 'BTPartnerAll' ).
          IF LBTPARTNERALL IS BOUND.
             LVALUE_NODE_ST_H ?= LBTPARTNERALL->GET_FIRST).
             CLEAR LV_PARTNER_FCT.
             WHILE LVALUE_NODE_ST_H IS BOUND.
                LV_PARTNER_FCT LVALUE_NODE_ST_H->GET_PROPERTY_AS_STRING'PARTNER_FCT' ).
                IF LV_PARTNER_FCT 'ZCUTM'.
                   EXIT.
                ENDIF.
                LVALUE_NODE_ST_H ?= LBTPARTNERALL->GET_NEXT).
             ENDWHILE.
             IF LV_PARTNER_FCT 'ZCUTM' AND LVALUE_NODE_ST_H IS BOUND.
                LBTPARTNERADDRESS_H ?= LVALUE_NODE_ST_H->GET_RELATED_ENTITY'BTPartnerAddress' ).
                CLEAR LWA_ADRC.
                IF LBTPARTNERADDRESS_H IS BOUND.
                   LWA_ADRC-COUNTRY LBTPARTNERADDRESS_H->GET_PROPERTY_AS_STRING'COUNTRY' ).
                ENDIF.
             ENDIF.
          ENDIF.
        ENDIF.
      ENDIF.

  • 相关阅读:
    512M内存机器如何用好Mysql
    linux下查找文件和文件内容
    记“debug alipay”一事
    OFBiz中根据店铺获取产品可用库存的方法
    ubuntu中安装eclipse
    ubuntu中安装jdk
    ubuntu14.04中解压缩window中的zip文件,文件名乱码的解决方法
    apache将请求转发到到tomcat应用
    网站不能访问的原因
    birt报表图标中文显示为框框的解决方法
  • 原文地址:https://www.cnblogs.com/sapSB/p/3312837.html
Copyright © 2020-2023  润新知