| Produto: | |
|---|---|
| Linha de Produto: | |
| Segmento: | |
| Módulo: | |
| Função: | Licen. Maternidade (MDTA920) |
| País: | Brasil |
| Ticket: | 6012923 |
| Issue: | DNG-5866 |
Ponto de Entrada MDTA9201 criado ao concluir a inclusão da Licença Maternidade, tendo a função de realizar uma gravação personalizada na rotina de Afastamentos.
| Ponto de Entrada | MDTA9201() |
|---|---|
| Chamada | Na gravação de uma licença maternidade. |
| Pré-Requisito | Não há. |
| Evento | Gravação personalizada na rotina de Afastamentos. |
| Retorno | Retorna o afastamento personalizado na SR8 para a licença maternidade incluída. |
| Função | MDTA9201() |
|---|---|
| Parâmetros | dbSelectArea("SR8"), seleciona as informações da tabela SR8. dbSetOrder(2), define o índice da ordenação da tabela, nesse caso, índice 2. dbSeek(SRA->RA_FILIAL + SRA->RA_MAT + "ZZZ", .T.), realiza uma busca na tabela SR8, localizando um registro específico. lCpoDura, booleano, se a variável retornar .T., a duração do afastamento é configurada para 120 dias (licença maternidade padrão). |
| Retorno | .T., booleano, retorno lógico verdadeiro quando a gravação personalizada de um afastamento foi feita com sucesso. |
#include "Protheus.ch"
User Function MDTA9201()
dbSelectArea("SR8")
dbSetOrder(2)
dbSeek(SRA->RA_FILIAL+SRA->RA_MAT+"ZZZ",.T.)
dbSkip(-1)
IF !Eof() .AND. SRA->RA_FILIAL+SRA->RA_MAT == SR8->R8_FILIAL+SR8->R8_MAT
cSeq := SOMA1(SR8->R8_SEQ)
Else
cSeq := "001"
Endif
//Grava afastamento
dbSelectArea("SR8")
dbSetOrder(1)
If !dbSeek(SRA->RA_FILIAL+SRA->RA_MAT+DTOS(TOF->TOF_DTSLIC)+"Q")
Reclock("SR8",.t.)
SR8->R8_FILIAL := SRA->RA_FILIAL
SR8->R8_SEQ := cSeq
SR8->R8_MAT := SRA->RA_MAT
SR8->R8_DATA := dDataBase
SR8->R8_DATAINI := TOF->TOF_DTSLIC
SR8->R8_DATAFIM := TOF->TOF_DTRLIC-1
SR8->R8_TIPO := "Q"
SR8->R8_CONTINU := "2"
If lCpoDura //A empresa deverá pagar o salário integralmente a funcionária
SR8->R8_DURACAO := 120
SR8->R8_DIASEMP := 120
SR8->R8_DPAGAR := 120
Endif
MsUnlock("SR8")
Endif
Return .T. |