Histórico da Página
...
| Produto: |
| ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Linha de Produto: |
| ||||||||||||||||
| Segmento: |
| ||||||||||||||||
| Módulo: | SIGATRM | ||||||||||||||||
| Função: | TRMA020 | ||||||||||||||||
| Ticket: | 9570375 | ||||||||||||||||
| Requisito/Story/Issue: | DRHGCH-21156 |
02. SITUAÇÃO/REQUISITO
Há A rotina TRMA020 - Cadastro de Cargos, possui uma limitação técnica na execução de gatilhos, quando o mesmo é adicionado . Estes não são executados em campos do tipo MEMO. A rotina TRMA020 - Cadastro de Cargos,
A rotina foi desenvolvida no modelo tradicional e não em MVC. Com isso o mecanismo de execução das trigger, gatilhos de campos, utilizada no modelo em que a rotina foi desenvolvida,
...
Quando o usuário do sistema possuir o PE TRM020GLT no ambiente, este executará o gatilho, previamente configurado através do modulo SIGACFG.
...
No exemplo abaixo, o fonte TRM020GTL, executa o gatilho configurado para o campo Q3_MEMO1.campo Q3_MEMO1; Quando o usuário selecionar botão Salvar dentro do cadastro de cargos, o gatilho será disparo e armazenará no campo
Q3_DATA o valor retornado pela função Date(). Para esse cenário, devemos configurar o gatilho, através do módulo SIGACFG, da seguinte forma:
Acessar módulo SIGACFG → Dicionário de Dados → Tabela SQ3 → Incluir campo Q3_DATA.
Acessar módulo SIGACFG → Dicionário de Dados → Gatilhos → Incluir Q3_MEMO1O conteúdo da variável cReadVar armazena o nome do gatilho, Q3_MEMO1, configurado previamente no módulo SIGACFG, como mostra a imagem:
Durante a operação de inclusão ou alteração do Castro de Cargos - TRMA020, o gatilho mostrado na imagem anterior, irá preencher a data atual no campo Q3_DATA ( Campo personalizado).
Isso ocorrerá após selecionar o botão salvar do cadastro de cargos.
| Bloco de código | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
#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. |
...

