在利润中心隐藏ALV网格中的列没有数据。

2020-08-31 11:13发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,伙计们,请允许我输入我的代码。
如果利润中心没有数据,我不想显示在Alv中。
所以我只想在alv中显示,只有利润中心有数据的那些人。
"利润中心
  从zpi_map_plant中选择prctr到表it_map_plant的对应字段中,其中werks = wa_master-werks。
  如果sy-subrc = 0。
  从zpi_map_plant中选择单项,然后放入wa_item_master-prctr中,其中werks = wa_stock-werks。
  其他。
  从zpi_map_plant中选择一个prctr_klinik到wa_item_master-prctr中werks_klinik = wa_stock-werks。
  从zpi_map_plant中选择一个prctr_klinik,然后插入wa_item_master-prctr_klinik,其中werks_klinik = wa_stock-werks。
  万一。

 表格show_alv。
  lo_layout-zebra ='X'。
  lo_layout-colwidth_optimize ='X'。
  lo_layout-info_fieldname ='COLOR'。
  ls_variant-report = sy-repid。
  清除wa_event。
  将" TOP_OF_PAGE"移动到wa_event-name。
  将" TOP_OF_PAGE"移动到wa_event-form。
  APPEND wa_event TO事件。
  grids-coll_top_p ='X'。
  执行fill_structure。
  IF opty EQ'X'。
  通话功能'REUSE_ALV_GRID_DISPLAY'
  出口
  i_callback_program = sy-repid
  it_fieldcat = it_fieldcat
  i_default ='X'
  i_save ='A'
  桌子
  t_outtab = it_item_stock_assigned []。
  ELSEIF选择了EQ'X'。
  通话功能'REUSE_ALV_GRID_DISPLAY'
  出口
  i_callback_program = sy-repid
  it_fieldcat = it_fieldcat
  i_default ='X'
  i_save ='A'
  " i_background_id = d_alv_bg_id
  桌子
  t_outtab = it_item_stock_not_assigned []。
  万一。
 ENDFORM。
 FORM set_pop_custom使用rt_extab类型slis_t_extab。
  刷新rt_extab。
  将PF状态设置为``4000''。
 ENDFORM。
 FORM user_command_change使用p_comm TYPE sy-ucomm
  wa_selfield TYPE slis_selfield。
  案例p_comm。
  当"返回"时。
  离开屏幕0。
  当"关闭"时。
  离开屏幕0。
  当"退出"时。
  离开屏幕0。
  当"&XLS"时。
  " PERFORM save_excel_0030。
  结束。
 ENDFORM。



 

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,伙计们,请允许我输入我的代码。
如果利润中心没有数据,我不想显示在Alv中。
所以我只想在alv中显示,只有利润中心有数据的那些人。
"利润中心
  从zpi_map_plant中选择prctr到表it_map_plant的对应字段中,其中werks = wa_master-werks。
  如果sy-subrc = 0。
  从zpi_map_plant中选择单项,然后放入wa_item_master-prctr中,其中werks = wa_stock-werks。
  其他。
  从zpi_map_plant中选择一个prctr_klinik到wa_item_master-prctr中werks_klinik = wa_stock-werks。
  从zpi_map_plant中选择一个prctr_klinik,然后插入wa_item_master-prctr_klinik,其中werks_klinik = wa_stock-werks。
  万一。

 表格show_alv。
  lo_layout-zebra ='X'。
  lo_layout-colwidth_optimize ='X'。
  lo_layout-info_fieldname ='COLOR'。
  ls_variant-report = sy-repid。
  清除wa_event。
  将" TOP_OF_PAGE"移动到wa_event-name。
  将" TOP_OF_PAGE"移动到wa_event-form。
  APPEND wa_event TO事件。
  grids-coll_top_p ='X'。
  执行fill_structure。
  IF opty EQ'X'。
  通话功能'REUSE_ALV_GRID_DISPLAY'
  出口
  i_callback_program = sy-repid
  it_fieldcat = it_fieldcat
  i_default ='X'
  i_save ='A'
  桌子
  t_outtab = it_item_stock_assigned []。
  ELSEIF选择了EQ'X'。
  通话功能'REUSE_ALV_GRID_DISPLAY'
  出口
  i_callback_program = sy-repid
  it_fieldcat = it_fieldcat
  i_default ='X'
  i_save ='A'
  " i_background_id = d_alv_bg_id
  桌子
  t_outtab = it_item_stock_not_assigned []。
  万一。
 ENDFORM。
 FORM set_pop_custom使用rt_extab类型slis_t_extab。
  刷新rt_extab。
  将PF状态设置为``4000''。
 ENDFORM。
 FORM user_command_change使用p_comm TYPE sy-ucomm
  wa_selfield TYPE slis_selfield。
  案例p_comm。
  当"返回"时。
  离开屏幕0。
  当"关闭"时。
  离开屏幕0。
  当"退出"时。
  离开屏幕0。
  当"&XLS"时。
  " PERFORM save_excel_0030。
  结束。
 ENDFORM。



 
付费偷看设置
发送
5条回答
风早神人
1楼-- · 2020-08-31 11:44

删除利润中心为空的表" it_item_stock_assigned"中的行。

木偶小白
2楼-- · 2020-08-31 11:37

您好,Putri,对于以后的问题,您无需将其用大写字母张贴。 实际上,以小写字母阅读更容易。 只是 问候,Svea

SC_Yao
3楼-- · 2020-08-31 11:54

从数据库表中检索有利润中心的行(在SELECT语句中添加WHERE prctr NE空间)或从内部表中删除那些没有利润中心的行 。

悠然的二货
4楼-- · 2020-08-31 11:58

您好 Putri Mulia

您必须按以下方式替换您的利润中心代码:

"利润中心
 从zpi_map_plant中选择prctr到表的相应字段中it_map_plant
 奇怪的地方= wa_master-werks。

 如果sy-subrc = 0。
   从zpi_map_plant选择一个单项,到wa_item_master-prctr
   位置= wa_stock-werks和prctr NE空间。
 其他。
   从zpi_map_plant选择单个prctr_klinik INTO wa_item_master-prctr
   哪里s_klinik = wa_stock-werks和prctr NE空间。
 ENDIF。

致谢!

xfwsx85
5楼-- · 2020-08-31 11:55

海佬,

我尝试将" CODE AND PRCTR NE SPACE"放置为 Satish Kumar Balasubramanian 推荐。

但仍然没有利润中心的数据出现。

一周热门 更多>