Árvore de páginas

Versões comparadas

Chave

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

...

Informações
titleAlternativas para pontos de entrada

Para alternativas para os pontos de entrada, acessar a página CNTA121 - Exemplos pontos de entrada_MVC

Para uma lista com o De/Para dos pontos de entrada do CNTA120 para o CNTA121, acessar a página GCT0084_Nova_Medição_CNTA121


02. Medição com itens


Bloco de código
titleExemplo medição de um contrato fixo com itens
linenumberstrue
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"

User Function CNT121_002()	
	Local oModel	:= Nil
	Local cCodCTR	:= "CNTA121EXEMP002"
	Local cNumMed	:= ""
	Local aMsgDeErro:= {}
	Local lRet		:= .F.	
	
	CN9->(DbSetOrder(1))
		
	If CN9->(DbSeek(xFilial("CN9") + cCodCTR))//Posicionar na CN9 para realizar a inclusão
		oModel := FWLoadModel("CNTA121")
		
		oModel:SetOperation(MODEL_OPERATION_INSERT)
		If(oModel:CanActivate())			
			oModel:Activate()
			oModel:SetValue("CNDMASTER","CND_CONTRA"	,CN9->CN9_NUMERO)
			oModel:SetValue("CNDMASTER","CND_RCCOMP"	,"1")//Selecionar competência
			
			oModel:SetValue("CXNDETAIL","CXN_CHECK"	, .T.)//Marcar a planilha(nesse caso apenas uma)			
			oModel:GetModel('CNEDETAIL'):GoLine(1)
			oModel:SetValue( 'CNEDETAIL' , 'CNE_QUANT' 	, 1)			
			
			If (oModel:VldData()) /*Valida o modelo como um todo*/
				oModel:CommitData()
			EndIf
		EndIf
		
		If(oModel:HasErrorMessage())
			aMsgDeErro := oModel:GetErrorMessage()
		Else
			cNumMed := CND->CND_NUMMED			
			oModel:DeActivate()			
			lRet := CN121Encerr(.T.) //Realiza o encerramento da medição					
		EndIf
	EndIf	
Return lRet

...