Como substituir StaticCall das customizações

Atendendo a pedidos, hoje iremos falar sobre o StaticCall.

Como todos sabem, o StaticCall foi bloqueado em novas compilações, e nesse artigo vou citar as principais formas de substituir a StaticCall nos seus fontes.

Não vou trazer aqui, aquele método paliativo usando macro substituição, pois creio que além de deselegante, só posterga o inevitável (de ter que trocar o StaticCall por outras funções).

Abaixo uma lista com 7 exemplos:

Descrição Antes Exemplo Antes Descrição Agora Exemplo Agora
Função que era estática dentro do prw StaticCall(AFATA04, fValid, 1) Transforme a função em User Function u_AFATA04v(1)
Busca do menu para alguma customização StaticCall(MATA103, MenuDef) Mude a chamada para FWLoadMenuDef FWLoadMenuDef(“MATA103”)
Carregar um model de outro fonte StaticCall(zFonte, ModelDef) Mude a chamada para FWLoadModel FWLoadModel(‘zFonte’)
Carregar uma view de outro fonte StaticCall(zFonte, ViewDef) Mude a chamada para FWLoadView FWLoadView(‘zFonte’)
Função de Filtrar tabelas StaticCall(APSDU, SduExp) Muda a chamada para BuildExpr BuildExpr(cAliasTab)
Função para buscar o IDENT do TSS StaticCall(SPEDNFE, GetIdEnt) Muda a chamada para RetIdEnti RetIdEnti()
Outras chamadas de funções padrão Exemplo MaGravaSC9 Aqui existem 3 opções:
1 – Você pode substituir por uma função similar como a MaLibDoFat
2 – Caso não encontre função similar, poderia abrir um ticket ou pesquisar com amigos e contatos se alguém conhece alguma função similar
3 – Se você for um analista interno da TOTVS e tiver acesso aos códigos fontes, pode criar uma função congelando o conteúdo da original

Bom pessoal, por hoje é só.

Abraços e até a próxima.

Dan (Daniel Atilio)
Cristão de ramificação protestante. Especialista em Engenharia de Software pela FIB, graduado em Banco de Dados pela FATEC Bauru e técnico em informática pelo CTI da Unesp. Entusiasta de soluções Open Source e blogueiro nas horas vagas. Autor e mantenedor do portal Terminal de Informação.

2 Responses

  1. Fernando Sauer disse:

    Dan, passando para agradecer, além de ajudar como sempre, economizou um baita tempo indicando a solução para cada caso.

    Muito obrigado mesmo!! Sempre salvando

Deixe uma resposta

Terminal de Informação