Report non funzionante in rete

martedì 09 gennaio 2007 - 16.17

mr_rox\ Profilo | Newbie

Ciao a tutti ,
ho un'applicazione Vb.Net 2005 con DB oracle e utilizzo Crystal Report.
Ho effettuato l'installazione su un pc , su cui e' installato anche Oracle ( parte server) e funziona tutto bene ..
Ho provato a installare il software su un altro pc ( che fa' da client) e farlo puntare al vecchio ( che fa' da server per la parte Oracle) , la parte dati e' tutto ok (estraggo i dati e riesco a modificarli ) ma i report vanno in errore con invalid path.
Come mai ?
qualcuno mi puo' aiutare??
Grazie
Rocco

freeteo Profilo | Guru

ciao,
sembra proprio che il report non riesca ad accedere al server di dati, percio ti chiedo:
i dati come li passi al report, hai impostato le LogonInfo (ovvero i parametri di connessione) o gli passi tu in DataTable/DataSet con il metodo "setDataSource" ?

cmq sia, dai un'occhiata a questo thread magari ti puo' tornare utile dato che ho postato 1po di codice:
http://www.dotnethell.it/forum/messages.aspx?ThreadID=8681
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

mr_rox\ Profilo | Newbie

Ciao e grazie per la risposta...
I dati li passo tramite un dataset che popolo io .
Ma la parte logoninfo e' indispensabile?? non creod poiche' in locale girano bene ...
Non so' proprio che pesci prendere...
Se puoi darmi qualche latro suggerimento ssara' ben accolto
Grazie
Rocco

freeteo Profilo | Guru

>Ciao e grazie per la risposta...
>I dati li passo tramite un dataset che popolo io .
ok allora non servono i LogonInfo

>Ma la parte logoninfo e' indispensabile?? non creod poiche' in
>locale girano bene ...
no no, i logoinfo servono se non gli passi niente come dataset

>Non so' proprio che pesci prendere...
prova a postare qualche riga di codice significativa, e anche l'errore esatto che ti appare, che magari puo' aiutare a capirci qualcosa...
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

mr_rox\ Profilo | Newbie

Ciao e grazie per l'interessamento.
ti posto un po' di codice ( non lo allego xche' se aggiungo un file anche di piccole dimensioni si blocca la pagina web e non mi fa'andare avanti) .
Questo che popola e' un report semplicissimo che non ha bisogno di DataSet ( utilizzo solo parametri) .
L'istruzione che genera errore e' la load del Report ( sotto il codice trovi il dettaglio dell'errore)


Dim frm_st As New Frm_stampe
Dim conta As Integer
Dim query As String
Dim op As New Cls_operazioni_db
Dim dr As OleDbDataReader
Dim crReportDocument As New ReportDocument
MsgBox(" Path : " & Application.StartupPath & " poi faccio \..\..\CR_chiusura_ko.rpt")

-- instruzioen che genera errore--
crReportDocument.Load(Application.StartupPath & "\..\..\CR_chiusura_ko.rpt")

query = ""

query = "select lettera ,frase,posizione,font_frase from tab_int_lettere "

query = query & " where lettera ='Chiusura con KO'"
query = query & " order by posizione"
conta = 0

dr = op.ExecuteQuery(Cls_operazioni_db.ReturnType.DataReaderType, query)
If dr.HasRows Then
Do While dr.Read

If dr.Item(1) <> " " Then

crReportDocument.SetParameterValue(conta, dr.Item(1))
conta = conta + 1
End If

Loop
If conta < 8 Then
Dim i As Integer
For i = conta To 7
crReportDocument.SetParameterValue(i, " ")
Next i

End If
Else
MsgBox(" Per la lettera di 'Chiusura con KO' non e' stata ancora immessa l'intestazione", MsgBoxStyle.Critical, "Attenzione")
Exit Sub
End If
query = ""

query = "select frase1 ||frase2 from tab_frase_lettera "
query = query & " where lettera ='Chiusura con KO'"

conta = 1

dr = op.ExecuteQuery(Cls_operazioni_db.ReturnType.DataReaderType, query)
If dr.HasRows Then
dr.Read()
crReportDocument.SetParameterValue(14, dr.Item(0))
Else
MsgBox(" Per la lettera di 'Chiusura con KO' non e' stata ancora immessa il testo", MsgBoxStyle.Critical, "Attenzione")
Exit Sub
End If



query = "select to_char(sysdate,'dd Month YYYY' ) from dual"
dr = op.ExecuteQuery(Cls_operazioni_db.ReturnType.DataReaderType, query)
dr.Read()
crReportDocument.SetParameterValue(8, dr.Item(0))

query = "select nvl(denominazione,' ') , nvl(indirizzo,' ') , cap || ' - ' || localita || ' - ' || provincia from tab_cliente "
query = query & " where id_cliente='" & next_id_cliente.PadLeft(5, "0") & "'"

dr = op.ExecuteQuery(Cls_operazioni_db.ReturnType.DataReaderType, query)
dr.Read()

crReportDocument.SetParameterValue(11, dr.Item(0))
crReportDocument.SetParameterValue(10, dr.Item(1))
crReportDocument.SetParameterValue(9, dr.Item(2))

crReportDocument.SetParameterValue(12, Me.tb_debitore.Text)
crReportDocument.SetParameterValue(13, Me.tb_protocollo.Text)
MsgBox(" prima di frm_st.CrystalReportViewer1.ReportSource = crReportDocument")
frm_st.CrystalReportViewer1.ReportSource = crReportDocument

MsgBox("prima di frm_st.CrystalReportViewer1.Show()")
frm_st.CrystalReportViewer1.Show()
MsgBox(" prima di .text")
frm_st.Text = " Lettera di 'Chiusura con esito KO'"
MsgBox("prima di enabled = flase")

Me.Enabled = False
MsgBox("prima di show ")
frm_st.Show()



Errore :
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.Exception: Load report failed. --->
System.Runtime.InteropServices.COMException (0x80004005): Impossibile
trovare il percorso specificato.

at
CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.Open(Ob
ject& DocumentPath, Int32 Options)
at
CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Open(Object&
DocumentPath, Int32 Options)
at
CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentI
sOpened()
--- End of inner exception stack trace ---



Ciao Rocco

freeteo Profilo | Guru

ciao,
a quanto vedo il problema è che il runtime di Crystal non trova il file del report da caricare, quindi ti consiglio di cambiare il modo in cui fai riferimento al file.
Io tipicamente uso qualcosa del tipo:

System.Environment.CurrentDirectory
oppure
AppDomain.CurrentDomain.BaseDirectory

che tornano la dir dove viene lanciato l'exeguibile, da li vado a prendermi il file del report...se non ho visto male sembra proprio quello l'errore...
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

mr_rox\ Profilo | Newbie

Ciao e grazie ancora...
spero di beccarti al volo per non aspettare domani per un arisposta..
come vedi ho messo dei mshbox per vedere se mitrovavo con le dir e le dir estratte con apppath sono giuste...
tu mi consoigli di cambiare e mettere i tuoi riferimenti?
Grqzie
Rocco

freeteo Profilo | Guru

ciao,
diciamo che se i percorsi sono giusti, potrebbe essere che il runtime di crystal non sia installato correttamente, hai provato a fare qualche programmino veloce di esempio per testare se sia 1 problema di path o di runtime vero e proprio?
Magari se non hai installato il runtime correttamente magari il file che non trova è una dll di Crystal e non il report.
Se hai visual studio 2005, prova ad installare nella macchina anche il pacchetto di redist di crystal:
http://blogs.dotnethell.it/freeteo/vs-2005-semplifica-il-deploy-anche-per-Crystal-Report__1190.aspx
http://msdn2.microsoft.com/it-it/library/7tx0bw8y(VS.80).aspx

oppure fare un pacchetto di setup del progetto e andare ad aggiungere i "merge module" (moduli unione):
http://support.businessobjects.com/communitycs/technicalpapers/crnet_deployment.pdf.asp

che sia 1problema di runtime sul pc? ovviamente se provi da te il runtime viene installato automaticamente dall'installazione di visual studio...
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

mr_rox\ Profilo | Newbie

grazie per l'ennesim arisposta...
faccio le prova che mi hai suggerito sperando di risolvere...
ti faccio sapere e grazie per la disponibilita'
rocco

freeteo Profilo | Guru

>grazie per l'ennesim arisposta...
di niente, spero di esserti stato utile

>faccio le prova che mi hai suggerito sperando di risolvere...
si penso che potrebbe essere un problema di runtime che non è stato installato, perche problemi di path mi sembra strano che ci siano con .net, ricordo che con win98 ho avuto qualche problema per i nomi troppo lunghi ma non penso che tu stia usando un sistema operativo da "prestoria"

>ti faccio sapere e grazie per la disponibilita'
ok grazie!
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

mr_rox\ Profilo | Newbie

Ciao ,
da quanto mi dici il problema dovrebbe derivare dal file msn di Crystal Report che scarico dal sito della Business Objects.
io faccio cosi': scarico il file , lo converto con visual installer , ma la conversione va' in errore .
Allora visto che non riuscivo a reperire sti' caspita di file , sui vati forum che ho visto ho letto che come file .msn per Cr potevo anche usare quello di Visual Studio che si trova sul pc dove ho installato Visual studio nella dir:
C:\Programmi\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\CrystalReports\CRRedist2005_x86.msi.
Lo inglobo nel pacchetto di installazione con Cyber nstaller , ma poi ho il problema sopra descritto.
E' una settimana che sbatto la testa... ma non e' possibile reperire sti' fileda qualche altra parte ??
grazie
rocco


freeteo Profilo | Guru

ciao,
premetto che non conosco "Cyber Installer", ma cmq so che quel pacchetto di Crystal dovresti installarlo in fase di setup prima dell'applicativo, inquanto è il runtime per la parte di Repotr (se non è installato correttamente , il progetto parte lo stesso ma va in errore appena si chiama qualche libreria per i report)

Ma quando dici "...incluso in Cyber Installer..." cosa intendi? l'hai aggiunto e quindi viene lanciato anche lui prima del resto del setup?
se è cosi' dovresti vederlo partire in fase si setup...
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

mr_rox\ Profilo | Newbie

Ciao
CyberInstaller serve per costruire il pacchetto di intllazione.tra le altre cose permette di inserire file .msn da eseguire prima o dopo l'intsllazione del software. Quindi io ho seguito questa procedura:
1) dal sito della Bo ho scaricato il file .msi (merge module) per Cr bundle in vc2005
2) con visual installer 1.1 ho provato a convertirlo in un file msn ( cyber accetta solo questo formato!!)
3) la trasformazione va' tutto ok ma se provo a lanciare il fiel prodotto va in errore-->> dai vari forum ho visto che molte persone si sono lamentati di questi merge module messi a dispisizione da Bo e quindi non li usano .
4) ho preso il file .msn installato sul mio pc all'atto dell'installazione di Vs2005 e l'ho incluso nel progetto e viene installato dopo l'installazione del mio software.



Purtroopo tutto cio' genera l'errore in oggetto....
Mi chiedevo ...tu o qualcuno di tua conoscenza ha a dispiszione questi dannati merge module per crystal report bundle di vs2005??
conosci qualche link da dove poterli scaricare oltre che dal siot della Bo??


grazie ancora per l'interessamento ....
Rocco
p.s. : se x te non e' un disturbo ti chiedo una ulteriore cosa : hai un account msn cosi' possiamo scriverci in rela time quando sei disponibile??
se preferisci non divulgare il tuo account non ci sono problemi...come non detto grazie...

freeteo Profilo | Guru

>Ciao
>CyberInstaller serve per costruire il pacchetto di intllazione.tra
>le altre cose permette di inserire file .msn da eseguire prima
>o dopo l'intsllazione del software. Quindi io ho seguito questa
>procedura:
>1) dal sito della Bo ho scaricato il file .msi (merge module)
>per Cr bundle in vc2005
>2) con visual installer 1.1 ho provato a convertirlo in un file
>msn ( cyber accetta solo questo formato!!)
>3) la trasformazione va' tutto ok ma se provo a lanciare il fiel
>prodotto va in errore-->> dai vari forum ho visto che molte
>persone si sono lamentati di questi merge module messi a dispisizione
>da Bo e quindi non li usano .
diciamo che io preferisco fare un pacchetto di setup con visual studio, che ho visto ricopre moltissime delle mie esigenze in merito di setup, e aggiungi i prerequisiti, come ovviamente il framework 2.0 e il pacchetto "CRRedist2005_x86.msi", che viene installato quindi in fase di setup.
Questo procedimento, ripeto con un progetto di setup di visual studio 2005 , non mi ha maii dato problemi..pero' non conosco Cyber Installer, magari sta proprio lli il problema...



>Purtroopo tutto cio' genera l'errore in oggetto....
>Mi chiedevo ...tu o qualcuno di tua conoscenza ha a dispiszione
>questi dannati merge module per crystal report bundle di vs2005??
>conosci qualche link da dove poterli scaricare oltre che dal
>siot della Bo??
assolutamente no, il posto da cui scaricarli è cmq quello della ditta che li produce, meglio di quello non ce n'e'
Come dicevo sopra, per la versione 2003 i merge module erano 1passo obbligatorio, poi finalmente l'hanno "semplificato" mettendo un pacchetto completo da installare una volta sola.Con i merge, hai il controllo sui singoli file da includere, mentre con il pacchetto msi vengono installati tutti, beh direi che mediamente non ti fa alcuna differenza...


>p.s. : se x te non e' un disturbo ti chiedo una ulteriore cosa
>: hai un account msn cosi' possiamo scriverci in rela time quando
>sei disponibile??
diciamo che putroppo me lo chiedono in tanti, e quindi diventerebbe ingestibile la cosa, meglio usare il forum dove lasciare visibili i messaggi potrebbe tornare utile anche ad altri che magari ci arrivano cercando con i motori di ricerca...
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

mr_rox\ Profilo | Newbie

Ciao e per l'ennesima volta grazie.
A questo punto girero' un po' in rete per vedere come creare un pacchetto di setup con Visual Studio. A sto' punto credo che sia la soluzione migliore...e come si dice dalle mie parti " risaprmio e comparisco!.."
grazie per i suggerimenti ...ti faro' sapere come va' il pacchetto..
buona domenica..
Rocco
p.s.: capisco i motivi per cui non vuoi diffondere la tua email..Scusami se te lo chiesta!!!

mr_rox\ Profilo | Newbie

Ciao ...ho risolto...
non so' xche' ma ho risolto...
Ho provato su altri pc ...e funzionano tutti correttamente...
L'unica cosa che ho notato e' che sul pc su cui non funzionavano e' installato Xp professional ....mentre sulgi altri xp home edition..
non ho potuto fare la prova su altri xp Prof...purtoppo come SO non e' tanto diffuso tra i miei conoscenti...
Che tu sappia ci sono precednti di una cosa del genere??
Grazie
Rocco

freeteo Profilo | Guru

ciao,
che sappia io xp home differisce da professional per le logiche legate all'utenti di dominio e per non avere IIS e qualche altro servizio a bordo.
Pero' che avesse problemi con il runtime di Crystal proprio non mi sembrava...ma si impara sempre qualcosa di nuovo ogni giorno
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

mr_rox\ Profilo | Newbie

Grazie della dipsonibilita'...
Ciao
Rocco
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5