【已解决】科目余额表通过综合本位币联查明细账报错
金蝶云社区-jack_qi
jack_qi
0人赞赏了该文章 1387次浏览 未经作者许可,禁止转载编辑于2015年03月11日 12:17:25

CLOUD系统由2.0升级到5.0,发现去年7月份的一个科目人民币跟本位币金额不等,通过综合本位币本位币显示的科目余额表联查明细账时,报错。

查询出现异常。不能将值 NULL 插入列 'FCURRENCY',表 'tempdb.dbo.#TM_GL_VoucherDetailData____________________________________________________________________________________________000000009D62';列不允许有 Null 值。INSERT 失败。
语句已终止。
INSERT INTO #TM_GL_VoucherDetailData SELECT 0 fdatatype, v.FVoucherID, e.FENTRYID, e.FACCOUNTID, v.FYEAR, v.FPERIOD, a.FNUMBER fbalanceid, ' ' fbalancename, e.FDETAILID, CONVERT(DATETIME, CONVERT(CHAR(10), v.FDATE, 20)), v.FCREATEDATE, vchgrp_l.FNAME fvchgroupid, v.FVOUCHERGROUPNO fvchgroupno, ISNULL(e.FEXPLANATION, ' ') fexplanation, ISNULL(t_l.FNAME, ' ') fsettletypeid, e.FSETTLENO, ' ' fsidebalanceid, ' ' fsidebalancename, 0 fsidedetailid, ' ' fsidedetailnumber, ' ' fsidedetailname, sys_l.FNAME finternalind, c_l.FNAME fcurrency, e.FEXCHANGERATE fexchangerate, e.FAMOUNTFOR, CASE e.FDC WHEN 1 THEN e.FAmount ELSE 0 END fdebit, CASE e.FDC WHEN 1 THEN e.FAmountFor ELSE 0 END fdebitfor, CASE e.FDC WHEN -1 THEN e.FAmount ELSE 0 END fcredit, CASE e.FDC WHEN -1 THEN e.FAmountFor ELSE 0 END fcreditfor, a.FDC, (CASE e.FDC WHEN 1 THEN e.FAmount ELSE 0 END - CASE e.FDC WHEN -1 THEN e.FAmount ELSE 0 END) fendbalance, (CASE e.FDC WHEN 1 THEN e.FAmountFor ELSE 0 END - CASE e.FDC WHEN -1 THEN e.FAmountFor ELSE 0 END) fendbalancefor, c.FAMOUNTDIGITS FROM T_GL_Voucher v INNER JOIN TMPA2CC325DC7A411E4A9FA005056B e ON v.FVoucherID = e.FVoucherID INNER JOIN T_BD_Account a ON e.FAccountID = a.FACCTID LEFT OUTER JOIN T_BD_Account_L acct_l ON (a.FACCTID = acct_l.FACCTID AND acct_l.FLOCALEID = 2052) LEFT OUTER JOIN T_BD_VOUCHERGROUP vchgrp ON vchgrp.FVCHGROUPID = v.FVOUCHERGROUPID LEFT OUTER JOIN T_BD_VOUCHERGROUP_L vchgrp_l ON (vchgrp.FVCHGROUPID = vchgrp_l.FVCHGROUPID AND vchgrp_l.FLOCALEID = 2052) LEFT OUTER JOIN T_META_SUBSYSTEM_L sys_l ON (v.FSYSTEMID = sys_l.FID AND sys_l.FLOCALEID = 2052) LEFT OUTER JOIN T_BD_CURRENCY c ON c.FCURRENCYID = e.FCURRENCYID LEFT OUTER JOIN T_BD_CURRENCY_L c_l ON (c_l.FCURRENCYID = e.FCURRENCYID AND c_l.FLOCALEID = 2052) LEFT OUTER JOIN T_BD_SETTLETYPE t ON t.FID = e.FSETTLETYPEID LEFT OUTER JOIN T_BD_SETTLETYPE_L t_l ON (t_l.FID = t.FID AND t_l.FLOCALEID = 2052) WHERE ((((((v.FACCOUNTBOOKID = 107053 AND v.FInvalid = '0') AND (v.FDOCUMENTSTATUS <> 'Z')) AND v.FPosted = '1') AND (FYear = 2014 AND FPeriod = 7)) AND e.FACCOUNTID = 102644) AND e.FDETAILID = 102142)
at Kingdee.BOS.App.Data.AbstractDatabase.ExecuteNonQuery(DbCommand command, IEnumerable`1 listParam)
at Kingdee.BOS.App.Data.DBUtils.Execute(Context ctx, String strSQL, IEnumerable`1 paramList, Boolean needTranslate)
at Kingdee.BOS.App.Data.DBUtils.Execute(Context ctx, String strSQL)
at Kingdee.K3.FIN.GL.App.Report.SubLedgerService.GetDataFromVoucher(IRptParams filter, DataRow dr, String tempTableName)
at Kingdee.K3.FIN.GL.App.Report.SubLedgerService.PackageQuerySql(IRptParams filter, DataRow dr, String tempTableName)
at Kingdee.K3.FIN.GL.App.Report.SubLedgerService.BuilderSql(IRptParams filter, String tableName)
at Kingdee.BOS.Core.Report.PlugIn.AbstractSysReportServicePlugIn.CreateTempTable(IRptParams filter, String tablename)
at Kingdee.BOS.Core.Report.PlugIn.AbstractSysReportServicePlugIn.GetDataForVirtual(IRptParams filter)
at Kingdee.BOS.Core.Report.PlugIn.AbstractSysReportServicePlugIn.GetListAndReportData(IRptParams filter)
at Kingdee.BOS.Model.Report.MoveReportModel.GetData(Int32 start, Int32 rows)
at Kingdee.BOS.Web.Report.SysReportView.GetListData()
at Kingdee.BOS.Web.Report.SysReportView.<>c__DisplayClass36.b__32()