96 messaggi dal 16 gennaio 2007
www.alfavictor.info
Scusate in anticipo, ma non sono sicuro di aver postato questa richiesta nel forum giusto, eventualmente l'amministratore potra' spostarla nel forum corretto o bacchettarmi violentemente.

Ho installato le estensioni per la realizzazione di report RDLC di MS sulla versione Comunity di Visual Studio 2019, ma non riesco a trovare il controllo Report Wiever che mi servirebbe per
richiamare in una form (VB) un report che ho creato, eventualmente passando i parametri.
Il report e' regolarmente posizionato su Sql Report Server (SQL 2017 Express ADV).
Devo richiamare qualche DLL all'interno degli assembly della soluzione?

O c'e' qualche altro modo per richiamare il report da una form?

Grazie in anticipo

Alberto
223 messaggi dal 08 gennaio 2011
Ciao, guard questo video
https://www.youtube.com/watch?v=qhcg4dy43xk
96 messaggi dal 16 gennaio 2007
www.alfavictor.info
Grazie, ma lo avevo gia' visto e non funziona. Ho installato l'estensione indicata nel video, ma il controllo non compare da nessuna parte. Ho provato a scaricare il controllo dal nuget, il controllo finalmente compare, ma durante l'esecuzione in locale da il seguente errore:
"an error occurred ruring local report processing. The report definition for report 'C;\dir\reportname' has not been specified. Riderimento non impostato su istanza di oggetto"

Il codice che uso e' il seguente:

'Apro la connessione con il mio db
Dim cApri As New CApri
cApri.Apri()
If cApri.Errore <> 0 Then
MsgBox("Errore apertura DB: " & Trim(cApri.Errore))
cApri.Chiudi()
cApri = Nothing
Exit Sub
End If

'Instanzio la classe autori che mi restisce i dati per il report

Dim cAutori As New cAutori

'Imposto le proprieta' del controllo report viewer

ReportViewer2.ProcessingMode = ProcessingMode.Local

Dim localReport As LocalReport
Dim dataset As New DataSet("Autori")
localReport = ReportViewer2.LocalReport

Dim rep As String = "c:\Libri\Libri\LibriReports\"
localReport.ReportEmbeddedResource = rep & "rptAutoriAlfabetico.rdc"

'Richiamo i dati per il report
Dim saAutori As New SqlClient.SqlDataAdapter
cAutori.txtOrdinamento = "A"
saAutori = cAutori.LeggiAutoriAlfaSA
Dim sa As New ReportDataSource
sa.Name = "Autori"
sa.Value = dataset.Tables("sa")

ReportViewer2.RefreshReport()

'chiudo la connessione con il db

cAutori = Nothing
cApri.Chiudi()
cApri = Nothing

Se eseguito in remoto non trova il Report Server, che se richiamato via IE trovo benissimo ed esegue i report richiesti (Si trova sulla stessa macchina).

Per l'esecuzione in remoto uso il seguente codice

Me.ReportViewer2.ProcessingMode = ProcessingMode.Remote

Dim serverReport As ServerReport
serverReport = ReportViewer2.ServerReport

Dim credentials As System.Net.ICredentials
credentials = System.Net.CredentialCache.DefaultCredentials

Dim rscredentials As ReportServerCredentials
rscredentials = serverReport.ReportServerCredentials
rscredentials.NetworkCredentials = credentials

serverReport.ReportServerUrl = New Uri("http://ServerName")
serverReport.ReportPath = "/LibriReports/rptAutoriAfabetico"


'Parametri eventuali
'dim par as new ReportParameter()
'par.name = "Nome Parametro"
'par.values.add("Valore del parametro")

'Dim Parameters() As ReportParametes = (Par)
'serverReport.ServerParameters(parameters)

'Exec

ReportViewer2.RefreshReport()


L'unica soluzione, molto poco elegante che ho trovato e quella di inserire in una form un controllo browser e puntarlo sul mio report server. Cosi' vedo i miei report e riesco ad eseguirli.

Ma non e' una soluzione che mi soddisfi.
96 messaggi dal 16 gennaio 2007
www.alfavictor.info
Fatto tentativo con l'esecuzione Remota. Sostituito il nome del server con il relativo indirizzo IP e magicamente funziona tutto

Evidentemente il problema era che essendo un'esecuzione sulla stessa macchina, il dsn non riusciva a decodificare l'indirizzo

Quindi la soluzione e' stata scaricare il controllo Report Viewer da NuGet.
Utilizzo della elaborazione Remota impostando l'indirizzo ip del server invece del suo nuome
nella URL di collegamento al Report Server

Sperando che questa soluzione possa aiutare altri ringrazio ancora tutti

Alberto

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.