Crystal Report - PASAR PARAMETRO NUEVO A CRYSTAL DESDE CODIGO VB

 
Vista:

PASAR PARAMETRO NUEVO A CRYSTAL DESDE CODIGO VB

Publicado por Juan Carlos (2 intervenciones) el 01/03/2005 18:48:56
Hola q tal. Antes de nada, muchas gracias por tu tiempo.

Mi problema es que tengo un reporte en crystal 8. en VB 6 quiero pasar un parametro (escribo un mes cualquiera en el 'inputbox' de VB) al informe para q simplemente me aparezca dicho mes en el encabezado del informe.
El problema es que el mes que introduzco no esta relacionado con ningun campo, es un parametro nuevo que quiero pasar a crystal y que no existe.

Muchas gracias por tu ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:PASAR PARAMETRO NUEVO A CRYSTAL DESDE CODIGO V

Publicado por Gerardo (571 intervenciones) el 01/03/2005 21:17:50
Ke tal Juan.
Suponiendo ke estás utilizando Crystal Report Control de VB, te sugiero ke simplemente crees una FORMULA en CR (estoy suponiendo ke se llamaria @MES) y a través de la siguiente instrucción le envias el dato:

CR1.Formulas(0) = "MES = '" & VarMes & "'"

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PASAR PARAMETRO NUEVO A CRYSTAL DESDE CODIGO V

Publicado por Juan Carlos (2 intervenciones) el 02/03/2005 07:47:22
Gracias por tu ayuda Gerardo, funcionó correctamente.

Un Saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PASAR PARAMETRO NUEVO A CRYSTAL DESDE CODIGO V

Publicado por Hernan (4 intervenciones) el 10/03/2005 15:57:00
Que tal Gerardo??
Estoy con el mismo probelma que tenia Juan Carlos, pero soy nuevo con esto del C.R. 8.0.
Para hacer pruebas en un boton de comando de V.B. 6, estoy colocando:
Private Sub Command1_Click()
VarMes = 11
CrystalReport1.Formulas(0) = "MES = '" & VarMes & "'"
CrystalReport1.PrintReport
End Sub

Y en C.R. cree un Campo de Parametro llamado MES de tipo Cadena.
Inserto el campo en el reporte y en la vista previa me pide un valor, hasta aqui todo bien.
El problema es cuando hago clic en el boton de comando de V.B. No muestra el reporte, pero si elimino la linea:
CrystalReport1.Formulas(0) = "MES = '" & VarMes & "'"
Pide el valor del MES para el reporte.

Mi pregunta es: Que estoy haciendo mal y como lo corrijo???
Les agradezco en lo que me puedan ayudar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PASAR PARAMETRO NUEVO A CRYSTAL DESDE CODIGO V

Publicado por Gerardo (571 intervenciones) el 10/03/2005 19:14:03
Ke tal Hernan.

1.- No veo ke estes indicando la ruta y nombre del reporte.
2.- El valor ke estás enviando no es hacia un campo parametro, sino a una formula.

Te envio el código (siguiendo tus lineas) con el ke hice una prueba teniendo una campo Formula (@MES) y un campo parametro (?MES) en el reporte Report1.rpt:

VarMes = 11
CrystalReport1.ReportFileName = App.Path & "\Report1.rpt"
CrystalReport1.Formulas(0) = "MES = '" & VarMes & "'"
CrystalReport1.ParameterFields(0) = "MES;" & VarMes & ";TRUE"
CrystalReport1.PrintReport

Claro está ke puedes eligir FORMULAS o PARAMETROS, según te convenga.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PASAR PARAMETRO NUEVO A CRYSTAL DESDE CODIGO V

Publicado por Hernan (4 intervenciones) el 10/03/2005 19:24:53
Muchas Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PASAR PARAMETRO NUEVO A CRYSTAL DESDE CODIGO V

Publicado por Carlos (4 intervenciones) el 11/03/2005 05:30:47
Hola:
Mira tengo un problema parecido a los leidos, pero en mi caso yo tengo una tabla llamada cheques, las cuales tiene los campos num_cheque,fecha, valor, emitido.
Bueno hago el reporte con crystal report 4.6 y ahi no coloco ninguna formula.
Y desde visual en un form ingreso dos fechas dd-mm-yyyyy y con ellas hago una query donde le digo que haga un between entre las dos fechas.
Y el resultado lo envio a selectionformula, pera la me arroja un error de formula
El codigo que tengo es el siguiente

Private Sub mostrarcheques_Click()
Dim query As String

query = "SELECT * FROM cheques_girados " _
& "WHERE fecha Between #" _
& Format(mes1.text, "dd-mm-yyyy") _
& "# And #" _
& Format(mes2.text, "dd-mm-yyyy") & "#"
MsgBox query
acces.Execute query

MousePointer = 11
vercheques.reporte.ReportFileName = App.Path + "\cheques.rpt"
vercheques.reporte.WindowTitle = "Listado de Cheques Girados por Procomar"
vercheques.reporte.Destination = 0
vercheques.reporte.SelectionFormula = "{cheques.fecha}=" + query + " "
vercheques.reporte.Action = 0
vercheques.reporte.WindowState = crptMaximized
MousePointer = 0
End Sub

que es lo que hago mal?
Y si tuviese que hacer una formula o poner parametros en el crystal como lo haria ya que no entiendo mucho al respecto.

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PASAR PARAMETRO NUEVO A CRYSTAL DESDE CODIGO V

Publicado por Gerardo (571 intervenciones) el 11/03/2005 19:29:06
Ke tal Carlos.

Lo ke vas a enviar a 'SelectionFormula' no es una sentencia SQL y mucho menos como la estás enviando ya ke estás creando una cadena más o menos asi:

vercheques.reporte.SelectionFormula = "{cheques.fecha} = cheques.fecha"SELECT * FROM cheques_girados
WHERE fecha Between #20-01-2005# And #30-01-2005#"

Mal no?

1.- No se envia una sentencia SQL "Selection Formula" de CR.
2.- Es muy util entrar al "Selection Formula" de CR y desde ahí crear la cadena ke filtrará a dicho reporte ya ke te darás cuenta del formato ke usa dependiendo del tipo de dato, la cadena creada es como se enviará desde x ejemplo VB.

Estoy viendo ke tu Text1 lo nombras como mes, espero ke ahí estes introduciendo un valor de tipo fecha, si así fuese te mensiono lo siguiente:

El formato ke usa CR para fecha es (YYYY,MM,DD), o sea, (AÑO coma MES coma DIA) , por lo ke la cadena ke enviarias seria como sigue:

VarFecha1 = '2005,01,20'
VarFecha2 = '2005,01,30'

vercheques.reporte.SelectionFormula = "{cheques.fecha}>=date(" & VarFecha1 & ") AND "{cheques.fecha}<=date(" & VarFecha2 & ")"

Saludos.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar