<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Arquivos Pontos de Entrada &#8211; Sem Preju</title>
	<atom:link href="https://sempreju.com.br/category/advpl/pontos-de-entrada/feed/" rel="self" type="application/rss+xml" />
	<link>https://sempreju.com.br/category/advpl/pontos-de-entrada/</link>
	<description>Conhecimento Gratuito</description>
	<lastBuildDate>Mon, 21 Sep 2020 19:12:35 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>
	<item>
		<title>Executando rotinas ao sair do sistema &#8211; P.E. MsQuit</title>
		<link>https://sempreju.com.br/executando-rotinas-ao-sair-do-sistema-pe-msquit/</link>
					<comments>https://sempreju.com.br/executando-rotinas-ao-sair-do-sistema-pe-msquit/#respond</comments>
		
		<dc:creator><![CDATA[Rafael Gonçalves]]></dc:creator>
		<pubDate>Mon, 21 Sep 2020 19:10:48 +0000</pubDate>
				<category><![CDATA[Pontos de Entrada]]></category>
		<guid isPermaLink="false">https://sempreju.com.br/?p=782</guid>

					<description><![CDATA[<p>Existe um ponto de entrada pouco conhecido que é chamado após o logoff ou ao desconectar do sistema. Esse ponto de entrada é o MsQuit, e sua documentação oficial pode ser encontrada aqui. Abaixo um exemplo O código fonte desse e outros exemplos podem ser encontrados em nosso git. Post<a class="moretag" href="https://sempreju.com.br/executando-rotinas-ao-sair-do-sistema-pe-msquit/"> Leia mais&#8230;</a></p>
<p>O post <a href="https://sempreju.com.br/executando-rotinas-ao-sair-do-sistema-pe-msquit/">Executando rotinas ao sair do sistema &#8211; P.E. MsQuit</a> apareceu primeiro em <a href="https://sempreju.com.br">Sem Preju</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Existe um ponto de entrada pouco conhecido que é chamado após o logoff ou ao desconectar do sistema.</p>
<p>Esse ponto de entrada é o MsQuit, e sua documentação oficial pode ser encontrada <a href="https://tdn.totvs.com/display/public/PROT/MsQuit+-+Controle+de+acesso+ao+sistema">aqui</a>.<br />
Abaixo um exemplo</p>
<pre class="brush: cpp; light: false; title: ; toolbar: true; notranslate">
#INCLUDE &quot;RWMAKE.CH&quot;


/*/{Protheus.doc} P.E. MsQuit
Função chamada após o login do usuário e no MDI a cada nova aba
@author TOTVS https://tdn.totvs.com/display/public/PROT/MsQuit+-+Controle+de+acesso+ao+sistema
@author Rafael Gonçalves
@since  Setembro/2020
@version 1.0
@project
@param
    Vetor PARAMIXB
    O vetor PARAMIXB possui a seguinte estrutura:
    &#x5B;1] - Tipo de ação
        .T. = Logoff
        .F. = Saiu do sistema
/*/

User Function MSQUIT()
Local lLogoff 	:= ParamIxb&#x5B;1] //variável lógica que identifica se o P.E. está sendo executado pelo Logoff ou pela saida definitiva.
Local cMsg 	:= &quot;&quot;
If lLogOff	
	cMsg := &quot;O Usuário: &quot;+Alltrim(cUserName)+&quot; efetuou logoff do sistema&quot;
Else	
	cMsg := &quot;O Usuário: &quot;+Alltrim(cUserName)+&quot; saiu totalmente do sistema&quot;
EndIf

ApMsgAlert(cMsg)

Return .T.
</pre>
<p>O código fonte desse e outros exemplos podem ser encontrados em nosso <a href="https://github.com/llrafaell/SemPreju-Exemplos">git</a>.</p>
<p><em>Post interessantes:</em></p>
<p>Ponto de entrada ao acessar o sistema <a href="https://sempreju.com.br/executando-rotinas-ao-abrir-um-modulo-afterlogin-advpl/">aqui</a>.</p>
<p>Aprenda a instalar o Protheus <a href="https://sempreju.com.br/como-instalar-o-protheus-appserver-e-smartclient-parte-5/">aqui</a>.</p>
<p>Retornar datas por extenso <a href="https://sempreju.com.br/datas-por-extenso-no-protheus/">aqui</a>.</p>
<p>Barras de progresso <a href="https://sempreju.com.br/como-fazer-barras-de-progresso-no-advpl/">aqui</a>.</p>
<p>Dúvidas e sugestões, entre em contato.</p>
<p>Obrigado e até a próxima!</p>
<p>O post <a href="https://sempreju.com.br/executando-rotinas-ao-sair-do-sistema-pe-msquit/">Executando rotinas ao sair do sistema &#8211; P.E. MsQuit</a> apareceu primeiro em <a href="https://sempreju.com.br">Sem Preju</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sempreju.com.br/executando-rotinas-ao-sair-do-sistema-pe-msquit/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Executando rotinas ao abrir um módulo &#8211; PE AfterLogin</title>
		<link>https://sempreju.com.br/executando-rotinas-ao-abrir-um-modulo-afterlogin-advpl/</link>
					<comments>https://sempreju.com.br/executando-rotinas-ao-abrir-um-modulo-afterlogin-advpl/#respond</comments>
		
		<dc:creator><![CDATA[Rafael Gonçalves]]></dc:creator>
		<pubDate>Wed, 25 Mar 2020 16:52:49 +0000</pubDate>
				<category><![CDATA[ADVPL – Funções]]></category>
		<category><![CDATA[Pontos de Entrada]]></category>
		<guid isPermaLink="false">https://sempreju.com.br/?p=555</guid>

					<description><![CDATA[<p>Existe um ponto de entrada pouco conhecido que é chamado após o login do usuário e no MDI a cada nova aba. Esse ponto de entrada é o AfterLogin, e sua documentação oficial pode ser encontrada aqui. Abaixo um exemplo #INCLUDE &#34;PROTHEUS.CH&#34; #INCLUDE &#34;RWMAKE.CH&#34; /*/{Protheus.doc} P.E. AfterLogin Função chamada após<a class="moretag" href="https://sempreju.com.br/executando-rotinas-ao-abrir-um-modulo-afterlogin-advpl/"> Leia mais&#8230;</a></p>
<p>O post <a href="https://sempreju.com.br/executando-rotinas-ao-abrir-um-modulo-afterlogin-advpl/">Executando rotinas ao abrir um módulo &#8211; PE AfterLogin</a> apareceu primeiro em <a href="https://sempreju.com.br">Sem Preju</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div><span><span>Existe um ponto de entrada pouco conhecido que é chamado após o login do usuário e no MDI a cada nova aba.</span></span></div>
<div></div>
<div>Esse ponto de entrada é o AfterLogin, e sua documentação oficial pode ser encontrada <a href="https://tdn.totvs.com/pages/releaseview.action?pageId=6815186">aqui</a>.</div>
<p>Abaixo um exemplo</p>
<pre class="brush: cpp; light: false; title: ; toolbar: true; notranslate">
#INCLUDE &quot;PROTHEUS.CH&quot;
#INCLUDE &quot;RWMAKE.CH&quot;


/*/{Protheus.doc} P.E. AfterLogin
Função chamada após o login do usuário e no MDI a cada nova aba
@author TOTVS http://tdn.totvs.com/pages/releaseview.action?pageId=6815186
@author Rafael Gonçalves
@since  Março/2020
@version 1.0
@project
@param
    Vetor PARAMIXB
    O vetor PARAMIXB possui a seguinte estrutura:
    &#x5B;1] - Id do usuário
    &#x5B;2] - Nome do usuário
/*/

User Function AfterLogin()
Local cPessoa := RetCodUsr()
Local cId	:= ParamIXB&#x5B;1] //Id do usuário
Local cNome := ParamIXB&#x5B;2] //Nome do usuário
conout(&quot;AfterLogin executado por: Usuario &quot;+ cId + &quot; - &quot; + Alltrim(cNome)+&quot; efetuou login as &quot;+Time())

Do Case
    //Filtra somente os pedidos que o usuário fez
    Case nModulo == 5 //Faturamento
        DbSelectArea('SC5')
        If cPessoa != '000000' .and. fieldpos(C5_ZZUSR)&gt;0//nao for adm
            SC5-&gt;(DbSetFilter({|| C5_ZZUSR == cPessoa }, &quot;C5_ZZUSR == '&quot;+cPessoa+&quot;'&quot;))
        EndIf
    Case cModulo == &quot;GPE&quot;
            //Verificar Férias e Termino de Periodo de Experiencia

    Case cModulo == &quot;COM&quot;
        //Verificar Pedidos com previsao de Entrega na data
        //u_ChkPed()
EndCase

Return .t.
</pre>
<p>O código fonte desse e outros exemplos podem ser encontrados em nosso <a href="https://github.com/llrafaell/SemPreju-Exemplos">git</a>.</p>
<p><em>Post interessantes:</em></p>
<p>Aprenda a instalar o Protheus <a href="https://sempreju.com.br/como-instalar-o-protheus-appserver-e-smartclient-parte-5/">aqui</a>.</p>
<p>Retornar datas por extenso <a href="https://sempreju.com.br/datas-por-extenso-no-protheus/">aqui</a>.</p>
<p>Barras de progresso <a href="https://sempreju.com.br/como-fazer-barras-de-progresso-no-advpl/">aqui</a>.</p>
<p>Dúvidas e sugestões, entre em contato.</p>
<p>Obrigado e até a próxima!</p>
<p>O post <a href="https://sempreju.com.br/executando-rotinas-ao-abrir-um-modulo-afterlogin-advpl/">Executando rotinas ao abrir um módulo &#8211; PE AfterLogin</a> apareceu primeiro em <a href="https://sempreju.com.br">Sem Preju</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sempreju.com.br/executando-rotinas-ao-abrir-um-modulo-afterlogin-advpl/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
