VB6 e Crystal report 12 : passare parametri

domenica 30 novembre 2008 - 20.17

gemepaso Profilo | Newbie

Salve a tutti. Con VB6, Ho sempre usato l'ogetto Datareport incluso, per generare qualsiasi report.
dovendo stavolta generare report più complessi, ho cominciato ad utilizzare Crystal 2008 Ver 12


Il problema fondamentale non stato aprire il report e passare e filtrare dati del db;


Dim crapp As New CRAXDRT.Application
Dim Report As CRAXDRT.Report
Set crapp = New CRAXDRT.Application

Set Report = crapp.OpenReport(App.Path & "\Reports\Bolla.rpt")


Frm_Crystal.Height = Screen.Height
Frm_Crystal.Width = Screen.Width
CRViewer1.Visible = True
CRViewer1.Height = Screen.Height - 525
CRViewer1.Width = Screen.Width - 1635
Left = (Screen.Width - Width) / 2 ' Centra il form orizzontalmente.
Top = (Screen.Height - Height) / 2 ' Centra il form verticalmente.

'filtro per
Report.RecordSelectionFormula = "{FAT_RIGHE.N_FAT} = 1"



ma più semplicemente passare dati tipo n_fattura , data o informazioni del cliente su una label di intestazione pagina del report crystal


Provato con:
Report.ParameterFields.GetItemByName("nomelabel_crystal").AddCurrentValue ("1")

o anche

Report.ParameterFields(1).AddCurrentValue("nomelabel_crystal").Text = "1"

ma nulla da fate


qualcuno sa indicarmi dove sbaglio??
Grazie per l'aiuto.
Marco
Ciao

freeteo Profilo | Guru

Ciao,
guarda questo thread dove viene mostrato il codice per passare i dati tramite vb6 al report.
http://www.dotnethell.it/forum/messages.aspx?ThreadID=7942

Come vedi si appoggia a un recordset e quindi se devi fare filtri puoi lavorare direttamente sulla query, l'unica cosa è che quello che gli passi al report deve corrispondere come struttura (ordinamento dei campi, tipi etc..) a quello che hai usato per costruirlo.
Tipicamente infatti, quello che gli passi a codice è filtrato (where ...), ma la "select" è uguale.

Se poi vuoi impostare anche delle formule che hai nel report, puoi usare questa sintassi:
crRep.FormulaFields.GetItemByName(#nome#).Text = Chr$(34) & #nuovo_valore# & Chr$(34)
come vedi attento ad aggiungere l'apice, perchè stai impostando il "text" della formula, quindi diciamo è come stessi scrivendo dentro all'editor delle formule per quel campo.


ps: per i futuri problemi con i report puoi usare la stanza apposita, anche se si tratta giustamente di app vb6:
http://www.dotnethell.it/forum/Crystal-Reports.aspx


Ciao.

Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo

gemepaso Profilo | Newbie

Perfetto!

Risolti tutti i problemi (pure quello di appoggiarmi su un rs anzichè vista o stored). Ultimissima cosa sempre su VB6 e Crystal

Il report funziona correttamente sulla mia macchina con installato tutto l'ambiente CR XI. Creando un pacchetto di installazine dell'applicativo, importa si tutte le dll crystal necessarie ma in fase di installazione non me le registra. Problema, che spulciando su google, vedo molti (se non praticamente tutti) hanno avuto. Bisogna procedere quindi a creazione di "pacchetti personalizzati" Ex: http://www.visual-basic.it/articoli/dpDistribDipCR10CIS_ConvMsmMsi.htm

Hai già affrontato il problema e risolto in modo diverso...

Sempre grazie
Ciao
Marco

freeteo Profilo | Guru

>Perfetto!
>Risolti tutti i problemi (pure quello di appoggiarmi su un rs
>anzichè vista o stored).
ok, accetta la risposta così marchiamo il thread come risolto




>Hai già affrontato il problema e risolto in modo diverso...
sincerametne il setup che avevo al tempo (fatto con installshield e Crystal 8.5 però) mi registrava tutto lui, ma non era di mia competenza quindi non saprei risponderti al momento.
L'unica cosa è appunto vedere cosa dice la casa madre a proposito, ti lascio qualche link:
http://service.sap.com/sap/bc/bsp/spn/bobj_download/main.htm
http://www.italy.businessobjects.com/products/reporting/crystalreports/xiresources.asp
http://help.sap.com/content/bobj/overview/index.htm


Ciao.

Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo
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