01. DADOS GERAIS
| Produto: |
TOTVS RH
|
|---|---|
| Linha de Produto: | Linha Protheus |
| Segmento: | RH |
| Módulo: |
TOTVS RH (Linha Protheus) - Gestão de Pessoas (SIGAGPE)
|
| Função: | GP10APREN.PRW |
| País: | Brasil |
| Ticket: | 23231526 |
| Requisito/Story/Issue (informe o requisito relacionado) : | DRHROTPRT-22116 |
02. SITUAÇÃO/REQUISITO
Necessidade de documentação acerca de rotina automática para cadastro das Informações Complementares do Menor Aprendiz.
03. SOLUÇÃO
Segue exemplos para execução de rotina automática para inclusão/alteração de dados de Informações Complementares Menor Aprendiz:
#INCLUDE "Protheus.CH"
User Function GP10APREN()
Local aCabec := {}
Local lGrvFunc := .F.
Private lMsErroAuto := .F.
//### Primeiro Funcionario Estagiário ################################
aadd(aCabec,{"RA_FILIAL" ,"01" ,Nil })
aadd(aCabec,{"RA_MAT" ,"R00184" ,Nil })
aadd(aCabec,{'RA_NOME' ,'FUNCIONARIO EXECAUTO APREND' ,Nil })
aadd(aCabec,{'RA_SEXO' ,'F' ,Nil })
aadd(aCabec,{'RA_RACACOR' ,'2' ,Nil })
aadd(aCabec,{'RA_NASC' ,Stod('19900426') ,Nil })
aadd(aCabec,{'RA_ESTCIVI' ,'S' ,Nil })
aadd(aCabec,{'RA_CPAISOR' ,'01058' ,Nil })
aadd(aCabec,{'RA_NACIONA' ,'10' ,Nil })
aadd(aCabec,{'RA_NATURAL' ,'SP' ,Nil })
aadd(aCabec,{'RA_GRINRAI' ,'40' ,Nil })
aadd(aCabec,{'RA_CC' ,'000000001' ,Nil })
aadd(aCabec,{'RA_ADMISSA' ,Stod('20230101') ,Nil })
aadd(aCabec,{'RA_TIPOADM' ,'3A' ,Nil })
aadd(aCabec,{'RA_OPCAO' ,Stod('20230101') ,Nil })
aadd(aCabec,{'RA_TPPREVI' ,'1' ,Nil })
aadd(aCabec,{'RA_PROCES' ,'00088' ,Nil })
aadd(aCabec,{'RA_HRSMES' ,200 ,Nil })
aadd(aCabec,{'RA_HRSEMAN' ,40 ,Nil })
aadd(aCabec,{'RA_CATFUNC' ,'M' ,Nil })
aadd(aCabec,{'RA_CODFUNC' ,'001' ,Nil })
aadd(aCabec,{'RA_SALARIO' ,1500 ,Nil })
aadd(aCabec,{'RA_TPCONTR' ,'2' ,Nil })
aadd(aCabec,{'RA_DTFIMCT' ,Stod('20231231') ,Nil })
aadd(aCabec,{'RA_CLAURES' ,'1' ,Nil })
aadd(aCabec,{'RA_PERCADT' ,50 ,Nil })
aadd(aCabec,{'RA_SINDICA' ,'01' ,Nil })
aadd(aCabec,{'RA_TIPOPGT' ,'M' ,Nil })
aadd(aCabec,{'RA_VIEMRAI' ,'55' ,Nil })
aadd(aCabec,{'RA_CATEG' ,'07' ,Nil })
aadd(aCabec,{'RA_CATEFD' ,'103' ,Nil })
aadd(aCabec,{'RA_CIC' ,'84203058040' ,Nil })
aadd(aCabec,{'RA_TNOTRAB' ,'001' ,Nil })
aadd(aCabec,{'RA_REGRA' ,'01' ,Nil })
aadd(aCabec,{'RA_SEQTURN' ,'01' ,Nil })
aadd(aCabec,{'RA_TIPENDE' ,'2' ,Nil })
aadd(aCabec,{'RA_LOGRTP' ,'R' ,Nil })
aadd(aCabec,{'RA_LOGRDSC' ,'SAO LUIS' ,Nil })
aadd(aCabec,{'RA_LOGRNUM' ,'150' ,Nil })
aadd(aCabec,{'RA_BAIRRO' ,'CENTRO' ,Nil })
aadd(aCabec,{'RA_ESTADO' ,'SP' ,Nil })
aadd(aCabec,{'RA_CODMUN' ,'37107' ,Nil })
aadd(aCabec,{'RA_CEP' ,'13920200' ,Nil })
Begin Transaction
// Grava dados do funcionário MENOR APRENDIZ
lGrvFunc := U_Envia(aCabec)
// Grava dados dAS INFO. COMPLEMENTARES MENOR APRENDIZ
If lGrvFunc
U_GP945APR(aCabec)
EndIf
End Transaction
Return(.T.)
/*------------------------------------------------------------------------
GRAVACAO DO FUNCIONARIO MENOR APRENDIZ
------------------------------------------------------------------------*/
USER Function Envia(aCabec)
Local lRet := .T.
// Faz a chamada da rotina de cadastro de funcionários (opção 3 - Inclusão)
MSExecAuto({|x,y,k,w| GPEA010(x,y,k,w)},NIL,NIL,aCabec,3)
If !lMsErroAuto
Conout("Dados de funcionario incluido com sucesso!")
Else
MostraErro()
lRet := .F.
EndIf
Return(lRet)
/*------------------------------------------------------------------------
GRAVACAO DAS INFORMACOES COMPLEMENTARES MENOR APRENDIZ
------------------------------------------------------------------------*/
User Function GP945APR(aCabec)
Local aErro := {}
Local cArqErrAuto := ""
Local oModel := Nil
oModel := FwLoadModel("GPEA945")
oModel:SetOperation(3)
oModel:Activate()
oModel:LoadValue("SRATITLE" , "RA_MAT" , aCabec[2][2] )
oModel:LoadValue("SRATITLE" , "RA_NOME" , aCabec[3][2])
oModel:LoadValue("SRATITLE" , "RA_ADMISSA" , aCabec[13][2])
// Indicativo de Modalidade 2-Contrataão Indireta
oModel:SetValue("RU2MASTER","RU2_FILIAL" ,aCabec[1][2])
oModel:SetValue("RU2MASTER","RU2_MAT" ,aCabec[2][2])
oModel:SetValue("RU2MASTER","RU2_INDMOD" ,"2")
oModel:SetValue("RU2MASTER","RU2_TPINSC" ,"1")
oModel:SetValue("RU2MASTER","RU2_NUMINS" ,"14035203000128")
/*
// Indicativo de Modalidade 1-Contrataão Direta
oModel:SetValue("RU2MASTER","RU2_FILIAL" ,aCabec[1][2])
oModel:SetValue("RU2MASTER","RU2_MAT" ,aCabec[2][2])
oModel:SetValue("RU2MASTER","RU2_INDMOD" ,"1")
oModel:SetValue("RU2MASTER","RU2_ENTQA" ,"81841963000110")
oModel:SetValue("RU2MASTER","RU2_ATPR" ,"92989045000159")*/
// Carrega variáveis de memória SRA
SRA->(dbSetOrder(1)) // RA_FILIAL + RA_MAT
SRA->(dbSeek(aCabec[1][2]+aCabec[2][2]))
RegToMemory("SRA",,, .F.)
If oModel:VldData()
oModel:CommitData()
conout("Dados de INF. COMPL. MENOR APRENDIZ do funcionario incluidos com sucesso!!")
Else
aErro := oModel:GetErrorMessage()
cArqErrAuto := "Id do formulario de origem:"+ ' [' + AllToChar( aErro[1] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do campo de origem: " + ' [' + AllToChar( aErro[2] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do formulario de erro: " + ' [' + AllToChar( aErro[3] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do campo de erro: " + ' [' + AllToChar( aErro[4] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do erro: " + ' [' + AllToChar( aErro[5] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Mensagem do erro: " + ' [' + AllToChar( aErro[6] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Mensagem da solucao: " + ' [' + AllToChar( aErro[7] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Valor atribuido: " + ' [' + AllToChar( aErro[8] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Valor anterior: " + ' [' + AllToChar( aErro[9] ) + ']' + Chr(13) + Chr(10)
Alert ('Falha no ExecAuto MVC: ' + (Chr(13) + Chr(10)) + cArqErrAuto)
EndIf
oModel:DeActivate()
oModel:Destroy()
oModel := NIL
Return(.T.)
#INCLUDE "Protheus.CH"
User Function GP10APREN()
Local aCabec := {}
Private lMsErroAuto := .F.
//### Primeiro Funcionario Estagiário #################################
aCabec := {}
aadd(aCabec,{"RA_FILIAL" ,"01" ,Nil })
aadd(aCabec,{"RA_MAT" ,"R00184" ,Nil })
aadd(aCabec,{'RA_NOME' ,'FUNCIONARIO EXECAUTO APREND' ,Nil })
aadd(aCabec,{'RA_ADMISSA' ,Stod('20230101') ,Nil })
Begin Transaction
// Grava dados das INFO. COMPLEMENTARES MENOR APRENDIZ
U_GP945APR(aCabec)
End Transaction
Return(.T.)
/*------------------------------------------------------------------------
GRAVACAO DAS INFORMACOES COMPLEMENTARES MENOR APRENDIZ
------------------------------------------------------------------------*/
User Function GP945APR(aCabec)
Local aErro := {}
Local cArqErrAuto := ""
Local oModel := Nil
oModel := FwLoadModel("GPEA945")
oModel:SetOperation(3)
oModel:Activate()
oModel:LoadValue("SRATITLE" , "RA_MAT" , aCabec[2][2] )
oModel:LoadValue("SRATITLE" , "RA_NOME" , aCabec[3][2])
oModel:LoadValue("SRATITLE" , "RA_ADMISSA" , aCabec[4][2])
// Alterando para Indicativo de Modalidade 2-Contrataão Indireta
oModel:SetValue("RU2MASTER","RU2_FILIAL" ,aCabec[1][2])
oModel:SetValue("RU2MASTER","RU2_MAT" ,aCabec[2][2])
oModel:SetValue("RU2MASTER","RU2_INDMOD" ,"2")
oModel:SetValue("RU2MASTER","RU2_TPINSC" ,"1")
oModel:SetValue("RU2MASTER","RU2_NUMINS" ,"14035203000128")
oModel:SetValue("RU2MASTER","RU2_ENTQA" ,"")
oModel:SetValue("RU2MASTER","RU2_ATPR" ,"")
// Carrega variáveis de memória SRA
SRA->(dbSetOrder(1)) // RA_FILIAL + RA_MAT
SRA->(dbSeek(aCabec[1][2]+aCabec[2][2]))
RegToMemory("SRA",,, .F.)
If oModel:VldData()
oModel:CommitData()
conout("Dados de INF. COMPL. MENOR APRENDIZ do funcionario incluidos com sucesso!!")
Else
aErro := oModel:GetErrorMessage()
cArqErrAuto := "Id do formulario de origem:"+ ' [' + AllToChar( aErro[1] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do campo de origem: " + ' [' + AllToChar( aErro[2] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do formulario de erro: " + ' [' + AllToChar( aErro[3] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do campo de erro: " + ' [' + AllToChar( aErro[4] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do erro: " + ' [' + AllToChar( aErro[5] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Mensagem do erro: " + ' [' + AllToChar( aErro[6] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Mensagem da solucao: " + ' [' + AllToChar( aErro[7] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Valor atribuido: " + ' [' + AllToChar( aErro[8] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Valor anterior: " + ' [' + AllToChar( aErro[9] ) + ']' + Chr(13) + Chr(10)
Alert ('Falha no ExecAuto MVC: ' + (Chr(13) + Chr(10)) + cArqErrAuto)
EndIf
oModel:DeActivate()
oModel:Destroy()
oModel := NIL
Return(.T.)
#INCLUDE "Protheus.CH"
User Function GP10APREN()
Local aCabec := {}
Private lMsErroAuto := .F.
//### Primeiro Funcionario Estagiário #################################
aCabec := {}
aadd(aCabec,{"RA_FILIAL" ,"01" ,Nil })
aadd(aCabec,{"RA_MAT" ,"R00184" ,Nil })
aadd(aCabec,{'RA_NOME' ,'FUNCIONARIO EXECAUTO APREND' ,Nil })
aadd(aCabec,{'RA_ADMISSA' ,Stod('20230101') ,Nil })
Begin Transaction
// Grava dados das INFO. COMPLEMENTARES MENOR APRENDIZ
U_GP945APR(aCabec)
End Transaction
Return(.T.)
/*------------------------------------------------------------------------
GRAVACAO DAS INFORMACOES COMPLEMENTARES MENOR APRENDIZ
------------------------------------------------------------------------*/
User Function GP945APR(aCabec)
Local aErro := {}
Local cArqErrAuto := ""
Local oModel := Nil
oModel := FwLoadModel("GPEA945")
oModel:SetOperation(4)
oModel:Activate()
oModel:LoadValue("SRATITLE" , "RA_MAT" , aCabec[2][2] )
oModel:LoadValue("SRATITLE" , "RA_NOME" , aCabec[3][2])
oModel:LoadValue("SRATITLE" , "RA_ADMISSA" , aCabec[4][2])
// Alterando para Indicativo de Modalidade 1-Contrataão Direta
oModel:SetValue("RU2MASTER","RU2_FILIAL" ,aCabec[1][2])
oModel:SetValue("RU2MASTER","RU2_MAT" ,aCabec[2][2])
oModel:SetValue("RU2MASTER","RU2_INDMOD" ,"1")
oModel:SetValue("RU2MASTER","RU2_TPINSC" ,"")
oModel:SetValue("RU2MASTER","RU2_NUMINS" ,"")
oModel:SetValue("RU2MASTER","RU2_ENTQA" ,"81841963000110")
oModel:SetValue("RU2MASTER","RU2_ATPR" ,"92989045000159")
// Carrega variáveis de memória SRA
SRA->(dbSetOrder(1)) // RA_FILIAL + RA_MAT
SRA->(dbSeek(aCabec[1][2]+aCabec[2][2]))
RegToMemory("SRA",,, .F.)
If oModel:VldData()
oModel:CommitData()
conout("Dados de INF. COMPL. MENOR APRENDIZ do funcionario alterados com sucesso!!")
Else
aErro := oModel:GetErrorMessage()
cArqErrAuto := "Id do formulario de origem:"+ ' [' + AllToChar( aErro[1] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do campo de origem: " + ' [' + AllToChar( aErro[2] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do formulario de erro: " + ' [' + AllToChar( aErro[3] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do campo de erro: " + ' [' + AllToChar( aErro[4] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Id do erro: " + ' [' + AllToChar( aErro[5] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Mensagem do erro: " + ' [' + AllToChar( aErro[6] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Mensagem da solucao: " + ' [' + AllToChar( aErro[7] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Valor atribuido: " + ' [' + AllToChar( aErro[8] ) + ']' + Chr(13) + Chr(10)
cArqErrAuto += "Valor anterior: " + ' [' + AllToChar( aErro[9] ) + ']' + Chr(13) + Chr(10)
Alert ('Falha no ExecAuto MVC: ' + (Chr(13) + Chr(10)) + cArqErrAuto)
EndIf
oModel:DeActivate()
oModel:Destroy()
oModel := NIL
Return(.T.)
04. DEMAIS INFORMAÇÕES
N/A
05. ASSUNTOS RELACIONADOS
- N/A