Árvore de páginas


CONTEÚDO

  1. Visão Geral
  2. Exemplo de utilização
  3. Tabelas utilizadas


01. VISÃO GERAL

Automação da rotina GPEA265 - Cadastramento de Autônomos. 

Através de um rdmake que acione o GPEA265 via execauto, é possível automatizar o processo de inclusão/alteração/exclusão de dados na tabela SRA para o cadastro de Autônomos.

Basicamente, este rdmake que chamará a execauto GPEA265, deverá conter um array com a seguinte estrutura:


aCabec -> Corresponde aos dados da tabela SRA - Autônomos.

Sintaxe: { {"RA_FILIAL"    , conteudo1, NIL},;

{"RA_MAT"      , conteudo2, NIL};

{"RA_NOME"  , conteudo3, NIL};

{campo4         , conteudo4, Nil},;

{campo5         , conteudo4, Nil}  }


Processos que podem ser executados pela execauto: 

  • nOpc = 3 - Inclusão
  • nOpc = 4 - Alteração
  • nOpc = 5 - Exclusão


Chamada da execauto: MSExecAuto({|x,y| GPEA265(x,y)}, aCabec, nOpc)


Observação:
1) É importante realizar uma análise cuidadosa na passagem dos campos e de seus conteúdos. Não somente informar os campos obrigatórios, mas também fornecer campos adicionais que podem ser necessários devido a regra de negócio envolvida.

2) Certifique-se de que os valores das chaves estrangeiras sejam válidos para evitar retrabalho. Por exemplo, informe apenas um código de função que tenha correspondente na tabela de funções (SRJ).


02. EXEMPLO DE UTILIZAÇÃO

#INCLUDE "Protheus.CH"

User Function GP265AUT()

Local aCabec := {}

PRIVATE lMsErroAuto := .F.

aCabec := {}


/*INCLUSAO*/
aadd(aCabec,{"RA_FILIAL" ,"D MG 01 " ,Nil })
aadd(aCabec,{"RA_MAT" ,"991239" ,Nil })
aadd(aCabec,{'RA_NOME' ,'FUNCIONARIO ROTINA AUTOMATICA' ,Nil })
aadd(aCabec,{'RA_SEXO' ,'F' ,Nil })
aadd(aCabec,{'RA_ESTCIVI' ,'C' ,Nil })
aadd(aCabec,{'RA_NATURAL' ,'SP' ,Nil })
aadd(aCabec,{'RA_NACIONA' ,'10' ,Nil })
aadd(aCabec,{'RA_NASC' ,Stod('19731215') ,Nil })
aadd(aCabec,{'RA_CC' ,'000000001' ,Nil })
aadd(aCabec,{'RA_ADMISSA' ,Stod('20080505') ,Nil })
aadd(aCabec,{'RA_OPCAO' ,Stod('20080505') ,Nil })
aadd(aCabec,{'RA_BCDPFGT' ,'34100' ,Nil })
aadd(aCabec,{'RA_CTDPFGT' ,'222285' ,Nil })
aadd(aCabec,{'RA_HRSMES' ,220 ,Nil })
aadd(aCabec,{'RA_HRSEMAN' ,44 ,Nil })
aadd(aCabec,{'RA_CODFUNC' ,'00001' ,Nil })
aadd(aCabec,{'RA_CATFUNC' ,'A' ,Nil })
aadd(aCabec,{'RA_TIPOPGT' ,'M' ,Nil })
aadd(aCabec,{'RA_TIPOADM' ,'9A' ,Nil })
aadd(aCabec,{'RA_VIEMRAI' ,'10' ,Nil })
aadd(aCabec,{'RA_GRINRAI' ,'50' ,Nil })
aadd(aCabec,{'RA_HOPARC' ,'1' ,Nil })
aadd(aCabec,{'RA_COMPSAB' ,'1' ,Nil })
aadd(aCabec,{'RA_NUMCP' ,'1234567' ,Nil })
aadd(aCabec,{'RA_SERCP' ,'150' ,Nil })
aadd(aCabec,{'RA_PROCES' ,'00034' ,Nil })
aadd(aCabec,{'RA_TNOTRAB' ,'001' ,Nil })
aadd(aCabec,{'RA_ADTPOSE' ,'***N**' ,Nil })

MSExecAuto({|x,y| GPEA265(x,y)},aCabec,3)

If lMsErroAuto
       MostraErro()
       RETURN (.T.)
else
       Alert("Inclusão realizada com sucesso")
EndIf


/*ALTERACAO*/
aCabec := {}
aadd(aCabec,{"RA_FILIAL" ,"D MG 01 " ,Nil })
aadd(aCabec,{"RA_MAT" ,"991239" ,Nil })
aadd(aCabec,{'RA_NOME' ,'FUNCIONARIO ROTINA AUTOMATICA' ,Nil })
aadd(aCabec,{'RA_SEXO' ,'M' ,Nil })
aadd(aCabec,{'RA_ESTCIVI' ,'V' ,Nil })
aadd(aCabec,{'RA_NATURAL' ,'RJ' ,Nil })
aadd(aCabec,{'RA_NACIONA' ,'10' ,Nil })

MSExecAuto({|x,y| GPEA265(x,y)},aCabec,4)

If lMsErroAuto
       MostraErro()
       RETURN (.T.)
else
       Alert("Alteração realizada com sucesso")
EndIf


/*EXCLUSÃO*/
aCabec := {}
aadd(aCabec,{"RA_FILIAL" ,"D MG 01 " ,Nil })
aadd(aCabec,{"RA_MAT" ,"991239" ,Nil })
aadd(aCabec,{'RA_NOME' ,'FUNCIONARIO ROTINA AUTOMATICA' ,Nil })


MSExecAuto({|x,y| GPEA265(x,y)},aCabec,5)

If lMsErroAuto
       MostraErro()
       RETURN (.T.)
else
       Alert("Exclusão realizada com sucesso")
EndIf

Return(.T.)

03. TABELAS UTILIZADAS

  • SRA - Tabela de Funcionários/Autônomos