Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Tenho um expressão:
sum({<[Movimento_Tipo_Operacao]={'DEV','VND','VPC','VEF','FPV','CVE'} >}Preco_Final)
Pergunta:
Como fazer uma expressão que faça a comparação entre o Preco_Final & Receita Bruta em 12 meses.
Em que taxa estou me enquadrado conforme o meu faturamento da expressão acima. com este site abaixo:
A tabela abaixo vem deste site:
TABELA DO SIMPLES NACIONAL - ANEXO I - COMÉRCIO
Receita Bruta em 12 meses (em R$) | Alíquota | IRPJ | CSLL | Cofins | PIS/Pasep | CPP | ICMS |
Até 180.000,00 | 4,00% | 0,00% | 0,00% | 0,00% | 0,00% | 2,75% | 1,25% |
De 180.000,01 a 360.000,00 | 5,47% | 0,00% | 0,00% | 0,86% | 0,00% | 2,75% | 1,86% |
De 360.000,01 a 540.000,00 | 6,84% | 0,27% | 0,31% | 0,95% | 0,23% | 2,75% | 2,33% |
De 540.000,01 a 720.000,00 | 7,54% | 0,35% | 0,35% | 1,04% | 0,25% | 2,99% | 2,56% |
De 720.000,01 a 900.000,00 | 7,60% | 0,35% | 0,35% | 1,05% | 0,25% | 3,02% | 2,58% |
De 900.000,01 a 1.080.000,00 | 8,28% | 0,38% | 0,38% | 1,15% | 0,27% | 3,28% | 2,82% |
De 1.080.000,01 a 1.260.000,00 | 8,36% | 0,39% | 0,39% | 1,16% | 0,28% | 3,30% | 2,84% |
De 1.260.000,01 a 1.440.000,00 | 8,45% | 0,39% | 0,39% | 1,17% | 0,28% | 3,35% | 2,87% |
De 1.440.000,01 a 1.620.000,00 | 9,03% | 0,42% | 0,42% | 1,25% | 0,30% | 3,57% | 3,07% |
De 1.620.000,01 a 1.800.000,00 | 9,12% | 0,43% | 0,43% | 1,26% | 0,30% | 3,60% | 3,10% |
De 1.800.000,01 a 1.980.000,00 | 9,95% | 0,46% | 0,46% | 1,38% | 0,33% | 3,94% | 3,38% |
De 1.980.000,01 a 2.160.000,00 | 10,04% | 0,46% | 0,46% | 1,39% | 0,33% | 3,99% | 3,41% |
De 2.160.000,01 a 2.340.000,00 | 10,13% | 0,47% | 0,47% | 1,40% | 0,33% | 4,01% | 3,45% |
De 2.340.000,01 a 2.520.000,00 | 10,23% | 0,47% | 0,47% | 1,42% | 0,34% | 4,05% | 3,48% |
De 2.520.000,01 a 2.700.000,00 | 10,32% | 0,48% | 0,48% | 1,43% | 0,34% | 4,08% | 3,51% |
De 2.700.000,01 a 2.880.000,00 | 11,23% | 0,52% | 0,52% | 1,56% | 0,37% | 4,44% | 3,82% |
De 2.880.000,01 a 3.060.000,00 | 11,32% | 0,52% | 0,52% | 1,57% | 0,37% | 4,49% | 3,85% |
De 3.060.000,01 a 3.240.000,00 | 11,42% | 0,53% | 0,53% | 1,58% | 0,38% | 4,52% | 3,88% |
De 3.240.000,01 a 3.420.000,00 | 11,51% | 0,53% | 0,53% | 1,60% | 0,38% | 4,56% | 3,91% |
De 3.420.000,01 a 3.600.000,00 | 11,61% | 0,54% | 0,54% | 1,60% | 0,38% | 4,60% | 3,95% |
Faltou completar a tabela do Simples.
Mas mesmo assim ainda nao preenche todos.....
Agnaldo,
fiz com algumas faixas.....tem que completar ainda as outras....
Alem disto, isto esta no script, portanto não vai obedecer seleções (de produtos ou lojas por exemplo) para chegar no faturamento mensal e acumulado.
Faltou o modelo.....e segue o script....
//===============================================================================================
//
TabelaSimples:
LOAD
num#(De,'#.#','.',',') as De,
Ate,
num#(Perc,'#.#','.',',') as Perc;
LOAD * INLINE [
De ,Ate , Perc
0 ,180000 ,4.00
180000.01 ,360000 ,5.47
360000.01 ,540000 ,6.84
540000.01 ,720000 ,7.54
720000.01 ,900000 ,7.60
900000.01 ,1080000,8.28
1080000.01 ,1260000,8.36
1260000.01 ,1440000,8.45
1440000.01 ,1620000,9.03
];
//===============================================================================================
//
Faturamento:
LOAD
date(MonthStart((Date#(Data,'YYYYMMDD'))),'MM/YYYY') as Periodo,
date(Date#(Data,'YYYYMMDD')) as Data,
Valor
;
LOAD * INLINE [
Data , Valor
20140101, 50000
20140201, 50000
20140301, 80000
20140401, 80000
20140501, 100000
20140601, 100000
20140701, 150000
20140812, 110000
20140905, 130000
20141005, 120000
20141105, 111000
20141205, 170000
20150301, 50000
20150101, 50000
20150201, 80000
20150301, 80000
20150401, 100000
20150501, 100000
20150601, 150000
20150712, 110000
20150805, 130000
20150905, 120000
];
//===============================================================================================
// Para calcular os 11 meses anteriores e somar para ter um acumulado
//===============================================================================================
Tmp:
LOAD
date(addmonths(Periodo,-11),'MM/YYYY') as Periodo_Tmp,
Periodo as Periodo_Final
Resident Faturamento;
left join (Tmp)
LOAD Distinct
date(addmonths(Periodo_Tmp,IterNo()-1),'MM/YYYY') as Periodo_Inicio,
IterNo() as Seq,
Periodo_Final
Resident Tmp While date(addmonths(Periodo_Tmp,IterNo()-1),'MM/YYYY') <= Periodo_Final;
left join (Tmp)
LOAD
Periodo as Periodo_Inicio,
sum(Valor) as Val
Resident Faturamento Group by Periodo;
//
//
//===============================================================================================
// Junta a tabela Faturamento e apaga tabela Temporaria
//===============================================================================================
left join (Faturamento)
load
Periodo_Final as Periodo,
sum(Val) as Valor_Acumulado
resident Tmp Group by Periodo_Final;
DROP Table Tmp;
//===============================================================================================
// Pega o Percentual do Simples
//===============================================================================================
left join (Faturamento)
IntervalMatch(Valor_Acumulado)
load
De,
Ate
resident TabelaSimples;
left join (Faturamento)
load * resident TabelaSimples;
DROP Table TabelaSimples;
//===============================================================================================
Crie um arquivo tmp1.qvw para fazer um teste.
Mas eu acho que não conseguir adptar a tabela movimento minha.
Agnaldo,
Me parece que os valores sao maiores do que a tabela do Simples.....
Faltou completar a tabela do Simples.
Mas mesmo assim ainda nao preenche todos.....
Obrigado pela ajuda Alessandro,
Realmente os valores estava acima. Mas a dica que você deu funcionou. Em uma filial, que estava dentro da tabela do simples.