Calcula o total de valores do período precedente para uma conta especificada.
Valor de Retorno
Retorna uma string de caracteres representando a expressão correta a ser usada como parte da função HS.EXP.
Sintaxe
Cumulative (PointOfView, View, NumPeriod)
Tabela 12-5 Sintaxe de Função Cumulativa
Parâmetro | Valores Válidos |
---|---|
PointOfView |
Combinação válida de Conta, Custom1….4, membros ICP, por exemplo, "A#CASH.C1#[None].I#[ICP Top]" |
View |
Deve ser um dos seguintes valores: "" " "(aspas duplas) - Com base na exibição padrão definida para o cenário que está sendo processado (YTD ou Periódico). YTD - O usuário especifica a data Ano Atual, a qual substitui a exibição padrão definida para o cenário. Periódico - Especifica a opção periódica, a qual substitui a exibição padrão definida para o cenário. |
NumPeriod |
Um número inteiro representando o número de períodos no cenário atual para acumular, começando com o período atual. Se NumPeriod for 0 ou negativo, a função agrega a partir do começo do ano atual. |
Descrição Detalhada
Essa função calcula a soma dos períodos especificados ou a soma do ano atual para a conta especificada. Por padrão, a exibição de dados acumulados é o cenário padrão, no entanto, é possível substituir isso pelas contas do tipo fluxo.
Se o parâmetro Exibição for YTD, a função acumulará os valores do ano atual.
Se o parâmetro Exibição for Periódico, a função acumulará os valores periódicos.
Se o parâmetro Exibição estiver em branco ( " " ), a função acumulará os dados usando a exibição de cenário padrão.
Exemplo
A conta CASH retornará os seguintes valores para janeiro, fevereiro e março de 2014 dependendo do parâmetro Número usado na função personalizada Cumulativa.
A conta SALES retornará os seguintes valores para janeiro, fevereiro e março de 2014, dependendo dos parâmetros View e Number usados na função Cumulative. A exibição padrão definida para o cenário que está sendo processado será YTD.
Tabela 12-6 Exemplo de Função Cumulativa
Conta | Oct2013 | Nov2013 | Dec2013 | Jan2014 | Feb2014 | Mar2014 |
---|---|---|---|---|---|---|
A#Cash |
1,000 |
1,500 |
1,200 |
800 |
1,100 |
1,300 |
Cumulative ("A#Cash","0") |
N/D |
N/D |
N/D |
800 |
1,900 |
3,200 |
Cumulative("A#Cash", "3") |
N/D |
N/D |
N/D |
3,500 |
3,100 |
3,200 |
A#Sales |
9.000 |
10,500 |
11,700 |
800 |
1,900 |
3,200 |
Cumulative("A#Sales", "0") |
N/D |
N/D |
N/D |
800 |
2,700 |
5,900 |
Cumulative("A#Sales", "Periodic", "0") |
N/D |
N/D |
N/D |
800 |
1,900 |
3,200 |
Cumulative("A#Sales", "Periodic", "3") |
N/D |
N/D |
N/D |
3,500 |
3,100 |
3,200 |
Script de Amostra
' sample statement written in the calling routine
Sub Calculate()
HS.EXP "A#TOT_Cash =" &Cumulative("A#Cash","" ,0)
End Sub
' programming of the Cumulative function
Function Cumulative(StrPov, StrVIEW, nPERIOD)
DIM strCUM DIM i
IF nPERIOD <= 0 THEN
nPERIOD = HS.PERIOD.NUMBER() - 1
ELSE
nPERIOD = nPERIOD - 1
END IF
IF strVIEW = "" THEN
strVIEW = HS.SCENARIO.DEFAULTVIEW("")
END IF
strPOV = UCASE(strPOV) strVIEW = UCASE(strVIEW)
IF strVIEW = "PERIODIC" THEN
strVIEW = ".W#PERIODIC"
ELSEIF strVIEW = "YTD" THEN
strVIEW = ".W#YTD"
ELSE
EXIT FUNCTION
END IF
FOR i = 0 TO nPERIOD
IF i = 0 THEN
strCUM = strPOV & strVIEW
ELSE
strCUM = strCUM &"+" & strPOV & strVIEW &".P#CUR-" &i
END IF
NEXT
Cumulative = ""("" & strCUM &"")
END FUNCTION