Nombre de reporte al imprimir reporte a PDF
Publicado por Bely (2 intervenciones) el 21/02/2009 14:55:19
Hola a todos!
Espero puedan ayudarme, muchas gracias a todos desde ya !!!
Quiero imprimir estados de cuenta de clientes en forma masiva en un formato PDF, ya tengo un 90% avanzado pero me falta un "pequeño detalle": al convertir a pdf todos los estados de cuenta se imprimen con un mismo nombre, lo cual hace que los archivos se sobreescriban.
Por favor si saben qué debo agregar o lo que estos haciendo mal, hay algún parámetro que pongo mal en el OpenReport???
Lo que tengo es:
- Convertidor a PDF Adobe Acrobat 9, está configurado en las preferencias de usuario para guardar en una determinada ruta y que no use fuentes del sistema
- Un vista que jala datos de todos los EECC de los clientes
- Un reporte que mostrará el EECC (jala datos de la vista)
- Un formulario con el botón para imprimir en PDF
En el botón tengo el siguiente código:
Private Sub cmdImprimirPDF_Click()
Dim dbs As Database
Dim rst As Recordset
Dim strImpresoraActual, strSQL, strCuentaCliente, strReporte As String
Dim prtLoop As Printer
Dim X As Integer
'BUSCAR LA IMPRESORA QUE SE LLAME Adobe pdf
For Each prtLoop In Application.Printers
If Application.Printers.Item(X).DeviceName = "Adobe PDF" Then
Exit For
End If
X = X + 1
Next prtLoop
Set Application.Printer = Application.Printers(X)
Set prtDefault = Application.Printer
strImpresoraActual = Application.Printer.DeviceName
' CONEXIÓN A LA BASE DE DATOS Y ABRIR LA TABLA
strSQL = "SELECT DISTINCT CUENTA_CLIENTE FROM v_EstadoCuenta"
Set dbs = OpenDatabase("D:Generación de EECCEstado de cuenta.mdb")
Set rst = dbs.OpenRecordset(strSQL)
' SI NO HAY REGISTROS SALIR DEL PROGRAMA
If rst.RecordCount = 0 Then
rst.Close
Set rst = Nothing
Exit Sub
End If
rst.MoveLast
rst.MoveFirst
' BARRER CON TODOS LOS CLIENTES
While Not rst.EOF
strCuentaCliente = rst!CUENTA_CLIENTE
strReporte = "Reporte EECC"
DoCmd.OpenReport strReporte, acViewNormal, , "[CUENTA_CLIENTE] = '" & strCuentaCliente & "'"
rst.MoveNext
Wend
rst.Close
Set rst = Nothing
End Sub
Espero puedan ayudarme, muchas gracias a todos desde ya !!!
Quiero imprimir estados de cuenta de clientes en forma masiva en un formato PDF, ya tengo un 90% avanzado pero me falta un "pequeño detalle": al convertir a pdf todos los estados de cuenta se imprimen con un mismo nombre, lo cual hace que los archivos se sobreescriban.
Por favor si saben qué debo agregar o lo que estos haciendo mal, hay algún parámetro que pongo mal en el OpenReport???
Lo que tengo es:
- Convertidor a PDF Adobe Acrobat 9, está configurado en las preferencias de usuario para guardar en una determinada ruta y que no use fuentes del sistema
- Un vista que jala datos de todos los EECC de los clientes
- Un reporte que mostrará el EECC (jala datos de la vista)
- Un formulario con el botón para imprimir en PDF
En el botón tengo el siguiente código:
Private Sub cmdImprimirPDF_Click()
Dim dbs As Database
Dim rst As Recordset
Dim strImpresoraActual, strSQL, strCuentaCliente, strReporte As String
Dim prtLoop As Printer
Dim X As Integer
'BUSCAR LA IMPRESORA QUE SE LLAME Adobe pdf
For Each prtLoop In Application.Printers
If Application.Printers.Item(X).DeviceName = "Adobe PDF" Then
Exit For
End If
X = X + 1
Next prtLoop
Set Application.Printer = Application.Printers(X)
Set prtDefault = Application.Printer
strImpresoraActual = Application.Printer.DeviceName
' CONEXIÓN A LA BASE DE DATOS Y ABRIR LA TABLA
strSQL = "SELECT DISTINCT CUENTA_CLIENTE FROM v_EstadoCuenta"
Set dbs = OpenDatabase("D:Generación de EECCEstado de cuenta.mdb")
Set rst = dbs.OpenRecordset(strSQL)
' SI NO HAY REGISTROS SALIR DEL PROGRAMA
If rst.RecordCount = 0 Then
rst.Close
Set rst = Nothing
Exit Sub
End If
rst.MoveLast
rst.MoveFirst
' BARRER CON TODOS LOS CLIENTES
While Not rst.EOF
strCuentaCliente = rst!CUENTA_CLIENTE
strReporte = "Reporte EECC"
DoCmd.OpenReport strReporte, acViewNormal, , "[CUENTA_CLIENTE] = '" & strCuentaCliente & "'"
rst.MoveNext
Wend
rst.Close
Set rst = Nothing
End Sub
Valora esta pregunta


0