Libreria | Clase | Metodo |
AhoraListados | Listados | ImprimirFichero |
AhoraListados | Listados | ImprimirFicheroVer |
AhoraListados | Listados | ImprimirListadoVarios |
Implementación:
Public Sub ImprimirFichero( aCn As Conexion, aObjeto As Object, aFichero As String, Optional aDescripcion As String, _ Optional aWhere As String, Optional aVer As Long = 0, ' 0 FormShow: mostrar ventana selección report ' 1 Preview : visualizacion Directa ' 2 Print: Imprimir directo Optional aParentForm As Object = Nothing, Optional aListado As String = "") Public Sub ImprimirFicheroVer( aCn As Conexion, aObjeto As Object, aFichero As String, Optional aDescripcion As String, _ Optional aWhere As String, Optional aVer As Long = 0, ' 0 FormShow: mostrar ventana selección report ' 1 Preview : visualizacion Directa ' 2 Print: Imprimir directo Optional aParentForm As Object = Nothing) Public Sub ImprimirListadoVarios( aCn As Conexion, aListado As String, Optional aWhere As String, Optional aVer As Byte = 0, Optional aParentForm As Object = Nothing)
Descripción:
Permite imprimir informes RPT ya creados, pueden ser los predeterminados de cierto objeto o informes sin objeto, con o sin filtros.
Para poder imprimirse mediante este Ahora Proceso, el fichero RPT debe existir en la tabla de Ceesi_Listados sobre un objeto/colección concretos o sobre el ObjetoGenerico.
Ejemplo de uso:
Dim lListado As String Dim lSQL As String lListado = "PedidoRealquiler.rpt" lSQL = "Where Contratos_Realquiler_Cab.IdPedido='" & SqlString(pIdPedido, False) & "'" gCn.AhoraProceso "ImprimirFichero", False, gCn, Nothing, lListado, "", lSQL, pPreview
Dim lObj As Colecciones Dim lSql As String lSql = "IdFactura = 2154 AND IdEfecto = 2144" Set lObj = gCn.Obj.DameColeccion("EfectosProv", lSql, , False) gCn.AhoraProceso "ImprimirFichero", False, gCn, lObj, ""
Sub Botonera_AfterExecute(aBotonera, aBoton) If aBoton.Name = "botImprimir" Then gCn.AhoraProceso "ImprimirFichero", False, gCn, Nothing, "RUTA\NombreDelListado.rpt", "", "WHERE RecogidaMaterial.IdCliente = 23" End If End Sub
A continuación muestro un ejemplo de cómo enlazar un listado a una impresora donde le indico por qué bandeja quiero lanzar la impresión. Esto es usado para lanzar un listado concreto desde la programación de un botón o buscador de tipo script usando el método ImprimirFichero:
Sub Main() gCn.AhoraProceso "ImprimirFichero", False,gCn, Nothing, "EMPRESA\MiPedido de Cliente.rpt", "", "Where pedidos_cli_cabecera.IdPedido = '" & 1 & "'",2 frmAux.Descargar 'ATENCIÓN: DEBE ESTAR SIEMPRE QUE NO SE MUESTRE EL FORMULARIO. End Sub
insert into Perfiles(Usuario,Aplicacion,Objeto,Propiedad,Valor) select 'zzz','AhoraListados','ImpresoraListado','EMPRESA\MiPedido de Cliente.rpt','KONICA MINOLTA C364' insert into Perfiles(Usuario,Aplicacion,Objeto,Propiedad,Valor) select 'zzz','AhoraListados','BandejaImpresora','KONICA MINOLTA C364-EMPRESA\MiPedido de Cliente.rpt','Band. entr. manual'
gCn.AhoraProceso "ImprimirFicheroVer", False, gCn, Nothing, "PROVEEDORES\Oferta de Proveedor.rpt","","WHERE Ofertas_Pro_Cabecera.idDoc = '"& gForm.Controls("EObjeto").ObjGlobal.Propiedades("IdDoc") &"' AND Ofertas_Pro_Proveedores.idProveedor = '"& lidProv &"'",CLng(1),gform