Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


CONTEÚDO

Índice
indent8.1.
exclude.*CONTEÚDO
stylenone

01. VISÃO GERAL

Esta documentação tem a finalidade de apresentar um exemplo de rotina automática para a rotina WMSA530.

A descrição do processo de Troca de Lotes é realizada no documento: Troca de Lote (WMSA530 - SIGAWMS).

02. EXEMPLO

Para utilizar a rotina automática é necessário definir as variáveis private e alterar o pergunte ativo para a rotina WMSA530:

Bloco de código
titleVariáveis Private
linenumberstrue
collapsetrue
#include 'protheus.ch'
#INCLUDE 'TOTVS.CH' 
#Include "FWMVCDEF.CH"

User Function tst530()
Local oModel := Nil 
Local oModelLote:= Nil
Local oModelLt1 := Nil 
Local oModelD14 := Nil
Local oModelD0A := Nil
Local nOperat := MODEL_OPERATION_INSERT
//Variaveis privadas utilizadas no programa WMSA530
Private lD14SemSB8  := .F.
Private lOperInsert := .T.
Private lOperDelete := .F.

	oModel := FWLoadModel("WMSA530") //-- Carrega o modelo
	
	oModelD0A := oModel:GetModel("A530D0A")
	oModelLote:= oModelD0A:GetModel("A530LOTE")
	oModelD14 := oModelLote:GetModel("A530D14")
	
	oModel:SetOperation(nOperat) //-- Seta operação de inclusão
	//Abaixo será setado os dados para o pergunte do programa WMSA530 informando os dados para troca de lote. 
	//Para que grave corretamente devera ser informado todos os parametros e um unico endereço por vez . 
	Pergunte("WMSA530",.F.)	
	MV_PAR01 := '01'
	MV_PAR02 := '001            '
	MV_PAR03 := 'AUTO000239'
	MV_PAR04 := '      '
	MV_PAR05 := '          '
	MV_PAR06 := 'ZZZZZZZZZZ'

	oModel:Activate() //-- Ativa o Modelo

	oModelLt1 := oModel:GetModel("A530LOTE")
	If oModelLt1:SeekLine({{"LOTECT",'AUTO000239'}})
    	oModelLt1:SetValue("QTDMOV",1) //Setando o campo QtdMovimento do Grid Lotes Aqui será informado a quantidade que será trocado o lote 
	EndIf
	oModelD14:LoadValue("D14_QTDMOV",0)

	If oModelD14:SeekLine({{"D14_LOCAL",'01' },{"D14_ENDER",'A0551          '},{"D14_PRODUT", '001            ' },{"D14_LOTECT",'AUTO000239'}})
        oModelD14:LoadValue("D14_QTDMOV",1)  //Setando o campo Qtd movimento do Grid "Produtos selecionados" Aqui será informado a quantidade que será trocado o lote 
		oModelD14:LoadValue("D14_NEWLOT","LOTEB") // Setando valor para o campo Novo Lote . DEverá ser informado o novo lote.
   	EndIf
	//-- Validacao e Gravacao do Modelo
	If oModel:VldData()  // Validando o modelo de dados do programa WMSA530
  	   oModel:CommitData()  // Gravando 
	Else
  	  VarInfo("Erro",oModel:GetErrorMessage()) //Caso houver algum erro retornará um array aqui.
    EndIf
	oModel:DeActivate() //desativa modelo
Return

HTML
<!-- esconder o menu --> 


<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}
</style>