Antonio,
Por favor, podría probar este código:
msginfo( uCharToVal( ".T.", .T. ) )
En la versión de FWH 9.03 se mostraba .T. y con la versión 10.09 se muestra .F., es correcto? Debe ser así?
Gracias, me voy a dormir, mañana te leo.
Diferencias FWH 9.03 y FWH 10.09 => msginfo( uCharToVal( ".T
- Daniel Garcia-Gil
- Posts: 2365
- Joined: Wed Nov 02, 2005 11:46 pm
- Location: Isla de Margarita
- Contact:
Re: Diferencias FWH 9.03 y FWH 10.09 => msginfo( uCharToVal( ".T
FiveWidi
efectivamente la funcion cambio a partir de la version 9.05
http://forums.fivetechsupport.com/viewtopic.php?p=82088#p82088
efectivamente la funcion cambio a partir de la version 9.05
http://forums.fivetechsupport.com/viewtopic.php?p=82088#p82088
Mejorado: uCharToVal( cText, [cType] ). También se ha cambiado del módulo WQout.prg a Valblank.Prg
Si no se proporciona cType o es nulo, la función determina el tipo de dato apropiado y convierte el valor. Si el segundo parámetro es por referencia, el tipo determinado por la función se almacena en el segundo parámetro.
our best documentation is the source code
Isla de Margarita Venezuela.
danielgarciagil@gmail.com
http://tdolphin.blogspot.com/
https://www.dropbox.com/referrals/NTI5N ... rc=global9
Isla de Margarita Venezuela.
danielgarciagil@gmail.com
http://tdolphin.blogspot.com/
https://www.dropbox.com/referrals/NTI5N ... rc=global9
Re: Diferencias FWH 9.03 y FWH 10.09 => msginfo( uCharToVal( ".T
Daniel Garcia-Gil wrote:FiveWidi
efectivamente la funcion cambio a partir de la version 9.05
http://forums.fivetechsupport.com/viewtopic.php?p=82088#p82088Mejorado: uCharToVal( cText, [cType] ). También se ha cambiado del módulo WQout.prg a Valblank.Prg
Si no se proporciona cType o es nulo, la función determina el tipo de dato apropiado y convierte el valor. Si el segundo parámetro es por referencia, el tipo determinado por la función se almacena en el segundo parámetro.
Si, si estamos de acuerdo, pero entiendo que lo que sucede es que no convierte bien el valor que recibe.
Esto seria correcto?
Local nNumero := 0
uCharToVal( "123.56", nNumero )
y que msginfo( nNumero ) mostrara por pantalla 345.89, yo creo que NO sería correcto porque está cambiando el valor recibido además de su tipo.
Entonces si:
Local lvalor := .T.
uCharToVal( ".T.", lValor )
y que MsgInfo( lValor ) mostrara por pantalla .F. tampoco sería correcto por la misma razón que el ejemplo anterior, CAMBIA SU VALOR.
Gracias.
Un Saludo
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
- Daniel Garcia-Gil
- Posts: 2365
- Joined: Wed Nov 02, 2005 11:46 pm
- Location: Isla de Margarita
- Contact:
Re: Diferencias FWH 9.03 y FWH 10.09 => msginfo( uCharToVal( ".T
Fivewidi
porl o que leo en la descripcion de la funcion, el 2do parametro es el tipo de dato ( "N", "L", "D", "C" ) y no el valor, el uso de eseparametro puede ser omitido o usarlo en forma de referencia
los valores ".T." y ".F." no son permitidos
puedes usar para valores .T. = "T", "TRUE", "YES", "VERDADERO", "VERO", "WAHR", "VRAI", "VERDADEIRO"
para valores .F. = "F", "FALSE", "NO", "FALSO", "FALSCH", "FAUX"
esto funciona perfectamenrte
porl o que leo en la descripcion de la funcion, el 2do parametro es el tipo de dato ( "N", "L", "D", "C" ) y no el valor, el uso de eseparametro puede ser omitido o usarlo en forma de referencia
los valores ".T." y ".F." no son permitidos
puedes usar para valores .T. = "T", "TRUE", "YES", "VERDADERO", "VERO", "WAHR", "VRAI", "VERDADEIRO"
para valores .F. = "F", "FALSE", "NO", "FALSO", "FALSCH", "FAUX"
esto funciona perfectamenrte
Code: Select all | Expand
#include "fivewin.ch"
function main
local dVal := Date()
local nVal := 12346.78
local lVal := .T.
local cRef
? uCharToVal( cValToChar( dVal ) ), uCharToVal( cValToChar( dVal ), "D" ), uCharToVal( cValToChar( dVal ), @cRef ), cRef
cRef := NIL
? uCharToVal( cValToChar( nVal ) ), uCharToVal( cValToChar( nVal ), "N" ), uCharToVal( cValToChar( nVal ), @cRef ), cRef
cRef := NIL
? uCharToVal( "TRUE" ), uCharToVal( "T", "L" ), uCharToVal( cValToChar( lVal ), @cRef ), cRef
RETURN NIL
our best documentation is the source code
Isla de Margarita Venezuela.
danielgarciagil@gmail.com
http://tdolphin.blogspot.com/
https://www.dropbox.com/referrals/NTI5N ... rc=global9
Isla de Margarita Venezuela.
danielgarciagil@gmail.com
http://tdolphin.blogspot.com/
https://www.dropbox.com/referrals/NTI5N ... rc=global9
Re: Diferencias FWH 9.03 y FWH 10.09 => msginfo( uCharToVal( ".T
Daniel Garcia-Gil wrote:Fivewidi
porl o que leo en la descripcion de la funcion, el 2do parametro es el tipo de dato ( "N", "L", "D", "C" ) y no el valor, el uso de eseparametro puede ser omitido o usarlo en forma de referencia
los valores ".T." y ".F." no son permitidos
puedes usar para valores .T. = "T", "TRUE", "YES", "VERDADERO", "VERO", "WAHR", "VRAI", "VERDADEIRO"
para valores .F. = "F", "FALSE", "NO", "FALSO", "FALSCH", "FAUX"
esto funciona perfectamenrte
Es cierto, funciona perfectamente, lo cual no quiere decir que haga lo que se espera de ello.
Sigo pensando que no está bien y que en la línia donde dices:
puedes usar para valores .T. = "T", "TRUE", "YES", "VERDADERO", "VERO", "WAHR", "VRAI", "VERDADEIRO"
debería decir:
puedes usar para valores .T. = ".T.", "T", "TRUE", "YES", "VERDADERO", "VERO", "WAHR", "VRAI", "VERDADEIRO"
Fíjate en esto, hasta ahora uCharToVal() era la inversa de cValToChar(), si alguien ha decidido que ya no es así, pues es cierto funciona perfectamente pero no es compatible con lo anterior.
Seguro que el impacto es mínimo, lleva varios meses así y no he visto mensajes al respecto, pero a mi modo de ver alguien se dejó ... ".T.".
Por el mismo razonamiento, cualquier día CToD() deja de ser la inversa de DToC().
Un saludo
Un Saludo
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
- Daniel Garcia-Gil
- Posts: 2365
- Joined: Wed Nov 02, 2005 11:46 pm
- Location: Isla de Margarita
- Contact:
Re: Diferencias FWH 9.03 y FWH 10.09 => msginfo( uCharToVal( ".T
Fivewidi
Entiendo lo que comentas
el codigo de la funcion esta en source/function/valblank.prg
puedes modificarla a tu antojo, por ejemplo añadir los valores que necesitas
Entiendo lo que comentas
el codigo de la funcion esta en source/function/valblank.prg
puedes modificarla a tu antojo, por ejemplo añadir los valores que necesitas
Code: Select all | Expand
local cTrue := "|.T.|T|TRUE|YES|VERDADERO|VERO|WAHR|VRAI|VERDADEIRO|"
local cFalse := "|.F.|F|FALSE|NO|FALSO|FALSCH|FAUX|"
our best documentation is the source code
Isla de Margarita Venezuela.
danielgarciagil@gmail.com
http://tdolphin.blogspot.com/
https://www.dropbox.com/referrals/NTI5N ... rc=global9
Isla de Margarita Venezuela.
danielgarciagil@gmail.com
http://tdolphin.blogspot.com/
https://www.dropbox.com/referrals/NTI5N ... rc=global9