GS03根据集名称获取成本要素

入参根据集名称和成本控制范围返回成本要素的集合,结合两个函数获取;

涉及集的表、T-DOCE、函数组、函数

Tcode:
GS01  Create set
GS02  Change Set
GS03  Display Set
GS04  Delete set
GS07  Exports sets
GS08  Import sets
GS09  Copy sets from client


表:
SETCLS
SETCLST
SETHEADER
SETHEADERT
SETLEAF
SETNODE
SETLINET

函数组:
GSAC
GSGF

函数:
G_SET_ENCRYPT_SETID
G_SET_GET_ALL_VALUES
 

 

 

 FUNCTION zlyfm_hierarchy_tables_read.
*"----------------------------------------------------------------------
*"*"局部接口:
*"  IMPORTING
*"     REFERENCE(I_SETNAME) TYPE  SETNAMENEW
*"     REFERENCE(I_KOKRS) TYPE  SETHIER-KOKRS
*"  EXPORTING
*"     REFERENCE(E_INFO) TYPE  GRPHINFO
*"     REFERENCE(E_SUBRC) TYPE  SY-SUBRC
*"  TABLES
*"      T_ACCOUNT STRUCTURE  ZLY_S_COSTELEMENTS
*"  CHANGING
*"     REFERENCE(I_OVERWRITE) TYPE  SY-DATAR DEFAULT 'X'
*"----------------------------------------------------------------------
  DATA lt_nodes   TYPE gseth_node_tab.
  DATA lt_values  TYPE gseth_val_tab.
  DATA ls_values  TYPE grpvalues.
  DATA lv_setid   TYPE sethier-setid.
  DATA ls_setinfo TYPE setinfo.

  CALL FUNCTION 'G_SET_GET_ID_FROM_NAME'
    EXPORTING
      shortname                = i_setname
    IMPORTING
      new_setid                = lv_setid
      set_info                 = ls_setinfo
    EXCEPTIONS
      no_set_found             = 1
      no_set_picked_from_popup = 2
      wrong_class              = 3
      wrong_subclass           = 4
      table_field_not_found    = 5
      fields_dont_match        = 6
      set_is_empty             = 7
      formula_in_set           = 8
      set_is_dynamic           = 9
      OTHERS                   = 10.

  e_subrc = sy-subrc.

  CHECK e_subrc IS INITIAL.

  CALL FUNCTION 'K_HIERARCHY_TABLES_READ'
    EXPORTING
      e_class                     = ls_setinfo-setclass
      e_setid                     = lv_setid
      e_kokrs                     = i_kokrs
    TABLES
      t_nodes                     = lt_nodes
      t_values                    = lt_values
    CHANGING
      c_info                      = e_info
      c_overwrite                 = i_overwrite
    EXCEPTIONS
      no_controlling_area         = 1
      no_chart_of_account         = 2
      different_controlling_areas = 3
      different_chart_of_accounts = 4
      set_not_found               = 5
      illegal_field_replacement   = 6
      illegal_table_replacement   = 7
      fm_raise                    = 8
      convert_error               = 9
      no_overwrite_standard_hier  = 10
      no_bukrs_for_kokrs          = 11
      OTHERS                      = 12.

  CHECK e_subrc IS INITIAL.

  DELETE lt_values WHERE vfrom IS INITIAL AND vto IS INITIAL.

*返回集名中起始和截止科目
  LOOP AT lt_values INTO ls_values.
    t_account-setname = i_setname.
    t_account-valsign = 'I'.
    t_account-valoption = 'BT'.
    IF ls_values-vto IS INITIAL.
      t_account-valto = ls_values-vfrom.
    ELSE.
      t_account-valfrom = ls_values-vfrom.
      t_account-valto = ls_values-vto.
    ENDIF.
    APPEND t_account .CLEAR:t_account.
  ENDLOOP.
ENDFUNCTION.

其次 函数组KKHI下面很多函数非常有用,其中K_HIERARCHY_TABLES_READ也可以读取成本中心组,利润中心组等,GSGF也同样可以达到功效;

另外:该函数BAPI_COSTCENTERGROUP_GETLIST 的函数组中也有许多相关获取成本中心组的方法 Object BUS1112 (Cost Center Group) - Method GetList

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值