Histórico da Página
...
Bloco de código | ||||
---|---|---|---|---|
| ||||
#INCLUDE 'Protheus.CH'
#INCLUDE 'TBICONN.CH'
#INCLUDE 'FWMVCDEF.CH'
/*/{Protheus.doc} GP020MVC
Exemplo de ExecAuto do Cadastro de Dependentes GPEA020 utilizando estrutura MVC
/*/
User Function GP020MVC()
Local oModel
Local oMdlSRB
Local aLog := {}
Local nCod := 0
Local nTipo := 1 //Exemplo inclusão / 2-Alteração/Exclusão
Local cMat := "xxxxxx" //Matrícula correspondente para posicionamento
aEval({'SRA','SRB'},{|x|CHKFILE(x)})
SRA->(DbSetOrder(1))
If SRA->(DbSeek(xFilial("SRA") + cMat))
oModel := FWLoadModel("GPEA020")
oModel:SetOperation(MODEL_OPERATION_UPDATE)
If (oModel:Activate())
oMdlSRB := oModel:GetModel("GPEA020_SRB") //instanciamento do modelo
If nTipo == 1 //Exemplo Inclusão de novo registro
if(oMdlSRB:Length() > 1)
nCod := oMdlSRB:AddLine()
else
if(oMdlSRB:IsInserted())
nCod := 1
else
nCod := oMdlSRB:AddLine()
endIf
endIf
oMdlSRB:SetValue("RB_COD" , StrZero(nCod,2))
oMdlSRB:SetValue("RB_NOME" , "INCLU PRIMEIRODEP")
oMdlSRB:SetValue("RB_TPDEP" , "03")
oMdlSRB:SetValue("RB_DTNASC" , Ctod("20/03/2010"))
oMdlSRB:SetValue("RB_SEXO" , "M")
oMdlSRB:SetValue("RB_GRAUPAR" , "F")
oMdlSRB:SetValue("RB_TIPIR" , "1")
oMdlSRB:SetValue("RB_TIPSF" , "1")
oMdlSRB:SetValue("RB_LOCNASC" , "SP")
oMdlSRB:SetValue("RB_CIC" , "80645187925")
//Demais campos informados na inclusão conforme exemplo
//Possibilita inclusão de múltiplos registros utilizando o método AddLine()
ElseIf nTipo == 2 //Exemplo alteração de registro existente
if(oMdlSRB:Length() >= 3)
oMdlSRB:GoLine(3) //Posicionamento na linha a ser alterada
endIf
//Campos a serem alterados
oMdlSRB:SetValue("RB_NOME" , "ALTER EXECAUTO")
//Possibilita uso do método DeleteLine() para exclusão do registro posicionado
EndIf
If(oModel:VldData())
If (oModel:CommitData())
If nTipo == 1
ConOut("Dependente Incluido")
Else
ConOut("Alteracao concluida")
EndIf
Else
aLog := oModel:GetErrorMessage()
EndIf
Else
aLog := oModel:GetErrorMessage()
EndIf
If Len(aLog) > 0
aEval(aLog, {|x|conOut(x)})
EndIf
EndIf
Else
ConOut("Funcionario nao encontrado")
EndIf
Return |
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas