Hello, friends
For two days I have been struggling with following error when running report - An error occurred during report data sets execution. The report starts running (report is called) and then just this message appears (first screenshot). By looking at event viewer logs I see line which says - Microsoft.Reporting.WebForms.ReportServerException: No report data table with name ebLabelPrintReportTemp exists in report schema for data provider EBLabelPrintDP (second screenshot attached). From infolog statements see that i processes the data (I added an info string when the data is processing, third screenshot attached). However, it seems that after the data is processed, DFO365 somehow cant find the temptable. I added my dp class full code. At the moment I have tried: cleaning the cache and data, restarting reporting services, restarting Windows services World Wide Web Publishing Service, Microsoft Dynamics 365 Unified Operations: Batch Management Service, Microsoft Dynamics 365 Unified Operations: Data Import Export Framework Service, SQL Server Reporting Services (MSSQLSERVER), redeploying the report, recreating report data source, restarting virtual machine on which my VS is running. Nothing seems to help.
class EBLabelPrintDP extends SrsReportDataProviderPreProcessTempDB
{
EBLabelPrintReportTemp ebLabelPrintReportTemp;
RecId recordId;
Integer columnNumber;
[SRSReportDataSetAttribute(tableStr(EBLabelPrintReportTemp))]
public EBLabelPrintReportTemp ebLabelPrintReportTemp()
{
select ebLabelPrintReportTemp;
return ebLabelPrintReportTemp;
}
protected EBLabelPrintReportTemp initebLabelPrintReportTemp(EBProductLabelsTmpFormLookup _ebProductLabelsTmpFormLookup, EBLabelPrintReportTemp _ebLabelPrintReportTemp)
{
BarcodeSetup barcodeSetup;
BarcodeSetupId barcodeSetupId = '';
_ebLabelPrintReportTemp.Name = _ebProductLabelsTmpFormLookup.name;
_ebLabelPrintReportTemp.ItemId = _ebProductLabelsTmpFormLookup.ItemId;
return _ebLabelPrintReportTemp;
}
private void processProductLabels(EBProductLabelsTmpFormLookup _ebProductLabelsTmpFormLookup)
{
int qty;
EBProductLabelsTmpFormLookup ProductLabels;
//<GEERU>
RetailInventTable retailInventTable;
//ebLabelPrintReportTemp.clear();
if (columnNumber > 3)
{
columnNumber = 1;
}
ebLabelPrintReportTemp = this.initebLabelPrintReportTemp(_ebProductLabelsTmpFormLookup, ebLabelPrintReportTemp);
for (qty = 1; qty <= _ebProductLabelsTmpFormLookup.EBLabelCount; qty++)
{
//Info(strFmt("qty is %1", qty));
ebLabelPrintReportTemp.ColumnNumber = columnNumber;
ebLabelPrintReportTemp.insert();
Info(strFmt("ItemId is %1", ebLabelPrintReportTemp.ItemId));
columnNumber++;
if (columnNumber > 3)
{
columnNumber = 1;
}
}
}
public void processReport()
{
delete_from ebLabelPrintReportTemp;
EBProductLabelsTmpFormLookup ebProductLabelsTmpFormLookup;
super();
columnNumber = 1;
while select ebProductLabelsTmpFormLookup
{
this.processProductLabels(ebProductLabelsTmpFormLookup);
}
}
}
Best regards,
Roberts


