我的报告非常奇怪。我认为最初报告可能会以某种方式损坏,但能够从头开始重新创建问题。
基本上,我有两个数据集,它们都调用彼此没有连接的不同过程。当通过TSQL运行时,它们总能产生正确的结果。
如果我向报表添加一个表并在属于dataset1的表中显示一个字段而不向报表添加dataset2,它将始终返回正确的结果。但是,如果我然后将第二个数据集添加到报表中,它有时会返回正确的结果,然后在其他运行中返回一个纯随机值,这两个值都不会被proc返回。
任一数据集中的任何字段都不具有相同的名称。由于某种原因,问题始终与Money数据类型有关。
有人想出什么可能出错吗?
例如,我已经使用sql profiler检查了这一点,因此正确的参数将传递给tsql中的proc。 我将调用proc _ proc_rpt_Test1 这将返回一个名为DiscountedTotalCustomerPrice的字段。这被定义为proc中的货币类型。对于Audit1
,它将通过tsql返回值16,000此字段在其他数据集中不存在。我已将表设置为等于dataset1,因此无论如何它都不应引用第二个数据集。
所以你第一次跑,你会得到16,000。但是第二次运行它可能会返回22,528,第三次是55,260。这些数字来自前三次。返回的值不是多个或任何东西,我只是显示数字。
多年来一直与SSRS合作,从未遇到过这样的问题。
Datset 1字段是 TotalLineItemsCount,TotalKwhSavings,NETTotalKwhSavings,TotalKwSavings,TotalKwhSavingsDollar,TotalPrice,TotalCustomerPrice,TotalUtilityPrice,CustomerDeposit,DiscountedTotalCustomerPrice,DiscountedCustomerBalance,CustomerBalance,TwelveMonthPayment,TwentyFourMonthPayment,SimplePayback,TotalKwBefore,TotalKwAfter,TotalKwhBefore,TotalKwhAfter,DatePayback,MonthlyCostOfDelay,PaybackInMonths,TOTALCOST,TotalMargin,QtyBeforeFixtures, QtyAfterFixtures,CurrentAnnualCost,SixMonthPayment
第二个数据集是 AuditID,激励,DefaultDeposit,DefaultDiscount,CustomerLumpSum,MaxMonthlyPayment,CashFlowFactor,ProposedDate,MonthlyInterestRate,RawNumberofPayments,FinalNumberOfPayment,CustomerMonthlyPayment,TotalCustomerPayment,PaymentIncrements,MaxNumberOfPayments,MinNumberOfPayments,CustomerDeposit,CustomerDiscount,ActualLaborType
XML,如果矩形......要求
<Rectangle Name="Rectangle2">
<ReportItems>
<Textbox Name="DiscountedTotalCustomerPrice">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!DiscountedTotalCustomerPrice.Value, "AuditSummary")</Value>
<Style />
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>DiscountedTotalCustomerPrice</rd:DefaultName>
<Top>0.33958in</Top>
<Left>1.17014in</Left>
<Height>0.25in</Height>
<Width>2.4375in</Width>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</ReportItems>
<KeepTogether>true</KeepTogether>
<Top>0.4925in</Top>
<Left>0.04736in</Left>
<Height>0.8325in</Height>
<Width>8.04682in</Width>
<ZIndex>7</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
</Style>
</Rectangle>
从xml for dataset
<Field Name="DiscountedTotalCustomerPrice">
<DataField>DiscountedTotalCustomerPrice</DataField>
<rd:TypeName>System.Decimal</rd:TypeName>
</Field>