问题描述

1、用户反馈删除两张之前通过采购转固定资产的卡片后,想要再次生成卡片时候,却找不到这两张卡片。

2、用户尝试对其他未转固定资产的订单进行转固,在保存卡片时提示“本次结转将放弃全部已完成的业务”,无法保存。

解决过程

1、先后台跟踪采购订单转固定资产界面的查询语句:

  1. select
  2. zpurRkdList.cpoid,zpurRkdList.cinvcode,zpurRkdList.cinvname,zpurRkdList.cinvstd,
  3. iquantity,iprice,istax as itaxprice,autoid,zpurRkdList.ufts,ddate,ccode,iUnitCost,
  4. zpurRkdList.cexch_name,iexchrate,cFree1,cFree2,cFree3,cFree4,cFree5,cFree6,cFree7,
  5. cFree8,cFree9,cFree10 ,zpurRkdList.cvencode ,cvenabbname as cVenName ,p.dPODate as dPurDate,
  6. I.cBarCode as sCommodityCode
  7. From
  8. zpurRkdList with(nolock)
  9. inner join inventory I on zpurRkdList.cinvcode = I.cInvCode
  10. inner join po_pomain p on zpurRkdList.cpoid = P.cPOID
  11. where
  12. isnull(zpurRkdList.cpoid,'')<>''
  13. and zpurRkdList.cbustype= N'固定资产'
  14. and isnull(iFaQty,0)=0
  15. and abs(isnull(iquantity,0))>0.000001
  16. and abs(abs(iquantity) -abs(isnull(isquantity,0)) )<0.000001
  17. and 1=1

2、分析发现上面第14行过滤条件为采购入库单子表的iFaQty=0,进一步查询发现,原订单对应入库单的iFaQty字段没有清空:

  1. select iFaQty,rdrecords01.* from rdrecords01
  2. left join rdrecord01 on rdrecords01.id=rdrecord01.id
  3. where rdrecord01.cOrderCode in ('CGDD190800097','CGDD190800098')

3、那么问题应该出在这里,把这两张订单对应采购入库单的iFaQty字段清空后,就能在采购转固界面找到这两行记录了:

  1. --先备份rdrecords01
  2. select * into rdrecords0120191128 from rdrecords01
  3. --然后查询确认要修改范围
  4. select iFaQty ,* from rdrecords01 where AutoID in ('',''
  5. --清空这两行记录的iFaQty字段
  6. update rdrecords01 set iFaQty=NULL where AutoID in ('','')

4、但这并不一定足够,进一步分析固定资产模块各表格看是否有未删除记录:

  1. --查询固定资产采购资产表 有结果
  2. select * from fa_CardOfInv
  3. where cpoid in ('CGDD190800097','CGDD190800098')
  4. --查询固定资产卡片明细表 无结果
  5. select * from fa_Cards_Detail
  6. where sCardNum in (select sCardNum from fa_CardOfInv where cpoid in ('CGDD190800097','CGDD190800098'))
  7. --查询固定资产卡片主表 无结果
  8. select * from fa_Cards
  9. where sCardNum in (select sCardNum from fa_CardOfInv where cpoid in ('CGDD190800097','CGDD190800098'))
  10. --查询固定资产卡片子表 无结果
  11. select * from fa_CardsSheets
  12. where sCardNum in (select sCardNum from fa_CardOfInv where cpoid in ('CGDD190800097','CGDD190800098'))

5、看来问题还出现在固定资产模块的fa_CardOfInv数据未清空,占用了两个卡片编号,导致后续其他资产无法转固,删除这两条记录即可

  1. --先备份fa_CardOfInv
  2. select * into fa_CardOfInv20191128 from fa_CardOfInv
  3. --然后查询确认要修改范围
  4. select * from fa_CardOfInv where cPoid in ('CGDD190800097','CGDD190800098')
  5. --确认无误后删除这两行
  6. delete from fa_CardOfInv where cPoid in ('CGDD190800097','CGDD190800098')

问题总结

用户删除采购转固定资产卡片后,可能由于系统未正确清空原订单对应采购入库单的“转固定资产数量”字段,以及未删除“固定资产采购表”数据,导致问题出现。

用友U8删除采购转固卡片后,再次转固找不到采购订单,且其他订单转固报错的更多相关文章

  1. 解决用友U8删除用户时提示“用户已启用”不能删除的问题

    USE UFSystem go DECLARE @cUser_Id NVARCHAR(20) SET @cUser_Id='用户的登录名' DELETE l FROM dbo.UA_TaskLog l ...

  2. 用友U8 归纳采购退货结算三种情况

    对应版本: 8.52 问题现象: 客户经常处理退货结算的问题 问题原因: 应系统掌握各种情况 解决方案: 结算前全额退货即已录入采购入库单,但未进行采购结算,并且全额退货.填制一张全额数量的红字采购入 ...

  3. 用友U8.70安装说明

    用友U8.70安装说明 U8.70安装说明一.安装前注意事项:1.       在安装U870之前,我们推荐您确保当前计算机操作系统是“干净”的,即计算机在安装过操作系统和更新过必要的系统补丁后没有安 ...

  4. 某企业用友U8+中勒索病毒后数据修复及重新实施过程记录

    近期某客户中了勒索病毒,虽然前期多次提醒客户注意异地备份,但始终未执行,导致悲剧. 经过几天的努力,该客户信息系统已基本恢复正常运行,现将相关过程记录如下,作为警示. 方案抉择 交赎金解密:风险过高, ...

  5. 用友U8客户端连接不上服务器全攻略

    用友U8客户端连接不上服务器全攻略 http://www.enet.com.cn2009年09月23日09:26 来自论坛 [导读]:如果网络不通,就让用户查找网络原因 检查步骤: 1.网络是否通? ...

  6. 用友u8各版本在输出的时候报错提示:外部数据库驱动程序(1)中的意外错误

    从10月12日起很多U8用户反馈,在各版本U8中输出报表时软件报错,报错内容“外部数据库驱动程序(1)中的意外错误”,经初步分析有以下解决方案:1.卸载微软的补丁:(1)如果是PC操作系统(一般是客户 ...

  7. 用友U8根据客户简称/供应商简称的拼音首字母生成助记码

    用友U8+中,客户档案和供应商档案可以设置自动生成助记码,但软件只能自动根据客户全称/供应商全称生成助记码,而无法选择按简称生成助记码,这显然十分不方便,可以通过如下方式解决: 修改步骤 1.往数据库 ...

  8. 用友U8将存货核算期初单价金额回写到库存管理期初单价金额

    在用友U8及相关产品中,库存管理期初要求必须录入数量,但单价和金额并不是必输的.从本人过去实施经验来看,为了保证ERP产品的快速上线,有不少企业只能先提供库存管理期初数量,而单价金额需要后续才能确定. ...

  9. 用友U8合同执行单保存报错,提示“语法错误或违反访问规则”

    问题描述 用户参照合同录入第一阶段的执行单,保存时提示“语法错误或违反访问规则”,其他合同均正常,只有这张合同出现这个问题. 解决过程 语法错误或违反访问规则是SQL Server常见的报错,但其他合 ...

随机推荐

  1. .net core 3.0中的Json API

    在.net core 3.0中,内置了一套新的json api,主要用于去除asp.net core对json.net的依赖,同时也提供了更好的性能(直接处理 UTF-8,而无需转码到 UTF-16) ...

  2. 来点高逼格的,使用前端Sendmessage实现SSO

    关于什么叫SSO(单点登录),这个概念具体的信息我就不详述了,网上一搜一大把,总的来说,它是一种可以控制各个独立的系统经过它的授权后, 可以用同一个帐号体系登录不同的系统,达到一处登录,多处使用的效果 ...

  3. Jmeter对服务器进行压力测试

    一.插件准备 下载地址:https://jmeter-plugins.org/downloads/all/ 1.下载插件管理: 2.将管理插件放到jmeter/../ext文件夹中 3.在插件管理中搜 ...

  4. tcp_tw_recycle参数引发的数据库连接异常

    [问题描述] 开发反馈有个应用在后端数据库某次计划性重启后经常会出现数据库连接异常问题,通过监控系统的埋点数据,发现应用连接数据库异常有两类表现:   其一:连接超时   131148.00ms To ...

  5. idea把菜单栏给点没了...(File、Edit、View、Navigate.......)

    第一种方法 找到idea的C盘的配置文件ui.lnf.xml文件 第二种方法 如果是高版本idea,我的是2019.3,双击shift选择Actions,搜索menu 然后重启idea

  6. 09、日志轮转+rsync同步

    logrotate   -  rotates,  compresses,  and    mails system logs 日志轮转 rotate 日志切割 轮转   切割   备份   归档 常见 ...

  7. 从写下第1个脚本到年薪30W,我的自动化测试心路历程

    我希望我的故事能够激励现在的软件测试人,尤其是还坚持在做“点点点”的测试人. 你可能会有疑问:“我也能做到这一点的可能性有多大?”因此,我会尽量把自己做决定和思考的过程讲得更具体一些,并尽量体现更多细 ...

  8. Ubuntu下部署Shipyard管理docker

    使用k8s对于我这种新人来说,难度有点大.遂尝试使用Shipyard这个docker web ui工具来进行管理,以方便入门. 首先,我们还是需要在我们的主机上安装docker. 然后官方提供了自动安 ...

  9. JS高阶---函数的prototype

    思维导图 栈堆翻译为为stack (1)原型与原型链 概念一.原型对象 验证步骤: 1.打印Data函数的原型prototype 原型属性指向原型对象 ===ES源码结构分析示意=== 2.空对象 3 ...

  10. 深入理解defer(上)defer基础

    深入理解 defer 分上下两篇文章,本文为上篇,主要介绍如下内容: 为什么需要 defer: defer 语法及语义: defer 使用要点: defer 语句中的函数到底是在 return 语句之 ...