#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
Static __oModelAut := NIL //variavel oModel para substituir msexecauto em MVC User Function AltProjImob()
User Function AltProjImob()
Local nOpcAuto :=0
Local nX
Local oFNB
Local oFNC
Local oFND
Local oFNE
Local aLog
Local cLog :=""
Local lRet := .T.
Local cCodPrj:='0000000000'
Local cCodRev:='0001'
Local cCodEtapa:='001'
Local cItemEtp:='001'
Local cLinhaItem:='001'
If __oModelAut == Nil //somente uma unica vez carrega o modelo ATFA430
__oModelAut := FWLoadModel('ATFA430')
EndIf
nOpcAuto := 4 //3 - Inclusão | 4 - Alteração | 5 - Exclusão
__oModelAut:SetOperation(nOpcAuto) // 3 - Inclusão | 4 - Alteração | 5 - Exclusão
__oModelAut:Activate() //ativa modelo
DBSelectArea("FNB")
FNB->(DBSetOrder(1))
If DbSeek( xFilial("FNB") + cCodPrj + cCodRev)
//---------------------------------------------------------
// Preencho os valores da FNB
//---------------------------------------------------------
oFNB := __oModelAut:GetModel('FNBMASTER')
oFNB:SETVALUE('FNB_DESC','PROJETO EXEAUTO ALTERADO')
EndIf
DBSelectArea("FNC")
FNC->(DBSetOrder(1))
If DbSeek( xFilial("FNC") + cCodPrj + cCodRev + cCodEtapa)
//---------------------------------------------------------
// Preencho os valores da FNC
//---------------------------------------------------------
oFNC := __oModelAut:GetModel('FNCDETAIL')
oFNC:SETVALUE('FNC_DSCETP','ETAPA 001 ALTERADA')
EndIf
DBSelectArea("FND")
FND->(DBSetOrder(1))
If DbSeek( xFilial("FND") + cCodPrj + cCodRev + cCodEtapa + cItemEtp)
//---------------------------------------------------------
// Preencho os valores da FND
//---------------------------------------------------------
oFND := __oModelAut:GetModel('FNDDETAIL')
oFND:SETVALUE('FND_DSCITE','ITEM 001 ETAPA 001 ALTERADO')
EndIf
DBSelectArea("FNE")
FNE->(DBSetOrder(1))
If DbSeek( xFilial("FNE") + cCodPrj + cCodRev + cCodEtapa + cLinhaItem)
//---------------------------------------------------------
// Preencho os valores da FNE
//---------------------------------------------------------
oFNE := __oModelAut:GetModel('FNEDETAIL')
oFNE:SETVALUE('FNE_ENT01B','00004 ')
EndIf
If __oModelAut:VldData() //validacao dos dados pelo modelo
__oModelAut:CommitData() //gravacao dos dados
Else
aLog := __oModelAut:GetErrorMessage() //Recupera o erro do model quando nao passou no VldData
//laco para gravar em string cLog conteudo do array aLog
For nX := 1 to Len(aLog)
If !Empty(aLog[nX])
cLog += Alltrim(aLog[nX]) + CRLF
EndIf
Next nX
lMsErroAuto := .T. //seta variavel private como erro
AutoGRLog(cLog) //grava log para exibir com funcao mostraerro
mostraerro()
lRet := .F. //retorna false
EndIf
__oModelAut:DeActivate() //desativa modelo
Return( lRet ) |