Árvore de páginas

Versões comparadas

Chave

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

...

Bloco de código
title Efetivar uma solicitação de transferencia
linenumberstrue
collapsetrue
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "TBICONN.CH"
 
/*
Exemplo de Efetivar uma solicitacao de transferência via rotina automatica
*/
User Function m311efet()
Local oModel
Local nX
Local cCodDoc
 
Local oModelNNT  
Private cOpId311		        := "011" // DECLARACAO PARA O REALIZAR A EFETIVACAO DA SOLICITACAO
 
PREPARE ENVIRONMENT EMPRESA '99' FILIAL '01' USER 'admin' PASSWORD '' MODULO "EST"
 
	    cCodDoc := "0000000001" // codigo do documento de solicitaçãoo de transferência a ser efetivado
 
	    //Posiciona registro
	    dbSelectArea("NNS")
	    NNS->(DbSetOrder(1))
	    If NNS->(DbSeek(xFilial("NNS") + cCodDoc))

		 
        //carrega o model
		        oModel    := FWLoadModel( "MATA311" )
		//Define operação do modelo
		      //Define operação do modelo
        oModel:SetOperation( MODEL_OPERATION_UPDATE )

		 
        //Ativação do modelo
		        oModel:Activate()

		 
        //-- Preenchimento dos campos da NNS
		        oModel:SetValue( 'NNSMASTER' , 'NNS_STATUS' , '2' )
		oModel:SetValue( 'NNSMASTER'        oModel:SetValue( 'NNSMASTER' , 'NNS_ESPECI' , "NF" )
 
		If oModel:VldData() //Valida??o do modelo
			oModel:CommitData() // Grava??o do Modelo
		Else
			aLog oModelNNT := oModel:GetErrorMessageGetModel("NNTDETAIL")
 //Recupera o erro do model quando nao  For nX := 1 To oModelNNT:Length()
            oModelNNT:GoLine( nX )
            oModel:SetValue( 'NNTDETAIL' , 'NNT_SERIE' , "001" )// Informe a série desejada
        Next nx
        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)
				If !Empty(aLog[nX])
					[nX])
                    cMensLog += Alltrim(aLog[nX]) + CHR(13)+CHR(10)
				EndIf
			Next nX

			                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
	    ELSE
	       conout("Documento de Solicitação de transferência não encontrado")
	    ENDIF
 
Return NIL


Bloco de código
titleExcluir uma solicitação de transferencia
linenumberstrue
collapsetrue
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "TBICONN.CH"

/*
Exemplo de Excluir uma solicitacao de transferência via rotina automatica
*/
User Function m311Exc()
Local oModel
Local nX
Local cCodDoc

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

	cCodDoc := "0000000002" // codigo do documento de solicitação de transferência a ser excluida

	//Posiciona registro
	dbSelectArea("NNS")
	NNS->(DbSetOrder(1))
	If NNS->(DbSeek(xFilial("NNS") + cCodDoc))

		//carrega o model
		oModel    := FWLoadModel( "MATA311" )
		//Define operação do modelo
		oModel:SetOperation( MODEL_OPERATION_DELETE )

		//Ativação do modelo
		oModel:Activate()

		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
	ELSE
	   conout("Documento de Solicitaão de transferência n?o encontrado")
	ENDIF

Return NIL

...