Erro HB_FUN aparece diversas vezes, como resolver ?
Moderador: Moderadores
- ricardosierban
- Usuário Nível 2

- Mensagens: 57
- Registrado em: 12 Out 2020 21:08
- Localização: São Bernardo do Campo/SP
- Contato:
Erro HB_FUN aparece diversas vezes, como resolver ?
Olá, instalei a versão mais atual do harbour, porém o problema que estou encontrando no momento não deve ser relativo a versão, mas sim a programação/conversão (Clipper/Harbour).
Aparece agora o erro abaixo.
BIBLIOTE.prg(717) Error E0042 Macro of declared symbol '&cor_5'
BIBLIOTE.prg(2953) Error E0042 Macro of declared symbol '&cor_4'
Pelo o que encontrei é um erro de conversão relacionado a macros, mas ainda não descobri como resolver.
Li também que este erro não costuma ocorrer no xHarbour, mas eu quero continuar usando o Harbour.
Caso alguém tenha um material/texto que eu possa ler para resolver este problema, ou mesmo passar uma solução, eu agradeço.
Aparece agora o erro abaixo.
BIBLIOTE.prg(717) Error E0042 Macro of declared symbol '&cor_5'
BIBLIOTE.prg(2953) Error E0042 Macro of declared symbol '&cor_4'
Pelo o que encontrei é um erro de conversão relacionado a macros, mas ainda não descobri como resolver.
Li também que este erro não costuma ocorrer no xHarbour, mas eu quero continuar usando o Harbour.
Caso alguém tenha um material/texto que eu possa ler para resolver este problema, ou mesmo passar uma solução, eu agradeço.
-
marcosgambeta
- Usuário Nível 3

- Mensagens: 332
- Registrado em: 16 Jun 2005 22:53
- ricardosierban
- Usuário Nível 2

- Mensagens: 57
- Registrado em: 12 Out 2020 21:08
- Localização: São Bernardo do Campo/SP
- Contato:
- ricardosierban
- Usuário Nível 2

- Mensagens: 57
- Registrado em: 12 Out 2020 21:08
- Localização: São Bernardo do Campo/SP
- Contato:
Erro HB_FUN aparece diversas vezes, como resolver ?
Realmengte ainda não entendi como acertar o problema do erro de macros, mas continuar tentando...
- Jairo Maia
- Moderador
- Mensagens: 2820
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
- Curtiu: 2 vezes
Erro HB_FUN aparece diversas vezes, como resolver ?
Para usar alguma variável como macro elas não podem ser declaradas como variáveis LOCAL, apenas PRIVADAS OU PUBLICAS.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
- JoséQuintas
- Administrador

- Mensagens: 20416
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
- Curtiram: 1 vez
Erro HB_FUN aparece diversas vezes, como resolver ?
Pode resolver também &( variavel )
A diferença é que vai ser usado o valor, e não a variável, então sem problemas.
Mas em alguns casos vai ser um pouco diferente.
cCont := "10"
? Campo&cCont
Aí poderia alterar pra &( "campo" + cCont )
Acaba expandindo as opções, ao invés de limitar.
Por exemplo & ( "campo" + StrZero( nCont, 2 ) )
Onde por macro precisaria até de mais fonte.
É que aonde a macro vai ser "traduzida", a variável pode não estar disponível, como por exemplo se for local.
Mas usando parêntesis, está usando o resultado do cálculo, e não vai precisar de variável aonde executa a macro.
A diferença é que vai ser usado o valor, e não a variável, então sem problemas.
Mas em alguns casos vai ser um pouco diferente.
cCont := "10"
? Campo&cCont
Aí poderia alterar pra &( "campo" + cCont )
Acaba expandindo as opções, ao invés de limitar.
Por exemplo & ( "campo" + StrZero( nCont, 2 ) )
Onde por macro precisaria até de mais fonte.
É que aonde a macro vai ser "traduzida", a variável pode não estar disponível, como por exemplo se for local.
Mas usando parêntesis, está usando o resultado do cálculo, e não vai precisar de variável aonde executa a macro.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Erro HB_FUN aparece diversas vezes, como resolver ?
No meu teste funcionou assim:
Código: Selecionar todos
FOR i:=1 TO 10
cVar := "codigo" + strzero( i,2)
&cVar. := StrZero(i,2)
NEXT
cCampo := "codigo"
FOR nCont = 1 TO 10
oBtn := &( cCampo + Strzero( nCont, 2 ) )
NEXT
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Erro HB_FUN aparece diversas vezes, como resolver ?
Outra forma:
Código: Selecionar todos
cVar := ""
FOR i:=1 TO 10
&cVar. := &( cVar := "codigo" + strzero( i,2) ) := StrZero(i,2)
NEXT
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
- ricardosierban
- Usuário Nível 2

- Mensagens: 57
- Registrado em: 12 Out 2020 21:08
- Localização: São Bernardo do Campo/SP
- Contato:
Erro HB_FUN aparece diversas vezes, como resolver ?
Bom dia à todos, o erro das macros não aparece mais, usei este comando como teste:
#pragma -w0
#pragma -es0
Entendi que é estilo uma "blibioteca" que "força" o C a compilar o programa.Os erros sumiram, mas continua o problema abaixo:
Erro 1: hbmk2: Erro: Executando linkeditor. 1
Erro 2: hbmk2: Erro: Referenciado, faltando, mas funções desconhecida(s): CENTRA(),
BARRAS(), BAK_UP()
Passo a passo parece que estou resolvendo (com a ajuda dos senhores, claro), mas digo uma coisa, criar um programa do zero em Harbour dá muito mais prazer do que converter programas antigos em Clipper
Boa sexta feira á todos !
#pragma -w0
#pragma -es0
Entendi que é estilo uma "blibioteca" que "força" o C a compilar o programa.Os erros sumiram, mas continua o problema abaixo:
Erro 1: hbmk2: Erro: Executando linkeditor. 1
Erro 2: hbmk2: Erro: Referenciado, faltando, mas funções desconhecida(s): CENTRA(),
BARRAS(), BAK_UP()
Passo a passo parece que estou resolvendo (com a ajuda dos senhores, claro), mas digo uma coisa, criar um programa do zero em Harbour dá muito mais prazer do que converter programas antigos em Clipper
Boa sexta feira á todos !
Erro HB_FUN aparece diversas vezes, como resolver ?
Mudando um pouco de assunto, descobri uma coisa interessante usando for each
DataCarga estava atribuido com Nil
Durante o For Each...
__DefaultNIL( @oElemento["DataCarga"], Date() )
Trocou para Data e passando oElemento com @ referência
DataCarga estava atribuido com Nil
Durante o For Each...
__DefaultNIL( @oElemento["DataCarga"], Date() )
Trocou para Data e passando oElemento com @ referência
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Erro HB_FUN aparece diversas vezes, como resolver ?
Está faltando alguma lib que contém essas funções ou procedures, ou algum fonte que contém essas funções que não está no hbpricardosierban escreveu:Erro 2: hbmk2: Erro: Referenciado, faltando, mas funções desconhecida(s): CENTRA(),
BARRAS(), BAK_UP()
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
