Árvore de páginas

Versões comparadas

Chave

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

...

Informações
iconfalse
titleExemplo de Alteração
Bloco de código
languagec#
themeMidnight
linenumberstrue
collapsetrue
#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 )

...

Informações
iconfalse
titleExemplo de Exclusão
Bloco de código
languagec#
themeMidnight
linenumberstrue
collapsetrue
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"

Static __oModelAut := NIL //variavel oModel para substituir msexecauto em MVC  User Function AltProjImob()  User Function ExcProjImob()
Local nX
//Local oFNB User Function ExcProjImob()

User Function ExcProjImob()
Local nX
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 := 5 //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)) 
DbSeek( xFilial("FNB") + cCodPrj + cCodRev)

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 )

05. ASSUNTOS RELACIONADOS

...