Exporting an SSRS Report with Custom Code shows 0

Hey All,

I've checked else where on google and can't seem to find anything on this topic so I figured I'd ask it here.  I have an SSRS report with some custom code to calculate the Top N sum (needed to use custom code since the SUM function sums the entire dataset and not the filtered dataset).  The code is below for reference but I know it's working, as on the preview tab in Visual Studios 2008's ssrs report builder it displays the total fine.  The problem is when I export the report (to any format, but looking specifically for excel), the value in the total shows 0.  I was under the impression that the rendered version is what is exported, but it seems I was wrong, but even so, shouldn't the export save the same result that the preview shows?

Has anyone seen this issue, and figured out a solution?  Thankfully I tested the export before doing my sums for each column of the report (there are roughly 25 columns which need to be summed, and only finding out this after would have been terrible news).

The data is coming from an Analysis Services cube.

Unfortunately I cannot attach a sample of the report as it contains confidential information.

Thank you in advance!

Public total as Integer
Public totalField as new System.Collections.HashTable

Public function AddTotal(ByVal product as String,Byval value as Integer)
	if (totalField(product) is nothing) then
		totalField.Add(product,value)
	else
		total = totalField(product)
		total = total + value
		totalField.Remove(product)
		totalField.Add(product,total)
	end if	
End function

Public function GetTotal(Byval product As String) As Integer
	return totalField(product)
End function

Open in new window

lasenzaitAsked:
Who is Participating?
 
lasenzaitAuthor Commented:
Just as an update, I found the solution to the exporting problem:

When I called the Code.GetTotal function in a text box, it would render fine in the SSRS preview, however it would not export.  By calling Code.GetTotal in a variable declared at the group level, and then refering to that variable in the text box, the value exports as expected.

So the solution was to call the code from a variable and then display that variable, rather than just call the code directly in the cell.
0
 
itcoupleCommented:
Hi

I haven't come across this issue before but if you use SSAS as your source it might be easier to write MDX which will give you the answer instead of using code in SSRS. MDX usually handles complexity very well! Would that work for you?

Regards
Emil
0
 
planoczCommented:
When you use VB code in 2008 you are better to use code like below....
Public total as Integer =0
Public totalField as new System.Collections.HashTable
 Public function AddTotal(ByVal product as String,Byval value as Integer) as Object
if IsNothing(totalField(product)) then
 totalField.Add(product,value)
else
 total = totalField(product)
total += value
totalField.Remove(product)
 totalField.Add(product,total)
return total
end if
return Nothing
End function

 Public function GetTotal(Byval product As String) As Integer
return totalField(product)
End function
0
 
lasenzaitAuthor Commented:
Hello,

The reason I'm not doing it directly in MDX, is because the TOP N is a parameter value that the user can select from a drop down.  I had originally made it so that that parameter goes to the dataset for the MDX, but it kept giving me errors, and eventually I was told to use the filter property on the table.

This works fine for displaying in the SSRS viewer, it's only on export that it disappears, and the users here generally export to excel.

I'll change the code to add the return nothing, but I don't see that as being the source of the issue.

Thank you, and if you have any other ideas, please let me know.
0
 
itcoupleCommented:
Hi

If you decide to go MDX route post the code which gives you errors and I might be able to help.

Regards
Emil
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.