Suma continua en consulta |
Responder |
Autor | |
Suso1956
Nuevo Unido: 26/Enero/2021 Localización: Zaragoza Estado: Sin conexión Puntos: 5 |
Opciones de entrada
Gracias(0)
Enviado: 26/Enero/2021 a las 20:31 |
Buenas tardes: soy nuevo, no muy experto y quizá no lo
haga bien, pero os aseguro que he estado mirando para ver si encontraba la respuesta antes de crear un
nuevo tema, pero no he sido capaz. El caso es que buscando por ahí cómo
actualizar un campo, en access, mediante una consulta con la suma acumulada de
otro campo encontré en este foro el aporte de Mihura Suma continua en una consulta - Foro de Access y VBA
(mvp-access.com) que me parece maravilloso. lo implanté en un
asuntillo y ha estado funcionando perfectamente: (comenzaba por el primer
registro seleccionado ...) campo1 campoAcumulado 1 1 3 4 2 6 12 18 pero de repente, sin hacer nada, o eso
creo yo, ha empezado a sumar a partir del último registro seleccionado: 1 18 3 17 2 14 12 12 y no encuentro, dónde decirle que funcione
en modo ascendente o descendente. He intentado plantear esta pregunta en el
hilo al que me he referido, pero aparecía "tema cerrado" y no me
permitía hacerlo. No se si he hecho bien, en cuyo caso os pido disculpas Muchas gracias y cuidaros. Editado para moverlo al foro adecuado y cambiar el título Editado por xavi - 26/Enero/2021 a las 23:12 |
|
Mihura
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Unido: 06/Mayo/2005 Localización: En la dehesa Estado: Sin conexión Puntos: 13990 |
Opciones de entrada
Gracias(0)
|
¿Y si pones la consulta que usas?, difícilmente vamos a adivinarla, hace muchos años que se nos estropeó la bola de cristal ...
|
|
Suso1956
Nuevo Unido: 26/Enero/2021 Localización: Zaragoza Estado: Sin conexión Puntos: 5 |
Opciones de entrada
Gracias(0)
|
Hola:
Lo primero: gracias Xavi por mover la consulta al foro adecuado y titularla y a Mihura, por ayudarme, primero a moverme en el foro y después con la consulta. Será me mejor que escriba lo que tengo y así lo podréis saber. . (he intentado poner un pantallazo, pero no me dejaba luego sitio para escribir). Lo que tengo preparado es: De una tabla (TablaDatosParaWEB) en la que tengo fecha, Año,
Volumen_SEM, ACUM_Volumen_SEM selecciono los datos del año (introducido en
otratabla), y calculo la suma acumulada de la variable Volumen_SEM, mediante un
función copiada desde www.mvp-access.com/foro/suma-continua-en-una-consulta_topic82140.html,
dejándolo en ACUM_Volumen_SEM. Es decir: UPDATE TablaAñoParaWEB INNER JOIN TablaDatosParaWEB ON
TablaAñoParaWEB.AñoPedido = TablaDatosParaWEB.Año SET TablaDatosParaWEB.ACUM_Volumen_SEM
= RT_nSumaBruta([Volumen_SEM]); La Función copiada: Option Compare Database Public Paso1 As Double Function RT_nSumaBruta(nDato) As Double 'variable que no se pierde entre
las distintas llamadas Static SumaBruta As Double If Paso1 = 0 Then
SumaBruta = 0 If IsNull(nDato) Then
'si nDato es nulo: variable a cero y salida SumaBruta = 0 Exit Function End If SumaBruta = SumaBruta + nDato RT_nSumaBruta =
SumaBruta Paso1 = 1 ' Variable auxiliar para apagar la suma End Function Muchas gracias, Saludos, Suso |
|
Mihura
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Unido: 06/Mayo/2005 Localización: En la dehesa Estado: Sin conexión Puntos: 13990 |
Opciones de entrada
Gracias(0)
|
Necesitas pasarle un orden para que coja los registros en el que tu quieras, si no le pasas un orden cogerá el que le venga bien, que suele ser FIFO. Pero claro, en una consulta de actualización no te deja poner una clausula ORDER BY. Así que si quieres seguir por este camino, tendrás que crearte una tabla con los datos de la suma continua y después usar ésta para la consulta de actualización. No se, muchas vueltas veo ahí. |
|
Suso1956
Nuevo Unido: 26/Enero/2021 Localización: Zaragoza Estado: Sin conexión Puntos: 5 |
Opciones de entrada
Gracias(0)
|
Hola: Efectivamente fue FIFO a principio, pero luego cambió a LIFO, sin que, conscientemente haya hecho algo.En fin, investigaré a ver cómo lo resuelvo. Muchas gracias. Salud. Suso |
|
Responder | |
Tweet
|
Ir al foro | Permisos de foro Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |