Como efetuar alterações mensais de funcionários pela API?
O módulo de Recursos Humanos do ERP PRIMAVERA dispõe de funcionalidades que conferem às organizações uma gestão eficiente dos seus recursos humanos. Por exemplo, é possível gerir as alterações dos dados dos seus funcionários, como o registo de faltas, horas extra, remunerações e descontos. Neste artigo, demonstramos como é possível criar alterações mensais através da API disponibilizada na V10 do ERP. O registo de faltas é um tipo de alteração mensal que pode ocorrer numa organização e tem como objetivo anotar as ausências do funcionário. Este processo é particularmente importante, se o sistema estiver configurado para considerar estes dados ao processar o vencimento do funcionário. Para registar uma falta para um funcionário, siga os seguintes passos: Passo 1 - Adicionar a referência ao módulo de Recursos Humanos Criar um projeto em Visual Studio e adicionar a referência para a API de Recursos Humanos: Passo 2 - Acrescentar o namespace "RhpBE100" Para facilitar a leitura do código, adicionar o namespace relativo à API de RH. Passo 3 - Validar se a falta existe Apenas se podem registar faltas de um funcionário que existam na tabela de faltas. Para evitar erros de inserção, é necessário validar primeiramente se a falta existe. Passo 4 - Criar o objeto do cadastro da falta com a informação necessária Passo 5 - Efetuar o registo do cadastro da falta É necessário verificar se a falta associada ao funcionário já existe na data definida antes de a inserir. Se já existir, o sistema atualiza os dados da falta existente. Caso contrário, regista uma nova falta com os dados inseridos.Alterações Mensais
using RhpBE100;
RhpBEFalta absenceType = PriEngine.Engine.RecursosHumanos.Faltas.Edita(txtAbsence.Text);
if (absenceType != null)
{
//Pode inserir a falta
}
else
MessageBox.Show("The Absence type does not exist.");
RhpBECadastroFalta absenceRecords = new RhpBECadastroFalta
{
CalculoFalta = absenceType.CalculoFaltaDias,
Horas = absenceType.Horas,
DescontaRem = absenceType.DescontaRemuneracoes != 0,
Falta = txtAbsence.Text.ToUpper(),
Data = dtDate.Value.Date,
Observacoes = txtRemarks.Text,
Funcionario = txtEmployee.Text.ToUpper(),
ExcluiProc = chkExcludeProc.Checked,
ExcluiEstat = chkExcludeStatistics.Checked,
Tempo = (float)nupDuration.Value,
Origem = (byte)OrigemDados.origemVBA
};
if (PriEngine.Engine.RecursosHumanos.CadastroFaltas.Existe(absenceRecords.Funcionario, absenceRecords.Data, absenceRecords.Falta))
{
MessageBox.Show($"The absence {absenceRecords.Falta} already exists for Employee { absenceRecords.Funcionario} on day {absenceRecords.Data}.");
}
else
{
PriEngine.Engine.RecursosHumanos.CadastroFaltas.Actualiza(absenceRecords);
MessageBox.Show("Writing carried out successfully.");
this.Close();
}
login para deixar a sua opinião.