#INCLUDE "TOTVS.CH"
#INCLUDE "RWMAKE.CH"
#INCLUDE 'Protheus.ch'
User Function MyMATA640(nOpc)
Local aCab := {}
Local aItens := {}
Local aGets := {}
Private lMsErroAuto := .F.
Default nOpc := 3
ConOut(Repl("-",80))
ConOut(PadC("Teste de rotina automatica para Exceções ao Calendário",80))
//Quando se tratar de inclusao e ou alteracao deverao ser passados os dados de cabecalho e
//itens(array com os intervalos de horas para a data especificada no cabecalho).
//No caso de exclusao sera necessario enviar somente os dados de cabecalho.
If nOpc == 3
//--------------- Exemplo de Inclusão ------------------------------------//
aCab := { {"H9_DTINI" ,Date() , Nil},;//Data Inicial do Bloqueio
{"H9_RECURSO","000001" , Nil},;//Código do Recurso
{"H9_CCUSTO" ," " , Nil},;//Centro de Custo
{"H9_MOTIVO" ,"INCLUSAO AUTOMATICA" , Nil}} //Motivo do Bloqueio
aGets := {}
aadd(aGets, {06.00,12.00})
aadd(aGets, {13.00,22.00})
aadd(aItens,aGets)
ConOut("Teste de Inclusao")
MSExecAuto({|v,x,y,z| MATA640(v,x,y,z)},.F.,nOpc,aCab,aItens) //Inclusão
ConOut("Fim inclusao.")
ElseIf nOpc == 4
//--------------- Exemplo de Alteração ------------------------------------//
aCab := { {"H9_DTINI" ,Date() , Nil},;//Data Inicial do Bloqueio
{"H9_RECURSO","000001" , Nil},;//Código do Recurso
{"H9_CCUSTO" ," " , Nil},;//Centro de Custo
{"H9_MOTIVO" ,"INCLUSAO AUTOMATICA" , Nil}} //Motivo do Bloqueio
aGets := {}
aadd(aGets, {07.00,12.00})
aadd(aItens,aGets)
ConOut("Teste de Inclusao")
MSExecAuto({|v,x,y,z| MATA640(v,x,y,z)},.F.,nOpc,aCab,aItens) //Alteração
ConOut("Fim inclusao.")
ElseIf nOpc == 5
//--------------- Exemplo de Exclusão ------------------------------------
aCab := { {"H9_DTINI" ,Date() , Nil},;//Data Inicial do Bloqueio
{"H9_RECURSO","000001" , Nil},;//Código do Recurso
{"H9_CCUSTO" ," " , Nil}} //Centro de Custo
aAdd(aItens,{})
MSExecAuto({|v,x,y,z| MATA640(v,x,y,z)},.F.,nOpc,aCab,aItens) //Exclusão
EndIf
//Verifica se ocorreu algum erro, e exibe a mensagem.
If lMsErroAuto
If IsBlind()
If IsTelnet()
VTDispFile(NomeAutoLog(),.t.)
Else
cString := MemoRead(NomeAutoLog())
Conout("Aviso de Erro:",cString)
EndIf
Else
MostraErro()
EndIf
Else
MsgInfo("Operação realizada com sucesso","OK")
EndIf
ConOut(Repl("-",80))
Return
|