2020-08-13 10:54发布
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨,有人可以建议一种大规模关闭采... 显示全部
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
有人可以建议一种大规模关闭采购申请的方法吗?
致谢
测试大量tcode可能无法正常工作。只需将以下代码粘贴到se38中并制作一个新程序即可。
第一个单选按钮关闭。
第二个要删除。
享受。
报告zpr_status_delete。表eban。选择框b的开始屏幕,带有框架标题文本001。选择选项so_banfn用于eban-banfn义务。 SELECT- 选项so_bnfpo适用于eban-bnfpo。参数p_rad2 RADIOBUTTON GROUP rb。参数p_rad1 RADIOBUTTON GROUP rb。选择屏幕结束处b。 在选择屏幕上。 从ban中选择COUNT(*),在ban_fn的so_banfn和bnfpo的so_bnfpo的地方。如果sy-subrc不是初始的。消息'PR无效'类型'E'。 ENDIF。 < br> START-OF-SELECTION。从ban中选择banfn,bnfpo到表@DATA(t_eban)在哪里banfn IN @so_banfn和bnfpo IN @so_bnfpo按banfn,bnfpo进行排序。 DATA bapieband类型表bapieband。数据bapireturn类型表bapireturn。数据s_bapieband类型bapieband。数据返回类型bapiret2。 类型:开始状态_status, banfn类型banfn类型 , bnfpo类型bnfpo,统计类型bapi_msg,状态末尾。 数据:t_status类型标准 _status表, s_status类型_status。 DATA(t_eban_01)= t_eban []。 LOOP AT t_eban INTO DATA(s_eban)。 s_bapieband-preq_item = s_eban- bnfpo。 如果p_rad1不初始。 s_bapieband-delete_ind = abap_true。 DATA(消息)='已删除'。 ELSE。 s_bapieband-closed = abap_true。< br> message ='Closed'。 ENDIF。附加s_bapieband到bapieband。 banfn结束。通话功能'BAPI_REQUISITION_DELETE'导出编号= s_eban -banfn 表格 requisition_items_to_delete = bapieband return = bapireturn。 如果sy-subrc是INITIAL。 通话功能'BAPI_TRANSACTION_COMMIT'导入 return = return。 ENDIF。 在t_eban_01处将数据放入环(s_eban_01)中。banfn = s_eban-banfn。 TRY。 DATA(s_ret)= bapireturn [sy- tabix]。 DATA(ret_message)= s_ret-message。捕获cx_sy_itab_line_not_found。 ENDTRY。 s_status = VALUE#(banfn = s_eban_01-banfn <-> bnfpo = s_eb fpo 统计信息= ret_message)。 附加s_status至t_status。 清除:s_status,s_eban。 ENDLOOP。 免费bapieband。免费bapireturn。 ENDAT。 ENDLOOP。 检查t_status是否是初始状态。 > 尝试。调用方法cl_salv_table =>工厂导入 r_salv_table = DATA(o_alv)更改 t_table = t_status。 捕获cx_salv_msg。 > ENDTRY。 数据:ls_key类型salv_s_layout_key, lo_layout类型参考cl_salv_layout, lo_functions类型参考cl_salv_functions_list, lo_display类型参考cl_salv_display_sets, , lo_col_tab类型参考cl_salv_column_table。 ls_key-report = sy-repid。 *->获取列对象 lo_cols_tab = o_alv-> get_columns()。< br> *->设置列优化。 lo_cols_tab-> set_optimize(abap_true)。 *->获取默认工具栏图标 lo_functions = o_alv-> get_functions()。< br> lo_functions-> set_all(abap_true)。 *->获取布局对象 lo_layout = o_alv-> get_layout()。 < br> *->允许保存布局 lo_layout-> set_save_restriction(if_salv_c_layout => restrict_none)。 lo_layout-> set_key(ls_key)。 *->允许默认布局检查框 lo_layout-> set_default(abap_true)。 *->显示zbera模式 lo_display = o_alv-> get_display_settings()。 lo_display-> set_striped_pattern('X')。 o_alv-> display()。
最多设置5个标签!
测试大量tcode可能无法正常工作。只需将以下代码粘贴到se38中并制作一个新程序即可。
第一个单选按钮关闭。
第二个要删除。
享受。
报告zpr_status_delete。
表eban。选择框b的开始屏幕,带有框架标题文本001。
选择选项so_banfn用于eban-banfn义务。
SELECT- 选项so_bnfpo适用于eban-bnfpo。
参数p_rad2 RADIOBUTTON GROUP rb。
参数p_rad1 RADIOBUTTON GROUP rb。
选择屏幕结束处b。
在选择屏幕上。
从ban中选择COUNT(*),在ban_fn的so_banfn和bnfpo的so_bnfpo的地方。
如果sy-subrc不是初始的。
消息'PR无效'类型'E'。
ENDIF。
< br> START-OF-SELECTION。
从ban中选择banfn,bnfpo到表@DATA(t_eban)
在哪里banfn IN @so_banfn和bnfpo IN @so_bnfpo按banfn,bnfpo进行排序。
DATA bapieband类型表bapieband。
数据bapireturn类型表bapireturn。
数据s_bapieband类型bapieband。
数据返回类型bapiret2。
类型:开始状态_status,
banfn类型banfn类型 ,
bnfpo类型bnfpo,
统计类型bapi_msg,
状态末尾。
数据:t_status类型标准 _status表,
s_status类型_status。
DATA(t_eban_01)= t_eban []。
LOOP AT t_eban INTO DATA(s_eban)。
s_bapieband-preq_item = s_eban- bnfpo。
如果p_rad1不初始。
s_bapieband-delete_ind = abap_true。
DATA(消息)='已删除'。
ELSE。
s_bapieband-closed = abap_true。< br> message ='Closed'。
ENDIF。
附加s_bapieband到bapieband。
banfn结束。
通话功能'BAPI_REQUISITION_DELETE'
导出
编号= s_eban -banfn
表格
requisition_items_to_delete = bapieband
return = bapireturn。
如果sy-subrc是INITIAL。
通话功能'BAPI_TRANSACTION_COMMIT'
导入
return = return。
ENDIF。
在t_eban_01处将数据放入环(s_eban_01)中。banfn = s_eban-banfn。
TRY。
DATA(s_ret)= bapireturn [sy- tabix]。
DATA(ret_message)= s_ret-message。
捕获cx_sy_itab_line_not_found。
ENDTRY。
s_status = VALUE#(banfn = s_eban_01-banfn <-> bnfpo = s_eb fpo
统计信息= ret_message)。
附加s_status至t_status。 清除:s_status,s_eban。
ENDLOOP。
免费bapieband。
免费bapireturn。
ENDAT。
ENDLOOP。
检查t_status是否是初始状态。
>
尝试。
调用方法cl_salv_table =>工厂
导入
r_salv_table = DATA(o_alv)
更改
t_table = t_status。
捕获cx_salv_msg。
> ENDTRY。
数据:ls_key类型salv_s_layout_key,
lo_layout类型参考cl_salv_layout,
lo_functions类型参考cl_salv_functions_list,
lo_display类型参考cl_salv_display_sets, ,
lo_col_tab类型参考cl_salv_column_table。
ls_key-report = sy-repid。
*->获取列对象
lo_cols_tab = o_alv-> get_columns()。< br>
*->设置列优化。
lo_cols_tab-> set_optimize(abap_true)。
*->获取默认工具栏图标
lo_functions = o_alv-> get_functions()。< br> lo_functions-> set_all(abap_true)。
*->获取布局对象
lo_layout = o_alv-> get_layout()。
< br> *->允许保存布局
lo_layout-> set_save_restriction(if_salv_c_layout => restrict_none)。
lo_layout-> set_key(ls_key)。
*->允许默认布局检查框
lo_layout-> set_default(abap_true)。
*->显示zbera模式
lo_display = o_alv-> get_display_settings()。
lo_display-> set_striped_pattern('X')。
o_alv-> display()。
一周热门 更多>