#INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"
User Function MATA700()
Local lOk := .T.
Local aDados := {}
Local nOpcao := 4 // Inclusión = 3 // Modificación = 4 // Borrado = 5
PRIVATE lMsErroAuto := .F.
PRIVATE lAutoErrNoFile := .T.
//===============================================================//
// Apertura del entorno //
//===============================================================//
ConOut(Repl("-",80))
PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "FAT" TABLES "SB1","SC4"
//===============================================================//
// Verificación del entorno para prueba //
//===============================================================//
dbSelectArea("SB1")
dbSetOrder(1)
//Campo B1_COD - Verifica se o produto existe.
If !SB1->(MsSeek(xFilial("SB1")+"Cod_Produto"))
lOk := .F.
ConOut("Necesario registrar producto: Cod_Produto")
EndIf
ConOut("Inicio: "+Time())
//===============================================================//
// INCLUSIÓN //
//===============================================================//
If lOk .and. nOpcao == 3
ConOut(PadC("Prueba de inclusión de la previsión de ventas",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})
//Se puede utilizar de la siguiente manera [ Date() +10 ] para sumar la fecha actual hasta alcanzar la deseada
aadd(aDados,{"C4_DATA" ,Date() ,Nil}) .
aadd(aDados,{"C4_OBS" ,"TESTE" ,Nil})
MATA700(aDados,3)
If !lMsErroAuto
ConOut("¡Inclusión realizada con éxito!")
Else
aErro := GetAutoGRLog()
cErro := "No se pudo realizar la inclusión"
Conout( cErro )
EndIf
//==================================================================//
// MODIFICACIÓN //
//==================================================================//
ElseIf lOk .and. nOpcao == 4
aDados := {}
ConOut(PadC("Prueba de cambio de previsión de ventas",80))
//No se puede cambiar la fecha, es necesario que la fecha sea igual a la fecha de inclusión.
//Es necesario que el campo sea exactamente igual al de la base.
aadd(aDados,{"C4_PRODUTO" ,"Cod_Produto" ,Nil}) //Campo B1_COD
aadd(aDados,{"C4_LOCAL" ,"01" ,Nil})
//Es necesario que el campo sea exactamente igual al de la base.
aadd(aDados,{"C4_DOC" ,"Desc_Produto" ,Nil}) //Campo B1_DESC
aadd(aDados,{"C4_QUANT" ,20 ,Nil})
aadd(aDados,{"C4_VALOR" ,20 ,Nil})
//Es necesario que la fecha sea igual al de la inclusión.
aadd(aDados,{"C4_DATA" ,Date() ,Nil})
aadd(aDados,{"C4_OBS" ,"TESTE" ,Nil})
MATA700(aDados,4)
If !lMsErroAuto
ConOut("¡Cambio realizado con éxito! ")
Else
aErro := GetAutoGRLog()
cErro := "¡No se pudo realizar la modificación!"
Conout( cErro )
EndIf
//===============================================================//
// BORRADO //
//===============================================================//
ElseIf lOk .and. nOpcao == 5
aDados := {}
ConOut(PadC("Prueba de eliminación de la previsión de ventas",80))
//Es necesario que el campo esté exactamente igual al de la base.
aadd(aDados,{"C4_PRODUTO" ,"Cod_Produto" ,Nil}) //Campo B1_COD
//Es necesario colocar fecha, porque pueden existir varias previsiones de venta del mismo producto con fechas diferentes.
aadd(aDados,{"C4_DATA" ,Date() ,Nil})
MATA700(aDados,5)
If !lMsErroAuto
ConOut("¡Eliminación realizada con éxito! ")
Else
aErro := GetAutoGRLog()
cErro := "¡No se pudo realizar la eliminación!"
Conout( cErro )
EndIf
EndIf
ConOut("Fim : "+Time())
RESET ENVIRONMENT
Return(.T.)
0 Comentarios