Cita: No debe haber repeticiones de elementos en la tabla tpElementos, pero la tabla Elemento debe contener los elemento fisicos, y la unica forma de diferenciar dos elementos iguales es el id de la unidad.
Vale, he estado pensando en una posible modificación de las tablas y he llegado a esto:
TblLecturas
idL -> primaryKey
idR -> foreingKey a la tabla TblRElementoTpLecturas
idU -> foreingKey a TblUnidades
idState -> foreingKey a TblStates
valor -> valor de la lectura
fecha -> día y hora
idOper -> foreingkey a TblUsers
TblRElementoTpLecturas
idR -> primarykey
idTpL -> foreingKey a la tabla TblTpLecturas
idE -> foreingKey a la tabla TblElemento
kks -> identificador usado en la planta, único para cada elemento leído
Con la tabla TblRElementoTpLecturas lo que pretendo conseguir son todos los posibles datos que hay que tomar durante la ronda. Así quedaría especificado en una tabla que, por ejemplo, del elemento BombaAP se toman las lecturas del tipo temperatura y presion. De este modo tengo relacionado cada elemento con las cosas que hay que mirar de él.
El hecho de haber quitado dos columnas a la tabla TblLecturas pero obigándole a buscar la relación en otra tabla hará la consulta más rápida o más lenta.
Después los objetos que hay que representar en la interface solo necesitaran relacionarse con la tabla TblRElementoTpLecturas para mostrarse en pantalla.
Un saludo