Totvs custom tabs box items |
---|
default | yes |
---|
referencia | Inclusao |
---|
| Este é o exemplo básico para a execução de da Inclusão da Regra de Desconto via Rotina Automática: Bloco de código |
---|
| #INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"
User Function MyFata080()
Local cCodReg := "" // Código da Regra
Local cB1Cod := "PRODUTO001" // Código do Produto
Local cMsgLog := ""
Local cFilSB1 := ""
Local nOpcX := 3 // Inclusão
Local aCabec := {}
Local aItens := {}
Local aLinha := {}
Local lOk := .T.
Private lMsErroAuto := .F. // Indica se houve erro na execução da rotina automática
Private lMsHelpAuto := .T. // Gera mensagem de erro como aquivo .LOG na system
//****************************************************************
//* Abertura do ambiente
//****************************************************************
ConOut("Inicio: " + Time())
ConOut(Repl("-",80))
ConOut(PadC("Processo de inclusao de Regra de Desconto", 80))
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" MODULO "FAT" TABLES "ACO","ACP","SA1","SBM"
//****************************************************************
//* Verifica se o produto existe
//****************************************************************
SB1->(dbSetOrder(1))
cFilSB1 := xFilial("SB1")
If SB1->(! MsSeek(cFilSB1 + cB1Cod))
cMsgLog += "Cadastrar o Produto: " + cB1Cod + CRLF
lOk := .F.
EndIf
If lOk
//|---------------------------------|
//| Gera código da Regra de Desconto|
//|---------------------------------|
cCodReg := GetSxeNum("ACO", "ACO_CODREG")
//|---------------------------------|
//| PREENCHE CABECALHO |
//|---------------------------------|
aCabec := {}
aadd(aCabec, {"ACO_CODREG", cCodReg, Nil})
aadd(aCabec, {"ACO_DESCRI", "INCLUSAO DE REGRA DE DESCONTO", Nil})
aadd(aCabec, {"ACO_MOEDA", 1, Nil})
aadd(aCabec, {"ACO_TPHORA", '1', Nil})
aadd(aCabec, {"ACO_HORADE", '00:00', Nil})
aadd(aCabec, {"ACO_HORATE", '23:59', Nil})
aadd(aCabec, {"ACO_DATDE", Date(), Nil})
//|---------------------------------|
//| PREENCHE ITENS |
//|---------------------------------|
aLinha := {}
aadd(aLinha,{"ACP_ITEM", '001', Nil})
aadd(aLinha,{"ACP_CODPRO", cB1Cod, Nil})
aadd(aLinha,{"ACP_PERDES", 10, Nil})
aadd(aItens, aLinha)
MSExecAuto({|a, b, c| FATA080(a, b, c)}, aCabec, aItens, nOpcX, .F.)
If !lMsErroAuto
ConOut("Incluido com sucesso! " + cCodReg)
Else
ConOut("Erro na inclusao!")
EndIf
Else
ConOut(cMsgLog)
EndIf
ConOut("Fim: " + Time())
RESET ENVIRONMENT
Return |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | Alteracao |
---|
| Este é o exemplo básico para a execução de da Alteração da Regra de Desconto via Rotina Automática: Bloco de código |
---|
| #INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"
User Function MyFata080()
Local cCodReg := "000001" // Código da Regra
Local cB1Cod := "PRODUTO002" // Código do Produto
Local cMsgLog := ""
Local cFilSB1 := ""
Local nOpcX := 4 // Alteração
Local aCabec := {}
Local aItens := {}
Local aLinha := {}
Local lOk := .T.
Private lMsErroAuto := .F. // Indica se houve erro na execução da rotina automática
Private lMsHelpAuto := .T. // Gera mensagem de erro como aquivo .LOG na system
//****************************************************************
//* Abertura do ambiente
//****************************************************************
ConOut("Inicio: " + Time())
ConOut(Repl("-",80))
ConOut(PadC("Processo de alteração de Regra de Desconto", 80))
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" MODULO "FAT" TABLES "ACO","ACP","SA1","SBM"
//****************************************************************
//* Verifica se o produto existe
//****************************************************************
SB1->(dbSetOrder(1))
cFilSB1 := xFilial("SB1")
If SB1->(! MsSeek(cFilSB1 + cB1Cod))
cMsgLog += "Cadastrar o Produto: " + cB1Cod + CRLF
lOk := .F.
EndIf
If lOk
//|---------------------------------|
//| CABECALHO |
//|---------------------------------|
aCabec := {}
aadd(aCabec, {"ACO_CODREG", cCodReg, Nil})
aadd(aCabec, {"ACO_DESCRI", "ALTERACAO DE REGRA DE DESCONTO", Nil})
//|---------------------------------|
//| ITENS |
//|---------------------------------|
aLinha := {}
aadd(aLinha,{"LINPOS", "ACP_ITEM", '001'})
aadd(aLinha,{"AUTDELETA", "N", Nil})
aadd(aLinha,{"ACP_CODPRO", cB1Cod, Nil})
aadd(aLinha,{"ACP_PERDES", 15, Nil})
aadd(aItens, aLinha)
MSExecAuto({|a, b, c| FATA080(a, b, c)}, aCabec, aItens, nOpcX, .F.)
If !lMsErroAuto
ConOut("Alterada com sucesso! " + cCodReg)
Else
ConOut("Erro na alteração!")
EndIf
Else
ConOut(cMsgLog)
EndIf
ConOut("Fim: " + Time())
RESET ENVIRONMENT
Return |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | Exclusao |
---|
| Este é o exemplo básico para a execução de da Exclusão da Regra de Desconto via Rotina Automática: Bloco de código |
---|
| #INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"
User Function MyFata080()
Local cCodReg := "000001" // Código da Regra
Local nOpcX := 5 // Exclusão
Local aCabec := {}
Private lMsErroAuto := .F. // Indica se houve erro na execução da rotina automática
Private lMsHelpAuto := .T. // Gera mensagem de erro como aquivo .LOG na system
//****************************************************************
//* Abertura do ambiente
//****************************************************************
ConOut("Inicio: " + Time())
ConOut(Repl("-",80))
ConOut(PadC("Processo de exclusão de Regra de Desconto", 80))
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" MODULO "FAT" TABLES "ACO","ACP","SA1","SBM"
aCabec := {}
aadd(aCabec, {"ACO_CODREG", cCodReg, Nil})
MSExecAuto({|a, b, c| FATA080(a, b, c)}, aCabec, {}, nOpcX, .F.)
If !lMsErroAuto
ConOut("Excluida com sucesso! " + cCodReg)
Else
ConOut("Erro na exclusão!")
EndIf
ConOut("Fim: " + Time())
RESET ENVIRONMENT
Return |
|
|