O erro NOFUNCW no Protheus ocorre por RPO desatualizado, fontes customizados ausentes ou dicionário de dados desalinhado. Para resolver, atualize o pacote via TOTVS Developer Studio, compile fontes customizados e corrija validações no dicionário. Mantenha RPO e dicionário alinhados e use FindFunction() para proteger customizações.
Tempo aproximado para leitura: 00:10 min
Dúvida
Qual a causa e como resolver a mensagem de erro "NOFUNCW - Opção não disponível no Protheus", apresentada no padrão "função: [NOME_DA_FUNCAO] Called By [FUNCAO_CHAMADORA]"?
Ambiente
Cross Segmento - TOTVS Backoffice Linha Protheus - Ativo Fixo - A partir da versão 12
Solução
O erro NOFUNCW ocorre devido aos seguintes motivos técnicos estruturais:
- RPO desatualizado: O fonte da função chamadora foi compilado, exigindo uma nova função ou dependência, mas o pacote correspondente ainda não foi aplicado no Repositório de Objetos do ambiente.
- Fontes Customizados Ausentes: Uma rotina customizada acionada por Ponto de Entrada, Menu ou Validação de Dicionário não foi compilada no ambiente.
- Dicionário de Dados Desalinhado: Validações antigas nos dicionários (como SX1 - Perguntas, ou SX3 - Campos) apontam para funções depreciadas nas versões mais recentes.
Para Funções Padrões TOTVS:
- Identifique na mensagem de erro qual é o módulo e a rotina correspondente (exemplo: ATFA050, ATFCARGA).
- Realize o download do pacote mais atual de Expedição Contínua ou o patch específico da rotina.
- Aplique o pacote via TOTVS Developer Studio, primeiramente em um ambiente de homologação ou testes.
Para Funções Customizadas (User Functions):
- Verifique se o fonte .PRW ou .TLPP contendo a rotina foi compilado no ambiente (AppServer) acessado.
- Caso a chamada seja originada de um menu ou campo, acesse o módulo Configurador (SIGACFG).
- Confirme se a função foi digitada corretamente, assegurando o uso do prefixo U_ para as customizações.
Para Erros de Parâmetros (Dicionário SX1):
- Se o erro apontar para validações no dicionário (exemplo: MV_PAR02), acesse o módulo Configurador (SIGACFG).
- Acesse o caminho: Base de Dados > Dicionário > Bases de Dados.
- Avalie e corrija ou limpe as regras de validação associadas ao grupo de perguntas que está originando a falha.
Prevenção e Boas Práticas:
Ao atualizar o sistema, mantenha o RPO alinhado com a Release e o dicionário de dados (SXs). Atualizações parciais frequentemente geram quebras de dependência (InterFunctionCall). Para desenvolvimentos próprios, valide customizações tratando chamadas dinâmicas e proteja as execuções utilizando estruturas de controle, como a função FindFunction(), quando não houver certeza da existência da rotina na release atual do cliente.
Saiba Mais
Portal de Suporte TOTVS - Downloads
Pacotes de Atualização - Ativo Fixo - Linha Microsiga Protheus - TDN
0 Comentários