Página 1 de 1

Prolemas con oDbCombo basados en MemDataSet en Xailer 2

Publicado: Mar Dic 15, 2009 4:24 pm
por Carlos Ortiz
Este es el método que setea los elementos a mostrar en el combo y los itemsbound que tienen los datos reales de los campos. por ejemplo aItems tiene "Descripción" que es lo que se muestra y en aItemsBound tengo "art.descripcion" que es el valor real que despues uso en un select que me traiga los articulos iguales segun ese combo y un texto que arma la cadena.
La idea es tener un solo metodo en todo el sistema que me arme los combos de busqueda facilmente y con el menor esfuerzo y codificación posible. Osea una clase ElitaX()
SetElitabX le llena los datos al combo y ahora dejo de funcionar en Xailer 2
METHOD SetElitabX( oSender ) CLASS TElitabX
local aData
::FoDbf:=TMemDataSet():New(Self)
IF !empty(alltrim(::cSelect))
//Puede ser que levante los elementos y los ID de una tabla o no
aData:=AppData:oOdbcDS:QueryArray( ::cSelect )
::oDBCombo:aItems := ArrayCol( aData, 1 )
::oDBCombo:aItemsBound := ArrayCol( aData, 2 )
ENDIF
::oDBCombo:oDataField := ::FoDataField
::oDBCombo:oDataSet := ::FoDbf
::FoDbf:Edit()
::FoDbf:Open(::oDBCombo:aItems)
RETURN Nil
Al quere hacer el Edit() da este error, si le saco el Edit() el combo se carga pero no se abre al hacer click sobre el.
Que puede ser, tendrá solución. Muchas gracias.
***************************** Registro de errores *****************************
Exe: C:ProyectodbfarmaxApp.exe
Version: 1.0.0.0
User name: Administrador
Computer name: TERMINAL6
Fecha: 15-12-2009
Hora: 12:16:59
Memoria libre: 1513828
Area actual: 3
------------------------- Información del compilador --------------------------
Versión Xailer: Xailer 2.0.2 Version 2.0.2
Compilador: xHarbour build 1.2.1 Intl. (SimpLex) (Rev. 6511) PCode Version: 10
Compilador C/C++: Borland C++ 5.5.1 (32 bit)
Plataforma: Windows XP Professional 5.01.2600 Service Pack 3
----------------------- Información detallada del error -----------------------
Subsistema: BASE
Código de error: 1004
Estado: .F.
Descripción: Class: 'NIL' has no exported method
Operación: RECNO
Argumentos: [ 1] = Tipo: U Valor: NIL
Fichero:
Código error SO: 0
Pila de llamadas:
TMEMDATASET:RECNO (871)
TMEMDATASET:EDIT (476)
TELITABX:SETELITABX (38)
ELITAB (18)
TARTICULOSABM:COMBOBUSCARCREATE (154)
TDBCOMBOBOX:ONCREATE (0)
TSTDCONTROL:CREATE (249)
TCOMBOBOX:CREATE (180)
TDBCOMBOBOX:CREATE (63)
TABM:CREATEFORM (27)
TARTICULOSABM:CREATEFORM (11)
TARTICULOSABM:NEW (29)
TVENTANAPRINCIPAL:ARTICULOSABM (21)
TTOOLBUTTON:ONCLICK (0)
(b)XTOOLBUTTON:XTOOLBUTTON (41)
TTOOLBUTTON:CLICK (0)
TTOOLBAR:COMMAND (391)
TREBAR:WMCOMMAND (272)
RUNFORM (0)
TAPPLICATION:RUN (272)
MAIN (19)
--