Con este informe vamos a poder ver los tratamientos que tenemos que aplicar a los animales Informe para consultar la evolución diaria de la estatura de la Novilla durante la etapa de crecimiento El botón que genera está en Reproducción → Informes → Informes RE, el id de referencia es imprimeTratAni, el id del informe es admin/central/25. La interfaz está definida en client/principal/f_informes_RE.xml. La ejecución comienza imprimeTratAni.addActionListener - Primero obtenemos los registros de los animales que tenemos en la tabla de la interfaz de [[barra_menu_principal:menu_reproduccion#informes_re|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 ''tratani'' con valor ''si'' - En la entidad EAnimales creamos un EntityResult con el valor generado por el método ''fai_trat_ani'' - Esta función está sobrecargada y depende de si el campo de ''fecha_prox_visita'' tiene datos, se ejecuta una u otra - En el caso de que no exista el valor de fecha de la próxima visita - Obtenemos los datos del técnico de ETecnicos, si no existen entonces de EAdministradores, si no hubiesen entonces de EGanaderos - Ahora comenzamos a iterar por cada animal - De cada animal obtenemos id del animal, de la explotación, nombre corto, número de saneamiento, tipo y número de establo. - Hacemos una consulta a EExplotaciones para obtener el propietario y el cea. - Hacemos una consulta a la tabla de tratamientos animales para el id del animal y que tenga la fecha y hora posterior a la fecha que se puso en el formulario de consulta - Comenzando a iterar por todas las entradas anteriores - De cada entrada obtenemos lo datos del medicamento previo, la dosificación previa, y las horas del tratamiento previo - Hacemos una consulta una la tabla de medicamentos para obtener los tiempos de leche y carne - En dependencia de si hay más de un medicamento en el tratamiento, obtenemos los datos de los medicamentos de los campos correspondientes. - Si se trata de un tratamiento clínico, entonces usando el valor de días de repetición rellenamos un Hashtable con tantas entradas repeticiones del tratamiento. - En otro caso simplemente obtenemos del las líneas de los tratamientos "propietario", "cea", "tecnico", "telefono", "nombre_corto", "n_saneamiento", "fecha", "fecha_orden", "fecha_hora_inicio", "fecha_hora_fin", "tratamiento", "patologia", "medicamento", "dosis", "supresion_leche", "supresion_carne" - Si el número de avisos es mayor que cero, entonces añadimos más datos al hashtable - Con el Hashtable completo, entonces se lo pasamos a un EntityResult y luego al método de generación de informes. {{ ::planilla_de_tratamientos.png?nolink&600 |}}