本章开始学习一些SAP中的豆知识(小技巧)。
- MM50 品目View扩张
说是批量扩张物料主数据,其实就是可以一次性选出来扩张对象,然后还是要一条条更新的
- XK05 仕入先保留/保留解除 / XK06 仕入先消除 的区别和应用场景
- MM06 / MM16 品目消除Flg
既可以即时删,也可以定个日期计划到时候自动删
- SAP中查询Table以及数据的T-code
- SE11
- SE15
- SE16
- SE16N
- SE16H
- DB02
1,MM50 品目View扩张
SAP Menu > Logistics > 在库/购买管理 > 品目Master > 其他
其实这里面的MMBE,MMPV,MMRV,MMSC,MM60 都是挺常用的T-code
上面可以输入一些条件,其中最为重要的就是这个 更新Status 栏位了。
- A - 作业计划
- B - 会计管理
- E - 购买管理 ...
这些Option是什么呢?
其实就是MM01 里面的View选择
只不过是做了归纳,比如
- B - 会计管理 代表下图的 会计1,会计2
- D - MRP 代表下图的 MRP 1,2,3,4
等等
回到MM50,点执行图标,这样就可以查询出来批量修改的对象一览
选中任意条目,比如我这里就选2条,然后点 品目更新
这样就挨条把选中的会计 View,即会计1,会计2 tab给打开更新
这是选中的第1条:100-300
这是选中的第2条:100-500
学PP的时候也学过这个T-code,差不多。
SAP PP学习笔记 - 豆知识05 - 如何定义品目状态,如何删除品目,如何扩张品目_sap mm50-CSDN博客
2,XK05/XK06 仕入先Block/删除(供应商主数据的冻结和删除)
SAP Menu > Logistics > 在库/购买管理 > 购买管理 > Master Data > 仕入先 > 会计共通
其实购买管理 文件夹下面也有仕入先Block/删除,但是那个主要是针对购买管理的
会计共通文件夹下面的功能更多一些
而且需要注意的是,现在HANA里面已经没有XK系列T-code了,基本上都是会提示你,然后自动跳到BP里面,因为功能是一样的,咱们这里还是按照ECC讲的。
Block 和删除的区别
- Block是一个临时措施,意思就是该供应商出问题了,暂时不想和他做交易而已
等将来都沟通清楚了,解决了以后,就可以打开Block,恢复交易
- 消除是一个永久的措施,就是不要这部分数据了
现场一般都是移行移错了等,对这部分不要的数据做的一个补救措施,
很少有需要对一个供应商做永久删除吧,最多你Block一下,以后不和他交易也就OK了
- XK05 仕入先保留/保留解除
输入
- 仕入先Code:1000
- 会社Code:1000
- 购买组织:1
这里有这么多种类的Block
这个意思是说当你和供应商之间出现问题的时候,你先Block这个供应商
你可以根据问题的严重程度选择不同的Block选项。
当你和供应商之间的问题全部解决之后,你再进到这个画面,就可以拿掉这些Block,恢复交易
- 转记Block
- 全会社Code
- 选择的会社Code
- 购买Block
- 全购买组织
- 选择的购买组织
- 品质管理Block
这个就是这个供应商的品质出现了问题,所以可以暂时不允许他做一些事情
- Block机能(01到99,严重程度逐渐加深)
- 01 - 购买发注Block:不允许登他家的发注票(即不从他家买东西)
- 02 - 見積及购买发注依赖Block:不允许向他家要报价、登他家的采购申请
- 03 - 見積依頼、购买发注以及入库Block
不允许向他家要报价、购买发注票以及入库(就是货来了也不能入库,品质有问题嘛)
- 04 - 从供给元中除外:从供给元列表里面除外,暂时不参与交易
- 99 - 全体Block:啥都不让做
- XK06 消除Flg
这个就是从数据库里面删除
它的使用场景就是说移行啦等操作的时候,发现搞错了一部分数据
其实错了就错了,把它给Block掉也不会影响使用
但是有的客户特别挑剔,有时候有些技术员也挺倔,非要给删除掉不可
其实上面那个并不会马上从数据库删除
SARA - Archive管理
执行这个以后,就会把打上了消除标记的数据给彻底从数据库里删除掉
- BP 里面的Block/打消除Flg
Status tab 里面也有Flg 和Lock
3,MM06/MM16 品目消除Flg
SAP Menu > Logistics > 在库/购买管理 > 品目Master > 品目 > 消除Flg
- MM06 - 即时:立刻就删掉了
- MM16 - 计划:不是现在马上删,而是计划一个时间来删
3-1,MM06 即时
第一画面里面有 品目,Plant,。。。
这些项目是来确定究竟是要删除物料的哪个层次的
比如像下面这样的,就是把该品目的所有层面都删除了
回车以后就是下面这样的,只有 最高层次 品目 之前的Checkbox可用
保存之后再进入到这个画面,发现所有层面都被勾上了
a),品目的主要表及ER图
有关品目,其中主要Table的ER图如下:
【SAP】テーブル関連図(品目マスタ) | SAPコンサルブログ
https://sap-consul.jp/article/article59
Table名 | Table名称 | 説明 |
---|---|---|
MARA | 品目Master 一般Data | 品目Master 一般Data |
MAKT | 品目Text | 每个言語的品目Text |
MARC | 品目Plant Data | Plant Level的品目Master |
MBEW | 品目 評価Data | 品目Master的会計情報 |
MVKE | 品目 販売組織Data | 販売組織Level的品目Master |
MLAN | 品目的税分類 | 品目的税分類 |
MARD | 保管場所Data | 保管場所Level的品目Master |
下面来看看删除后几个表中的变化。
b),MARA - 品目Master 一般Data
c),MARC - 品目Plant Data
d),MARD - 保管場所Data
e),MVKE - 品目 販売組織Data
f),删除品目的其他层次
比如如下图所示,只是想把 Plant层次中的1000 工厂给删除了
意思是 Plant 1000 不再使用该品目,其他工厂不受影响的
进到品目消除画面以后,只有 1000 Plant可选,选中Plant1000,然后保存即可
- MARC 品目Plant Data 层次
只有Plant 1000 被打上删除Flg
- MARD 品目保管场所 Data 层次
只有Plant 1000 的所有保管场所 被打上删除Flg
3-2,MM16 消除品目(计划)
这里多了一个变更予定日付,意思是过了这个日期以后才会删除掉
a),变更予定日付 : 2024/08/06
勾上 Plant 1000,然后点 保存按钮
暂时还是没有打上删掉标记的
其他操作,比如 ME21N 购买发注,都还是可以做的
TODO:等过了 8/6应该就不能做了
4,SAP中查询表的T-code
4-1,SE11:Table照会・変更
SE11是我也比较常用T-code,虽然它比较老一点,它的主要功能如下:
- 查看表中所有字段的一览
- 查看字段的类型,长度,小数点位数
- 变更表定义(这个我也没怎么试过,应该只能改Customize的表吧)
4-2,SE15:Table项目
这个T-code的特点如下
- 可以表示字段名的一览,不仅包括字段的类型,长度,小数点位数,其他内容也都包含
- 最重要的是它还可以导出表结构到Excel
左侧树形结构 > Repository > ABAP Dictionary > 项目 > Table 项目
输入 Table名,点 执行图标
这样就可以看到表项目一览了
点 完全一览 按钮
这样将会多出来很多项目
导出表定义到本地EXCEL文件
Menu > System > 一览 > 保存 > Local File
导出来大概是这样的,然后自己在编集一下即可
我把整个文件放到在线文档上面了,大家可以点一下链接看一下整个文件内容。
【金山文档 | WPS云文档】 100001-MARC
https://kdocs.cn/l/cfjSvwY7tqA
4-3,SE16 Data Browser
这个好像老一点儿,我也不太常用它
第一画面要输入Table
再输入选择画面
点执行 就可以抽出来数据了
4-4,SE16N 一般Table照会
SE16N的特点如下
- 没有第一画面,直接就是上面部分输入Table名,下面部分输入检索条件
- 检索条件部分是所有的字段,SE16只是部分字段
4-5,SE16H 一般Table照会
SE16H 的 H 表示 Hana,之前的版本是没有的
是功能最强大的,支持Group集计,合计,集计功能。
(大概是因为这个集计什么的耗时耗内存,所以非HANA短时间搞不定吧)
- Group集计(分组聚合)
可以通过分组来查看条目的数量。只需勾选要分组的项目的分组栏并运行,数据就会分组显示。 - 合计功能
勾选要输出合计的项目的金额栏,即可输出合计值。
- 集计(聚合功能)
通过在要聚合的项的聚合栏中选择要显示的内容,就会输出该项的最大值/最小值/平均值。
- Group集计(分组聚合)
就是打一下 Group 列的勾
比如我这里就是查一下品目按 原产国/地的区分
- 合计功能
比如我这里是以 Plant为单位,合计基本数量和積送中在库
这样就合计出来了
- 集计(聚合功能)
比如我这里是按Plant为单位,查看
- 纳入予定日数 MIN
- 入库处理日数 MIN
- 安全在库 MAX
集计结果
当然,如果就是想查询一下而已,也没想要做什么合计,集计之类的,那就跟SE16N一样的
4-6,DB02 SQL Command实行
左侧树形结构 > 诊断 > SQL Command
TODO:除了一个很奇怪的错误
SQL0204N "SAPEDS.BSEG" is an undefined name. SQLSTATE=42704 row=1
sapecc:7> SELECT * FROM BSEG WHERE BELNR = '5100000002'
SQL0204N "SAPEDS.BSEG" is an undefined name. SQLSTATE=42704 row=1
换个环境试试哈
输入SQL语句,点执行 图标
这样就查询出来了
这样就可以在这里执行任意的SQL语句,即时得到结果
我感觉是不是比 SQVI好用
但是大家注意,这个 DB02 的本意不是给你执行SQL语句用的呀,
而是给你监控和分析SQL的性能用的。
参照一篇别人写的文章
上面介绍一堆查询SAP中表数据的一些T-code。
要注意不是所有的都能用,比如
- SE16H 必须HANA以后才能用
- 还得看你自己公司环境的权限设置,有些就没有权限
比如,我的一个环境就出这个错误
T-code SE16H 使用権限。
Msg 番号 S#077
参照:
SAP テーブル とは? ~標準テーブル名称の由来や確認方法とは~(vol.102)
Solved: How to Export structure Table to Microsoft Excel ... - SAP Community