RELATORIO NAO ATUALIZA

USUARIO.EXCLUIDOS 24/11/2006 00:01:04
#186021
Fiz alguns relatórios em crystal Report XI.

na máquina de desenvolvimento funciona perfeitamente, porem quando instalado em outras máquinas, os valores não são atualizados.

por exemplo

um relatório de vendas

na minha máquina mostra 40,00
na outras máquinas mostra 38,00

fui verificar e vi que a última linha não está sendo somada.
agora se eu minimizar o relatório e maximizar e pressionar o refresh ele atualizar para 40,00.

já coloquei um refres na abertura e mesmo assim não resolveu.

Alguém já viu isso.


USUARIO.EXCLUIDOS 24/11/2006 00:33:38
#186024
ArnaldoCruz.

A propriedade Report.DiscardSavedData acho q resolvera o seu problema. Esse código foi utilizado com o crystal 8


Public Sub prod_forn(cr As CRViewer)

Dim dir As String
c_for = "{tab_pre_upc.id_fornecedor} = " & CInt(v_data) & ""
dir = App.Path
Set Report = cr_ap.OpenReport(dir + "\produtos_fornecedor.rpt")
Report.PaperOrientation = crLandscape
Report.PaperSize = crPaperA4
Report.RecordSelectionFormula = c_for
Report.DiscardSavedData
cr.ReportSource = Report
cr.ViewReport

End Sub




Abraços..

USUARIO.EXCLUIDOS 24/11/2006 14:36:45
#186175
percebi outra falha, qdo existe somente um registro para exibição, o relatório vem em branco, para mostrar o regsitro eu altero o zoom e clico no refresh ai ele aparece.

O código para abrir o relatório segue abaixo

Dim connection As New ADODB.connection
Dim rs As New ADODB.Recordset
Dim CRXApplication As New CRAXDRT.Application
Dim CRXReport As New CRAXDDRT.Report
Dim CRXDatabase As CRAXDRT.Database
Set CRXApplication = CreateObject("CrystalRuntime.Application.11")
1 connection.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0;" & _
"Persist Security info=False;Data Source= C:\Supermarket\Supermarket.mdb;Mode=Read"
connection.Open
2 Set CRXReport = CRXApplication.OpenReport(App.Path & "\" & Relatorio, 0)
3 Set CRXDatabase = CRXReport.Database
15 CRViewer.Height = Screen.Height
16 CRViewer.Width = Screen.Width
17 CRViewer.DisplayBorder = True
18 CRViewer.DisplayTabs = False
19 CRViewer.EnableDrillDown = False
20 CRViewer.EnableNavigationControls = True
21 CRViewer.EnableCloseButton = True
22 CRViewer.DisplayGroupTree = False
23 CRViewer.DisplayBackgroundEdge = True
24 CRViewer.EnableCloseButton = True
25 CRViewer.EnableAnimationCtrl = False
26 CRViewer.Top = 0
27 CRViewer.Left = 0
CRViewer.ReportSource = CRXReport
28 CRViewer.ViewReport
30 Do While CRViewer.IsBusy
31 DoEvents
32 Loop
33 Set rs = Nothing
34 Set CRXApplication = Nothing
35 Set CRXReport = Nothing
36 CRViewer.Zoom (75)
37 CRViewer.Refresh
38 Me.Show
Me.MousePointer = 0
Exit Sub
Trata_Erro1:
Me.MousePointer = 0
Set rs = Nothing
Set CRXApplication = Nothing
Set CRXReport = Nothing
MsgBox "Erro número #" & Str$(Err.Number) & " " & (Err.Description) & " na Linha " & Str$(Erl)

Observem que

Dim connection As New ADODB.connection
Dim rs As New ADODB.Recordset

Não está sendo usado, talves o erro esteja ai

Os relatórios não são montado estilo RDC, são feitos fora, no sistema eu só mantenho um formulário com o controle Crviewer,

USUARIO.EXCLUIDOS 02/12/2006 00:01:48
#187552
Consegui galera

é só tirar a parte do código abaixo, e porque

Simples: os relatórios são feito fora, portanto eles já estão setados a uma base de dados, não precisando setar base nem tão pouco registro, no máximo um parametro.

Dim connection As New ADODB.connection
Dim rs As New ADODB.Recordset

connection.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0;" & _
"Persist Security info=False;Data Source= C:\Supermarket\Supermarket.mdb;Mode=Read"
connection.Open

O código acima seria necessário se a construção do relatório fosse feito em um formulário do crystal dentro do proprio projeto.



Tópico encerrado , respostas não são mais permitidas