FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Query con SUBSTRING y GROUP BY
Necesito ejecutar un query del siguiente estilo contra tablas Paradox para un informe impreso:
Código:
SELECT A.Apellidos, A.Nombre, A.Iban, SUBSTRING(Iban FROM 5 FOR 8) Oficina, COUNT(B.Referencia) RecPte, SUM(B.Importe) ImpPte FROM 'Persona.db' A, 'Recibos.db' B WHERE A.Referencia = B.Referencia GROUP BY A.Apellidos, A.Nombre, A.Iban, Oficina ORDER BY Oficina, Iban Otra alternativa que había pensado era ordenar por ese trozo del campo, así: Código:
ORDER BY SUBSTRING(Iban FROM 5 FOR 8), NomJun, Apellidos, Nombre, Referencia ¿Alguna sugerencia? |
#2
|
||||
|
||||
Hola Angel.Matilla.
Las bases de datos locales como Paradox o dBASE no soportan el uso de la declaración GROUP BY sobre valores calculados. No soy experto en estas BD's pero si la agrupación dependiese de una condición podrías usar la cláusula UNION para lograrlo, por ejemplo: Pero al menos yo, no veo como aplicarlo a tu caso... Mi consejo es que abandones las obsoletas bases de datos de escritorio y te vuelques a algo mas poderoso y que te dé menos quebraderos de cabeza. Aunque hay otras igualmente buenas, Firebird es una excelente opción; es sencillo de configurar, altamente estandarizado y sin lugar a dudas muy poderoso. El requerimiento de mantención es despreciable y particularmente no he tenido fallos por años y hasta el momento. Para no ser pesado no me explayo mas sobre sus bondades Si en algún momento optas por el cambio (o no), te recomiendo leer estos enlaces:
Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#3
|
||||
|
||||
Muchas gracias por tu respuesta. Intuía que iban por ahí los tiros. Sobre migrar a Firebird, que era mi idea, el cliente se ha negado en redondo.
|
#4
|
|||
|
|||
has probado así ?
el 4 indica el numero de campo |
#5
|
||||
|
||||
Sí, y tampoco funciona. El probelma es que las tablas Paradox no soportan esa funcionalidad.
|
#6
|
||||
|
||||
Cita:
Jamás un médico me preguntó qué medicina quiero tomar para curarme una dolencia. Jamás un mecánico me preguntó qué herramienta usar para reparar el motor de mi coche. etc... |
#7
|
||||
|
||||
Cita:
__________________
Felipe Eduardo Ortiz López. Delphi programmers does it recursively... "Un programador, es un creador de universos en donde sólo él es responsable. Universos de complejidad prácticamente ilimitada que se puede crear en forma de programas de ordenador." - Joseph Weizenbaum. Témele a los profetas... y a aquellos que están listos para morir por "la verdad", ya que como regla general hacen morir a muchos otros con ellos, frecuentemente antes que ellos, y a veces en lugar de ellos. — Umberto Eco |
#8
|
||||
|
||||
Por raro que te parezca esto no lo decido yo; quieren un sistema que no requiera tener ni el más mínimo conocimiento ni de máquinas ni de programas. Yo hubiera preferido instalar Firebird o MySql.
|
#9
|
|||
|
|||
Hola Angel,
viendo la consulta, estas tratando de ordenar por entidad bancaria. A parte del IBAN tienes guardado el BIC / SWIF (a partir del 1 de febrero es obligatorio tener este dato para enviar al cobro los recibos)? Este codigo los 4 primeros caracteres es la entidad, por lo que ordenando por el BIC, tendrias la ordenacion por entidad |
#10
|
||||
|
||||
Cita:
Cita:
|
#11
|
|||
|
|||
Si desde tu aplicación generas ficheros para la norma 19 de cobro de recibos, es uno de los campos obligatoris
|
#12
|
||||
|
||||
Cita:
Yo le pago al mecánico y no decido qué herramientas usar. Yo le pago al médico y no decido qué medicinas tomar. Además, como sabes, firebird es libre y gratis, no le va a costar nada al cliente. |
#13
|
||||
|
||||
¡Fíjate! Exactamente el mismo argumento que usé yo. El problema de este cliente es que no quiere tener contratado, de la amnera que sea, a nadie para que le mantenga los equipos en todos los aspectos... Y así le pasa: Cada dos por tres está con probelmas que clar está ha de pagar a parte.
|
#14
|
||||
|
||||
Cita:
|
#15
|
||||
|
||||
Cita:
|
#16
|
||||
|
||||
Y mejor para mi: tres de cada cuatro veces lo termino arreglando yo.
|
#17
|
|||
|
|||
Cita:
Mira la pag 19 del pdf el campo 10 de la linea del reigstro individual obligatorio |
#18
|
||||
|
||||
Tienes razón. Se me había despistado. No obstante, dado que tengo una tabla de entidades bancarias, el código SWIFT lo puedo guardar en dicha tabla junto a la definición del mismo.
Última edición por Angel.Matilla fecha: 12-01-2014 a las 09:54:43. |
#19
|
|||
|
|||
Piensa que el swift indica entidad bancaria y localidad y oficina no se si es mejor guardar este codigo junto al iban
|
#20
|
||||
|
||||
Cita:
1. No voy a ser yo quien discuta las normas. 2. Dado que este código es necesario para que «una transferencia intracomunitaria sujeta al Reglameto 2560/2001 esté sometida a la misma comisión que una nacional de idéntico importe», no acabo de entender que demonios pinta en un adeudo por domiciliación, que tiene un tratamiento diferente a las transferencias.No obstante, y dado que el código SWIFT se rige por esta norma: Los primeros cuatro caracteres identifican el bancoDicho esto tampoco es tan complejo guardar el código genérico de cada entidad (por ejemplo BSCHESMM para el Banco Santander Central Hispano, CECAESMM para Liberbank o CAIXESBB para Caixabank) y calcular las tres posciones OPCIONLES. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Problema con SUBSTRING | Gonbamon | Firebird e Interbase | 5 | 17-12-2007 18:50:48 |
Impresion de group header group footer | Manuel | Impresión | 3 | 11-11-2007 01:05:23 |
consultas anidadas: group by dentro otro group by | DobleSiete | SQL | 7 | 31-01-2005 14:59:31 |
Substring | seduerey | Varios | 1 | 21-05-2004 19:27:33 |
Group Header, Detail y Footer Group en la misma pagina | MarcelRuz | Impresión | 0 | 20-04-2004 23:27:14 |
|