ciao,
allora il procedimento classico è creare un report puntando al tuo database raggiungibile, per dare al report lo schema che poi gli arrivera' a Runtime.
Ma il path in questo caso sara' cambiato a runtime, il report se lo porta dietro solo come "schema", perche' a runtime il tuo applicativo gli potra' settargli la sorgente dati in 2 modi:
- impostare le proprieta' di connessione tramite le LogonInfo:
...
Dim mioreport as new ReportDocument()
mioreport .load(server.Mappath("...."))
Dim logOnInfo As New TableLogOnInfo
logOnInfo = mioreport.Database.Tables.Item("Tabella").LogOnInfo
logOnInfo.ConnectionInfo.ServerName = "SERVER"
logOnInfo.ConnectionInfo.DatabaseName = "miodb"
logOnInfo.ConnectionInfo.UserID = "User"
logOnInfo.ConnectionInfo.Password = "pwd"
logOnInfo.TableName = Tabella"
mioreport.Database.Tables[0].ApplyLogOnInfo(logOnInfo)
CrystalReportViewer1.ReportSource = mioreport
CrystalReportViewer1.DataBind();
...
- caricare i dati in 1 datatable/dataset/Collection e poi passarlo al report con il metodo "setDataSource":
Dim miods = new Dataset();
...
Dim mioreport as new ReportDocument()
mioreport.load("....miofile")
mioreport .SetDataSource (miods );
...
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo