Ver Mensaje Individual
  #7 (permalink)  
Antiguo 28/03/2007, 09:10
Avatar de NUCKLEAR
NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 6 meses
Puntos: 890
Re: mdmzinc-flex y access

Cita:
Iniciado por adanqfb Ver Mensaje
Hola, encontré esto en los foros de Zinc, creo que es la causa de tu problema:


<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="NO PUEDO PONER LIGAS :(" layout="absolute" creationComplete="initApp();populateCombo();">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.controls.*;
import mdm.Application;
import mdm.Database;
import mdm.Dialogs;

//filename of the database
private var database:String = 'users.mdb';

//Combobox Data Provider
[Bindable]
public var users:ArrayCollection = new ArrayCollection(); // = new

private function initApp():void{
mdm.Application.init(this);
}

//this is a must function to map local files
public static function getPath(aPath:String):String{
if(mdm.Application.path == ""){
return aPath;
}
// else in zinc
aPath = mdm.Application.path+aPath;
// quick fix for paths/separators
aPath = aPath.split("/").join("\\");
aPath = aPath.split("\\\\").join("\\");
return aPath;
}


// Access database connection
private function connectDB():void{
mdm.Database.MSAccess.connectAbs(getPath(database) );
}


//getXML does not work in flex yet
private function selectUsers():void{
mdm.Database.MSAccess.select('SELECT * FROM users');
}


//Populates combobox
private function populateCombo():void{

connectDB();
selectUsers();
if( mdm.Database.MSAccess.getData().length > 0){
var dataSet:Array = mdm.Database.MSAccess.getData();
var i: int;
// Assemble Data (the Database has ID|Login|Password|FirstName|LastName Fields)
for (i=0; i < dataSet.length; i++){
var item: Object = new Object();
item["label"] = dataSet[i][3] + dataSet[i][4];
item["data"] = dataSet[i][0];
users.addItem(item);
}

mycombobox.dataProvider = users;
}
}

]]>
</mx:Script>

<mx:ComboBox x="10" y="10" id="mycombobox"/>

</mx:Application>


Como en el ejemplo lo explica, la instrucción getXML() no sirve con Flex, sino que hay que usar getData(), espero te funcione....y de paso si me pueden decir como le hago para correr código Zinc en Flex, porque de plano ya hice todo lo que me dicen en los manuales y no puedo :(. Saludos.
la instr. getData() devuelve un array bidimensional que luego puede ser usado indicando la posicion, pero tampoco me funciona solo me funciona getRecordCount(); que me muestra la cantidad de registros corectamente en el campo de texto....
Estoy un paso de la neurosis!
__________________
Drupal Argentina