Árvore de páginas

Invalid macro source

Produto:

ADVPL

Versões:

todas

Ocorrência:

Error.log -  invalid macro source

Ambiente:

 

Passo a passo:

O erro específico "invalid macro source (SSYacc0105e: Error token failed, no valid token) :(STATICCALL(#FUNCAO_DO_USUARIO,MenuDef)) on FWLOADMENUDEF(PROTHEUSFUNCTIONMVC.PRX)" começou a ocorrer após as atualizações de lib, disponibilizadas no inicio de 2017. O motivo é que foi realizado uma alteração no fonte FWLOADMENUDEF para, no caso de não estar como usuário administrador, macroexecutar as funções afim de validá-las, e como a função de usuário começa com '#' ele gera o erro. Anteriormente a essa alteração já havia sido implementado o TYPE 03, que é específico para funções de usuário, não mais utilizando o '#' para essa finalidade.

Para que não gere mais o erro verifique nos arquivos XNU a chamada de uma função de usuário se está com # ((#FUNCAO_DO_USUARIO) e TYPE como 01(função Protheus), retire o '#' e altere o TYPE para 03 conforme instruções a seguir:

Errado:

<Function>#FUNCAO_DO_USUARIO</Function>
<Type>01</Type>

 

Certo:

<Function>FUNCAO_DO_USUARIO</Function>
<Type>03</Type>

OBS:.

Caso persista verifique se o nome do fonte está com caractere especial ou iniciando por número.

Observações:

Não recomendamos a manipulação direta dos arquivos xnu, a opção mais segura é cadastrar os menus pelo configurador.