Página 1 de 1
Erro: E0042 Macro of declared
Enviado: 03 Set 2011 00:55
por clodoaldomonteiro
Olá amigos!
Estou tentando usar o Harbour 3.0 e quando fui compilar apareceu esse erre ai, ou seja, todas as macros de substituições estão dando erro.
Exemplo:
Código: Selecionar todos
mValor:=0
for i=1 to 12
a=strzero(i,2)
mValor+=pla_deb&a
next
Alguém sabe como resolver esse erro?
Erro: E0042 Macro of declared
Enviado: 03 Set 2011 09:22
por clodoaldomonteiro
Já corrigi o erro.
É que eu tava declarando as variáveis que ia usar como macro
Exemplo:
Código: Selecionar todos
local mValor:=0, ii //o harbour 3.0 não aceita declarar as variáveis que vou usar como macro de substituição
for i=1 to 12
ii=strzero(i, 2)
mValor+=pla_debito&ii
next
Sendo assim, o harbour 3.0 faz uma verificação melhor no código fonte.
Erro: E0042 Macro of declared
Enviado: 24 Jul 2018 14:49
por microvolution
clodoaldomonteiro escreveu:local mValor:=0, ii //o harbour 3.0 não aceita declarar as variáveis que vou usar como macro de substituição
aconteceu comigo a mesma coisa.
Aí um outro colaborador me mandou este link.
Nos meus testes descobri que o HARBOUR não aceita declarar a varíavel que será usada na
macrosubstituição como variável do tipo LOCAL.
Então, se vc
clodoaldomonteiro usar os comandos PRIVATE ou PUBLIC vai aceitar a declaração das variáveis para MACRO-SUBSTITUIÇÃO.
Forte abraço!
Erro: E0042 Macro of declared
Enviado: 24 Jul 2018 23:37
por JoséQuintas
É que tem uma coisa que esquecem.... macro não precisa ser de variável.
Código: Selecionar todos
LOCAL cCampo
cCampo := "cliente->codigo"
? &( cCampo )
FOR nCont = 1 TO 9
? &( cCampo + Str( nCont, 1 ) )
NEXT