BOM批量查询
1业务要求
1.当多层展开时:
根据"BOM应用程序"字段CAPID在TC04中取出"选择ID"TC04-CSLID;
再根据TCS41-CSLID= TC04-CSLID,取出"选择优先级"TCS41-CSLPR、"用途"TCS41-STLAN,按照"选择优先级"升序排序;
根据物料、工厂、上面排序的第一个用途、可选BOM 从MAST(BOM 链接物料)表查询记录,取物料MAST-MATNR、工厂MAST-WERKS、BOM用途MAST-STLAN、可选BOM MAST-STLAL、BOM编号MAST-STLNR;
如果有值,则结束取值,如果无值,则根据排序的第二个用途,其他条件都相同,取出数据。
2.但单层展开或多层有限展开等其他情况时:
只根据上述取MAST的逻辑取出相关数据即可,不需要取TC04和TCS41表。
最终,并根据单层展开、多层展开、多层有限展开、不显示虚拟件、不考虑替代组等按钮,调整传入BAPI的相关参数,当多层展开时,不传BOM用途字段,当其他情况时,传入BOM用途字段,并获取不同的返回结果。
2技术实现
2.1获取数据
根据逻辑获取TC04和MAST表中的数据,并根据优先级对TC04的数据进行排序。循环TC04,查找MAST,如果查找到就删除其他数据,否则继续循环。

单层展开,则参数MEHRS(多层展开)、BREMS(有限展开)不赋值;
多层展开,则参数MEHRS==X,参数BREMS不赋值;
多层有限展开,则参数MEHRS==X,BREMS==X;
不显示虚拟件,则从展开内表中排除虚拟件标识DUMPS==x(小写x)的记录;
不考虑替代组,则参数EHNDL==X 否则不赋值。

2.2 调用BAPI
调用BAPI:CS_BOM_EXPL_MAT_V2。
参数定义:

调用BAPI:

整合返回数据
抬头数据:

行项目:

定期更文,欢迎关注

BOM批量查询的更多相关文章
- 个人永久性免费-Excel催化剂功能第99波-手机号码归属地批量查询
高潮过往趋于平静,送上简单的手机号码归属地查询,因接口有数量限制,仅能满足少量数据需求,如有大规模数据却又想免费获得,这就成为无解了,数据有价,且用且珍惜. 业务使用场景 除了日常自带的手机各种管家为 ...
- 个人永久性免费-Excel催化剂功能第97波-快递单号批量查询物流信息
电商时代,快递已进千万家,做电商零售行业的,快递信息的再挖掘,也显得更有意义,是数据精细化运营中必不可少的一环.一般站在系统的角度,数据用于业务流转的增删改查使用,而对于分析需求来说,这些业务系统里集 ...
- 未注册wang域名批量查询工具
一.支持规则查询 可自定义生成域名进行查询,可生成任意位数的字母数字域名,根据[声母].[韵母]生成单拼,双拼,三拼等域名,还可根据字典生成,支持全拼.首拼识别,全国城市区号.城市全拼.城市首拼.热门 ...
- myBatis批量查询操作,xml中使用foreach案例
使用场景:有一个订单表,实体类为OrderBase.java,订单有个状态为status值可能为"1,2,3,4,5,6",现在需要查询状态为"2,3,4"的订 ...
- asp批量查询
在做asp查询时候 借鉴的一些代码 留个纪念....... <!-- #include file="conn.asp"--> <html> <head ...
- MongoDB与传统数据库的使用区别——批量插入与批量查询
我在百X知道上回答问题时经常遇到类似与这样的问题:MongoDB有没有像MySQL一样的ODBC驱动?MongoDB能不能像MySQL一样获取字段名称或类型. 我的回答是:不行,因为MongoDB不是 ...
- 使用一个T-SQL语句批量查询数据表占用空间及其行数
原文:使用一个T-SQL语句批量查询数据表占用空间及其行数 要找到数据库中数据表占用的空间和存在的行数.可以使用sp_spaceused搭配数据表的名称.就可以产生该表耗用的空间和现有行数. 如: U ...
- 【JAVAEE学习笔记】hibernate02:实体规则、对象状态、缓存、事务、批量查询和实现客户列表显示
一.hibernate中的实体规则 实体类创建的注意事项 1.持久化类提供无参数构造 2.成员变量私有,提供共有get/set方法访问.需提供属性 3.持久化类中的属性,应尽量使用包装类型 4.持久化 ...
- Oracle批量查询、删除、更新使用BULK COLLECT提高效率
BULK COLLECT(成批聚合类型)和数组集合type类型is table of 表%rowtype index by binary_integer用法笔记 例1: 批量查询项目资金账户号为 &q ...
- 批量查询sql脚本
远程批量查询sql脚本 for i in {1..50} do sql_ip=172.168.0.${i} information=`mysql -h ${sql_ip} -uroot -ppas ...
随机推荐
- decltype关键词
简述 decltype 是 C++11 新增的一个关键字,它和 auto 的功能一样,都用来在编译时期进行自动类型推导. decltype 是"declare type"的缩写,译 ...
- js朗读实现
js 利用window实现朗读功能 ` 发音
- 请查收,本周刷屏的两大热点「GitHub 热点速览」
如果你逛 HackerNews 或者是推特,你一定会被 multipleWindow3dScene 这个跨窗口渲染项目的成果刷屏,毕竟国内的技术平台上也出现了不少的模仿项目.另外一个热点,便是你在白板 ...
- PX4环境安装
1.安装ROS 利用鱼香ros一键安装: wget http://fishros.com/install -O fishros && . fishros 调用的命令为: roscore ...
- Java API 操作Docker浅谈
背景: 使用com.github.docker-java库可以很方便地在Java中操作Docker.下面是一个详细的教程,包括创建镜像.创建容器.启动容器.停止容器和删除容器的步骤以及每一步的说明. ...
- [ARC144E]GCD of Path Weights
Problem Statement You are given a directed graph $G$ with $N$ vertices and $M$ edges. The vertices a ...
- 同样的SQL,怎么突然就慢了?
本篇文章素材来源于某银行系统的一次性能问题分析. 许久没写这种troubleshooting类型的技术文章了,因为曾在服务公司呆过多年,工作原因,这方面之前做的多,听的更多,导致已经达到在自己认知维度 ...
- awk所有常用语法
awk [OPTIONS] PROGRAM FILE... 选项: -F 指定分隔符 -f 引用awk脚本 -v VAR=VALUE 定义一个变量传递给PROGRAM,但是这里的变量BEGIN读不了, ...
- ios上架流程 详细通关教程 2021
记录此文是源于以下需求 1.已有app store开发者账号 (公司账号$99),需上架至app store 2.有商城实体商品支付功能(会员等虚拟支付另说) 3.有硬件交互功能 注:建议预留一周上架 ...
- C# 获取另一程序控件,改变值,触发事件
[DllImport("User32.dll", EntryPoint = "FindWindow")]private static extern IntPtr ...