Tuesday, February 03, 2004

There is a barely documented problem with Crystal Reports for .NET that occurs if you try to pass a dataview as a datasource to a report. The report has been built via a project dataset (XSD).

Here is the tech support entry. It has a tracking id of “CR ADAPT00117088”. I probably don't have the latest patch but there is no reference anywhere else to this track id.

The work around is just to pull the dataview data into a new datatable. Crystal doesn't give a sample so here is one for anyone who may be looking.

First here is the long way around if you need a table to move into a dataset.

Dim tbl As DataTable = myDataView.Table.Clone
Dim iRow As Int32
For iRow = 0 To dv.Count - 1
   
tbl.ImportRow(dv.Item(iRow).Row)
Next
mycrystalreport.SetDataSource(tbl)  'this assumes you only have one table for your datasource

(I need to make a confession - I have been so stung by the problem of trying to move a table from one dataset into another that I didn't stop and think that I was sending a datatable not a dataset, so I did this the long way around. Thanks to Mike below for pointing out my silliness...see his comment for the easy way.)

Tuesday, February 03, 2004 10:49:12 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
All comments require the approval of the site owner before being displayed.
Name
E-mail
Home page

Comment (HTML not allowed)  

Enter the code shown (prevents robots):

Live Comment Preview