Como substituir o ConOut pelo FWLogMsg

Hoje vou mostrar uma função desenvolvida, para substituir o clássico ConOut para passar pelas validações do Code Analysis.

Se você já precisou colocar os fontes em validação no Code Analysis, sabe que o ConOut é acusado para que seja melhorado a estrutura dos fontes.

A TOTVS criou a função FWLogMsg, porém essa função recebe vários parâmetros, então não daria simplesmente para dar um Ctrl+F no projeto e substituir o texto ConOut.

Pensando nisso, encapsulei a função FWLogMsg dentro de uma função de usuário chamada zConOut. Portanto, basta você procurar no projeto por ConOut e substituir por u_zConOut.

Abaixo o código fonte desenvolvido:

#Include "TOTVS.ch"

/*/{Protheus.doc} User Function zConOut

Função para substituir o ConOut (por causa do Code Analysis)

@type  Function

@author Atilio

@since 24/06/2021

@version version

@param cTexto, Caractere, Texto a ser exibido no console.log

@example

    u_zConOut("Teste")

@obs Para ativar esse recurso, a chave FWLogMsg_Debug tem que estar como 1 no AppServer.ini:

https://centraldeatendimento.totvs.com/hc/pt-br/articles/360041301114-MP-ADVPL-Como-Ativar-a-fun%C3%A7%C3%A3o-FWLogMsg-

@see https://tdn.totvs.com/display/framework/FWLogMsg

/*/

User Function zConOut(cTexto)

    Local aArea    := GetArea()

    Default cTexto := ""

    FWLogMsg(;

        "INFO",;    //cSeverity      - Informe a severidade da mensagem de log. As opções possíveis são: INFO, WARN, ERROR, FATAL, DEBUG

        ,;          //cTransactionId - Informe o Id de identificação da transação para operações correlatas. Informe "LAST" para o sistema assumir o mesmo id anterior

        "ZCONOUT",; //cGroup         - Informe o Id do agrupador de mensagem de Log

        ,;          //cCategory      - Informe o Id da categoria da mensagem

        ,;          //cStep          - Informe o Id do passo da mensagem

        ,;          //cMsgId         - Informe o Id do código da mensagem

        cTexto,;    //cMessage       - Informe a mensagem de log. Limitada à 10K

        ,;          //nMensure       - Informe a uma unidade de medida da mensagem

        ,;          //nElapseTime    - Informe o tempo decorrido da transação

        ;           //aMessage       - Informe a mensagem de log em formato de Array - Ex: { {"Chave" ,"Valor"} }

    )

    RestArea(aArea)

Return

Creditos :https://terminaldeinformacao.com/

Compartilhe nosso conteúdo

Nosso Boletim Informativo

Cadastre-se para receber nossos informativos, novidades e serviços por e-mail.

Categorias

Artigos Relacionados

Begin Transaction … End Transaction

Exemplo de utilização de controle de transação no AdvPL, podendo utilizar “rollback” nas alterações feitas. Exemplo da Rotina: Begin Transaction     //Tratativas de inclusão, alteração, disarm

Leia Mais »
Não há mais postagens para mostrar

Damasceno Viera, 928 – 42 Veneza
São Paulo 04363-040 SP, BR

Telefone: +55(11) 97546-2642
Email: info@phfsistemas.com.br