Campo en consulta dependiente de intervalo de otra tabla
Siento repetir la pregunta, pero soy nuevo, y la anterior pregunta la ubiqué en otra categoría que no era en MS ACCESS que es dónde debe de estar.
Buenas tardes. Llevo varios días dándole vueltas
al mismo tema y no consigo dar con la solución. Os pongo el ejemplo
concreto para facilitar el entendimiento.
Dispongo de una
Tabla de access "tb_criterios" donde los campos son "Id", "Tmin(d)",
"Tmax(d)", "Criterio(d)" (modificables mediante formulario pertinente,
pudiéndose añadir más filas y cambiar valores). Se trata de criterios
en función de intervalo:
Id Tmin(d) Tmax Criterio(d)
1 0 30 7
2 30 180 14
3 180 360 21
4 365 1.000.000 30
En
Una consulta ("con_mantenimiento_preventivo", procedente de varias
tablas), tengo órdenes de mantenimiento preventivo, con diferentes
intervalos de realización (Intervalo(d), campo calculado) y donde
mediante otro campo calculado sacaría la desviación de la fecha de
realización real respecto a la fecha prevista (desviación(d) campo
calculado).
¿Id Descripción Intervalo(d) Desviación(d) Criterio(d)?
1 Operación 1 15 3
2 Operación 2 45 22
3 Operación 3 720 35
La
Idea es que en función del intervalo de la orden de mantenimiento
(Intervalo(d)), genere otro Campo en la consulta (Criteri(d)), que
resulte de buscar el intervalo dentro del período correspondiente de la
tabla tb_criterios.
Por ejemplo en la Operación 2 como el
Intervalo es 45 (entre 30 y 80), buscaría en la primera tabla y en el
nuevo campo generado en la consulta Criterio (d) pondría 14. De esta
forma veo y genero informes viendo si la desviación es superior al
criterio para ese intervalo.(22>14), luego no sería aceptado.
Esto
Mismo lo he hecho desde un formulario, pero NO ME VALE, porque no puedo
filtrar después, al haberme tenido que generar cuadros de texto
calculados en el propio formulario. Por eso el hacerlo desde la
consulta.
Es un poco extensa la explicación.