Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Boa noite senhores,
bem estou com um problema e preciso de uma ajudinha para resolver da melhor maneira possivel
é o seguinte, preciso criar uma aplicação para calcular uma tarifação de telefonia, onde é tarifado o valor do minuto de R$ 0,50 no modelo 3 / 30 / 6
ou seja:
a cada 60 segundos o valor total será de R$ 0,50
3 / 30 / 6 =
1) tarifa somente ligações acima de 3 segungos
2) tarifa minima é de 30 segundos
3) acima de 30 segungos tarifa de 6 em 6 segungos
exemplo:
ligação com duração de 00:00:20 = R$ 0,25 (caso 2)
ligação com duração de 00:00:02 = R$ 0,00 (caso 1)
ligação com duração de 00:00:45 = R$ 0,375 (caso 3)
o valor de tarifação precisa ser uma variavel, para que eu possa colocar o valor que eu desejar.
alguem consegue me ajudar?
obrigado
ligação com duração de 00:00:31 = R$ 0,31 (caso 3) (30 segundos + 6 segundos)
não sei se entendi sua lógica...no caso
ligação com duração de 00:00:45 = R$ 0,375 (caso 3)
vc dividiu o 0,50 por 60 e fez X 45
mas no caso
ligação com duração de 00:00:31
vc dividiu o 0,50 por 60 e fez X 31 + (0,50/60)*6...
Desculpa Rodrigo, me enganei nesse caso 3
a tarifação minima é 60 segunfos
após 60 segundos deve tarifar de 6 em 6 segundos
entao se a duração for de 45 segundos logo a tarifação sera:
30 + 6 + 6 + 6
sendo 30 segungos = R$ 0,25 e cada 6 segundos
e a cada 6 segundos = R$ 0,05
entao valor total da ligação de 45 segundos = 0,25 + 0,05 + 0,05 + 0,05 = R$ 0,40
então use...Ceil( (second('00:00:45')-30)/6) em conjuto com if....
vc consegue me anexar um qvw de exemplo se possivel?
Estou sem acesso ao qlik no momento....tente entender a formula e faça algumas adaptações caso eu não tenha entendido sua regra 100%
=IF(Second('00:00:45')<=3,0,
IF(Second('00:00:45')<=30,Variable1/Second('00:00:45'),
Ceil( (Second('00:00:45')-30)/6)*(Variable1/30)))
Essa logica abaixo calcula o tempo tarifado, basta só multiplicar pela sua tarifa
Load
Chamada,
Interval(if(Chamada <= MakeTime(0,0,3),0,
if(Chamada <= MakeTime(0,0,30),MakeTime(0,0,30),
Ceil(Chamada,6/(24*60*60))))) as Tarifado;
load
Interval(Rand()/10) as Chamada
AutoGenerate 1000;
Caro Gustavo caso tenha encontrado a resposta por favor marque como correta ou poste aqui para mantermos o fórum organizado. Obrigado