Protheus :: Programação Básica em Advpl “Combo V”

Comandos vs Literais:

Alguns comandos em AdvPl exigem argumentos literais. Uma literal é uma seqüencia de caracteres interpretada literalmente. Não será possível usar uma constante ou expressão no lugar da literal.

Ex.:

Use cTable

No exemplo acima, cTable é uma literal. Ela é interpretado literalmente, não como uma variável. O pré-compilador irá transformar a Literal em uma string de caracter da seguinte forma:

dbUseArea( .F.,, "cTable",, if(.F. .OR. .F., !.F., NIL), .F. )

Para que cTable não seja considerado como uma literal mas sim como uma variável coloque-a entre parenteses como em:

Use ( cTable )

Que o pré-processador converterá em:

dbUseArea( .F.,, ( cTable ),, if(.F. .OR. .F., !.F., NIL), .F. )

Comentários

Postagens mais visitadas