CRYSTAL REPORTS ZERANDO CAMPOS

JOWALDNER 30/08/2011 14:38:35
#382812
Estou com um problema aqui tentando a geração de relatórios com Crystal 8.
Em determinada linha(aleatoriamente) o valor do produto esta ficando zerado. E quando abro o rpt eponho no preview, lá estão todos os produtos certinho como gravado no banco. E quando chamo pelo vb6 nao aparece, fica zerado [Ô]0,00[Ô]
Nao sao todas as linhas, até agr vi apenas uma em várias. Mas toda venda acontece isso.

Estou chamando o relatorio assim

Set dscont = New ADODB.Recordset
dscont.Open [Ô]select count(codorc) as total from detorcamentos where codorc = [Ô] & varNumeroOrc, con, adOpenKeyset, adLockOptimistic
If dscont!total < 10 Then
Report1.ReportFileName = App.Path & [Ô]\Orcamento.rpt[Ô]
Else
Report1.ReportFileName = App.Path & [Ô]\OrcamentoMeiaFolha.rpt[Ô]
End If
[ô]sleep (1000)

Report1.SelectionFormula = [Ô]{orcamento.codorc} = [Ô] & Val(varNumeroOrc)
Report1.WindowShowProgressCtls = True
Report1.WindowShowExportBtn = True
Report1.WindowShowPrintBtn = True
Report1.WindowShowPrintSetupBtn = True
Report1.WindowShowRefreshBtn = True
Report1.WindowShowRefreshBtn = True
Report1.WindowShowZoomCtl = True
Report1.WindowShowSearchBtn = True
Report1.WindowState = crptMaximized
Report1.Action = 1


Alguem sabe me explicar o porque disso? Estou usando Mysql
JOWALDNER 30/08/2011 16:05:22
#382819
Alguem?
ALVAROVB2009 30/08/2011 16:26:23
#382823
JOWALDNER realmente é meio complicado, más faz assim, não mande o sql para o crystal executar, pois ele pode apresentar mesmo esses problemas. O q vc pode fazer é mandar os dados já executados, pega um exemplo na minha dúvida - http://www.vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=abrir&varID=382454&varWorld= - e veja que eu passo o recordset com os dados prontos para o crystal e nisso ele apenas tem o trabalho de exibir.
Eu uso o crystal 9, e o jeito q estou mandando é pelo command do crystal, más tem a opção do recordset, acho q vc pode ver se consegue alguma coisa.

Qqer coisa posta ai, blz ?!
JOWALDNER 30/08/2011 17:25:40
#382828
ALVAROVB2009, obrigado pelo retorno. Mas seguinte, nao entendi como faz isso. Como eu monto o arquivo rpt assim?
ALVAROVB2009 30/08/2011 18:21:38
#382832
Não sei se vc usa ado

O código ficaria assim
Dim Rs as adodb.recordset
Set Rs = New ADODB.Recordset
Rs.Open [Ô]seu comando sql[Ô], conexao com o seu banco , adOpenKeyset, adLockReadOnly

Ai procure no report1, uma opção de discardsavedata e outra opção Database.SetDataSource ou algo assim e achando passa o rs para ela, senão procure uma opção SQLQueryString e coloque o comando do sql, acho que isso pode te ajudar
JOWALDNER 31/08/2011 09:38:08
#382882
Pode me dar um exemplo de como faço isso?
ALVAROVB2009 01/09/2011 09:44:54
#383038
Ajudo sim, vc usa DAO ou ADO na sua codificação?
Tópico encerrado , respostas não são mais permitidas