电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

用友ERP-U8知识----保质期修改后的解决方法.ppt

用友ERP-U8知识----保质期修改后的解决方法.ppt_第1页
1/17
用友ERP-U8知识----保质期修改后的解决方法.ppt_第2页
2/17
用友ERP-U8知识----保质期修改后的解决方法.ppt_第3页
3/17
保质期修改后处理方法ERP客户服务中心65号工程师描述:在2008年修改过存货档案中的保质期,造成库存中的存货按照失效期反算后的生产日期错后很多,现在在查询现存量和生成销售相关单据时对应批号的存货带出的生产日期有很多是比现在晚很多的存货,客户最近要进行gsp检查希望能帮助更正之前的错误当保质期发生变化时,应当根据生产日期和新的保质期推算失效日期,因为生产日期是固定属性案例呈现首先,做一张入库单,生产日期2009-04-20,保质期5年,失效日期2014-04-20案例呈现然后,修改存货保质期为3年再做一张出库单,案例呈现发现参照批次时保质期并没有变化这时的现存量表也是正常的案例呈现存货的生产日期、保质期、失效日期都没有发生改变出库不能改变,再做一张入库试一试案例呈现保质期已经发生了变化了再查一下现存量案例呈现保质期虽然也发生了变化,但是由于还是其中一次入库的生产日期,还可以接受那什么操作还会影响现存量呢?影响现存量表的因素除了出入库单据,还有整理现存量,那么在整理一下现存量看看案例呈现生产日期终于变了以上是测试重现这个问题,那么怎么将用户的现有错误数据修改正确呢?案例呈现分析一下整理现存量的存储过程(SP_ClearCurrentStock_ST)是怎么将生产日期修改成错误的发现了生产日期是通过下面的表达式赋值的dbo.ST_DateAdd(rdrecords.dvdate,isnull(inventory.imassdate,0),inventory.cmassunit)asdmdate案例呈现函数ST_DateAdd的内容:CREATEFUNCTIONST_DateAdd(@BeginDatedatetime,@iMassDateint,@cMassUnitnvarchar(10))RETURNSDatetimeasbeginif(@cMassUnit=N''or@cMassUnit=N'0')set@cMassUnit=nullif(@cMassUnit=N'年'or@cMassUnit=N'1')set@cMassUnit=N'year'if(@cMassUnit=N'月'or@cMassUnit=N'2')set@cMassUnit=N'month'if(@cMassUnit=N'日'or@cMassUnit=N'3')set@cMassUnit=N'day'RETURNcase@cMassUnitwhenN'year'thendateadd(year,@iMassDate,@BeginDate)whenN'month'thendateadd(month,@iMassDate,@BeginDate)whenN'day'thendateadd(day,@iMassDate,@BeginDate)whennullthennullendend它的作用是通过rdrecords表的失效日期和存货档案的保质期推算生产日期案例呈现所以利用这个函数也可以通过失效日期和单据上的最大保质期推算出原来的生产日期selectrdrecords.autoid,rdrecords.cinvcode,rdrecords.cbatch,rdrecords.dvdate,dbo.ST_DateAdd(rdrecords.dvdate,-isnull(m.imassdate,0),inventory.cmassunit)asdmdate,dmadedate,inventory.imassdate,inventory.cmassunitintordsbakfrom(rdrecordsleftjoinrdrecordonrdrecords.id=rdrecord.id)leftjoininventoryonrdrecords.cinvcode=inventory.cinvcodeLEFTJOIN(selectmax(imassdate)asimassdate,cinvcodefromrdrecordsgroupbycinvcode)monm.cinvcode=rdrecords.cinvcode案例呈现然后再按推算生产日期更新单据的生产日期updaterdrecordssetrdrecords.dmadedate=rdsbak.dmdatefromrdrecordsjoinrdsbakonrdrecords.autoid=rdsbak.autoid案例呈现将失效日期按现在存货保质期和现有单据的生产日期反推,插入临时表selectrdrecords.autoid,rdrecords.cinvcode,rdrecords.cbatch,rdrecords.dvdate,dbo.ST_DateAdd(rdrecords.dmadedate,isnull(inventory.imassdate,0),inventory.cmassunit)asdvdatebak,dmadedate,inventory.imassdate,inventory.cmassunitintordsdvdatebakfrom(rdrecordsleftjoinrdrecordonrdrecords.id=rdrecord.id)leftjoininventoryonrdrecords.cinvcode=inventory.cinvcodeLEFTJOIN(selectmax(imassdate)asimassdate,cinvcodefromrdrecordsgroupbycinvcode)monm.cinvcode=rdrecords.cinvcode案例呈现按推算失效日期更新单据的失效日期updaterdrecordssetrdrecords.dvdate=rdsdvdatebak.dvdatebakfromrdrecordsjoinrdsdvdatebakonrdrecords.autoid=rdsdvdatebak.autoid案例呈现与现存量的相关的表还有:DispatchListsSaleBillVouchsPU_ArrivalVouchsScrapvouchsv_EX_WaitInForStocktransvouchsqminspectvouchersQMCheckVoucherQMRejectVoucher处理方式和RdRecord相同案例呈现

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

用友ERP-U8知识----保质期修改后的解决方法.ppt

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信