Função que retorna o título da rotina atual em AdvPL

Função que retorna o título da rotina atual em AdvPL

Olá pessoal…

Hoje vou mostrar uma função desenvolvida que retorna o título da rotina atual (aberta pelo menu) utilizando o AdvPL.

Essa rotina testa o atributo oApp:oMainWnd:cTitle, caso ele exista, é adicionado à uma variável, e retirado textos a mais (como os textos entre colchetes que representam o módulo).

Abaixo um exemplo de um print executado dentro do fórmulas.

Exemplo do Título de Rotina
Exemplo do Título de Rotina

Abaixo o código fonte completo.

//Bibliotecas
#Include "Protheus.ch"

/*/{Protheus.doc} zFunTit
Função que retorna o título da rotina em Execução
@type function
@author Atilio
@since 26/11/2016
@version 1.0
@return cTitle, Título da Rotina atual
	@example
	MsgInfo("Estou na rotina <b>'"+u_zFunTit()+"'</b>", "Atenção")
/*/

User Function zFunTit()
	Local aArea := GetArea()
	Local cTitle := ""
	
	//Se estiver instanciado no Objeto
	If Type("oApp:oMainWnd:cTitle") == "C"
		cTitle := oApp:oMainWnd:cTitle
		
		//Se tiver um colchetes, pega o texto até a posição inicial do colchete
		If '[' $ cTitle
			cTitle := SubStr(cTitle, 1, At('[', cTitle)-1)
		EndIf
		
		cTitle := Alltrim(cTitle)
	EndIf
	
	RestArea(aArea)
Return cTitle

Esses e outros códigos, estão disponíveis gratuitamente no nosso GitHub, acesse em github.com/dan-atilio/AdvPL.

Bom pessoal, por hoje é só.
Abraços e até a próxima.

About Dan_Atilio

Analista e desenvolvedor de sistemas. Técnico em Informática pelo CTI da Unesp. Graduado em Banco de Dados pela Fatec Bauru. Entusiasta de soluções Open Source e blogueiro nas horas vagas. Autor do projeto Terminal de Informação, onde são postados tutoriais e notícias envolvendo o mundo da tecnologia.

Deixe uma resposta

%d blogueiros gostam disto: