【转】BDC批处理使用方法

2023-10-08 01:20
文章标签 使用 方法 批处理 bdc

本文主要是介绍【转】BDC批处理使用方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转自:http://fenginfo.com/45.html


一.说明

SAP系统有多种批处理工具,例如LSMW、SCAT、BDC等,各有侧重点,本文专门介绍BDC的应用操作。BDC是Batch Data Conversion的简称,对应的事物码是SHDB,是一款轻量化的批处理工具。

运用SHDB,一般通过对业务操作(指定事物码)进行录像生成脚本,如果重复次数少,可以手工修改脚本中字段的值再次执行;对于大量业务操作,则采用导出脚本模板,加工成批量执行脚本后,再导入执行,加工脚本过程一般采用Office的邮件合并方式(参见《利用Office 2007 邮件合并生成批处理脚本》)。

SHDB不能进入后台录像,将后台配置转换成事物码或SM30、SM34维护参见《后台配置转至前台操作》、《以维护视图或视图簇的方式进行配置》。

LSMW操作说明由多篇文档组成,参见《LSMW批处理使用方法(01)_总述及操作界面说明》(共13个文档)。

二.操作

本文讲解SHDB操作,示例背景是对公司代码0001逐月打开物料帐期,公司代码0001是ERP系统的示例公司代码(一般不使用),初始帐期1998年3月,在此需将帐期从1998年4月逐月开帐期至1999年12月,共计21个重复操作。

操作流程是在SHDB环境中创建一个记录,用T-CODE:MMPV打开1998年4月的帐期,并进行录屏生成脚本。导出脚本成为一个模板,结合Office的邮件并合生成20个执行脚本(1998年5月至1999年12月),再将执行脚本导入并执行。关于MMPV更详细的说明参见《设定物料凭证结算期间(Period)》。

在前台输入事物码SHDB进入,如图 1 所示,下面列表显示已有的记录(Recording)。点击“新建记录”按钮,弹出对话框如图 2 所示。

图 1 SHDB初始界面

图 2显示创建记录(Recording)参数设置对话框,其中“记录”栏填写个新记录的名称,“事务代码”栏填写进行录像的事物码;由于T-CODE:MMPV涉及多屏操作,所以“提交后继续”选项打上选择标志。以上维护完全,点击“开始记录”按钮。

图 2 创建记录对话框

         图 3、图 4、图 5是MMPV录像的界面,其中图 3输入调整公司结算的公司代码和期间,点击运行键;系统给出警告,如图 4 所示,在此不必进行编辑修改,在键盘上按回车键继续;执行成功,显示执行结果如图 5 所示,在此连续点击退出键(【转】BDC批处理使用方法 - 菲凡~ - SAP之旅~)退出MMPV操作界面。

在录屏过程中,谨记不要有多余的键盘、鼠标操作,如出现列表滚动条界面,要用键盘上的PageUp、PageDown键进行翻页。

图 3 MMPV录屏之一

图 4  MMPV录屏之二

图 5 MMPV录屏之三

MMPV录像完毕,返回SHDB的界面,可以看到记录的脚本如图 6 所示,里面记录了三个屏幕的信息,在这里注意两个字段I_LFMON和I_LFGJA分别是月份、年份字段,字段宽度分别为2、4字节。而字段I_VBUKR的值0001就是公司代码。



图 6 录屏脚本


         此时记录尚未保存,但可以通过修改字段值执行新的操作,本例就可以在图 6的界面修改年份、月份字段(如1998年5月)或者其它公司代码,再点击“处理”按钮重新执行T-CODE:MMPV。当然,这适用于少量重复执行。


         对于大量的数据,一般采用导出模板脚本,生成批量脚本,再重新导入加以完成。导出请点击导出键(【转】BDC批处理使用方法 - 菲凡~ - SAP之旅~),将录屏的脚本生成文本文件存到本地计算机上,如图 7 所示(本例导出文件名为ZMMPV.txt)。



图 7 生成的脚本文档

  生成批量文件一般采用Office 邮件合并的方法,最终生成一个批量脚本文件(纯文本格式)。由于公司代码0001开了1998年4月的物料帐期,所以后续要做1998年5月,本例要做的批量脚本是1998年5月至1999年12月共20个重复执行脚本,具体方法参见《利用Office 2007 邮件合并生成批处理脚本》,最终生成一个包含20次执行的MMPV_BATH.txt脚本文件。


         点击导入键(【转】BDC批处理使用方法 - 菲凡~ - SAP之旅~)加载MMPV_BATH.txt文件,覆盖原有数据,界面如图 8 所示,可见第一个执行脚本的月、年份已是5和1998。由于是20个执行脚本,所以行数就变成13的20倍(显示261是后续多加一个空行)。



图 8 加载邮件合并后的文档


         点击“处理”按钮,弹出对话框如图 9 所示,要求选择执行脚本的方式,处理模式有前台(A 显示所有屏幕)、后台(N 后台的处理)等多种方式,本例采用后台方式,选择后如图 10 所示,点击确认按钮执行。



图 9 处理记录对话框_处理模式选择



图 10 处理记录对话框_选择确定


         由于是后台执行,不能见到每步的操作屏幕。全部执行完毕,给出执行结果记录如图 11 所示。



图 11 处理记录


         至此,公司代码0001通过21次业务操作(1次录像、20次执行脚本),将物料帐期开至1999年12月。以上操作过程中,创建的记录尚未保存,如需为以后重复应用,可进行保存,在记录概览界面可见到保存的条目如图 12所示。



图 12 SHDB维护界面(含新建记录)

这篇关于【转】BDC批处理使用方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/161746

相关文章

Spring LDAP目录服务的使用示例

《SpringLDAP目录服务的使用示例》本文主要介绍了SpringLDAP目录服务的使用示例... 目录引言一、Spring LDAP基础二、LdapTemplate详解三、LDAP对象映射四、基本LDAP操作4.1 查询操作4.2 添加操作4.3 修改操作4.4 删除操作五、认证与授权六、高级特性与最佳

Qt spdlog日志模块的使用详解

《Qtspdlog日志模块的使用详解》在Qt应用程序开发中,良好的日志系统至关重要,本文将介绍如何使用spdlog1.5.0创建满足以下要求的日志系统,感兴趣的朋友一起看看吧... 目录版本摘要例子logmanager.cpp文件main.cpp文件版本spdlog版本:1.5.0采用1.5.0版本主要

Java中使用Hutool进行AES加密解密的方法举例

《Java中使用Hutool进行AES加密解密的方法举例》AES是一种对称加密,所谓对称加密就是加密与解密使用的秘钥是一个,下面:本文主要介绍Java中使用Hutool进行AES加密解密的相关资料... 目录前言一、Hutool简介与引入1.1 Hutool简介1.2 引入Hutool二、AES加密解密基础

使用Python将JSON,XML和YAML数据写入Excel文件

《使用Python将JSON,XML和YAML数据写入Excel文件》JSON、XML和YAML作为主流结构化数据格式,因其层次化表达能力和跨平台兼容性,已成为系统间数据交换的通用载体,本文将介绍如何... 目录如何使用python写入数据到Excel工作表用Python导入jsON数据到Excel工作表用

Pytest多环境切换的常见方法介绍

《Pytest多环境切换的常见方法介绍》Pytest作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进... 目录1.pytest-base-url2.hooks函数3.yml和fixture结论你是否也遇到过

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

鸿蒙中@State的原理使用详解(HarmonyOS 5)

《鸿蒙中@State的原理使用详解(HarmonyOS5)》@State是HarmonyOSArkTS框架中用于管理组件状态的核心装饰器,其核心作用是实现数据驱动UI的响应式编程模式,本文给大家介绍... 目录一、@State在鸿蒙中是做什么的?二、@Spythontate的基本原理1. 依赖关系的收集2.

Python基础语法中defaultdict的使用小结

《Python基础语法中defaultdict的使用小结》Python的defaultdict是collections模块中提供的一种特殊的字典类型,它与普通的字典(dict)有着相似的功能,本文主要... 目录示例1示例2python的defaultdict是collections模块中提供的一种特殊的字

C++ Sort函数使用场景分析

《C++Sort函数使用场景分析》sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变,如果某些场景需要保持相同元素间的相对顺序,可使... 目录C++ Sort函数详解一、sort函数调用的两种方式二、sort函数使用场景三、sort函数排序

Redis实现延迟任务的三种方法详解

《Redis实现延迟任务的三种方法详解》延迟任务(DelayedTask)是指在未来的某个时间点,执行相应的任务,本文为大家整理了三种常见的实现方法,感兴趣的小伙伴可以参考一下... 目录1.前言2.Redis如何实现延迟任务3.代码实现3.1. 过期键通知事件实现3.2. 使用ZSet实现延迟任务3.3