Passo a passo: | Tabelas utilizadas: Esta rotina efetua manutenções nas Movimentações de Lote (SD5).
Sintaxe: MATA390 - Programa de Manutenções nas Movimentações de Lote (SD5) ( [ PARAMIXB1 ] [ PARAMIXB2 ] ) --> nulo Programa Fonte: MATA390 Função | Ação |
---|
AUTO390INC | Inclusão | AUTO390DAT | Alteração data de validade | AUTO390PRC | Alteração preço do lote | AUTO390POT | Alteração potencia | AUTO390EXC | Exclusão |
Parâmetros: Nome | Tipo | Descrição | Obrigatório |
---|
PARAMIXB | Array | Contendo os valores para as movimentações de Lote (SD5) | X | PARAMIXB | Numerico | 3 - Inclusão 4 - Alteração Data de validade 5 - Exclusão 6 - Alteração Preço 7 - Alteração Potência | X |
Exemplos: Inclusão
//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 da data de validade
//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
Alteração do Preç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 AUT390PRC()
Local cProd := ""
Local cLocal := ""
Local cLoteCtl := ""
Local cNumLote := ""
Local cNumSeq := ""
Local aVetor := {}
Local aTamCOD := {}
Local aTamLOC := {}
Local aTamLOT := {}
Local aTamNLOT := {}
Local aTamSEQ := {}
Local nPrcLot := 0
Local nOpc := 6
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])
nPrcLot := 15
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_PRCLOT" ,nPrcLot ,NIL}) //Utiliza B8 mesmo
MSExecAuto({|x,y| Mata390(x,y)},aVetor,nOpc)
If !lMsErroAuto
ConOut("Alterado preço do lote com sucesso! " + cProd)
Else
MostraErro()
ConOut("Erro na alteração do preço!")
EndIf
RESET ENVIRONMENT
Return
Alteração Potencia
//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 AUT390POT()
Local cProd := ""
Local cLocal := ""
Local cLoteCtl := ""
Local cNumLote := ""
Local cNumSeq := ""
Local aVetor := {}
Local aTamCOD := {}
Local aTamLOC := {}
Local aTamLOT := {}
Local aTamNLOT := {}
Local aTamSEQ := {}
Local nPotencia := 0
Local nOpc := 7
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])
nPotencia := 22
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_POTENCI" ,nPotencia ,NIL}) //Utiliza B8 mesmo
MSExecAuto({|x,y| Mata390(x,y)},aVetor,nOpc)
If !lMsErroAuto
ConOut("Alterado potencia com sucesso! " + cProd)
Else
MostraErro()
ConOut("Erro na alteração da potencia!")
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
|