Con este informe vamos a poder analizar los animales dados de baja para un año determinado y la causas por la que fueron dada de baja los mismos.
El botón que genera está en Reproducción → Informes → Informes RE, el id de referencia es imprimeBajas, el id del informe es admin/central/26. La interfaz está definida en client/principal/f_informes_RE.xml.
Primero obtenemos los registros de los animales que tenemos en la tabla de la interfaz de
Informes RE
Consultamos la entidad EAnimales
para obtener los registros de la base de datos para los animales de la tabla anterior.
Con estos datos conformamos un Hashtable y hacemos una consulta nuevamente la entidad EAnimales
con el flag de consulta bajani
con valor si
En la entidad EAnimales creamos un EntityResult con el valor generado por el método fai_baj_ani
Creamos arreglos bidimensionales para almacenar el número de animales, la media de días en leche, el número de animales en leche, el número de animales en 1º, 2ª, 3ª y 4ª lactación, la media de producción, número de animales en producción, el número de animales que fueron baja por crematorio, matadero o vida.
Inicializamos a cero los valores.
Obtenemos los valores identificativos del técnico si se trata de uno, en caso contrario consultamos la tabla de administradores, si no hubiese datos entonces consultamos los ganaderos.
Comenzamos a iterar por cada animal
Obtenemos los datos de la explotación
Consultamos el historial_animal para buscar id_accion, del, fecha_baja, n_lactacion, valor_baja, leche_acumulada
Iteramos por estas acciones
Consultamos la tabla de acciones animales por los campos tipo_baja y destino_baja
Establecemos la fecha inicial en 12 meses atrás
Rellenamos los valores de los meses y años
Iteramos por esos 12 meses atrás
En esta iteración vamos comprobando por el tipo de baja y sumando el valor del array correspondiente
Igualmente calculamos los porcentajes de animales totales con respecto a los animales por cada tipo de baja
Lo mismo para la media de DEL
Rellenamos el resto de datos del informe y se lo pasamos al método generador de informes