CONTEÚDO
- Visão Geral
- Exemplo de utilização 1
- Exemplo de utilização 2
- Tabelas utilizadas
01. VISÃO GERAL
O Ponto de Entrada TRM020GTL é executado no momento de confirmar a gravação do registro. Nesse ponto, o sistema ainda não atualizou o banco de dados, permitindo assim, que o usuário tenha as informações anteriores à alteração (banco de dados) e às informações atuais (ainda em tela).
Além disso, como a rotina TRMA020 - Cadastro de Cargos, foi desenvolvida no modelo tradicional e não em MVC, ela possui uma limitação técnica na execução de gatilhos em campos do tipo MEMO e com esse ponto de entrada, essa situação também pode ser resolvida, conforme exemplos abaixo:
02. EXEMPLO DE UTILIZAÇÃO 1
Ponto de entrada para executar gatilho, previamente configurado através do modulo SIGACFG, para um campo memo:
#INCLUDE "PROTHEUS.CH"
User Function TRM020GTL()
Local cReadVar := "Q3_MEMO1" //Contem o nome do campo tipo MEMO que possui gatilho (Domínio)
If(FunName() == 'TRMA020' .And. !Empty(cReadVar) )
IF (ExistTrigger(cReadVar))
RunTrigger(1,nil,nil,,cReadVar)
EndIf
EndIf
Return .T.
03. EXEMPLO DE UTILIZAÇÃO 2
Ponto de entrada para utilizar dados do banco de dados antes da alteração do registro:
#INCLUDE "PROTHEUS.CH"
User Function TRM020GTL()
Local cDepto_Ant := SQ3->Q3_DEPTO
Local cGrupo_Ant := SQ3->Q3_GRUPO
Local cDepto_Atu := M->Q3_DEPTO
Local cGrupo_Atu := M->Q3_GRUPO
...
Return .T.
04. TABELAS UTILIZADAS
- SQ3 - Tabela de Cargos