El usuario decia que era molesto tener que seleccionar el archivo donde
guardar los informes, y luego ser preguntado si queria sobreescribirlo,
para que al final le preguntara si queria abrirlo.
Para solucionarlo se eliminaron todos esos pasos y ahora el archivo es
guardado en un archivo temporal del sistema, es abierto automaticamente
y luego es eliminado al cerrar el programa.
Ademas los metodos que lo utilizaban para buscar en la base de datos
ahora comprueban contra TipoEgreso.EMPTY para evitar buscar cuando se
para un TipoEgreso.EMPTY
Se separaron estos metodos para mayor claridad en el codigo y mas facil
reutilizacion de los dialogos ya que ahora me vi en el caso de que me
encontraba utilizando estos metodos en 2 vistas separadas y me vi
copiando los metodos de una a otra, pero eso no es bonito! asi que las
separe en clases con un solo metodo publico llamado execute el cual
devuelve el objeto que se espera recibir o un null en caso de que el
usuario cancele el dialogo o ocurra algun error.