lunes, 9 de diciembre de 2013

Alimentar diferentes listas en forma dinámica con Adobe AIR


Una aplicación muy frecuente para la explotación de información de una base de datos, es leer una tabla y armar diferentes listas o combo box para después seleccionar los datos. Una vez ye tenemos los datos leídos, por medí de un ciclo y de diferentes sentencias condicionales, generamos un arreglo para cada características, llenamos las listas y esperamos a que el usuario seleccione el criterio para consultar los datos de las tablas.

En la siguiente función, seleccionaremos los correos de los criterios seleccionados y los enviaremos al protocolo malito, para generar un correo electrónico con el agente de correo de la computadora.

private function cargaComponentes(){
var meses_array:Array = new Array("","Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre");
contacto_array = new Array();
genero_array = new Array;
edad_array = new Array;
fecha_array = new Array;
//
var i,j,genero,edad,fecha;
//
for(i=0; i<datos_array.length; i++){
contacto_array.push({label:datos_array[i].nombres, data:datos_array[i].rfc});
//genero
for(j = 0; j<genero_array.length; j++){
if(genero_array[j].label==datos_array[i].genero){
break;
}
}
if(j==genero_array.length){
genero = (datos_array[i].genero=="M")?"Masculino":"Femenino";
genero_array.push({label:genero, data:datos_array[i].genero});
}
//Edad
for(j = 0; j<edad_array.length; j++){
if(edad_array[j].label==datos_array[i].edad){
break
}
}
if(j==edad_array.length){
edad_array.push({label:datos_array[i].edad, data:datos_array[i].edad});
}
//Fecha
fecha  = datos_array[i].diaNacimiento+" de ";
fecha += meses_array[Number(datos_array[i].mesNacimiento)]+" de ";
fecha += datos_array[i].anioNacimiento;
datos_array[i].fecha = fecha;
for(j = 0; j<fecha_array.length; j++){
if(fecha_array[j].label==fecha){
break
}
}
if(j==fecha_array.length){
fecha_array.push({label:fecha, data:fecha});
}
}
contacto_array.sort();
edad_array.sortOn("label", Array.NUMERIC);
fecha_array.sortOn("label");
//
contacto_array.unshift({label:"---Seleccione paciente---", data:"vacio"});
genero_array.unshift({label:"---Seleccione un género---", data:"vacio"});
edad_array.unshift({label:"---Seleccione por edad---", data:"vacio"});
fecha_array.unshift({label:"---Seleccione por fecha---", data:"vacio"});
//
var contacto_dp:DataProvider = new DataProvider(contacto_array);
var genero_dp:DataProvider = new DataProvider(genero_array);
var edad_dp:DataProvider = new DataProvider(edad_array);
var fecha_dp:DataProvider = new DataProvider(fecha_array);
//
contacto_cb.enabled = true;
todos_cb.enabled = true;
genero_cb.enabled = true;
edad_cb.enabled = true;
fecha_cb.enabled = true;
//
contacto_cb.dataProvider = contacto_dp;
genero_cb.dataProvider = genero_dp;
edad_cb.dataProvider = edad_dp;
fecha_cb.dataProvider = fecha_dp;
}

Más información en http://www.pacoarce.com

No hay comentarios:

Publicar un comentario