Crystal Reports 2010 Tutti i rapporti non riuscire a caricare Una volta che il rapporto è stato esportato in qualsiasi formato in WindowsXP

StackOverflow https://stackoverflow.com/questions/5816782

Domanda

Ho una soluzione di fatturazione WPF che viene distribuito tramite ClickOnce per più di 500 utenti, CrystaReports2010 sono stati utilizzati per il reporting, l'85% degli utenti ha installato Windows XP sul proprio computer: (

I Crystal Reports funziona bene sulle macchine WindowsXP fino a quando le esportazioni utente un rapporto con il pulsante incorporato export in Crystal Reports Viewer, se lo ha fatto il processo di esportazione completa con successo, ma non è in grado di aprire qualsiasi altro rapporto nella soluzione fino a quando non si riavvia l'applicazione.

pulsante Esporta

Questo è l'errore quando si tenta di aprire un nuovo rapporto dopo l'esportazione:

Il messaggio di errore

risparmio il report in mia soluzione come risorse esterne di contenuti al di fuori del file dell'applicazione .exe, e io li carico su richiesta, qualcosa di simile:

var report = new ReportDocument();
report.Load(@"Reports\MyReport.rpt");

ho fatto in modo che dopo che l'utente vicino una relazione stretta e smaltire l'oggetto documento rapporto, in modo che nessun perdite di memoria o il superamento del numero massimo di rapporti aperti.

Se ho cambiato la mia applicazione in modo che io salvare i rapporti dentro la mia soluzione come risorse incorporate, il problema è risolto, ma questo non è un'opzione, perché i rapporti sono relativamente grandi dimensioni (200KB-450KB), sarà un grande file DLL che verranno scaricati ai clienti attraverso ClickOnce ogni volta che rilasciamo una nuova versione che ha qualche modifica a qualsiasi report !. Un'altra variante è quella di raggruppare diciamo quattro relazioni di ciascuno immessa una DLL, e ancora lo stesso problema (1MB-2 MB è ancora una grossa fetta). Sapendo che abbiamo un sacco di relazioni e otteniamo frequente richiesta di modifica per questi rapporti in base ai cambiamenti nelle politiche del nostro cliente. Si prega di Aiuto!

È stato utile?

Soluzione 3

Alla fine, ho trovato la soluzione :) Il problema era che quando si esporta un report Crystal con il pulsante Esporta predefinito fornito dal visualizzatore Crystal Reports, il pulsante di esportazione cambia la directory di lavoro corrente dell'applicazione al percorso di esportazione !!! (Comportamento strano !!) ed è per questo la seguente linea di lavoro wont più:

report.Load(@"Reports\MyReport.rpt");

Così ho cambiato questa linea di seguito:

report.Load(AppDomain.CurrentDomain.BaseDirectory + "\\" + @"Reports\MyReport.rpt");

E ha funzionato come per magia:)

Altri suggerimenti

Per risolvere questo problema è necessario cambiare la versione di .NET installata sulla macchina client dal profilo client alla versione completa .net.

Stai chiudendo e lo smaltimento dei documenti di report, una volta che hai finito con loro?

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