Árvore de páginas

Versões comparadas

Chave

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

...

Bloco de código
themeConfluence
titleIncluir uma solicitação de transferência
linenumberstrue
collapsetrue
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "TBICONN.CH"

/*
Exemplo de inclusão de ums solicitacao de transferência via rotina automatica
*/
User Function M311Inc()

Local oModel
Local aLog
Local cMensLog
Local nX

PREPARE ENVIRONMENT EMPRESA '99' FILIAL '01' USER 'admin' PASSWORD '' MODULO "EST"

oModel := FWLoadModel("MATA311") //Carrega o modelo

oModel:SetOperation(MODEL_OPERATION_INSERT) // Seta operação de inclusão
oModel:Activate() // Ativa o Modelo

//Cabeçalho da solicitacao
oModel:SetValue( 'NNSMASTER', 'NNS_CLASS', '1' )
oModel:SetValue( 'NNSMASTER', 'NNS_ESPECI', ' ' )

//Itens da solicitacao

// produto e local de origem
oModel:SetValue( 'NNTDETAIL', 'NNT_FILORI', '01' )
oModel:SetValue( 'NNTDETAIL', 'NNT_PROD', 'PRO001' )
oModel:SetValue( 'NNTDETAIL', 'NNT_LOCAL', '0A' )

oModel:SetValue( 'NNTDETAIL', 'NNT_QUANT', 1 )

// produto e local de destino
oModel:SetValue( 'NNTDETAIL', 'NNT_FILDES', '01' )
oModel:SetValue( 'NNTDETAIL', 'NNT_PRODD', 'PRO001' )
oModel:SetValue( 'NNTDETAIL', 'NNT_LOCLD', '0B' )
oModel:SetValue( 'NNTDETAIL', 'NNT_TS', '549' )
oModel:SetValue( 'NNTDETAIL', 'NNT_TE', '072' )

If oModel:VldData() //Validação do modelo
oModel:CommitData() // Gravação do Modelo
Else
aLog := oModel:GetErrorMessage() //Recupera o erro do model quando nao passou no VldData
cMensLog := ''
//laco para gravar em string cLog conteudo do array aLog
For nX := 1 to Len(aLog)
If !Empty(aLog[nX])
cMensLog += Alltrim(aLog[nX]) + CHR(13)+CHR(10)
EndIf
Next nX

lMsErroAuto := .T. //seta variavel private como erro
AutoGRLog(cMensLog) //grava log para exibir com funcao mostraerro
MostraErro()
EndIf

oModel:DeActivate() //desativa modelo

Return NIL

...