Lectura secuencial, agrupación y operación en Access 2013
Publicado por Juan Bueno (1 intervención) el 26/04/2018 18:38:41
Buenas,
Tengo un archivo con registros que están vinculados entre sí por varios campos. Normalmente el patrón es que cinco registros continuos configuran un conjunto único, aunque en ocasiones el grupo es de 3 registros, y en otras es de 6 registros.
El primer registro del bloque lo identifico por FECHA + CODIGO + CONCEPTO y quiero que, tras hacer una comprobación mediante calculo de un dato numérico, si hay incoherencia en los datos me modifique el valor de un registro determinado del conjunto.
Lo expreso a ver si me entendéis:
FECHA CONCEPTO IMPORTE CODIGO
20180101 X 14€ 0-800
20180101 Y 10€ 0-800
20180101 Z 0€ 0-800
20180101 M 25€ 0-800
20180101 T 0 € 0-800
**************************************
20180101 X 12 € 0-656
20180101 Y 14 € 0-656
20180101 T 26 € 0-656
Lo que quiero es:
* Detectar el primer registro de una serie (Fecha + codigo + Concepto = X)
* Detectar el último registro de la serie (Fecha + código + concepto="T")
* Realizar una operación de sumar los registros del grupo cuyo CONCEPTO sea X, Y o Z y sumar los registros M y T, y si hay diferencia entre las dos sumas, corregir el primer registro del grupo para que la diferencia cuadre a 0.
Y así con cada grupo de registros
Espero haberme explicado, no se como afrontar esta situación. Os agradezco vuestra ayuda!
Tengo un archivo con registros que están vinculados entre sí por varios campos. Normalmente el patrón es que cinco registros continuos configuran un conjunto único, aunque en ocasiones el grupo es de 3 registros, y en otras es de 6 registros.
El primer registro del bloque lo identifico por FECHA + CODIGO + CONCEPTO y quiero que, tras hacer una comprobación mediante calculo de un dato numérico, si hay incoherencia en los datos me modifique el valor de un registro determinado del conjunto.
Lo expreso a ver si me entendéis:
FECHA CONCEPTO IMPORTE CODIGO
20180101 X 14€ 0-800
20180101 Y 10€ 0-800
20180101 Z 0€ 0-800
20180101 M 25€ 0-800
20180101 T 0 € 0-800
**************************************
20180101 X 12 € 0-656
20180101 Y 14 € 0-656
20180101 T 26 € 0-656
Lo que quiero es:
* Detectar el primer registro de una serie (Fecha + codigo + Concepto = X)
* Detectar el último registro de la serie (Fecha + código + concepto="T")
* Realizar una operación de sumar los registros del grupo cuyo CONCEPTO sea X, Y o Z y sumar los registros M y T, y si hay diferencia entre las dos sumas, corregir el primer registro del grupo para que la diferencia cuadre a 0.
Y así con cada grupo de registros
Espero haberme explicado, no se como afrontar esta situación. Os agradezco vuestra ayuda!
Valora esta pregunta


0