FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour falla y correcci贸n - MsgDate
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
falla y correcci贸n - MsgDate
Posted: Tue Jul 02, 2013 01:30 AM
Estimado, recientemente tuve problemas con MsgDate, porque al usarla de cierta forma se bloqueaba la app.
suced铆a que la usaba de esta forma
Code (fw): Select all Collapse
   REDEFINE GET oFechaOfe VAR dFechaOfe ;
      ID 101 OF oFolder:aDialogs[ 1 ] ;
      BITMAP "BMS_CALEND" ;
      ACTION ( dFechaOfe:=MsgDate( dFechaOfe, "Seleccione fecha de ingreso1" , oFechaOfe ) ) ;
      PICTURE "@D"


pero cuando dFechaOfe estaba vacia, no se llegaba amostrar el calendario y se bloqueba la app.

revisando el fuente de dicha funcion me encontre esto:
Code (fw): Select all Collapse
   DEFAULT dDate := Date(), cPrompt := "Seleccione una fecha"

....

   dDate -= Day( dDate ) - 1
   while DoW( dDate ) != 2 // Monday
      dDate --
   enddo

le explico lo que encontr茅, al inicio de define dDate por defecto con el valor de la fecha actual

DEFAULT dDate = date()


ojo aca por defecto dDate tomara el valor de la fecha cuando el valor de dDate sea NIL, pero cuando dDate esta vaci贸, dDate as铆 se quedaba.

luego el ciclo while quedaba infinito dato que day retorna 0 para una fecha vacia.

se soluciona modificando la funci贸n as铆
Code (fw): Select all Collapse
   DEFAULT cPrompt := "Seleccione una fecha"

   IF dDate==NIL .or. Empty(dDate)
      dDate = Date()
   ENDIF
Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: falla y correcci贸n - MsgDate
Posted: Fri Jul 05, 2013 02:00 PM

Thanks for pointing it out.
Fixed for next release. (13.06)

Regards



G. N. Rao.

Hyderabad, India

Continue the discussion