Domanda

Sto cercando di integrare Crystal Reports 2008 in un'applicazione Windows Form. Vorrei evitare connessioni dirette dalla mia applicazione client al database, dando all'utente il "completo" riferire esperienza. È possibile per Crystal Reports 2008 eseguire un report su un server in un controllo client Windows Form lato client, simile a Microsoft Reporting Services?

È stato utile?

Soluzione

Non so se è esattamente quello che stai cercando, ma posso pensare a 2 modi in cui potresti confonderlo:

  1. È possibile impostare il report in modo che il "database" sia un file XSD, senza conoscere il vero backend. Quindi, in fase di esecuzione, invii i dati al rapporto.

// Crea un'istanza in fase di esecuzione appropriata per il tuo ambiente - solo esempio:

ReportClass rc = new ReportClass ();

rc.Load (crystalReportFileName);

rc.SetDataSource (myIEnumerableData);

CrystalReportViewer crv = new CrystalReportViewer ();

crv.ReportSource = rc;

// Visualizza il visualizzatore di cristalli.

2 - Puoi fare lo stesso di 1 su un server (indipendentemente dall'approccio del database), quindi salvare il rapporto e inviarlo al client.

// Alcuni servizi / metodi lato server ecc.

public byte [] GetMyReport () {

ReportClass rc = new ReportClass ();

rc.Load (crystalReportFileName);

rc.SetDataSource (myIEnumerableData);

rc.SaveAs (serverSideFile, True); // True è fondamentale per salvare i dati con report

return .... // converte il file creato in un array di byte, suppongo

}

// Lato client

byte [] rep = Server. GetMyReport ()

ReportClass rc = ..... // converti rep in un report di cristallo

CrystalReportViewer crv = new CrystalReportViewer ();

crv.ReportSource = rc;

Altri suggerimenti

Questo non è proprio quello che stai chiedendo, ma Crystal Reports Server esegue il reporting sul lato server.

L'aspetto negativo è fastidiosamente costoso.

http://www.businessobjects.com/product/catalog/crystalreports_server/

Non posso aggiungere un commento a quanto sopra in quanto non ho punti, ma spero che questo aiuti.

Crystal Reports Server esegue report autonomamente rispetto alle origini dati, con l'idea che i client senza report Crystal o accesso ai dati possano eseguire report tramite il Web o che il server esegua report pianificati e invii i risultati. Non so se puoi integrarlo però.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top