解决方案: |
错误信息表提示“超工作日历范围”(errorId=1)的提示两种情况1:需求日真的超过日历范围当前日期前1年;2:存货档案设置了重复计划,但计算时没有选择“时格代号”只有料“NSX-83GSKM4S”
--情况1:之前订单未满足供应的均参与计算,造成需求日真的超过日历范围当前日期前1年;两种方法
--方法1-以当前日期为例;2005-07-28前关闭错误信息表涉及存货订单行和订单
update m set m.cCloser='demo'
from so_somain m join so_sodetails s on s.id =m.id
join #error r on r.cinvcode=s.cinvcode
where s.dPreMoDate<'2005-07-28'and r.e.errorId=1
update s set s.csCloser='demo'
from so_sodetails s
join #error r on r.cinvcode=s.cinvcode
where s.dPreMoDate<'2005-07-28'and r.e.errorId=1
--方法2没有满足且需要生产可修改订单的“预计完工日”使其落在系统日期前1年内
update s set s.s.dPreMoDate='输入日期应考虑当前日期前1年内'
from so_sodetails s
join #error r on r.cinvcode=s.cinvcode
where s.cSOCode ='可以定位指定销售订单号修改'
--错误信息表提示未定义有效BOM(errorId=2)
--情况1:未定义BOM
select i.cinvcode,i.cinvname from MPS_Error er
join bas_part b on er.partid=b.partid
join inventory i on i.cinvcode= b.invcode
where er.errorId=2 and er.partId not in( select parentID from bom_parent )
--情况2:定义了BOM但无效,如下查询后修改仓库档案或参照需求修改BOM生效日
--1:子件行设置仓库属性w.bMRP=0为不参与计算,不参与计算的仓库设置在bom子件行导致bom无效;查询应该为空;
select distinct w.cWhName as 库名,w.bMRP as 零为不参与计算,opt.Whcode as 仓库代号
from warehouse w
join bom_opcomponentopt opt on w.cWhcode=opt.Whcode
join bom_opcomponent com on opt.OptionsId=com.OptionsId
join bom_parent p on p.bomId=com.bomId
where w.bMRP=0
--2:BOM生效日与错误信息表中提示开工日期关系不合理,生效日应该早于错误表中提示开工日期
select bom.VersionEffDate as 版本生效日,er.Demdate as 错误表中开工日,i.cinvname as 母件物料名称 from mps_error er
join bom_parent p on er.partid=p.parentId
join bom_bom bom on bom.bomId=p.bomId
join bas_part bas on bas.partid=p.parentId
join inventory i on bas.invcode=i.cinvcode
where er.Demdate 请按照上述语句检查,修改客户数据;然后计算MRP后查验需求规划的建议计划列表;
|