none
Come si fa a stampare un report con Visual studio? RRS feed

  • Domanda

  • Ho realizzato un Progetto VB .NET che prevede di stampare un Report.

    Fino ad ora, in locale, ho utilizzato Access 2007 ma se volessi distribuire questo progetto dovrei costringere i miei User ad installare Access e questo non è possibile.

    Quindi ho aggiunto a Visual Studio "Progetti Report Microsoft per Visual Basic" e sono facilmente riuscito ad importare da Access il report da stampare. Anzi, in visualizzazione Preview, posso già stamparlo in PDF scegliendo una delle visualizzazioni possibili, ma non è quello che mi serve.

    A questo punto vorrei fare in modo di stampare questo Report, tramite uno script del Progetto di cui ho detto all'inizio.

    Ho capito che dovrei avere a disposizione uno Strumento Report Viewer con il quale richiamare il mio Report, ma nel mio Progetto non lo trovo e non ho capito come fare ad installarlo.

    Grazie per l'aiuto, che dopo aver trovato Report Viewer, spero sia esteso a come fare per ottenerne la stampa.
    giovedì 22 novembre 2018 00:43

Tutte le risposte

  • Ciao Riccardo,

    non so se questo video può esserti d'aiuto, ma se non ho capito male credo di si.

    giovedì 22 novembre 2018 19:07
    Postatore
  • Buongiorno  U235.

    Sarebbe molto utile il filmato che mi indichi, peccato che già all'inizio io non sia in grado di trovare Report Viewer nel mio Progetto. Ieri ero riuscito a farlo comparire, oggi è scomparso. Quindi anche se digito "crystal report" nella casella di ricerca degli strumenti, a me non esce "Reporting" e neppure, ovviamente, "CrystalReportViewer"

    Manca qualche passaggio che non riesco a trovare.

    venerdì 23 novembre 2018 13:39
  • Basta cliccare con il tasto destro nella casella degli strumenti e nella lista che appare spuntare la casella di ReportViewer per Form o Web

    Per qualche informazione sul controllo può dare una occhiata qua e a questi esempi

    Celestino
    • Modificato CelestinoV lunedì 26 novembre 2018 08:20
    lunedì 26 novembre 2018 08:17
  • Ho creato un nuovo progetto Windows Form, senza aggiungere nulla. La Form1 si è aperta di default e quindi ho fatto Click destro nella Casella degli Strumenti e poi Click su "Scegli elementi". Si è aperta la finestra "Scegli elementi della casella degli Strumenti" nella quale ho cercato report ed è comparso "ReportViewer" già con il Flag, quindi ho solo potuto chiuderlo. Però nella Casella degli Strumenti ReportViewer non compare. E non compare neppure dopo un "Ricompila" e un Salva.
    lunedì 26 novembre 2018 15:08
  • Sono riuscito ad installare ReportViewer con la procedura che potrei allegare ma non so come visto che ho prodotto un .pdf.

    Adesso aggiungo quello che sono riuscito a fare, che non mi serve ancora per concludere il mio lavoro ma che mi sembra già molto:

    1 - Ho installato Reporting Services e così ho potuto importare il report di Access che mi serve, però questo report ha estensione .rdl e NON .rdlc come occorre al progetto.

    2 - Ho comunque creato un report .rdlc nel mio Progetto e, con il banale Copia/Incolla ci ho messo dentro la configurazione del report .rdl importato. Ovviamente ho anche dovuto indicare a questo nuovo report qual'è l'origine Dati. Questo è facile.

    Però, in Reporting Services ho il Preview del Report, mentre in Visual Studio NO e quindi non so cosa si vedrà.

    Se ho capito bene (ma adesso è tardi, ...) per vedere il Report dovrei aprire una Form, richiamare un Controllo RepotViewer e quindi caricarci dentro il Report. Poi chiedere la visulizzazione del Form.

    Io però avrei solo bisogno di Stampare questo Report in .pdf: come si può fare?

    Grazie in anticipo

    lunedì 26 novembre 2018 17:18
  • Premetto che non ho capito molto, ma questa è una mia limitazione.

    in internet ci sono parecchie pagine che stampano report in pdf: Questo, questo e questo ed ovviamente ci sono altri siti in giro

    Buona fortuna

    Celestino

    martedì 27 novembre 2018 13:12
  • Premetto che non ho capito molto, ma è una mia limitazione.

    Ci sono su internet molti siti che mostrano come stampare i report in pdf come questo, questo e questo 

    Buone cose

    Celestino

    martedì 27 novembre 2018 13:37
  • Scusami se ti disturbo ancora, ma non sono proprio riuscito a fare nulla di quello che vorrei e, credimi, ho provato e riprovato.

    Ho guardato con molta attenzione gli esempi che hai indicato e quello che mi è sembrato più utile e facile da usare è il primo; anche perché io utilizzo VB .NET e gli altri sono (credo) in C#.

    Comunque devo specificare che non ho probabilmente capito o trovato le basi necessarie all'utilizzo dei Report, sia che io li voglia stampare il PDF che anche solo visualizzarli.

    Vediamo se qualcosa ho recepito:

    Primo, devo avere a disposizione ReportViewer

    Secondo, devo poter creare un Report

    Entrambi questi punti mi sono ancora oscuri, perché non sono proprio riuscito a far comparire ReportViewer. Ho provato a fare come dici tu:  "Basta cliccare con il tasto destro nella casella degli strumenti e nella lista che appare spuntare la casella di ReportViewer per Form o Web", ma a me non compare nulla.

    Senza ReportViewer penso sia impossibile creare un report, o sbaglio?

    Per cortesia, puoi darmi informazioni più basilari su cosa fare?

    Grazie

    venerdì 7 dicembre 2018 14:15
  • Mi deve scusare, la procedura indicato è per vb e non per wpf. Ho sbagliato forum.

    Io non uso wpf. Devo dirle però che da qualche parte ho visto una procedura per importare in wpf i controlli non presenti da vb.

    Mi scusi ancora, per farmi perdonare cercherò di rintracciare la procedura e postargliela.

    Saluti

    Celestino


    • Modificato CelestinoV sabato 8 dicembre 2018 12:33
    sabato 8 dicembre 2018 12:22
  •  Sig. RiccardoCasti le devo una risposta.

    Per quanto abbia cercato non ho trovato nulla su ReportViewer nei miei archivi.

    Se non invalida tutto il suo lavoro, potrebbe inserire ReportViewer in un normale form e creare poi una .dll che potrebbe richiamare dal form WPF.

    Buone cose

    Celestino

    lunedì 17 dicembre 2018 13:37
  • Buongiorno Celestino. Nessun problema. Io invece credo di avere trovato come abilitare Report Viewer in un Progetto e l'ho definita in un testo che ho salvato in PDF. Non ho capito come usare Hyperlink o almeno io non ci sono riuscito. Se mi indica come allegare il File,....

    Posto che io riesca ad aggiungere report Viewer in Visual Studio mi manca sempre di sapere come si fa a stampare un Report in PDF con Visual Studio. Se mi può aiutare, .....

    Grazie




    giovedì 20 dicembre 2018 11:10
  • L'ho messo in Hyperlink: ReportViewer


    giovedì 20 dicembre 2018 11:24
  • Il post del 27 us  indicava proprio degli esempi per stampare un report in pdf.

    Posto sempre che lei riesca a creare un report.

    Personalmente avrei qualche dubbio. Questo sito è frequentato da fior di personaggi preparatissimi che conoscono tutti i meandri e le soluzioni che questa piattaforma può offrire. Se nessuno si è fatto sentire...

    Saluti e buone feste

    Celestino


    • Modificato CelestinoV giovedì 20 dicembre 2018 12:59
    giovedì 20 dicembre 2018 11:51
  • Il post del 27 us  indicava proprio degli esempi per stampare un report in pdf.

    Posto sempre che lei riesca a creare un report.

    Personalmente avrei qualche dubbio. Questo sito è frequentato da fior di personaggi preparatissimi che conoscono tutti i meandri e le soluzioni che questa piattaforma può offrire. Se nessuno si è fatto sentire...

    Saluti e buone feste

    Celestino


    Buongiorno e Buon Anno.

    Torno alla carica con l'argomento Report visto che ho fatto qualche passo avanti che adesso espongo.

    Come ha evidenziato Celestino V, potrebbe non essere facile creare un Report. Io ci sono riuscito nel senso che sono riuscito ad Importare i report di Access in un "Progetto Report".

    Per farlo occorre innanzitutto integrare SSDT (SQL Server Data Tools) in Visual Studio (https://docs.microsoft.com/it-it/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-2017#ssdt-for-vs-2017-standalone-installer), quindi aprire un nuovo Progetto Report, che consente di importare i report di Access. I Report importati hanno estensione .rdl

    Non ho approfondito l'utilizzo dei Progetti Report, ho solo ustato i Report importati come elementi da cui copiare.

    Contestualmente, ho provveduto ad installare ReportViewer in un mio Progetto, che mi consente di aggiungere un nuovo elemento Report (con estensione .rdlc, quindi diversa da quella dei Report Importati).

    A questo punto ho fatto un banale "copia-incolla" della struttura del Report importato dentro la struttura del Report aggiunto al Progetto. E funziona!! Ossia ho esattamente il Report che voglio, dentro al mio Progetto.

    Quindi ho potuto aggiungere una Form nella quale, tramite ReportViewer, inserire il mio Report. Se a questo punto avvio il progetto e visualizzo la Form, vedo il mio Report. Posso anche stamparlo, perché ReportViewer espone anche tutti i comandi di gestione.

    A questo punto però mi sono "imbranato", ossia, non sono riuscito a capire come fare tramite script a baypassare la visualizzazione della Form (con tutti passaggi conseguenti) per arrivare direttamente alla stampa del Report (che vorrei avvenisse in PDF).

    Sarà magari banale, ma se qualcuno potesse darmi lo spunto giusto, ....

    Aggiungo ancora che NON è possibile importare un Report.rdl (ossia importato) in un Progetto VB: la funzione "aggiungi - elemento esistente" non trova nessun file da importare da un "Progetto Report". Inoltre anche un "Progetto Report" NON trova nulla da importare da un progetto VB (ovviamente??).


    • Modificato RiccardoCasti lunedì 14 gennaio 2019 09:30
    • Contrassegnato come risposta RiccardoCasti lunedì 14 gennaio 2019 17:08
    • Contrassegno come risposta annullato RiccardoCasti lunedì 14 gennaio 2019 17:09
    lunedì 14 gennaio 2019 09:16
  • Ho recuperato i link forniti da CelestinoV il 27 novembre u.s. per provare a stampare in PDF questi benedetti Report. In particolare ho cercato di capire e di usare il secondo Link dal titolo "Save RDLC reports as PDF programmatically".

    Mi sembra facile da usare e probabilmente anche molto efficiente, ma confesso di non avere capito almeno due cose (la prima meno rilevante):

    1 - la stringa di codice "_stream = New List(Of Stream)" è corretto che sia su una singola riga oppure è la continuazione della riga precedente?
    2 - cosa vuol dire: "Abbiamo definito un controllo chiamato rptViewer1 che può essere ....." (We defined a control called rptViewer1 which can be visible or not depending of your needs.)?
    Ammesso che la stringa di codice al punto 1 si possa risolvere con qualche prova, non ho assolutamente capito come "definire un controllo chiamato rptViewer"

    Come si fa a definire questo controllo?

    Grazie per l'aiuto.

    lunedì 14 gennaio 2019 17:18
  • .... Aggiungo ancora che NON è possibile importare un Report.rdl (ossia importato) in un Progetto VB: la funzione "aggiungi - elemento esistente" non trova nessun file da importare da un "Progetto Report". Inoltre anche un "Progetto Report" NON trova nulla da importare da un progetto VB (ovviamente??)....

    Devo smentire questa affermazione: ho appena scoperto che un Report Importato da Access in VB .Net con estensione .rdl può diventare un Report con estensione .rdlc solo cambiando l'estensione!!  Facilissimo quindi per chi ha i Report in Access trasferirli in VB .Net. Ho provato a cambiare l'estensione ad un Report.rdl in Report.rdlc e poi l'ho importato in un Progetto VB .Net, che lo accetta e lo vede senza problemi.
    martedì 15 gennaio 2019 17:30