Validando se o sistema esta rodando sem interface com IsBlind – Maratona AdvPL e TL++ 308

Nesse vídeo demonstraremos a utilização da função IsBlind, que serve para validar se o sistema esta rodando sem interface gráfica (como jobs e webservices).

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

//Bibliotecas
#Include "Totvs.ch"

/*/{Protheus.doc} zExe308
Valida se a função esta rodando sem interface gráfica para o usuário (ideal para jobs ou webservices)
@type  Function
@author Atilio
@since 23/02/2023
@see https://tdn.totvs.com/pages/releaseview.action?pageId=6814878
@obs 

    Função IsBlind
    Parâmetros
        Não tem parâmetros
    Retorno
        + lIsBlind   , Lógico      , .T. se tiver rodando sem interface gráfica (não passou pelo SIGAADV / SIGAMDI / etc) ou .F. se não

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

User Function zExe308()
	Local aArea      := FWGetArea()
    Local cMensagem  := ""
    
    //Verifica o tipo de conexão com o Protheus
    If IsBlind()
        cMensagem := "Estamos executando sem interface do Protheus"
    Else
        cMensagem := "Estamos executando normalmente"
    EndIf

    //Exibe o resultado, esse é apenas um Teste, se rodar mesmo o IsBlind evite ficar mostrando alerts e mensagens
    FWAlertInfo(cMensagem, "Teste IsBlind")

    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