Andria,I went through the same issue's. I am pretty sure Dev express only supports design time preview when you use a data adapter etc. I would think there would be an event that you could hook into to populate an objects datasource at design time but I never found it. I looked around on the forums there and could not find out how to get design time preview to work with an object.
I think that using a business object for a report is a good idea in principle but it gets screwy when you have complex reports with multi tables as business object's really represent a single table. That being said I created my own set of "QueryObjects" that represent the fields returned from a query. Kind of like a read only chopped down version of a business object.
I bind this object to the report to get design time binding of the fields (like I said I am unable to get design time preview to work). I also have additional properties on the query object that store the select statement and parameters as well as additional report meta data. I also have methods to retrieve the data using strataframes data access layer. like below
Public Sub QueryDataSource() Implements Report.iReportQueryProvider.QueryDataSourceMe.DataSource = MicroFour.StrataFrame.Data.DataBasics.DataSources("").GetDataTable(BuildSqlCommand, Nothing)End SubPrivate Function BuildSqlCommand() As SqlClient.SqlCommandDim LoSqlCmd As New SqlClient.SqlCommandLoSqlCmd.CommandText = oMetaDataBiz.SQL
'Build Parameters CollectionFor Each p As ReportParameter In oMetaDataBiz.ParametersCollectionLoSqlCmd.Parameters.AddWithValue(p.ParameterName, p.ParameterValue)
NextReturn LoSqlCmdEnd FunctionHowever the more direct approach is to just create a report using the dev express data adapter etc. This gives you preview at design time. Then at runtime just swap the datasource with a table from a biz obj.
Hope this helps a bit.Paul