Objetivo desse documento é exemplificar a utilização do ExecAuto da nova rotina de Documentos(CNTA171).
#INCLUDE "PROTHEUS.CH" #INCLUDE "FWMVCDEF.CH" /*Exemplo de inclusão de um novo documento*/ User Function Exemplo001() Local oModel := NIL Local oMdlCNK := Nil Local oMdlCXR := Nil Local cContra := "TREINAMENTO1954" Local cChave := xFilial("CN9") + cContra Local aErro := {} Local cNumero := "" CN9->(DbSetOrder(1)) if CN9->(DbSeek(cChave)) oModel := FwLoadModel("CNTA171") oModel:SetOperation(MODEL_OPERATION_INSERT) if oModel:Activate() oMdlCNK := oModel:GetModel("CNKMASTER") oMdlCNK:SetValue("CNK_DESCRI" , "DOC 001 - INCLUSAO") oMdlCNK:SetValue("CNK_CONTRA" , CN9->CN9_NUMERO) oMdlCNK:SetValue("CNK_TPDOC" , "001") oMdlCNK:SetValue("CNK_DTEMIS" , dDatabase) oMdlCNK:SetValue("CNK_DTVALI" , dDatabase+30) oMdlCNK:SetValue("CNK_OBS" , "Exemplo inclusão") if AliasInDic('CXR') oMdlCXR := oModel:GetModel("CXRDETAIL") cNumero := StrZero(oMdlCXR:Length(), GetSx3Cache('CXR_ITEM','X3_TAMANHO')) oMdlCXR:SetValue("CXR_ITEM" , cNumero) oMdlCXR:SetValue("CXR_NOME" , "Responsavel XPTO") oMdlCXR:SetValue("CXR_EMAIL", "[email protected]") oMdlCXR:AddLine() oMdlCXR:SetValue("CXR_ITEM" , Soma1(cNumero)) oMdlCXR:SetValue("CXR_NOME" , "Auxiliar XPTO") oMdlCXR:SetValue("CXR_EMAIL", "[email protected]") endif If oModel:VldData() oModel:CommitData() EndIf endif if oModel:HasErrorMessage() aErro := aClone(oModel:GetErrorMessage()) endif If oModel:IsActive() oModel:DeActivate() EndIf FreeObj(oModel) If !Empty(aErro) VarInfo('Erro apresentado:', aErro) EndIf endif Return |
#INCLUDE "PROTHEUS.CH" #INCLUDE "FWMVCDEF.CH" /*Exemplo de alteração de um documento*/ Static Function Exemplo002() Local oModel := NIL Local oMdlCNK := Nil Local oMdlCXR := Nil Local cContra := "TREINAMENTO1954" Local cChave := xFilial("CNK") + cContra Local aErro := {} CNK->(DbSetOrder(3))//CNK_FILIAL+CNK_CONTRA+CNK_TPDOC if CNK->(DbSeek(cChave)) oModel := FwLoadModel("CNTA171") oModel:SetOperation(MODEL_OPERATION_UPDATE) if oModel:Activate() oMdlCNK := oModel:GetModel("CNKMASTER") oMdlCNK:SetValue("CNK_OBS" , "Exemplo Modificação") if AliasInDic('CXR') oMdlCXR := oModel:GetModel("CXRDETAIL") oMdlCXR:GoLine(2) oMdlCXR:SetValue("CXR_NOME" , "Operacao de Atualização") endif If oModel:VldData() oModel:CommitData() EndIf endif if oModel:HasErrorMessage() aErro := aClone(oModel:GetErrorMessage()) endif If oModel:IsActive() oModel:DeActivate() EndIf FreeObj(oModel) If !Empty(aErro) VarInfo('Erro apresentado:', aErro) EndIf endif Return |
<!-- esconder o menu --> <style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } </style> |