O que é e como funciona o Ponto de Entrada Protheus?

Ponto-de-Entrada-Protheus parte 3 de 3

Descubra o Poder do Ponto de Entrada Protheus: Transforme seu ERP

Você já ouviu falar do Ponto de Entrada Protheus? Se não, está na hora de descobrir essa ferramenta incrível que pode revolucionar a forma como você interage com o sistema ERP. Prepare-se para mergulhar em um mundo de possibilidades e simplificações que irão elevar a eficiência dos seus processos empresariais.

O Que é o Ponto de Entrada Protheus?

Imagine ter a capacidade de personalizar e aprimorar funções padrões do seu sistema ERP sem mexer em seu código-fonte. É exatamente isso que o Ponto de Entrada Protheus oferece. Trata-se de chamadas de Programas ADVPL estrategicamente posicionados em áreas específicas do sistema, inicialmente sem qualquer funcionalidade. Mas quando um desenvolvedor identifica a necessidade de uma intervenção, ele cria uma rotina personalizada, atribui um nome específico conforme a documentação do Protheus e a compila.

Como Funciona?

Quando a rotina padrão é acionada e passa pela customização do Ponto de Entrada, a sua rotina personalizada também é executada. É como ter uma porta secreta para otimizar as funcionalidades sem que o usuário perceba. A beleza disso é que não é necessário mexer nos programas padrões, o que reduz consideravelmente o risco de erros e mantém a integridade do sistema.

Objetivos do Ponto de Entrada

Um Ponto de Entrada é uma User Function criada para interagir com uma rotina padrão do ERP. Dependendo do momento em que é acionado durante um processamento, ele pode:

  • Aprimorar validações feitas pela aplicação;
  • Complementar atualizações em tabelas padrões do ERP;
  • Realizar atualizações em tabelas específicas durante um processamento;
  • Executar ações que dependem das informações atuais do ambiente;
  • Substituir um processamento padrão por uma regra específica do cliente.

Regras e Diretrizes

É fundamental usar um Ponto de Entrada apenas para os fins previamente definidos, evitando problemas de integridade de dados ou erros inesperados durante a execução da rotina padrão. A transparência é a chave, garantindo que as tabelas acessadas pelo Ponto de Entrada tenham a situação restaurada ao término do processo.

Para isso, recomendamos o uso das funções GETAREA() e RESTAREA() para proteger o ambiente durante o processamento.

GETAREA()
Sintaxe: ALIAS->(GetArea()), exemplo: aAreaSA1 := SA1->(GetArea())
Retorno: Array contendo {Alias(),IndexOrd(),Recno()}

RESTAREA()
Sintaxe: RESTAREA(aArea), exemplo: RestArea(aAreaSA1)
Retorno: aArea Array contendo {cAlias, nOrdem, nRecno}

Variável PARAMIXB: Sua Aliada na Customização

Como um Ponto de Entrada não é chamado como uma função tradicional, ele não recebe parâmetros. Em vez disso, o ERP disponibiliza a variável PARAMIXB, que recebe os parâmetros da função chamadora e os disponibiliza para a rotina customizada. A versatilidade dessa variável é impressionante, podendo conter desde dados simples até estruturas complexas como arrays ou objetos. No entanto, é crucial consultar a documentação e proteger a função customizada contra tipos de PARAMIXB não tratados.

Quando Usar?

A chave para saber quando usar um Ponto de Entrada é identificar processos que podem ser modificados sem prejudicar a integridade do sistema. Por exemplo, a montagem das parcelas de pagamento em um pedido pode ser uma excelente oportunidade para aplicar essa personalização. É especialmente útil quando diferentes tipos de negócios ou estratégias precisam de abordagens distintas.

Em resumo, o Ponto de Entrada Protheus é uma ferramenta poderosa que coloca o controle nas suas mãos, permitindo a customização de processos sem comprometer a estabilidade do seu sistema ERP TOTVS Protheus. Não perca mais tempo fazendo alterações arriscadas no código-fonte. Descubra o Ponto de Entrada e eleve a eficiência dos seus negócios hoje mesmo!

Treinamento Recomendado:

Pensando no Mercado de Trabalho com Totvs Protheus, especialmente para ser um Consultor de Negócios e Implantações ? Aqui está o Treinamento que você precisa: https://go.hotmart.com/Q88839526S

Aproveite e inscreva-se em nosso canal do Youtube: https://bit.ly/36keSmP

Sintaxe

#Include "Protheus.ch"

/*-------------------------------------------------------------------------------------------*
    {Protheus.doc} User Function F666VLDP
    ()   
    @type:      User Function
    @author:    Jose Moura
    @site:      https://academiaprotheus.com.br
    @desc.:     PE para permitir qualquer pessoa/participante
                Incluir Solicitação de Viagens (PE_F666VLDP.prw)
 
 *-------------------------------------------------------------------------------------------*/

User Function F666VLDP()
Local lRet         := .T.
Local oModel    := Nil
Local cPartic    := ''
Local cSolic    := ''
Local cAprov     := ''
Local cAprovS    := ''
Local aArea        := GetArea()
oModel := FWModelActive() //Modelo de dados ativo.
cPartic := Alltrim( oModel:GetValue( 'FW5DETAIL', 'FW5_PARTIC' ) )
cSolic := Alltrim( oModel:GetValue( 'FW3MASTER', 'FW3_USER' ) )

dbSelectArea('RD0')
RD0->(dbSeek( xFilial('RD0') + cPartic ))  
//Necessario que tenha aprovador/aprovador substituto
cAprov := RD0->RD0_APROPC
cAprovS:= RD0->RD0_APSUBS

If Empty(cAprov) .And. Empty(cAprovS)
    Help(,,'VLDPARTIC',,OemToANSI('Necessario Aprovador ou Aprovador substituto!'), 1, 0 )
    lRet := .F.
EndIf

RestArea( aArea )

Return lRet

One thought on “O que é e como funciona o Ponto de Entrada Protheus?

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *