Crear PDF desde Visual 6.0 con Crystal Report 8.5

Buen día experto, tengo el siguiente problema, quiero exportar un reporte hecho en visual 6 con Crystal 8.5 a formato PDF, pero quiero hacerlo directamente desde visual, no desde el crystal escogiendo la opcion exportar
tengo el siguiente codigo en mi aplicación
Rpt.ReportFileName = vgsRutaRPT + "reporte.rpt"
            If TIPO = 1 Then Rpt.Destination = crptToFile
            If TIPO = 1 Then Rpt.PrintFileName = vgsRutaRPT + txtSerie + ".pdf"
            Rpt.WindowShowExportBtn = True: Rpt.WindowShowPrintBtn = True:    Rpt.WindowShowZoomCtl = True: Rpt.WindowShowPrintSetupBtn = True:
If TIPO = 1 Then Rpt.PrintFileType = crptDIF
Rpt.WindowShowRefreshBtn = True
             If TIPO = 2 Then Me.Rpt.Action = 0
en la parte de PrintfileType no hay la opcion de exportar a PDF, tal como esta si crea el archivo pero no lo puedo abrir ya que m dice que no esta codificado,, por famor me gustaria que me ayudes indicandome cual seria la solución.
Saludos
Christian Aroni
Guayaquil-Ecuador

1 Respuesta

Respuesta
1
Hay un opcion en el ReportViewer con la cual le dices que imprima a PDF, con eso no debes siquiera mostrar el reporte.
Gracias por tu respuesta experto.. pero ayudame con algo .. yo no he manejado ese control.. solo el control del Crystal...  te envio la el codigo de la impresión del reporte.. por favor ayudame indicando cual seria el cambio usando el ReportViewer
*********************
Dim CnstateConector As ADODB.Connection
Dim TempCommand   As New ADODB.Command
Dim TempObjRecord  As New ADODB.Recordset
Dim crpRpt As CRAXDRT.Report
Dim texto As String
Dim sql As String
Dim Ifila As Integer
                 Set CnstateConector = New ADODB.Connection
                     With CnstateConector
                         .Provider = "Microsoft.Jet.OLEDB.4.0"
                         .ConnectionString = "User ID=" _
                                             & ";Password=" _
                                              & ";Data Source = C:\Windows\System\Temporales.mdb"
                          .Open
                        End With
            texto = "Delete * from TEMP_PRETRIP"
            CnstateConector.Execute texto
            texto = "Delete * from TEMP_PRETRIP"
            CnstateConector.Execute texto
            lbl_tipo.Caption = "RH"
            sql = "insert into TEMP_PRETRIP values("
            sql = sql + "'" + Lbl_PreTrip.Caption + "','" + txtSerie.Text + "','" + Format(GTMPti, "dd/mm/yyyy") + "','" + lbl_tipo.Caption + "',"
            If OPT20.Value = True Then
                  sql = sql + "'20',"
                Else
                   sql = sql + "'40',"
            End If
            sql = sql + "" + CStr(Txt_Texto(43).Text) + ","
            If Chk_opcion(0).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'OK',"
            sql = sql + "" + CStr(Val(Txt_Texto(0).Text)) + "," + CStr(Val(Txt_Texto(1).Text)) + ","
            If Chk_opcion(1).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(2).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            sql = sql + "" + CStr(Format(Txt_Texto(2).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(3).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(4).Text, "###0.00")) + ","
            sql = sql + "" + CStr(Format(Txt_Texto(5).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(6).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(7).Text, "###0.00")) + ","
            sql = sql + "" + CStr(Format(Txt_Texto(8).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(9).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(10).Text, "###0.00")) + ","
            If Chk_opcion(3).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(4).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(5).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            sql = sql + "" + CStr(Format(Txt_Texto(11).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(12).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(13).Text, "###0.00")) + ","
            sql = sql + "" + CStr(Format(Txt_Texto(14).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(15).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(16).Text, "###0.00")) + ","
            sql = sql + "" + CStr(Format(Txt_Texto(17).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(18).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(19).Text, "###0.00")) + ","
            If Chk_opcion(6).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(7).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            sql = sql + "" + CStr(Val(Txt_Texto(20).Text)) + "," + CStr(Val(Txt_Texto(21).Text)) + ","
            If Chk_opcion(8).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(9).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(10).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(11).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(12).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(13).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(14).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(15).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            sql = sql + "" + CStr(Val(Txt_Texto(22).Text)) + "," + CStr(Val(Txt_Texto(23).Text)) + ","
            sql = sql + "'" + Trim(Txt_Texto(24).Text) + "','" + Trim(Txt_Texto(25).Text) + "-" + Trim(Txt_Texto(26).Text) + "','" + Trim(Txt_Texto(28).Text) + "','" + Trim(Txt_Texto(29).Text) + "',"
            sql = sql + "'" + Trim(Txt_Texto(27).Text) + "',"
            If Chk_opcion(16).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(17).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(18).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(19).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(20).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(21).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(22).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(23).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(24).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(25).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(26).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(27).Value = 1 Then sql = sql + "'X'," Else sql = sql + "null,"
            If Chk_opcion(28).Value = 1 Then sql = sql + "'X'," Else sql = sql + "null,"
            If Chk_opcion(29).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "null,"
            If Chk_opcion(30).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(31).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(32).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(33).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(34).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            sql = sql + "" + CStr(Val(Txt_Texto(30).Text)) + ","
            If Chk_opcion(35).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(36).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(37).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            If Chk_opcion(38).Value = 1 Then sql = sql + "'OK'," Else sql = sql + "'X',"
            sql = sql + "'" + Txt_Texto(31).Text + "',"
            If Trim(Txt_Texto(32).Text) = "" Then sql = sql + "null," Else sql = sql + "'" + Trim(Txt_Texto(32).Text) + "',"
            If Trim(Txt_Texto(33).Text) = "" Then sql = sql + "null," Else sql = sql + "'" + Trim(Txt_Texto(33).Text) + "',"
            If Trim(Txt_Texto(34).Text) = "" Then sql = sql + "null," Else sql = sql + "'" + Trim(Txt_Texto(34).Text) + "',"
            If Trim(Txt_Texto(35).Text) = "" Then sql = sql + "null," Else sql = sql + "'" + Trim(Txt_Texto(35).Text) + "',"
            sql = sql + "" + CStr(Val(Txt_Texto(36).Text)) + ","
            sql = sql + "" + CStr(Format(Txt_Texto(37).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(38).Text, "###0.00")) + ","
            sql = sql + "" + CStr(Format(Txt_Texto(39).Text, "###0.00")) + "," + CStr(Format(Txt_Texto(40).Text, "###0.00")) + ","
            If Trim(Txt_Texto(41).Text) = "" Then sql = sql + "null)" Else sql = sql + "'" + Trim(Txt_Texto(41).Text) + "')"
            CnstateConector.Execute sql
            Rpt.DataFiles(0) = "C:\Windows\system\Temporales.mdb"
            Me.Rpt.Connect = "C:\Windows\system\Temporales.mdb"
            Rpt.ReportFileName = vgsRutaRPT + "rpt_PreTrip.rpt"
            If TIPO = 1 Then Rpt.Destination = crptToFile
            If TIPO = 2 Then Rpt.Destination = crptToWindow
            If TIPO = 1 Then Rpt.PrintFileName = vgsRutaRPT + txtSerie + ".pdf"
            '************************************
            If TIPO = 1 Then Rpt.PrintFileType = crptDIF
            '************************************
            Rpt.WindowShowExportBtn = True: Rpt.WindowShowPrintBtn = True: Rpt.WindowShowZoomCtl = True: Rpt.WindowShowPrintSetupBtn = True: Rpt.WindowShowRefreshBtn = True
             Me.Rpt.Action = 0
ahi  esta mister el codigo.. m crea el archivo pero no lo puedo abrir.. lo q estan entre asteriscos es una prpiedad que exporta el archivo. pero justo no aparece para mandarlo a pdf... 
como seria el cambio usando el control que me idicastes.. imagino que tengo q agregar el ocx a la forma y ponerla en el formulario.. y de alli cual seria el cambio en el codigo fuente.
Saludos
christian Aroni
No estoy muy seguro, pero es posible que desde VB6 r si algno puedas exportar con Crystal Report a PDF, eso si esta contemplado en la version de .NET.
Si tienes la opcion de exportar a PDF desde CR, entonces coloca el reporte en visible = flase, para que no se muestre en la pantalla que es loq ue necesitas.
Pero como hacer para que exporte de manera automatica a PDF ... no lo se tendria s que buscar en google a ver si encuentras algo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas