A partir do plano 3, com o Cegid PHC CS evolution, ou a partir da gama Advanced com o PHC ON ativo, existem 2 "Eventos de utilizador" possíveis para utilização no ecrã DMRSS.
Os eventos disponiveis são:
- AposCalcular
- AntesGravarOu Comunicar
Evento "AposCalcular"
O evento AposCalcular é executado antes da apresentação da grelha do ecrã DMRSS ao utilizador.
Este evento ocorre quando o utilizador acede ao ecrã, seleciona um mês e clica em "Calcular". É igualmente executado quando é utilizada a opção "Recalcular".
As alterações efetuadas neste evento afetam apenas a informação apresentada ao utilizador.
Caso o utilizador visualize a grelha e não proceda à sua gravação, todas as alterações realizadas neste evento serão perdidas.
Configurar o evento "AposCalcular"
O evento é criado em Framework > Framework PHC > Eventos.
Ao criar o evento, deverá ter-se em atenção o seguinte:
- Campo "Resumo do evento", deverá conter o nome que se pretende dar ao evento;
- Campo "Ecrã", deve ser colocado "dmrss";
- Campo "Nome do evento", deve selecionar-se "AposCalcular";
- Reação, deve selecionar-se "Programa interno";
Separador "Se programa interno":
- Deverá ser colocada a expressão executar.
Separador "Packages":
- Deverão ser indicados os packages onde o evento será calculado.
Exemplo:
Dim linhas = DirectCast(ObjPara, System.Collections.Generic.List(Of DmrssEarningsLine)) For Each l In linhas l.Remarks = "Correu o evento AposCalcular :-)" Next
Evento "AntesGravarOuComunicar"
O evento AntesGravarOuComunicar é executado quando o utilizador seleciona as opções "Gravar" ou "Gravar e Comunicar".
As alterações efetuadas neste evento são gravadas e consideradas na comunicação enviada à Segurança Social.
Configurar o evento "AntesGravarOuComunicar"
O evento é criado em Framework > Framework PHC > Eventos.
Ao criar o evento, deverá ter-se em atenção o seguinte:
- Campo "Resumo do evento", deverá conter o nome que se pretende dar ao evento;
- Campo "Ecrã ", deve ser colocado "dmrss";
- Campo "Nome do evento", deve selecionar-se "AposCalcular"
- Reação, deve selecionar-se "Programa interno"
Separador "Se programa interno":
- Deverá ser colocada a expressão executar.
Exemplo:
Dim linhas = DirectCast(ObjPara, System.Collections.Generic.List(Of DmrssEarningsLine)) For Each l In linhas l.Remarks = "Este é o evento do Gravar ou comunicar" Next
Deverá ser ativado o campo "a expressão é um programa
Os campos disponiveis para serem utilizados nos eventos são os seguintes:
| Campo | Título da coluna na grelha | Notas |
| No | N.º | Número do funcionário |
| Nome | Nome | Nome do funcionário |
| NBenef | N.º Beneficiário | NISS. Este valor é relido da base de dados no momento da gravação, não sendo obtido a partir do browser. |
| EstabSS | Seg. Social | Código do estabelecimento da Segurança Social |
| Tx3 | Taxa | Taxa patronal (txsse). ValorEmpresa = Tx3/100 × Valor |
| DtRefFormatado | Período | Valor calculado a partir de DtRef no formato MM/yyyy |
| Dias | Dias | Dias de trabalho (natureza P) |
| PreviousValue | Valor Anterior | Valor comunicado anteriormente (retroativos) |
| Valor | Valor Remunerado | Valor a comunicar à Segurança Social |
| Difference | Diferença | PreviousValue + Valor. Relevante apenas em retroativos |
| ValorEmpresa | Valor SS | Quota patronal calculada. Permite override em retroativos |
| CodigoRemuneracao | Natureza | Código da Segurança Social (A, B, P, R, etc.) |
| RequestLabel | Pedido Associado | Campo de apresentação. Não afeta a associação real na base de dados |
| EstadoLabel | Estado | Badge calculada a partir de EstadoCom. Não altera o estado real |
| Remarks | Obs. | Texto livre. Pode ser utilizado para apresentar erros da Segurança Social, mensagens como "Requer pedido" ou informação definida por código no evento |