La Web del Programador: Comunidad de Programadores
 
    Pregunta:  57634 - ERROR EN VB 6 Y CRVIEWER XI
Autor:  Victor Gutierrez
Hola, lo que sucede es q uso VB y CR XI, (crviewer), ya hice el enlace del componente (crviewer.dll) y las referencias (Crystal Reports ActiveX Designer Run Time Library 11; Crystal ActiveX Report Viewer 11; Crystal Reports Designer Library 11). Funcionan, sin embargo al ejecutar las 2 o 3 primeras veces me muestra el reporte como debe ser, pero a la siguiente me vota el Error: Y para q me vuelva a funcionar tengo q cerrar el VB.

" Error '-2147189563(80047cc5) en tiempo de EjecuciĆ³n
Basic Sintaxis is not supported en group or record selection formula "

Tengo el sgte codigo:

Private Sub Mostrar_Report()
'On Error Resume Next
Dim Crystal As CRAXDRT.Application
Dim Report As CRAXDRT.Report

Set Crystal = New CRAXDRT.Application
Set Report = New CRAXDRT.Report
Screen.MousePointer = vbHourglass
Crystal.LogOnServerEx "P2SODBC.dll", "Conecc", "PLANEAMIENTO", "sa", "clave"
Set Report = Crystal.OpenReport(App.Path & "RptPrograma08.rpt", 1)

Report.RecordSelectionFormula = "{@PeriodoSec} = '" & Right(CboANIO, 2) & "." & Left(CboMES, 2) & "." & Left(CboSECCION, 2) & "'"

Report.DiscardSavedData
CrysReportV.ReportSource = Report
CrysReportV.ViewReport

Do While CrysReportV.IsBusy
DoEvents
Loop
CrysReportV.Zoom 100
Set Crystal = Nothing
Screen.MousePointer = vbDefault

End Sub

Alguien podria ayudarme?? Gracias

  Respuesta:  BPA
mmmmmmm no se que tan antiguo sea esto, pero solo veo que mandan parametros para filtrar.... cuando pues a mi me ha funcionado lo siguiente, espero te sirva, el reporte ya tiene su liga a la BD, y el reporte tiene Formula Fields y SQL Expressions Fields, lo cual me hace tener consultas mas faciles segun yo jojojo!

Public Sub ReporteImprime(CodePO As String)

Set crystal = New CRAXDRT.Application

Set report = crystal.OpenReport(App.Path & "ReportsREPORTE.rpt")

report.SQLQueryString = "SELECT * FROM WarehouseStockCodeBars WHERE (POId = '" & CodePO & "') AND (OperId = '6')"
report.DiscardSavedData
report.PrintOut (False)

End Sub