#INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"
User Function MATA700()
Local lOk := .T.
Local aDados := {}
Local nX := 0
Local aErronX := ""
Local nOpcao := 4 // Inclusão = 3 // Alteração = 4 // Exclusão = 5
PRIVATE lMsErroAuto := .F.
PRIVATE lAutoErrNoFile := .T.
//===============================================================//
// Abertura do ambiente //
//===============================================================//
ConOut(Repl("-",80))
PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "FAT" TABLES "SB1","SC4"
//===============================================================//
// Verificação do ambiente para teste //
//===============================================================//
dbSelectArea("SB1")
dbSetOrder(1)
//Campo B1_COD - Verifica se o produto existe.
If !SB1->(MsSeek(xFilial("SB1")+"Cod_Produto"))
//Campo B1_COD
lOk := .F.
ConOut("CadastrarNecessario cadastrar Produto: Cod_Produto")
EndIf
ConOut("Inicio: "+Time())
//===============================================================//
// INCLUSÃO //
//===============================================================//
If lOk .and. nOpcao == 3
ConOut(PadC("Teste de InclusãoInclusao da PrevisãoPrevisao de Vendas",80))
aadd(aDados,{"C4_PRODUTO" ,"Cod_Produto" ,Nil}) //Campo B1_COD
aadd(aDados,{"C4_LOCAL" ,"01" ,Nil})
aadd(aDados,{"C4_DOC" ,"Desc_Produto" ,Nil}) //Campo B1_DESC
aadd(aDados,{"C4_QUANT" ,1 ,Nil})
aadd(aDados,{"C4_VALOR" ,1 ,Nil})
//Pode ser utilizado da seguinte forma [ aadd(aDados,{"C4_DATA" ,Date() Date() +10 ] para somar a data atual até chegar a desejada
,Nil}) //Pode ser utilizado da seguinte forma [ Date() +10 ] para somar a data atual até chegar desejadaaadd(aDados,{"C4_DATA" ,Date() ,Nil}) .
aadd(aDados,{"C4_OBS" ,"TESTE" ,Nil})
MATA700(aDados,3)
If !lMsErroAuto
ConOut("Inclusão realizada com sucesso!")
Else
aErro := GetAutoGRLog()
cErro := "NãoNao foi possívelpossivel realizar inclusãoinclusao"
ForConout( nX := 1 To Len(aErro)
cErro += aErronX + Chr(13)+Chr(10)
Next nX
Conout( cErro cErro )
EndIf
//===============================================================//
// ALTERAÇÃO //
//===============================================================//
ElseIf lOk .and. nOpcao == 4
aDados := {}
ConOut(PadC("Teste de Alteracao da PrevisãoPrevisao de Vendas",80))
aadd(aDados,{"C4_PRODUTO" ,"Cod_Produto" ,Nil}) //Campo B1_COD
aadd(aDados,{"C4_LOCAL" ,"01" ,Nil}) //NÃO é possível fazer alteração de data, é necessário que a data esteja igual a de inclusão.
//Necessário que o campo esteja exatamente igual ao banco.
aadd(aDados,{"C4_DOCPRODUTO" ,"DescCod_Produto" ,Nil}) //Campo B1_DESCCOD
aadd(aDados,{"C4_QUANTLOCAL" ,20 "01" ,Nil})
//Necessário que o campo esteja exatamente igual ao banco.
aadd(aDados,{"C4_VALORDOC" ,20 ,"Desc_Produto" ,Nil}) ,Nil})//Campo B1_DESC
aadd(aDados,{"C4_DATAQUANT" ,Date() 20 ,Nil}) //NÃO é possível fazer alteração de data, é necessário que a data esteja igual a de inclusão.,Nil})
aadd(aDados,{"C4_OBSVALOR" ,20 ,"TESTE" ,Nil})
//É necessário que a data esteja igual a de inclusão.
MATA700aadd(aDados,4)
{"C4_DATA" If !lMsErroAuto
,Date() ConOut("Alteracao realizada com sucesso! ")
,Nil})
aadd(aDados,{"C4_OBS" Else
,"TESTE" aErro := GetAutoGRLog() ,Nil})
MATA700(aDados,4)
cErro := "Não foi possível realizarIf alteração!"lMsErroAuto
For nX := 1 To Len(aErro)
ConOut("Alteracao realizada com sucesso! ")
Else
cErro aErro := aErronX + Chr(13)+Chr(10)
GetAutoGRLog()
cErro := "Nao foi possivel Next nXrealizar alteracao!"
Conout( cErro )
EndIf
//===============================================================//
// EXCLUSÃO //
//===============================================================//
ElseIf lOk .and. nOpcao == 5
aDados := {}
ConOut(PadC("Teste de Exclusao da Previsão de Vendas",80))
//Necessário que o campo esteja aadd(aDados,{"C4_PRODUTO" ,"Cod_Produto" ,Nil}) //Campo B1_CODexatamente igual ao banco.
aadd(aDados,{"C4_DATAPRODUTO" ,Date() ,"Cod_Produto" ,Nil}) //Campo B1_COD
//Necessário colocar data, pois podem existir varias previsões de
// previsões de venda do mesmo produto com datas diferentes.
MATA700aadd(aDados,5)
{"C4_DATA" If !lMsErroAuto
ConOut("Exclusão realizada com sucesso! ")
,Date() Else
,Nil})
aErro := GetAutoGRLogMATA700(aDados,5)
If !lMsErroAuto
cErro := "Não foi possível realizar exclusão!"
ConOut("Exclusao realizada com sucesso! ")
For nX := 1 To Len(aErro)Else
aErro := GetAutoGRLog()
cErro += aErronX + Chr(13)+Chr(10)
cErro := "Nao foi possivel Nextrealizar nXexclusao!"
Conout( cErro )
EndIf
EndIf
ConOut("Fim : "+Time())
RESET ENVIRONMENT
Return(.T.) |