Como saber si se cambio un dato de un dialogo con 50 Vars

Como saber si se cambio un dato de un dialogo con 50 Vars

Postby Enrrique Vertiz » Sat Aug 18, 2018 1:45 am

Buenas noches

Me explico, tengo un dialogo con 50 valores, todos con sus datos, lo que quiero saber es si el usuario que ingreso modifico alguno, no importa cual, basta con que modifique uno para tomar una accion, pero como determino eso, sin preguntar por cada valor.
Seguro hay algo pero no recuerdo.
Gracias ...
Enrrique Vertiz Pitta
Lima-Peru
xHb 1.23.1026X, Fwh 24.09, BCC74, MySQL 8.0.X, SQLLIB 1.9m
Enrrique Vertiz
 
Posts: 548
Joined: Fri Oct 07, 2005 2:17 pm
Location: Lima - Peru

Re: Como saber si se cambio un dato de un dialogo con 50 Vars

Postby Antonio Linares » Sat Aug 18, 2018 7:20 am

Enrique,

Imagino que usas 50 variables asociadas, pertenecen a un array ?

Para los GETs puedes hacer:
local nAt := 0
nAt = AScan( oDlg:aControls, { | oCtrl | Upper( oCtrl:ClassName() ) == "TGET" .and. oCtrl:oGet:Changed } )
si nAt es distinto de cero, entonces algún GET cambió

Si las 50 variables pertenecen a un array, entonces puedes hacer:
nAt = AScan( aVars, { | uValue, nIndex | oDlg:aControls[ nIndex ]:VarGet() != uValue } )
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Como saber si se cambio un dato de un dialogo con 50 Vars

Postby horacio » Tue Aug 21, 2018 1:54 pm

Antonio, me gustaría implementar la posibilidad de verificar si hubo cambios en los get de un dialogo. Utilicé este código

Code: Select all  Expand view  RUN

? oGet[ 2 ] : Changed
 


y obtengo este error
Code: Select all  Expand view  RUN

   Called from:  => __ERRRT_SBASE( 0 )
   Called from: ../../../tobject.prg => TGET:ERROR( 0 )
   Called from: ../../../tobject.prg => (b)HBOBJECT( 0 )
   Called from: ../../../tobject.prg => TGET:MSGNOTFOUND( 0 )
   Called from: ../../../tobject.prg => TGET:CHANGED( 0 )
   Called from: C:\t-fe_win10\alumnos.prg => VERIFICACAMBIO( 746 )
   Called from: C:\t-fe_win10\alumnos.prg => (b)ABM( 738 )
   Called from: .\source\classes\DIALOG.PRG => TDIALOG:END( 537 )
   Called from: C:\t-fe_win10\alumnos.prg => GUARDA( 812 )
   Called from: C:\t-fe_win10\alumnos.prg => (b)ABM( 731 )
   Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:CLICK( 665 )
   Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:LBUTTONUP( 901 )
   Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1721 )
   Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:HANDLEEVENT( 1843 )
   Called from: .\source\classes\WINDOW.PRG => _FWH( 3325 )
   Called from:  => DIALOGBOX( 0 )
   Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 296 )
   Called from: C:\t-fe_win10\alumnos.prg => ABM( 738 )
   Called from: C:\t-fe_win10\alumnos.prg => (b)TABLAALUMNOS( 208 )
   Called from: C:\t-fe_win10\h_TTaskItem.prg => TTASKITEM:LBUTTONUP( 317 )
   Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1721 )
   Called from: C:\t-fe_win10\h_TTaskItem.prg => TTASKITEM:HANDLEEVENT( 258 )
 


Alguna idea ? Muchísimas gracias

Saludos
horacio
 
Posts: 1363
Joined: Wed Jun 21, 2006 12:39 am
Location: Capital Federal Argentina


Re: Como saber si se cambio un dato de un dialogo con 50 Vars

Postby horacio » Tue Aug 21, 2018 4:49 pm

Gracias Enrico por tu respuesta, siempre me devuelve .f. aunque lo modifique.

Saludos
horacio
 
Posts: 1363
Joined: Wed Jun 21, 2006 12:39 am
Location: Capital Federal Argentina

Re: Como saber si se cambio un dato de un dialogo con 50 Vars

Postby nageswaragunupudi » Fri Aug 24, 2018 6:56 pm

lChanged for all controls including Gets is provided in FWH18.06 to be released soon.
Regards

G. N. Rao.
Hyderabad, India
User avatar
nageswaragunupudi
 
Posts: 10690
Joined: Sun Nov 19, 2006 5:22 am
Location: India

Re: Como saber si se cambio un dato de un dialogo con 50 Vars

Postby Antonio Linares » Sun Aug 26, 2018 6:06 pm

great enhancement !!! :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 97 guests