FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Funcion para validad nombre de variable
Posts: 211
Joined: Wed Jul 16, 2008 12:59 PM
Funcion para validad nombre de variable
Posted: Sun Oct 07, 2012 02:50 PM

Hola amigos del Foro:
Ayuda por favor, necesito saber si existe alguna funcion que me diga si una expresion es un nombre de variable valido.

Ejemplo:

   "NOMBRE"   => .T.
   "Nombre"   => .T.
   "Nom_1"   => .T.
   "   NOMBRE     "   => .T.

   "NOMBR  E"   => .F.
   "NOMBRE:"   => .F.
   "NOMBR E"   => .F.
   "NOMBRE."   => .F.

De antemano, gracias por la ayuda.

Atentamente,

Rolando
Cochabamba, Bolivia

Posts: 226
Joined: Sun May 13, 2012 07:52 AM
Re: Funcion para validad nombre de variable
Posted: Sun Oct 07, 2012 03:09 PM

error

FWH2008 | xHarbour | BCC74 | SQLRDD
Posts: 1088
Joined: Fri Oct 07, 2005 03:33 PM
Re: Funcion para validad nombre de variable
Posted: Sun Oct 07, 2012 03:48 PM
Hola Rolando,

si intentas algo así?

Code (fw): Select all Collapse
   
   b := " {|| Nombr e := 1 } "

   TRY
      EVAL(&b)
   CATCH oError
      ? "Error"
   END


saludos

Marcelo
Posts: 211
Joined: Wed Jul 16, 2008 12:59 PM
Re: Funcion para validad nombre de variable
Posted: Mon Oct 08, 2012 01:24 PM
Marcelo:

Gracias por responder y por la sugerencia.

Pero lo necesito como funcion. lo que pasa es que necesito generar las columnas del xBrowse en base a SOLO el nombre del campo.

Ejemplo:
Code (fw): Select all Collapse
cColumna := "FIELD->Nombre"
If EsSoloNombre( cColumna )
   bEditGet := "{| u | If( PCount()==0, FIELD->" + cColumna + ", FIELD->" + cColumna +":= u ) }"
else
   bEditGet := "{| u | If( PCount()==0, " + cColumna + ", " + cColumna +":= u ) }"
endif

Function EsSoloNombre( cName )
cName := ALLTRIM(cName)
RETURN  LEN(cName)==LEN(StrTran( StrTran( StrTran( StrTran( cName, "->","" ), " ","" ), ";","" ), ":","" ))


Algo asi como la funcion "EsSoloNombre( )" del ejemplo

Atentamemte,

Rolando
Cochabamba, Bolivia.
Posts: 1088
Joined: Fri Oct 07, 2005 03:33 PM
Re: Funcion para validad nombre de variable
Posted: Mon Oct 08, 2012 01:42 PM
Rolando,

y algo así?

Code (fw): Select all Collapse
FUNCTION esValidID( cVarName )
LOCAL b := " {|| " + cVarName + " := 1 } ", lRet := .T., oError

   TRY
      EVAL(&b)
   CATCH oError
      lRet := .F.
   END

RETURN lRet


saludos

Marcelo
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Funcion para validad nombre de variable
Posted: Mon Oct 08, 2012 01:49 PM

ORDWILDSEEK() no te sirve?

salu2

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341

Continue the discussion