// ***************************************************************************** // Computación en Acción, S.A. de C.V. (C) Copyright 2009 // Todos los Derechos Reservados. // // Sistema: CONTPAQ i BANCOS // // Título: Catálogo de Monedas // // Imprime un listado de las Monedas // // Fecha: 07/Agosto/2008 // Autor: Carolina Barrón // ***************************************************************************** // ***************************************************************************** // Historial de Revisiones: // Fecha ID-ND/NC Descripción // ***************************************************************************** Incluye BibliotecaFechas.rpt // ***************************************************************************** // TABLAS A UTILIZAR // ***************************************************************************** // BDD GeneralesSQL->Tabla ListaEmpresas // BDD ct->Tabla Monedas UsaEmpresa tEmpresa;'contpaqw1.00' Consulta tMonedasP=tEmpresa['SELECT Codigo, Nombre FROM Monedas ORDER BY Codigo'] // ***************************************************************************** // PARÁMETROS DEL REPORTE // ***************************************************************************** //pIdioma // 0 Español, 1 Inglés Parametros Titulo 'titulo.1' Pagina 'pagina.1' Parametro pListaMonedas = 0 Captura Titulo 'titulo.2' Ayuda 'ayuda.1' Control CtrlOpcion Datos Origen tMonedasP('Nombre');tMonedasP('Codigo') OrdenaPor tMonedasP('Nombre') FinDatos FinCaptura Parametro vacio = 0 Captura Control CtrlVacio FinCaptura Parametro pOrden = 0 Captura Titulo 'titulo.3' Ayuda 'ayuda.2' Control CtrlRadio Datos 'dato.1';0;'dato.2';1 FinDatos FinCaptura FinPagina Pagina 'pagina.2' Parametro pImpFecha = True Captura Titulo 'titulo.4' Ayuda 'ayuda.3' Control CtrlCheckBox Dependencia False; pFechaReporte = False Dependencia True; pFechaReporte = True FinCaptura Parametro pFechaReporte = @Hoy( ) Captura Titulo 'titulo.5' Ayuda 'ayuda.4' Control CtrlFecha FinCaptura FinPagina FinParametros Si pListaMonedas='' pListaMonedas=0 FinSi // ***************************************************************************** // FUNCIONES DE LIBRERÍA // ***************************************************************************** Incluye BibliotecaCheques.rpt // ***************************************************************************** // DEFINICIONES Y ASUMIDOS GLOBALES DEL REPORTE // ***************************************************************************** // Configuración de la hoja Configuracion Orientacion Vertical Papel Carta Margen Superior; 1 Margen Inferior; 1 Margen Izquierdo; 1 Margen Derecho; 1 FinConfiguracion // Numero de columnas a usar en el reporte Columnas 11; 1.5,0.5,3,0.5,2,0.5,3,0.5,3,0.5,3 UsaLetra 'Dialog' Altura 9 Decimales 0 // ***************************************************************************** // VARIABLES DE ÁMBITO GLOBAL // ***************************************************************************** // Contador de Conceptos gNumeroMonedas = 0 //*************************************************** // Función para formatear la lista recibida en los // parámetros para usarla en la sentencia "IN" de SQL //*************************************************** Deffunc FormateaListaSQL(lListaSinF) Local i ListaFSQL ='' i=0[C0] Mientras @escoge(@str(lListaSinF;0);@col(i;0))!='' ListaFSQL = ListaFSQL & '\'' & @escoge(@str(lListaSinF;0);i) & '\'' i=@col(i;0)+1[C0] Si @escoge(@str(lListaSinF;0);@col(i;0))!='' ListaFSQL = ListaFSQL & ',' FinSi FinMientras Retorna ListaFSQL FinFunc // ***************************************************************************** // CONSULTAS SQL GENERALES // ***************************************************************************** pListaMonedas=FormateaListaSQL(pListaMonedas) aConsulta = 'SELECT Codigo, Nombre, Simbolo, PosicionSimbolo, NombreSingular, NombrePlural FROM Monedas ' aConsulta = aConsulta & ' WHERE Codigo IN (' & pListaMonedas &') ' Si porden=0 aConsulta = aConsulta & ' ORDER BY Codigo ' Sino aConsulta = aConsulta & ' ORDER BY Nombre ' FinSi Consulta tMonedas=tEmpresa[aConsulta] // ***************************************************************************** // FUNCIONES DEL REPORTE // ***************************************************************************** // ***************************************************************************** // ENCABEZADO DEL REPORTE // ***************************************************************************** Encab fEscribeEncabCheques(tEmpresa->Nombre) Si pIdioma = 0 Texto '^Catálogo de Monedas' Si pImpFecha = True Texto '"Fecha: ' & fEditaFecha(pFechaReporte; 0) FinSi Imprime SubrayaCol Imprime Altura 9 Negritas True Texto C0;'Código' Texto C2;'Nombre' Texto C4;'Símbolo' Texto C6;'Posición símbolo' Texto C8;'Nombre singular' Texto C10;'Nombre plural' Imprime SubrayaCol Imprime SiNo Texto '^Currency Listing' Si pImpFecha = True Texto '"Date: ' & fEditaFecha(pFechaReporte; 1) FinSi Imprime SubrayaCol Imprime Altura 9 Negritas True Texto C0;'Number' Texto C2;'Name' Texto C4;'Symbol' Texto C6;'Symbol position' Texto C8;'Singular name' Texto C10;'Plural name' Imprime SubrayaCol Imprime FinSi Negritas False FinEncab // ***************************************************************************** // CUERPO PRINCIPAL DEL REPORTE // ***************************************************************************** // Imprimir las Monedas Mientras tMonedas->Encontro Texto C0; tMonedas('Codigo') Texto C2; tMonedas('Nombre') Texto C4; tMonedas('Simbolo') Si tMonedas('PosicionSimbolo') = 1 Texto C6; (pIdioma = 0 ? 'Al inicio' : 'Before') SiNo Texto C6; (pIdioma = 0 ? 'Al final' : 'After') FinSi Texto C8; tMonedas('NombreSingular') Texto C10;tMonedas('NombrePlural') Imprime gNumeroMonedas = gNumeroMonedas + 1 tMonedas.Busca Siguiente FinMientras Saltalin Columnas 2;1.5,2 [C0..C1].Subrayacol Imprime Si pIdioma = 0 Texto 'Monedas impresas: ' & gNumeroMonedas SiNo Texto 'Printed currencies: ' & gNumeroMonedas FinSi Imprime // Fin Reporte