Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Crescimento por período

Pessoal, bom dia!

Estou tentando calcular o crescimento em % mês a mês e ano a ano. Criei o calendário abaixo:

****************************************************

LET varMinDate = Num(peek('DATA', 0, 'VB_por_Tipo'));

let varMaxDate = Num(Peek('DATA', -1, 'VB_por_Tipo'));

let varToday = num(today());

//********************Temporary Calendar*******************//

DateField:

LOAD

  $(varMinDate) + rowno() - 1 as Num,

  date($(varMinDate) + RowNo() - 1) as TempDate AutoGenerate

  $(varMaxDate) - $(varMinDate) + 1;

 

//********************Master Calendar***********************//

MasterCalendar:

LOAD

  TempDate as DATA,

  Week (TempDate) as Week,

  Year (TempDate) as Year,

  Month (TempDate) as Month,

  Day (TempDate) as Day,

  Weekday (TempDate)as WeekDay,

  'Q' & ceil (month(TempDate) / 3) as Quarter,

  Date (monthstart(TempDate), 'MMM-YYYY') as MonthYear,

  Week (TempDate) & '-'&Year(TempDate) as WeekYear,

  inyeartodate (TempDate, $(varToday), 0) * -1 as CurYTDFlag,

  inyeartodate (TempDate, $(varToday), -1) * -1 as LastYTDFlag

  resident DateField order by TempDate ASC;

  drop table DateField;

Ele funcionou corretamente, mas quando estou colocando a fórmula sum({$<MonthYear={$(=Only(MonthYear))}>} VB) na expressão, está retornando zero. Podem me ajudar identificando onde estou errando?

1 Solution

Accepted Solutions
fabionakashigue
Partner - Creator
Partner - Creator

Cara como não tenho acesso a sua aplicação fica meio dificil.

Vamos lá.

Assumindo que você está com uma tabela dinamica com data pivotada. Criaria apenas a expressão:

(sum(VB)/Before(Sum(VB)))-1



Abs.

Fabio Hiro

View solution in original post

4 Replies
fabionakashigue
Partner - Creator
Partner - Creator

Wellington,

Não entendi muito bem o que você pretende fazer com a sua expressão.

No set analysis deve retornar que data?

Abs

Fabio Nakashigue

Not applicable
Author

Fábio,

No set analysis há a montagem de um calendário, pois no meu arquivo original tem o formato dd/mm/aaaa de data. Nele estou criando opções sobre como ver essa datas, por exemplo: Jan-2016, Fev-2016, etc.

Mas meu objetivo mesmo é calcular o quando variou em % a venda de um mês para o anterior. Abaixo eu demonstro o que ocorreu com a minha expressão é o que eu gostaria de ter:

Com a fórmula  sum({$<MonthYear={$(=Only(MonthYear))}>} VB) obtive zero nas colunas do Cresc%

        

TIPOVENDAsum(VB) Janeiro

Cresc%

Janeiro

sum(VB) FevereiroCresc% Fevereirosum(VB) MarçoCresc% Marçosum(VB) AbrilCresc% Abril
Venda Internet365.4780421.5870126.9870124.7850
Venda Atacado687.9580700.2150368.7540801.2450
Venda Balcão102.547080.2450154.8720105.8720

Gostaria de ter o resultado abaixo nas colunas do Cresc%       

        

TIPOVENDAsum(VB) JaneiroCresc% Janeirosum(VB) FevereiroCresc% Fevereirosum(VB) MarçoCresc% Marçosum(VB) AbrilCresc% Abril
Venda Internet365.478#REF!421.58715,4%126.987-69,9%124.785-1,7%
Venda Atacado687.958#REF!700.2151,8%368.754-47,3%801.245117,3%
Venda Balcão102.547#REF!80.245-21,7%154.87293,0%105.872-31,6%

Talvez eu esteja complicado e haja alguma forma mais simples de conseguir isso. Fique a vontade para sugerir outros meios.

fabionakashigue
Partner - Creator
Partner - Creator

Cara como não tenho acesso a sua aplicação fica meio dificil.

Vamos lá.

Assumindo que você está com uma tabela dinamica com data pivotada. Criaria apenas a expressão:

(sum(VB)/Before(Sum(VB)))-1



Abs.

Fabio Hiro

Not applicable
Author

Fábio,

Ficou perfeito. Muito obrigado.