Page 1 of 1

ayuda con dbcombo "alias"

Posted: Tue May 08, 2007 8:47 pm
by Francisco Horta
quiero actualizar un dbcombo dependiendo de otra variable en tiempo de ejecucion (el alias)
asi tengo mi codigo

REDEFINE COMBOBOX oCbx VAR cCbx ITEMS aConc ID 103 OF oDlg UPDATE

REDEFINE DBCOMBO oCbx2 VAR cCbx2 ID 104 OF oDlg ;
alias if(oCbx:nAt==3,oDCos,if(oCbx:nAt==4,oDCom,if(oCbx:nAt==5,oDGru,))) ;
itemfield "CODIGO" ;
listfield "DESCRI";
update WHEN oCbx:nAt > 2 .AND. nRad == 2

pero no me carga nada de datos, como hacer para que seleccione el alias correcto dependiendo del valor del combobox?
salu2
paco

Posted: Wed May 09, 2007 12:36 pm
by Marcelo Via Giglio
Hola,

aƱade oCbx:refill() luego de cambiar el alias

saludos

Marcelo

Posted: Wed May 09, 2007 1:51 pm
by RenOmaS
tienes que evaluar en el onchange del combobox

Code: Select all

REDEFINE COMBOBOX oCbx VAR cCbx ITEMS aConc ID 103 OF oDlg  UPDATE ;
          ON CHANGE ( oCbx:cAlias := if(oCbx:nAt==3,oDCos,if(oCbx2:nAt==4,oDCom,if(oCbx:nAt==5,oDGru,))), ;
                      oCbx2:Update() )

REDEFINE DBCOMBO oCbx2 VAR cCbx2 ID 104 OF oDlg ;
               alias oDCos ; // el alias por defecto
               itemfield "CODIGO" ;
               listfield "DESCRI";
               WHEN oCbx:nAt > 2 .AND. nRad == 2 
Salu2[/b]

Posted: Wed May 09, 2007 4:11 pm
by Francisco Horta
gracias marcelo y renzo,

ya probe y no funciona, ahora me tira un error diferente, puede ser de la clase, aki pego el codigo de como lo hago:

REDEFINE COMBOBOX oCbx VAR cCbx ITEMS aConc ID 103 OF oDlg UPDATE ;
ON CHANGE ( oCbx2:cAlias := if(oCbx:nAt==3,oDCos,;
if(oCbx:nAt==4,oDCom,;
if(oCbx:nAt==5,oDGru,oDEqu))), ;
oCbx2:update() )

REDEFINE RADIO oRad VAR nRad ID 101,102 OF oDlg ;
WHEN oCbx:nAt > 2 UPDATE

REDEFINE DBCOMBO oCbx2 VAR cCbx2 ID 104 OF oDlg ;
alias oDEqu ;
itemfield "CODIGO" ;
listfield "DESCRI";
update WHEN oCbx:nAt > 2 .AND. nRad == 2

y este es el error:

Error description: Error BASE/2022 Argument error: ALLTRIM
Args:
[ 1] = N 0

Stack Calls
===========
Called from: => ALLTRIM(0)
Called from: => (b)SET(0)
Called from: => ASCAN(0)
Called from: => TDBCOMBO:SET(0)
Called from: => TDBCOMBO:DEFAULT(0)
Called from: => TDBCOMBO:UPDATE(0)
Called from: E:\Proyectos\Combustibles\fuentes\cb1500.prg => (b)IMP_CATALOGO(525)
Called from: => TCOMBOBOX:CHANGE(0)

gracias
paco

Posted: Wed May 09, 2007 6:25 pm
by Francisco Horta
gracias, error detectado en el campo "CODIGO" en 2 dbf esta caracter y en otra esta numerico, veo como lo corrijo
gracias
salu2
paco