Crystral Report
Publicado por milosvan (1 intervención) el 27/08/2007 17:52:04
Hola amigos necesito saber lo mas antes posible que pasa con este reporte que he creado en crysta, cuando lke envio los parametros desde visual basic me sale el sgte error
"THE VALE OR RANGE YOU ARE ADDING HAS ALREADY EXISTED" he visto cada uno de los campos y todos son string en el boton que ejecuta el reporte hay lo sgte
Private Sub cmdProc_Click()
Dim FrmVistaR As New FrmVistaR
FrmVistaR.PasarParametros TxtCodigo.Text, TxtCodLocal.Text, TxtCodArea.Text, TxtOficina.Text, TxtDenoBien.Text, TxtConciliado.Text
FrmVistaR.Show vbModal
Set FrmVistaR = Nothing
End Sub
y en mi formulario que contiene el CRviewer esta todo este codigo
'variables para el reporte
Private crApp As New CRAXDRT.Application
Private crReport As New CRAXDRT.Report
'variable de conexion
Private Cnx As CRAXDRT.ConnectionProperty
'variables que permiten abrir todas las tablas
Private Tbl As CRAXDRT.DatabaseTables
Private Dbs1 As CRAXDRT.Database
'parametros de envio
Private mstrParametro1 As String
Private mstrParametro2 As String
Private mstrParametro3 As String
Private mstrParametro4 As String
Private mstrParametro5 As String
Private mstrParametro6 As String
'variable booblean
Private mflgContinuar As Boolean
'variable para abrir todas las tablas
Dim Can As Integer
Private Sub Form_Resize()
CRViewer9.Top = 0
CRViewer9.Left = 0
CRViewer9.Height = ScaleHeight
CRViewer9.Width = ScaleWidth
End Sub
Public Sub PasarParametros(sParam1 As String, sParam2 As String, sParam3 As String, sParam4 As String, sParam5 As String, sParam6 As String)
mstrParametro1 = sParam1
mstrParametro2 = sParam2
mstrParametro3 = sParam3
mstrParametro4 = sParam4
mstrParametro5 = sParam5
mstrParametro6 = sParam6
End Sub
Private Sub Form_Load()
Dim crParamDefs As CRAXDRT.ParameterFieldDefinitions
Dim crParamDef As CRAXDRT.ParameterFieldDefinition
On Error GoTo ErrHandler
'Abrir el reporte
Screen.MousePointer = vbHourglass
mflgContinuar = True
Set crReport = crApp.OpenReport("J:\SICOP2006\Proyecto\Reportes\Rpt52_Opc.rpt", 1)
'conexion al crystal desde vb
Can = crReport.Database.Tables.Count
For m = 1 To Can
Set Cnx = crReport.Database.Tables(m).ConnectionProperties("Provider")
Cnx = "SQLOLEDB.1"
Set Cnx = crReport.Database.Tables(m).ConnectionProperties("Data Source")
Cnx = "SERVEROAE1"
Set Cnx = crReport.Database.Tables(m).ConnectionProperties("Initial Catalog")
Cnx = "sinadmol"
Set Cnx = crReport.Database.Tables(m).ConnectionProperties("User ID")
Cnx = "sa"
Set Cnx = crReport.Database.Tables(m).ConnectionProperties("Password")
Cnx = "mibellagenio"
Set Cnx = Nothing
Next m
' Parametros del reporte
Set crParamDefs = crReport.ParameterFields
For Each crParamDef In crParamDefs
Select Case crParamDef.ParameterFieldName
Case "xidusuario"
crParamDef.AddCurrentValue Trim(mstrParametro1)
Case "xlocal"
crParamDef.AddCurrentValue Trim(mstrParametro2)
Case "xarea"
crParamDef.AddCurrentValue Trim(mstrParametro3)
Case "xoficina"
crParamDef.AddCurrentValue Trim(mstrParametro4)
Case "xbien"
crParamDef.AddCurrentValue Trim(mstrParametro5)
Case "xregistro"
crParamDef.AddCurrentValue Trim(mstrParametro6)
End Select
Next
CRViewer9.ReportSource = crReport
CRViewer9.DisplayGroupTree = False
CRViewer9.ViewReport
Screen.MousePointer = vbDefault
Set crParamDefs = Nothing
Set crParamDef = Nothing
Exit Sub
ErrHandler:
If Err.Number = -2147206461 Then
MsgBox "El archivo de reporte no se encuentra, restáurelo de los discos de instalación", vbQuestion, "sicop 2006"
'vbCritical vbOKOnly
Else
MsgBox Err.Description, vbCritical + vbOKOnly
End If
mflgContinuar = False
Screen.MousePointer = vbDefault
End Sub
Private Sub Form_Activate()
If Not mflgContinuar Then Unload Me
End Sub
Private Sub Form_Unload(Cancel As Integer)
Set crReport = Nothing
Set crApp = Nothing
End Sub
espero me puedan ayudar please
"THE VALE OR RANGE YOU ARE ADDING HAS ALREADY EXISTED" he visto cada uno de los campos y todos son string en el boton que ejecuta el reporte hay lo sgte
Private Sub cmdProc_Click()
Dim FrmVistaR As New FrmVistaR
FrmVistaR.PasarParametros TxtCodigo.Text, TxtCodLocal.Text, TxtCodArea.Text, TxtOficina.Text, TxtDenoBien.Text, TxtConciliado.Text
FrmVistaR.Show vbModal
Set FrmVistaR = Nothing
End Sub
y en mi formulario que contiene el CRviewer esta todo este codigo
'variables para el reporte
Private crApp As New CRAXDRT.Application
Private crReport As New CRAXDRT.Report
'variable de conexion
Private Cnx As CRAXDRT.ConnectionProperty
'variables que permiten abrir todas las tablas
Private Tbl As CRAXDRT.DatabaseTables
Private Dbs1 As CRAXDRT.Database
'parametros de envio
Private mstrParametro1 As String
Private mstrParametro2 As String
Private mstrParametro3 As String
Private mstrParametro4 As String
Private mstrParametro5 As String
Private mstrParametro6 As String
'variable booblean
Private mflgContinuar As Boolean
'variable para abrir todas las tablas
Dim Can As Integer
Private Sub Form_Resize()
CRViewer9.Top = 0
CRViewer9.Left = 0
CRViewer9.Height = ScaleHeight
CRViewer9.Width = ScaleWidth
End Sub
Public Sub PasarParametros(sParam1 As String, sParam2 As String, sParam3 As String, sParam4 As String, sParam5 As String, sParam6 As String)
mstrParametro1 = sParam1
mstrParametro2 = sParam2
mstrParametro3 = sParam3
mstrParametro4 = sParam4
mstrParametro5 = sParam5
mstrParametro6 = sParam6
End Sub
Private Sub Form_Load()
Dim crParamDefs As CRAXDRT.ParameterFieldDefinitions
Dim crParamDef As CRAXDRT.ParameterFieldDefinition
On Error GoTo ErrHandler
'Abrir el reporte
Screen.MousePointer = vbHourglass
mflgContinuar = True
Set crReport = crApp.OpenReport("J:\SICOP2006\Proyecto\Reportes\Rpt52_Opc.rpt", 1)
'conexion al crystal desde vb
Can = crReport.Database.Tables.Count
For m = 1 To Can
Set Cnx = crReport.Database.Tables(m).ConnectionProperties("Provider")
Cnx = "SQLOLEDB.1"
Set Cnx = crReport.Database.Tables(m).ConnectionProperties("Data Source")
Cnx = "SERVEROAE1"
Set Cnx = crReport.Database.Tables(m).ConnectionProperties("Initial Catalog")
Cnx = "sinadmol"
Set Cnx = crReport.Database.Tables(m).ConnectionProperties("User ID")
Cnx = "sa"
Set Cnx = crReport.Database.Tables(m).ConnectionProperties("Password")
Cnx = "mibellagenio"
Set Cnx = Nothing
Next m
' Parametros del reporte
Set crParamDefs = crReport.ParameterFields
For Each crParamDef In crParamDefs
Select Case crParamDef.ParameterFieldName
Case "xidusuario"
crParamDef.AddCurrentValue Trim(mstrParametro1)
Case "xlocal"
crParamDef.AddCurrentValue Trim(mstrParametro2)
Case "xarea"
crParamDef.AddCurrentValue Trim(mstrParametro3)
Case "xoficina"
crParamDef.AddCurrentValue Trim(mstrParametro4)
Case "xbien"
crParamDef.AddCurrentValue Trim(mstrParametro5)
Case "xregistro"
crParamDef.AddCurrentValue Trim(mstrParametro6)
End Select
Next
CRViewer9.ReportSource = crReport
CRViewer9.DisplayGroupTree = False
CRViewer9.ViewReport
Screen.MousePointer = vbDefault
Set crParamDefs = Nothing
Set crParamDef = Nothing
Exit Sub
ErrHandler:
If Err.Number = -2147206461 Then
MsgBox "El archivo de reporte no se encuentra, restáurelo de los discos de instalación", vbQuestion, "sicop 2006"
'vbCritical vbOKOnly
Else
MsgBox Err.Description, vbCritical + vbOKOnly
End If
mflgContinuar = False
Screen.MousePointer = vbDefault
End Sub
Private Sub Form_Activate()
If Not mflgContinuar Then Unload Me
End Sub
Private Sub Form_Unload(Cancel As Integer)
Set crReport = Nothing
Set crApp = Nothing
End Sub
espero me puedan ayudar please
Valora esta pregunta


0