sql简易的MRP资源分析
写了个简易的MRP根据传进来的数据,进行上下级的判断,父表,子表
构思:
3张变量表,第一张用来存传进来的成品,这边对表做了循环就是成品是一样一样进去的,取成品表的第一行,将数据做父表和子表关联,取出有关的物料,存到第二张变量表。
再次做一个循环,将第二张变量表和父表做关联,如果有数据存在将数据存到第三张变量表,根据第三张变量表删掉第二张变量表中相同的数据,然后对第三张变量表和父表子表做关联,将数据反填回第二张变量表,并清空第三张变量表,循环到没有条件成立,即可。
下面是我的方法:
----------------begin----------------------------
declare @wltemp table(id int,code varchar(50))
insert into @wltemp(id,code)
select '1','PAR-471J0-60'
--union
--select '2','PAR-102J0-60'
declare @temp table(fid int,mainid int,num int,whscode int) 
declare @temp1 table(fid int,mainid int,num int,whscode int) 
declare @i int
declare @maxvalue int
				select @maxvalue=count(1) from @wltemp
				select @i=1
				while(@i<=@maxvalue)
				begin
				if exists(select top 1 1 from dchild1727 a inner join dfather1727 b on a.fid=b.id 
								inner join ditm c on b.mainid=c.id inner join @wltemp d on c.fathercode=d.code where d.id=@i)
						begin
							insert into @temp(fid,mainid,num,whscode)
								select a.fid,a.mainid,a.c_num,a.whscode from dchild1727 a inner join dfather1727 b on a.fid=b.id 
								inner join ditm c on b.mainid=c.id inner join @wltemp d on c.fathercode=d.code where d.id=@i
						end
				set @i=@i+1
-------------------------上部分为调取成品名字--------------------下部分为循环-------------------------------
				while exists(select top 1 1 from dfather1727 a inner join @temp b on a.mainid=b.mainid)
						begin
							insert into @temp1(fid,mainid,num,whscode)
								select b.fid,b.mainid,b.num,b.whscode from dfather1727 a inner join  @temp b on a.mainid=b.mainid
delete from @temp where mainid in(select mainid from @temp1 a where a.mainid=mainid and a.fid=fid)
insert into @temp(fid,mainid,num,whscode)
								select a.fid,a.mainid,a.c_num,a.whscode 
										from dchild1727 a inner join dfather1727 b on a.fid=b.id inner join @temp1 c on b.mainid=c.mainid
							delete from @temp1
						end
				end
SELECT b.fathercode 物料编码,b.itemname 物料名称,a.whscode 仓库,a.num 数量 from @temp a inner join ditm b on a.mainid=b.id
---------------end-------------
sql简易的MRP资源分析的更多相关文章
- SQL SERVER 查询性能优化——分析事务与锁(五)
		SQL SERVER 查询性能优化——分析事务与锁(一) SQL SERVER 查询性能优化——分析事务与锁(二) SQL SERVER 查询性能优化——分析事务与锁(三) 上接SQL SERVER ... 
- 通过SQL Server Profiler来监视分析死锁
		在两个或多个SQL Server进程中,每一个进程锁定了其他进程试图锁定的资源,就会出现死锁,例如,进程process1对table1持有1个排它锁(X),同时process1对table2请求1个排 ... 
- KRPano资源分析工具使用说明(KRPano XML/JS解密 切片图批量下载 球面图还原 加密混淆JS还原美化)
		软件交流群:571171251(软件免费版本在群内提供) krpano技术交流群:551278936(软件免费版本在群内提供) 最新博客地址:blog.turenlong.com 限时下载地址:htt ... 
- 使用KRPano资源分析工具强力加密KRPano项目(XML防破解,切片图保护,JS反调试)
		软件交流群:571171251(软件免费版本在群内提供) krpano技术交流群:551278936(软件免费版本在群内提供) 最新博客地址:blog.turenlong.com 限时下载地址:htt ... 
- 使用KRPano资源分析工具分析动态网站资源
		软件交流群:571171251(软件免费版本在群内提供) krpano技术交流群:551278936(软件免费版本在群内提供) 最新博客地址:blog.turenlong.com 限时下载地址:htt ... 
- 使用KRPano资源分析工具还原全景图片
		软件交流群:571171251(软件免费版本在群内提供) krpano技术交流群:551278936(软件免费版本在群内提供) 最新博客地址:blog.turenlong.com 限时下载地址:htt ... 
- 使用KRPano资源分析工具一键下载全景网站切片图
		软件交流群:571171251(软件免费版本在群内提供) krpano技术交流群:551278936(软件免费版本在群内提供) 最新博客地址:blog.turenlong.com 限时下载地址:htt ... 
- 使用KRPano资源分析工具解密被加密的XML
		软件交流群:571171251(软件免费版本在群内提供) krpano技术交流群:551278936(软件免费版本在群内提供) 最新博客地址:blog.turenlong.com 限时下载地址:htt ... 
- 配置SQL Server 2008的资源调控器实现负载均衡
		原文:配置SQL Server 2008的资源调控器实现负载均衡 转自:http://www.ithov.com/server/93267.shtml 1.为什么引入"资源调控器" ... 
随机推荐
- ubuntu thrift 0.9.3编译安装
			Table of Contents 1. 下载thrift源代码 2. 编译并安装 3. 运行测试程序 4. 安装 1 下载thrift源代码 git clone https://git-wip-us ... 
- html元素英文含义
			常用html标签的英语全称及简单功能描述 <a>:anchor 定义锚 <abbr>:abbreviation 定义缩写 <acronym>: 定义只取消首字母的缩 ... 
- Handler发送消息
			Handler发送消息小结 字数283 阅读210 评论0 喜欢1 obtainMessage()得到一个Message对象. 创建一个Message然后发送是这么写的: Message msg = ... 
- 给label绘制下划线
			UIlabel本身没有下划线的属性,使用绘制的方法,添加下滑下,并且赋给该label一个action作为响应方法,实现DIY超链接的效果. //调用 #import "UnderLineLa ... 
- Html方式导出word 页头和页脚设置
			<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:o ... 
- uva 11234 Expressions 表达式 建树+BFS层次遍历
			题目给出一个后缀表达式,让你求从下往上的层次遍历. 思路:结构体建树,然后用数组进行BFS进行层次遍历,最后把数组倒着输出就行了. uva过了,poj老是超时,郁闷. 代码: #include < ... 
- XML DTD验证
			XML DTD验证 一.什么是DTD 文档类型定义(DTD:Document Type Definition)可定义合法的XML文档构建模块.它使用一系列合法的元素来定义文档的结构. DTD 可被成行 ... 
- 一道简单的动态规划题目——House Robber
			一.题目 House Robber(一道Leetcode上的关于动态规划的简单题目)具体描述如下: There is a professional robber planning to rob hou ... 
- HDU 1257 最少拦截系统 (DP || 贪心)
			最少拦截系统 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Statu ... 
- BZOJ 3083: 遥远的国度  dfs序,树链剖分,倍增
			今天再做一天树的题目,明天要开始专攻图论了.做图论十几天之后再把字符串搞搞,区域赛前再把计几看看. 3083: 遥远的国度 Time Limit: 10 Sec Memory Limit: 128 ... 
