Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/327912/newLayout.css |
Portuguese | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Função: PCORUNCUBE - Monta array com saldos de cubo
Descrição: Serve para montar um array contendo os saldos de cubo das chaves em determinado período e outras informaçoes para utilização em consultas e relatórios. Sempre esta associado a uma função que monta os valores dos saldos que deve ser uma funcao padrão ou de usuário (User Function), sendo que no caso de user function a passagem deve ser U_+ nome da função. Programa Fonte: PCOCUBE.PRW Sintaxe: PCORUNCUBE - Monta array com saldos de cubo ( cCodCubenQtdValcProcessacConfignViewCfg [ lZerado ] [ aNiveis ] [ aFilIni ] [ aFilFim ] [ lReserv ] [ aCfgCube ] [ lProcessa ] [ lVerAcesso ] [ lForceNoSint ] [ aItCfgBlq ] [ aFiltCfg ] [ cArqAKT ] [ lLimpArqAKT ] [ lVisao ] [ lBloqueio ] ) --> aProcessa Retorno:
Observações A funçao associada é passada no parâmetro 3 -cProcessa e deve retornar um vetor do tamanho estipulado no parâmetro 2 - nQtdVal contendo valores numéricos que estarão contido no array aProcessa no segundo (2) elemento. Em resumo a função PcoRunCube(...) monta as chaves que são a combinação das dimensões do cubo depois de aplicado os filtros definidos na configuração de cubo e para cada chave executa a função associada que retorna os valores dos saldos. Exemplificando: Cubo "01" com as Dimensões : Conta Orçamentaria (4 Posições)+ Centro de Custo (3 Posições) + Tipo de Saldo (2 Posições) Configuraçao Cubo "OR" que filtra os tipos de saldos "OR" Conta Orcamentaria: 1000 - Recursos Extras Centro de Custo: 345 - Producao de Engrenagens Tipo de Saldo: OR - Orcado Por combinação temos a seguinte chave: 1000345PR Saldo Final em 31/01/2008 - 200,00 31/03/2008 - 400,00
Neste caso chamaremos a função da seguinte forma: PcoRunCube("01", 2, "ConSaldo", "OR", 0, .F.) ^------------------- Código do Cubo ^------------------- Quantidade de Valores ^------------------- Função de Retorno dos Valores de Saldos ^------------------- Configuração de Cubo ^------------------- Não editar Parâmetros Configuração de Cubo ^------------------- Não Retornar Valores Zerados Neste caso temos a função que será executada para retorno dos valores de saldos: Function ConSaldo(cConfig,cChave) Local aRetSld := {} //onde cConfig é o codigo do cubo e cChave é a chave a ser consultada aAdd(aRetSld, PcoRetSld( cConfig,cChave,CTOD("31/01/08") ) aAdd(aRetSld, PcoRetSld( cConfig,cChave,CTOD("31/03/08") ) Return(aRetSld) //------------------------------ O retorno da funcao PcoRunCube é um array multidimensional que deverá ser atribuido em uma variável do tipo array, que no caso do exemplo acima possuirá 3 linhas, uma para a chave referente ao primeiro nivel (conta), uma para o segundo nível(conta+centro de custo) e uma terceira linha para o terceiro nível do cubo (conta+centro de custo+tipo de saldo), onde cada linha contem uma chave com os seguintes elementos:
Exemplos //Cubo "01" com as Dimensões : Conta Orçamentaria (4 Posições)+ Centro de Custo (3 Posições) + Tipo de //Saldo (2 Posições)//Configuraçao Cubo "OR" que filtra os tipos de saldos "OR"//Conta Orcamentaria: 1000 - Recursos Extras//Centro de Custo: 345 - Producao de Engrenagens//Tipo de Saldo: OR - Orcado//Por combinação temos a seguinte chave: 1000345PR//Saldo Final em 31/01/2008 - 200,00// 31/03/2008 - 400,00Local aProc aProc := PcoRunCube("01", 2, "ConSaldo", "OR", 0, .F.)//--------------------------------Function ConSaldo(cConfig,cChave)Local aRetSld := {}aAdd(aRetSld, PcoRetSld( cConfig,cChave,CTOD("31/01/08") )aAdd(aRetSld, PcoRetSld( cConfig,cChave,CTOD("31/03/08") )Return(aRetSld) Parâmetros:
|