itgensdf054 在 Invantive Control 中同步

itgensdf054 on synchronize in Invantive Control

将Excel中的模型与一个块同步时,收到itgensdf054错误,表明它无法清除以下查询数据同步到的目标范围。

完整的错误信息是:

Could not clear contents of the range ''Aangifte Bebat'!$A:$Q9' of block 'ECO'. Deze wijziging kan niet worden doorgevoerd voor de geselecteerde cellen omdat ze van invloed zijn op een draaitabel. Gebruik de lijst met velden om het rapport te wijzigen. Verplaats de draaitabel en probeer het opnieuw als u cellen wilt invoegen of verwijderen

调用堆栈:

Type: System.Runtime.InteropServices.COMException
   bij System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)
   bij Microsoft.Office.Interop.Excel.Range.ClearContents()
   bij Invantive.Producer.Control.SyncToDatabaseForm.SyncDownload(DoWorkEventArgs e) in File176:regel 1508
   bij Invantive.Producer.Control.SyncToDatabaseForm.SyncDownload(DoWorkEventArgs e)
   bij Invantive.Producer.Control.SyncToDatabaseForm.syncBackGroundWorker_DoWork(Object sender, DoWorkEventArgs e)
   bij System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)

块 'ECO' 从 Exact Online 上的以下查询同步数据:

select /*+ join_set(sik, invoiceid, 100) join_set(sil, invoiceid, 100) join_set(itm, id, 100) join_set(itr, id, 100) */sil.itemcode
,      sil.description
,      bom.batchquantity
,      sil.quantity
,      sil.netprice
,      sil.amountdc
,      sil.vatamountdc
,      sil.vatcode
,      sil.vatcodedescription
,      sil.vatpercentage
,      sik.invoicenumber
,      sil.linenumber
,      itr.itemgroupcode
,      itm.class_04  --aanpassen naar inrichting klant = assortiment bebat_nomenclatuur
,      itm.class_10  -- is assortiment 10 instellingen stuklijst explosie
,      case
       when sik.invoicenumber is not null
       then '=if($C{D,.,.,.-5,.}=$C{D,.,.,.-5,.-1}, if($C{D,.,.,^+2,.}= "", $C{D,.,.,^,.-1}, $C{D,.,.,^,.}), $C{D,.,.,^,.})'
       end
       ass_itemcode
,      case
       when sik.invoicenumber is not null
       /*=""&ALS(K6=K5;ALS(C6<>"";N6;N5);N6)*/
       then '="" & if($C{D,.,.,.-6,.}=$C{D,.,.,.-6,.-1}, if($C{D,.,.,^+2,.} <> "", $C{D,.,.,.-3,.}, $C{D,.,.,.-3,.-1}), $C{D,.,.,.-3,.})'
       end
       nomenclatuur
from   ExactOnlineREST..SalesInvoiceLines sil
join   ExactOnlineREST..SalesInvoices sik
on     sil.invoiceid = sik.invoiceid
join   ExactOnlineREST..Items itm
on     sil.item = itm.id
join   ExactOnlineREST..ItemsRead itr
on     sil.item = itr.id
left
outer 
join   ExactOnlineXML..BillOfMaterials bom
on     sil.itemcode =  bom.item_code_attr 
order 
by     sik.invoicenumber
,      sil.linenumber

查询或模型在之前工作时没有改变。

在 Excel sheet 中有一个主元 table,它汇总了销售明细列表。

导致此错误的原因是什么?

根据您的评论,我了解到数据透视表 table 在 'Aangifte Bebat' 工作表中,但下载的数据在 'Details' 工作表中。

我认为你做了一些小改动。可能您在详细信息工作表之前插入或移动了一个新工作表。由于 Invantive Control 根据工作表的数量进行下载,因此数据现已移动。

确保工作表的原始顺序已恢复。