问题现象:用友T3财务软件单据设置提示:在对应所需名称或序数的集合中,未找到项目,主要情况为:年结操作后新增采购发票时报错,提示:在对应所需名称或序数的集合中,未找到项目。---cInvDefine1。
问题分析:由于PpurBilltail视图缺少对应的列,此情况可能是账套在旧版本上生成新年度账,上年度执行过补丁脚本,而新年度账套没有执行补丁脚本所致。
解决方案1:
打最新版本补丁包,删除新年度账,然后建立新年年度账,重新结转数据
解决方案2:
在查询分析器上执行下面的SQL脚本,更新新年度账中的对应视图也可以:
--修改普通发票视图
ALTER VIEW dbo.ppurBilltail AS
SELECT PurBillVouchs.ID, PurBillVouchs.PBVID,
PurBillVouchs.cInvCode, Inventory.cInvAddCode,
Inventory.cInvName, Inventory.cInvStd,
Inventory.cInvCCode, Inventory.cInvM_Unit,
Inventory.cInvA_Unit, Inventory.bService, (CASE WHEN (PurBillVouchs.iNum=0 Or PurBillVouchs.iNum IS NULL) THEN 0
ELSE (PurBillVouchs.iPBVQuantity/PurBillVouchs.iNum) END) AS iInvExchRate,Inventory.bInvBatch,
PurBillVouchs.iPBVQuantity, PurBillVouchs.iNum,
PurBillVouchs.iOriCost, PurBillVouchs.iOriMoney,
PurBillVouchs.iOriTaxPrice, PurBillVouchs.iOriSum,
PurBillVouchs.iCost, PurBillVouchs.iMoney,
PurBillVouchs.iTaxPrice, PurBillVouchs.iSum,
PurBillVouchs.iExMoney, PurBillVouchs.iLostQuan,
PurBillVouchs.iNLostQuan, PurBillVouchs.iNLostMoney,
PurBillVouchs.iOriTotal, PurBillVouchs.iTotal,
PurBillVouchs.cDebitHead, PurBillVouchs.cTaxHead,
PurBillVouchs.bExBill, PurBillVouchs.dSignDate,
PurBillVouchs.cFree1, PurBillVouchs.cFree2,
PurBillVouchs.dInDate, Inventory.bInvType,
PurBillVouchs.cDefine22,PurBillVouchs.cDefine23,PurBillVouchs.cDefine24,PurBillVouchs.cDefine25,PurBillVouchs.cDefine26,PurBillVouchs.cDefine27,PurBillVouchs.iTaxRate,PurBillVouchs.cItemCode,PurBillVouchs.cItemName,PurBillVouchs.cItem_class,fItem.cItem_name,PurBillVouchs.mNLostTax,PurBillVouchs.cNLostType,PurBillVouchs.iPOsid ,Inventory.cInvDefine1,Inventory.cInvDefine2,Inventory.cInvDefine3 FROM PurBillVouchs
LEFT JOIN Inventory ON
PurBillVouchs.cInvCode=Inventory.cInvCode LEFT JOIN fItem ON PurbillVouchs.cItem_class=fitem.cItem_class
GO
--修改专用发票视图
ALTER View zhpurbilltail AS SELECT PurBillVouchs.ID, PurBillVouchs.PBVID, PurBillVouchs.cInvCode,
Inventory.cInvAddCode, Inventory.cInvName,
Inventory.cInvStd, Inventory.cInvCCode,
Inventory.cInvM_Unit, Inventory.cInvA_Unit,
Inventory.bService,
(CASE WHEN (PurBillVouchs.iNum=0 Or
PurBillVouchs.iNum IS NULL)
THEN 0 ELSE
(PurBillVouchs.iPBVQuantity/PurBillVouchs.iNum) END) AS
iInvExchRate,Inventory.bInvBatch, PurBillVouchs.iPBVQuantity, PurBillVouchs.iNum,
PurBillVouchs.iOriCost, PurBillVouchs.iOriMoney,
PurBillVouchs.iOriTaxPrice, PurBillVouchs.iOriSum,
PurBillVouchs.iCost, PurBillVouchs.iMoney,
PurBillVouchs.iTaxPrice, PurBillVouchs.iSum,
PurBillVouchs.iExMoney, PurBillVouchs.iLostQuan,
PurBillVouchs.iNLostQuan, PurBillVouchs.iNLostMoney,
PurBillVouchs.iOriTotal, PurBillVouchs.iTotal,
PurBillVouchs.cDebitHead, PurBillVouchs.cTaxHead,
PurBillVouchs.bExBill, PurBillVouchs.dSignDate,
PurBillVouchs.cFree1, PurBillVouchs.cFree2,
PurBillVouchs.dInDate, Inventory.bInvType,
PurBillVouchs.cDefine22,PurBillVouchs.cDefine23,PurBillVouchs.cDefine24,PurBillVouchs.cDefine25,PurBillVouchs.cDefine26,PurBillVouchs.cDefine27,PurBillVouchs.iTaxRate,PurBillVouchs.cItemCode,PurBillVouchs.cItemName,PurBillVouchs.cItem_class,fItem.cItem_name,PurBillVouchs.mNLostTax,PurBillVouchs.cNLostType,PurBillVouchs.iPOsId ,Inventory.cInvDefine1,Inventory.cInvDefine2,Inventory.cInvDefine3 FROM PurBillVouchs
LEFT JOIN Inventory ON
PurBillVouchs.cInvCode=Inventory.cInvCode LEFT JOIN fItem ON PurbillVouchs.cItem_class=fitem.cItem_class
GO