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