Comunidad de diseño web y desarrollo en internet online

¿como dar una opcion de buscar en un datagrind?

Citar            
MensajeEscrito el 07 Ago 2007 07:57 pm
Bueno mas material del bueno

Buscar en access con zinc usando class asi solo tener un buscador para tdos los datagrid se tengan cualkier tabla de mdb blabla.

Crear carpeta meclases
Crear BuscarDataGridMdb.as

BuscarDataGridMdb.as

Código :

class meclases.BuscarDataGridMdb {
   public function BuscarDataGridMdb(A:Object, B:String, C:Array, E:String) {
      var Nulo = (!A) || (!B) || (!C) || (!E);
      if (Nulo) {
         _level.mdm.Dialogs.prompt("ERROR");
      } else {
         A.removeAll();
         _level.mdm.Database.MSAccess.select("SELECT * FROM "+B);
         var D:Array = _level.mdm.Database.MSAccess.getData();
         var L3:Number = 0;
         for (var L:Number = 0; L<D.length; L++) {
            if (D[L].join(" ").toLowerCase().indexOf(E.toLowerCase()) != -1) {
               A.addItem();
               for (var L2:Number = 0; L2<C.length; L2++) {
                  A.editField(L3, C[L2], D[L][L2]);
               }
               L3++;
            }
         }
      }
   }
}


"SELECT * FROM "+B se puede sustituir por "SELECT "+C+" FROM "+B en caso de tener las tablas en access entrelazadas.

Importar los class preferentemente poner esto en scena de carga

Código :

import meclases.*

Apartir de ahora solo hay k indicar 2 cosas
1º una array del nombre de las columnas para buscar y cargarlas al datagrid y reditar sus columnas con los datos de buskeda

Código :

var ColumnasNombres:Array = new Array("id", "Nombre", "Apellidos", "Email", "Telefono", "Movil", "Direccion", "Categoria", "Empresa");

Apartir de ahora ya todo automatico.
Como buscar algo?

Código :

var TEMP = new meclases.BuscarDataGridMdb(NOMBRE_DATAGRID, "Usuarios_Agenda",ColumnasNombres, TEXTO_A_BUSCAR);

NOMBRE_DATAGRID = El nombre de tu datagrid
"Usuarios_Agenda" = La tabla mdb de access
ColumnasNombres = Es la array del nombre columnas una vez creada la array no hay k notar nada mas.
TEXTO_A_BUSCAR = sea un imput o loke sea label, el texto a buscar

Saludos

Por deker

55 de clabLevel



 



Ultima edición por deker el 07 Ago 2007 08:24 pm, editado 1 vez

msie7
Citar            
MensajeEscrito el 07 Ago 2007 08:17 pm
Como crear un class k cargue cualkier tabla de access mdb
CargarDataGridMdb.as

Código :

class meclases.CargarDataGridMdb {
   public function CargarDataGridMdb(A:Object, B:String, C:Array) {
      var Nulo = (!A) || (!B) || (!C);
      if (Nulo) {
         _level.mdm.Dialogs.prompt("ERROR");
      } else {
         A.removeAll();
         _level.mdm.Database.MSAccess.select("SELECT "+C+" FROM "+B);
         var D:Array = _level.mdm.Database.MSAccess.getData();
         for (var L:Number = 0; L<D.length; L++) {
            A.addItem();
            for (var L2:Number = 0; L2<C.length; L2++) {
               A.editField(L, C[L2], D[L][L2]);
            }
         }
      }
   }
}


Como anteriormente se necesita la array nombres colmnas, asi k solo hay k ponerle un nombre a cada array de las columnas de la tabla access, asi podremos tener los datos de todo para utilizarlo sin repetir los mismos datos siempre.

Código :

var ColumnasNombres:Array = new Array("id", "Nombre", "Apellidos", "Email", "Telefono", "Movil", "Direccion", "Categoria", "Empresa");
Como cargar los datos a un datagrid?

Código :

var TEMP = new meclases.CargarDataGridMdb(NOMBRE_DATAGRID, "Usuarios_Agenda", ColumnasNombres);

Ya esto vale para todo, solo especificar la array del nombre tablas como el nombre de la tabla access y listo no mas romperse la cabeza.
Saludos

Por deker

55 de clabLevel



 

msie7
Citar            
MensajeEscrito el 07 Ago 2007 09:03 pm
una pregunta como le hago para tener un combobox, el cual al seleccionar un dato me lleve a una escena con ese nombre???

Por Barak

78 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 07 Ago 2007 09:11 pm
var TEMP:Object = new Object()
TEMP.change = function(ObjectTEMP:Object) {
if (ObjectTEMP.target.selectedItem.label == "NOMBRE") {
// DONDE IR?
}
}
NOMBRE_COMBOBOX.addEventListener("change", TEMP)

Mira el tema de class k te viene bien porke usas muchos datagrid en distintos scenarios y esto te va de perlas, lo eh puesto para k le sakes partido asi k ponte a ello.
Saludos

Por deker

55 de clabLevel



 

msie7

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.