用友通业务难点解析--批次管理

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

用友通业务难点解析——批次管理o常见问题o批次处理规则o解决问题思路批次管理(一)常见问题目前版本的用友通10.2版本,批次管理经常容易出现的问题就是批次数据不准,如批次结存为负数、批次台账和批次结存表对不上等。批次管理处理规则:批次处理涉及到的主要的数据表:Mainbatch(批次主文件)、RdRecords(收发记录子表)、St_TotalAccount(库存总账)A、批次结存表:依据Mainbatch(批次主文件)中对应的RdRecords(收发记录子表)中对应的记录出空与否,来决定是否在批次结存表中显示;B、发货/出库单参照批次:参照的结果和批次结存表一样C、批次台账按不同期间,查询的结果不同:选择了期间范围,那么期初结存会首先从St_TotalAccount(库存总账)中取得,如果本身库存总账的当月期初就是错误的,那么查询出来的账簿数据肯定也是不正确的。批次管理(二)批次主文件(Mainbatch)应该主要关注的是此表的bIsNull和RdIdBisNull:表示对应的这条批次的存货是否全部发出;字段的值有1和0,1表示这条记录已全部发出,0表示未全部发出;由此可以看,批次存货,最多也就只能是把这条存货的数量全部发出,一旦全部发出,bIsnull的值将修改为1,此时再做单据时是不能参照这条记录的,那么查询批次结存表,也是无法查询到bIsNull的值为1的记录的。所以正常情况,查出来的批次,至多为0,不可能为负数,一旦为负数,就表示数据出问题了,需要我们进行后台处理RdId:每笔批次存货的入库详细记录(即“收发记录子表”)都将在批次主文件中形成一条记录,Mainbatch与RdRecords关联是通过Mainbatch的RdId与RdRecords的AutoID进行关联;所以,对于批次管理的存货,只要在收发记录子表中存在入库记录,那么它对应也应该在批次主文件中形成对应的一条记录,两个表之间关联是通过批次主文件的RdId和收发记录子表的的AutoID关联,我们可以用下面的语句,查询出批次结存表中缺少的记录:Select*fromrdrecordswherecbatchisnotnullandidin(selectidfromrdrecordwherebrdflag=1)andautoidnotin(selectrdidfrommainbatch)假如存在这样的记录,就需要把它们添加到批次主文件(Mainbatch);批次管理(三)收发记录子表(RdRecords)首先,要判断对应的记录是否入库记录我们可以通过下面的SQL语句来筛选出来入库记录:1、Select*fromrdrecordswhereidin(selectidfromrdrecordwherebrdflag=1)其次,还要判断这样的记录是批次管理的存货的记录我们在上面语句1的基础上,可以加如判断是否批次的条件即可(批号的字段为cbatch)2、Select*fromrdrecordswhereidin(selectidfromrdrecordwherebrdflag=1)andcbatchisnotnull再次,我们还要判断,带有批次的入库记录,是否合法的记录我们在上面的语句2的基础上,再加入合理的判断条件,就可以查找出合适的记录(应关注的是入库数量(iQuantity)和发出数量(iSOutQuantity))3、Select*fromrdrecordswhereidin(selectidfromrdrecordwherebrdflag=1)andcbatchisnotnullandiQuantity-iSOutQuantity=0只有这样的记录,我们才认为是合法的,具体它能不能被参照,还需要由Mainbatch中的bIsNull来决定。之所以认为第3条语句查询的结果是合法的,一个大的前提和原则就是:批次存货单笔的发出数量(iSOutQuantity),不能比入库数量还要大(iQuantity)批次管理(四)库存总账(St_TotalAccount)库存总账(St_TotalAccount)对于批次业务处理影响不如前两个表大,主要影响的是一些账簿的查询如批次台账的查询,在区分会计期间查询时,会影响查询出来的期初和结存数量St_TotalAccount表主要影响查询账簿结果字段为期初库存数量(iBeginquantity)本期期初库存数量(iBeginquantity)=上月的期初库存数量(iBeginquantity)+上月的收入数量(iIncomeQuantity)-上月发出数量(iSentOutQuantity)但是在某些情况下,有可能出现本期期初库存数量(iBeginquantity)不符合上面的等式,那么此时再按期间查询相关账簿(如批次台账),就可能出现上月结存和本月期初数据不符的现象注:出现这种现象,还会影响现存量整理的准确性。批次管理(五)解决思路:在了解了以上用友通业务关于批次的数据处理原则,我们再处理以后遇到相关批次的问题,就可以数据查询和相关的原则,做相关处理。下面我们就常遇到的一些问题,以一个例子来操作,希望给大家提供一些思路:5月23日,批次存货胖大海(1302)入库,仓库为销售一库(08),批次分别为12,11。批次管理(六)6月2日,从销售一库(08)发出11批次的胖大海(1302)2个。参照存货的界面如下:批次管理(七)我们在做完其他入库单后检查批次主文件中的记录,和做了其他出库单后分别检查批次主文件中的记录,发现是一样的,具体如下:如果不出现任何问题,此时我们可以在软件中查询对应的批次结存表和批次台账,正常的数据都应该是如下图:11批次台账批次管理(八)12批次台账1302存货批次结存表批次管理(九)此时我们再检查这个存货相关带批次的收发记录子表中的记录信息,可以发现:(收发子表记录)(批次主文件记录)其中,我们不难发现:在做出库单时,我们参照的都是批次主文件中bIsNull为0的记录,参照出来的具体内容,则是收发子表中对应的记录,对应关系我们前边已讲过。我们再查下库存总账(St_TotalAccount)中,此存货的记录,如下:我们再分别按2007-05-01到2007-05-31和2007-06-01到2007-06-30的期间查询批次台账,可以发现5月31日的结存和6月1日的期初是对得上的,查询5月1日到6月30日和6月1日到6月30日的批次结存,也是相符的。批次管理(十)下面,我们针对数据库,做一下修改,来解释软件应用过程中,客户发现的错误现象:1、)我们先修改批次主文件(MainBatch)中,1302存货批次11的bIsNull记录为1,此时我们再到软件中进行单据参照、查询批次结存表、批次台账和现存量,可以发现如下情形:(批次主文件)(录出库单批次参照界面)(批次结存表)(现存量)(现存量—按批次查询)批次管理(十一)2、)我们把上面的修改的标志还原,再把收发记录子表中,11批次入库记录(AUTOID为140)的iSoutQuantity的值修改为21,我们再操作软件时,可以看到以下的现象:(收发记录子表)(录单参照界面)(批次结存表)(现存量查询)(按批次查询现存量)批次管理(十二)3、)把刚才修改的数据再还原,我们在修改下库存总账(St_TotalAccount),把1302存货11批次的6月份期初结存(ibeginquantity)修改为99,我们再查询相关帐簿,会发现如下结果。--对于和之前重复的账簿就不再多插入图片了,重点说下批次台账。(5月1日到5月31日11批次的台账)(6月1日到6月30日11批次的台账)批次管理(十三)(查询所以日期时,11批次的台账)针对以上列举的问题,我们以下几个原则来解决批次的问题:1、批次不允许零出库,即RdRecords中,isoutquantity大于iquantity记录都是有错误的记录,需要修改;2、修改的原则,可以参照出库单记录的cvouchcode来统计和改写对应入库单记录isoutquantity,出库单记录的cvouchcode对应的入库单记录的autoid;3、当入库单记录的isoutquantity等于它的iquantity时,修改对应批次主文件(MainBtach)的bIsNull值为1;4、如果确实遇到发出比入库多,那么先补入库单,补入的数量为该批次的负数,然后再修改入库单对应的isoutquantity为此数量。可以保证不再有负数结存。5、其他的,可以依据实际,再补录其他入库单或者做盘点处理;6、查询如发现批次台账不准确的,需要及时查询库存总账(St_TotalAccount);7、所有明细的查询,以库存的出入库流水账为最准;批次管理(十四)以上只是简单的列举了批次管理使用过程中单一出错的现象,有可能客户实际操作时,要更复杂一些,但是只要我们把批次管理在软件中处理规则把握,按规则处理疑难问题和数据,就自然会水到渠成!谢谢!

1 / 17
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功