Mostrando avisos com Help, ExibeHelp e ShowHelpDlg – Maratona AdvPL e TL++ 297

Nesse vídeo demonstraremos a utilização das funções Help, ExibeHelp e ShowHelpDlg que servem para mostrar uma tela de aviso com a mensagem do problema e da solução.

Abaixo o código fonte desenvolvido para o exemplo em vídeo acima:

//Bibliotecas
#Include "TOTVS.ch"

/*/{Protheus.doc} User Function zExe297
Exibe uma mensagem com problema e solução (ideal para utilizar em ExecAuto e validações MVC)
@type  Function
@author Atilio
@since 22/02/2023
@see https://tdn.totvs.com/display/tec/ShowHelpDlg
@obs 
    
    Função Help
    Parâmetros
        Nome da Função
        Indica qual linha começará a leitura do help
        Título que será exibido do Help
        Busca pelo help gravado pelo nome do help
        Mensagem do Problema
        Número de Linhas do Problema
        Indica qual coluna começará a leitura do help
        Compatibilidade
        Define se irá mostrar em alguma dialog
        Altura da janela de help
        Largura da janela de help
        Define se irá gravar um log (ideal para usar na MostraErro)
        Array com as linhas da solução do Problema
    Retorno
        Não tem retorno

    Função ExibeHelp
    Parâmetros
        Título que será exibido do Help
        Mensagem do Problema
        Mensagem da Solução
    Retorno
        Não tem retorno

    Função ShowHelpDlg
    Parâmetros
        + cCabec     , Caractere     , Título que será exibido do Help
        + aProbl     , Array         , Array com a mensagem de problema
        + nLinProbl  , Numérico      , Número máximo de linhas que serão exibidas do problema
        + aSolucao   , Array         , Array com a mensagem de solução
        + nLinSoluc  , Numérico      , Número máximo de linhas que serão exibidas da solução
    Retorno
        Não tem retorno

    **** Apoie nosso projeto, se inscreva em https://www.youtube.com/TerminalDeInformacao ****
/*/

User Function zExe297()
    Local aArea      := FWGetArea()
    Local cMensagem  := "Não foi encontrado parametrização para executar a rotina"
    Local cSolucao   := "Cadastre o parâmetro MV_X_PARAM"
    
    //Exibindo a mensagem com Help
    Help(, , "Help", , cMensagem, 1, 0, , , , , , {cSolucao})

    //Exibindo a mensagem com ExibeHelp
    ExibeHelp("Help", cMensagem, cSolucao)

    //Exibindo a mensagem com ShowHelpDlg
    ShowHelpDlg("Help", {cMensagem}, , {cSolucao})

    FWRestArea(aArea)
Return

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.

Deixe uma resposta

Terminal de Informação