Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Crystal Report y VB 6

Estas en el tema de Crystal Report y VB 6 en el foro de Visual Basic clásico en Foros del Web. Hola a todos: se acabaron mis vacaciones, primer día y el marrón de siempre que no consigo resolver... Necesito que alguien me explique pasito a ...
  #1 (permalink)  
Antiguo 31/07/2006, 01:37
 
Fecha de Ingreso: marzo-2005
Mensajes: 276
Antigüedad: 19 años, 1 mes
Puntos: 0
Pregunta Crystal Report y VB 6

Hola a todos:
se acabaron mis vacaciones, primer día y el marrón de siempre que no consigo resolver... Necesito que alguien me explique pasito a pasito cómo puedo hacer para visualizar un report hecho en crystal report 9 utilizando el control CRViewer pq me esta venga a decir error de inicio de sesión del usuario tal y esta bien... quisiera hacer una prueba desde 0...
  #2 (permalink)  
Antiguo 31/07/2006, 07:56
 
Fecha de Ingreso: febrero-2003
Mensajes: 40
Antigüedad: 21 años, 2 meses
Puntos: 0
Reporte con crviewer

En este link tenés un ejemplo completo de como utilizarlo.

http://www.elguille.info/vb/crystal/...DanielMaya.htm
__________________
Yayi :adios:
  #3 (permalink)  
Antiguo 01/08/2006, 02:08
 
Fecha de Ingreso: marzo-2005
Mensajes: 276
Antigüedad: 19 años, 1 mes
Puntos: 0
Bueno, voy a ponerme seria a ver si alguien puede ayudarme... (estoy desesperada ya). Tengo dos tablas una es Clientes (bueno, esto es una vista) y la otra es Ofertas, las relaciono de esta manera: Clientes.codigo = Ofertas.CodCliente. En el SQL he comprobado los permisos de ambas tablas para un usuario llamado Leiatest y en ambas tengo permisos para hacer SELECT, INSERT, UPDATE y DELETE. Por otra parte tengo un informe hecho en crystal que se llama report1.rpt, empecé con una de las tablas, la de clientes concretamente, a probar y conseguí visualizar los datos, hasta aquí todo ok pero al incluir la segunda tabla en el report me da el siguiente error:

Qué es lo que tengo mal??? yo creo que es de la tabla pero cómo puedo saberlo??? si se supone que tengo todos los permisos necesarios??? de hecho antes de visualizar el informo inserto en la tabla de ofertas todos los datos que necesito y desde crystal report visualizo bien el informe...

Este es el código que tengo:

Private Sub Form_Resize()

CRViewer.Top = 0
CRViewer.Left = 0
CRViewer.Height = ScaleHeight
CRViewer.Width = ScaleWidth

End Sub

Private Sub Form_Load()

Dim crystal As New CRAXDRT.Application
Dim Report As New CRAXDRT.Report

Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset

With conn
' Proveedor de datos Microsoft OLE DB para SQL Server
.Provider = "SQLOLEDB"
.ConnectionString = "server=SERVIDOR5;database=LEIATEST;uid=leiatest;p wd=sa"

End With

conn.Open

'ejecutar = "SELECT * FROM clientes, ofertas"

ejecutar = "SELECT Ofertas.*, clientes.* FROM Ofertas INNER JOIN clientes ON Ofertas.codcliente = clientes.Codigo WHERE Ofertas.id =" & Form1.num_O.Text
MsgBox ejecutar
Set rs = conn.Execute(ejecutar)

'rs.Open "SELECT * FROM Clientes, Ofertas ", conn, adOpenStatic, adLockReadOnly

CRViewer.DisplayBorder = False 'MAKES REPORT FILL ENTIRE FORM
CRViewer.DisplayTabs = False 'THIS REPORT DOES NOT DRILL DOWN, NOT NEEDED
CRViewer.EnableDrillDown = False 'REPORT DOES NOT SUPPORT DRILL-DOWN
CRViewer.EnableRefreshButton = False 'ADO RECORDSET WILL NOT CHANGE, NOT NEEDED
'Set crystal = New CRAXDRT.Application
Set Report = crystal.OpenReport(App.Path & "\report1.rpt")

Report.DiscardSavedData
Report.Database.SetDataSource rs

CRViewer.ReportSource = Report
CRViewer.ViewReport

Do While CRViewer.IsBusy
DoEvents
Loop


CRViewer.Zoom 94

rs.Close
Set rs = Nothing

conn.Close
Set conn = Nothing

Set crystal = Nothing
Set Report = Nothing

End Sub

Espero que alguien pueda ayudarme Snif, snif...
  #4 (permalink)  
Antiguo 01/08/2006, 17:31
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
amore mio... tu error es al logonearte (por cierto, termino inexistente en la lengua española pero que todos los usan) al servidor SQL Server.

Supongo (por iluminación de Dios) que tu error está aqui:

.ConnectionString = "server=SERVIDOR5;database=LEIATEST;uid=leiate st;p wd=sa"

espacio entre la 'p' y la 'w'

Un beso
  #5 (permalink)  
Antiguo 03/08/2006, 00:54
 
Fecha de Ingreso: marzo-2005
Mensajes: 276
Antigüedad: 19 años, 1 mes
Puntos: 0
Esos espacios aparecieron al copiar y pegar pero en realidad no existen... y sigo sin conseguir que salga bien... Alguien sabe otra manera de hacerlo???
(deseperated)
  #6 (permalink)  
Antiguo 25/02/2008, 20:04
Avatar de Darth_Sith  
Fecha de Ingreso: mayo-2007
Ubicación: Esperando noticias......
Mensajes: 1
Antigüedad: 17 años
Puntos: 0
Re: Crystal Report y VB 6

Hola estimada.
La verdad es que en mi caso me paso casi igual a ti. Me puse a buscar en la matriz y encontré esto y lo adapte ami código.

Adaptarlo a tus requisitos y listo reina.

'Abrir el reporte
Screen.MousePointer = vbHourglass
Set CnnSql = Nothing
Set CnnSql = New ADODB.Connection
CnnSql.ConnectionTimeout = 1024
CnnSql.CommandTimeout = 1024
CnnSql.Open "dsn=tu_dsn;uid=tsuario;pwd=tu_password;"
SQL = " Tu_query_sql"
DoEvents
Set tRs = New Recordset
tRs.Open SQL, CnnSql, adOpenDynamic, adLockOptimistic
DoEvents


CRViewer.DisplayBorder = False 'MAKES REPORT FILL ENTIRE FORM
CRViewer.DisplayTabs = False 'THIS REPORT DOES NOT DRILL DOWN, NOT NEEDED
CRViewer.EnableDrillDown = False 'REPORT DOES NOT SUPPORT DRILL-DOWN
CRViewer.EnableRefreshButton = False 'ADO RECORDSET WILL NOT CHANGE, NOT NEEDED
CRViewer.DisplayGroupTree = False

Set Crystal = New CRAXDRT.Application 'MANAGES REPORTS

Set Report = Crystal.OpenReport(App.Path & "\tu_reports.rpt") 'OPEN OUR REPORT

Report.DiscardSavedData 'CLEARS REPORT SO WE WORK FROM RECORDSET
Report.Database.SetDataSource tRs 'LINK REPORT TO RECORDSET
CRViewer.ReportSource = Report 'LINK VIEWER TO REPORT
CRViewer.ViewReport 'SHOW REPORT

Do While CRViewer.IsBusy 'ZOOM METHOD DOES NOT WORK WHILE
DoEvents 'REPORT IS LOADING, SO WE MUST PAUSE
Loop 'WHILE REPORT LOADS.
CRViewer.Zoom 80

tRs.Close 'ALL BELOW HERE IS CLEANUP
Set rs = Nothing

CnnSql.Close
Set CnnSql = Nothing

Set Crystal = Nothing
Set Report = Nothing
Screen.MousePointer = vbDefault

Espero te sirva de algo.

Yo lo adapte de un mysql a crystal reports con visual basic.

Un beso suerte.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:28.