Histórico da Página
01. DADOS GERAIS
Linha de Produto: | Microsiga Protheus® |
---|---|
Segmento: | BackOffice |
Módulo: | Gestão de Contratos |
Função: | CNTA121/CNTA120 - Medições |
Ticket: | 8604688 |
Issue: | DMANMAT02-27379 |
02. SITUAÇÃO/REQUISITO
O cliente solicita uma função que retorne as competências de determinado contrato, de forma que possa escolher qual competência ira medir no modelo MVC do CNTA121.
03. SOLUÇÃO
Disponibilizamos a função CtrCompets, que retorna um vetor contendo todas as competências passíveis de medição de determinado contrato.
O vetor contêm as competências no formato MM/AAAA, exemplo: { '11/2020', '12/2020', '01/2021' }. Veja Utilizando o modelo do CNTA121 para mais detalhes.
Exemplo prático:
Bloco de código | ||||
---|---|---|---|---|
| ||||
Static Function CNT121_006() Local oModel := Nil Local cCodCTR := "CNTA121EXEMP006" Local aCompets := {} Local nCompet := 0 Local cNumMed := "" Local aMsgDeErro:= {} Local lRet := .F. CN9->(DbSetOrder(1)) If CN9->(DbSeek(xFilial("CN9") + cCodCTR))//Posicionar na CN9 para realizar a inclusão aCompets := CtrCompets() nCompet := aScan(aCompets, {|x| AllTrim(x) == '05/2020' }) 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" , cValToChar(nCompet))//Selecionar competência oModel:SetValue("CXNDETAIL","CXN_CHECK" , .T.)//Marcar a planilha(nesse caso apenas uma) 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 |
04. DEMAIS INFORMAÇÕES
Não há.
05. ASSUNTOS RELACIONADOS
HTML |
---|
<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; } .aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { background: #FF9900; !important } .menu-item.active-tab { border-bottom: none !important; } </style> |
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas