Home

Linha Microsiga Protheus

Páginas filhas
  • Exemplo de Rotina Automática - Lançamentos Mensais - GPEA090

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Esta rotina automática tem a finalidade de efetuar inclusãoincluir/alteraçãoalterar/exclusãoexcluir dedos Lançamentos Mensais.Basicamente, naAo chamadaexecutar daa rotina GPEA090, deverãodevem ser informados 2 arrays:1)  aCabec   -> Corresponde aos dados da tabela SRA - Funcionários.         Sintaxe: { {"RA_FILIAL", conteudo1, NIL},; {"RA_MAT", conteudo2, NIL} }    2)  aItens   -> Corresponde aos dados a serem incluídos/deletados da tabela SRC - Movimentos Mensais.    
A rotina GPEA090 possui parâmetros a serem informados, porém para o funcionamento em MsExecAuto. O primeiro parâmetro necessita ser preenchido como um array, pois as informaçoes utilizadas neste array são essenciais para a conclusão do processo.

User Function GP090INC()

Local aCabec    := {}

Local aItens    := {}

Local aItensFinal := {} //agrupador de itens

 PRIVATE lGPEA011 := .T. //Necesário para setar o lIncluir = .T. na Gpea090aux()

PRIVATE lMsErroAuto := .F.

aCabec   := {}

    aadd(aCabec,{"RA_FILIAL"  ,"01"  ,Nil  })

    aadd(aCabec,{"RA_MAT"     ,"000001" ,Nil  })

aItens := {}

    aadd(aItens,{{"RC_FILIAL"

    

, "D MG 01"         

   

  , Nil }

)    aadd(aItens,

,;

{"RC_MAT"        , "000001"            , Nil }

)

,;

    aadd(aItens,

{"RC_PD"          , "001"              , Nil }

)    aadd(aItens,

,;

{"RC_TIPO1"      , "

MARIA DA SILVA

V"   , Nil }

)    aadd(aItens,

,;

 {"RC_HORAS"   

 

, 100.00              , Nil }

)    aadd(aItens,

,;

{"RC_VALOR"    

 

, 3252.27            , Nil }

)    aadd(aItens,

,;

{"RC_DATA"       , Ctod("31/

01

12/

12

13")  , Nil }

)    aadd(aItens,

,;

{"RC_CC"         , "

1011

000000101"      

     

  , Nil }

)    aadd(aItens,

,;

{"RC_PARCELA"

  

, "01"               , Nil }})

       

    aadd(aItensFinal, aItens)  

MsExecAuto({|w,x,y,z| GPEA090(w,x,y,z)} ,nil4 ,aCabec, aItensFinalaItens,4 ) // 4 - Inclusão, 4 - Alteração, 5 - Exclusão

If lMsErroAuto     

    MostraErro()

Else     

    Alert("Registro(s) IncluídoAlterado(s) !!!")      

EndIf

Return()