Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Cross Segmento - Backoffice (Linha Protheus) - SIGAEST - Rotina Automática ExecAuto MATA390 - Manutenção de Lotes

Execauto rotina MATA390 - Manutenção de Lotes - Rotina automática

time.png Tempo aproximado para leitura: 00:05:00 min

Dúvida
Qual o exemplo de Execauto utilizado para executar automaticamente a rotina de Manutenção de Lotes - MATA390?

Ambiente
Cross Segmento - TOTVS Backoffice (Linha Protheus) - Estoque/Custos - Todas as versões.

Solução
Abaixo segue um exemplo de inclusão de manutenção de lotes através da rotina automática:

////////////////////////Inclusão/////////////////////////////
 
#Include 'Protheus.ch'
 
User Function AUT390INC()
 
Local cProd := ""
Local cLocal := ""
Local cLoteCtl := ""
Local dData := CtoD("//")
Local dDataVld := CtoD("//")
Local aVetor := {}
Local aTamCOD := {}
Local aTamLOC := {}
Local aTamLOT := {}
Local nQtd := 0
Local nOpc := 3
 
Private lMsErroAuto := .F.
 
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" MODULO "EST" TABLES "SD5"
 
aTamCOD := TamSx3("D5_PRODUTO")
aTamLOC := TamSx3("D5_LOCAL")
aTamLOT := TamSx3("D5_LOTECTL")
 
DbSelectArea("SD5")
 
cProd := PadR("0005",aTamCOD[1])
cLocal := PadR("01",aTamLOC[1])
dData := dDataBase
nQtd := 12000
cLoteCtl := PadR("11223344",aTamLOT[1])
dDataVld := dDataBase+30
 
aadd(aVetor,{"D5_PRODUTO" ,cProd ,NIL})
aadd(aVetor,{"D5_LOCAL" ,cLocal ,NIL})
aadd(aVetor,{"D5_LOTECTL" ,cLoteCtl ,NIL})
aadd(aVetor,{"D5_DATA" ,dData ,NIL})
aadd(aVetor,{"D5_QUANT" ,nQtd ,NIL})
aadd(aVetor,{"D5_DTVALID" ,dDataVld ,NIL})
 
MSExecAuto({|x,y| Mata390(x,y)},aVetor,nOpc)
 
If !lMsErroAuto
ConOut("Incluido com sucesso! " + cProd)
Else
MostraErro()
ConOut("Erro na inclusao!")
EndIf
 
RESET ENVIRONMENT
 
Return



//////////////////////////Alteração de Data/////////////////////////////////
//Observação: Não esquecer de informar o número de lote (D5_NUMLOTE) e número sequência (D5_NUMSEQ), conforme números gerados após a inclusão.
 
#Include 'Protheus.ch'
 
User Function AUT390DAT()
 
Local cProd := ""
Local cLocal := ""
Local cLoteCtl := ""
Local cNumLote := ""
Local cNumSeq := ""
Local dDataVld := CtoD("//")
Local aVetor := {}
Local aTamCOD := {}
Local aTamLOC := {}
Local aTamLOT := {}
Local aTamNLOT := {}
Local aTamSEQ := {}
Local nOpc := 4
 
Private lMsErroAuto := .F.
 
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" MODULO "EST" TABLES "SD5"
 
aTamCOD := TamSx3("D5_PRODUTO")
aTamLOC := TamSx3("D5_LOCAL")
aTamLOT := TamSx3("D5_LOTECTL")
aTamNLOT := TamSx3("D5_NUMLOTE")
aTamSEQ := TamSx3("D5_NUMSEQ")
 
DbSelectArea("SD5")
 
cProd := PadR("0005",aTamCOD[1])
cLocal := PadR("01",aTamLOC[1])
cLoteCtl := PadR("11223344",aTamLOT[1])
cNumLote := PadR("",aTamNLOT[1])
cNumSeq := PadR("000014",aTamSEQ[1])
dDataVld := dDataBase+90
 
aadd(aVetor,{"D5_PRODUTO" ,cProd ,NIL})
aadd(aVetor,{"D5_LOCAL" ,cLocal ,NIL})
aadd(aVetor,{"D5_LOTECTL" ,cLoteCtl ,NIL})
aadd(aVetor,{"D5_NUMLOTE" ,cNumLote ,NIL})
aadd(aVetor,{"D5_NUMSEQ" ,cNumSeq ,NIL})
aadd(aVetor,{"B8_DTVALID" ,dDataVld ,NIL}) //Utiliza B8 mesmo
 
MSExecAuto({|x,y| Mata390(x,y)},aVetor,nOpc)
 
If !lMsErroAuto
ConOut("Alterado data de validade com sucesso! " + cProd)
Else
MostraErro()
ConOut("Erro na alteração da data!")
EndIf
 
RESET ENVIRONMENT
 
Return



/////////////////Exclusão//////////////////////////
//Observação: Não esquecer de informar o número de lote (D5_NUMLOTE) e número sequência (D5_NUMSEQ), conforme números gerados após a inclusão.
 
#Include 'Protheus.ch'
 
User Function AUT390EXC()
 
Local cProd := ""
Local cLocal := ""
Local cLoteCtl := ""
Local cNumLote := ""
Local cNumSeq := ""
Local aVetor := {}
Local aTamCOD := {}
Local aTamLOC := {}
Local aTamLOT := {}
Local aTamNLOT := {}
Local aTamSEQ := {}
Local nOpc := 5
 
Private lMsErroAuto := .F.
 
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" MODULO "EST" TABLES "SD5"
 
aTamCOD := TamSx3("D5_PRODUTO")
aTamLOC := TamSx3("D5_LOCAL")
aTamLOT := TamSx3("D5_LOTECTL")
aTamNLOT := TamSx3("D5_NUMLOTE")
aTamSEQ := TamSx3("D5_NUMSEQ")
 
DbSelectArea("SD5")
 
cProd := PadR("0005",aTamCOD[1])
cLocal := PadR("01",aTamLOC[1])
cLoteCtl := PadR("11223344",aTamLOT[1])
cNumLote := PadR("",aTamNLOT[1])
cNumSeq := PadR("000014",aTamSEQ[1])
 
aadd(aVetor,{"D5_PRODUTO" ,cProd ,NIL})
aadd(aVetor,{"D5_LOCAL" ,cLocal ,NIL})
aadd(aVetor,{"D5_LOTECTL" ,cLoteCtl ,NIL})
aadd(aVetor,{"D5_NUMLOTE" ,cNumLote ,NIL})
aadd(aVetor,{"D5_NUMSEQ" ,cNumSeq ,NIL})
 
MSExecAuto({|x,y| Mata390(x,y)},aVetor,nOpc)
 
If !lMsErroAuto
ConOut("Excluido com sucesso! " + cProd)
Else
MostraErro()
ConOut("Erro na exclusão!")
EndIf
 
RESET ENVIRONMENT
 
Return    

 Para exemplos sobre alteração de preço e potência, consultar o TDN MATA390 - Manutenções nas Movimentações de Lote SD5 (Rotina automática).

 

 

Saiba mais:

Clique aqui e saiba mais sobre Movimentações no Estoque

Cross Segmento - Backoffice (Linha Protheus) - SIGAEST - Rotina MATA390 - Manutenção de Lotes

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _