Ir para conteúdo
  • 0

Definir Período


Bianca Vilela
Ir para solução Solucionado por Michele ,

Pergunta

  • Alunos

Bom dia colegas! 

Tenho a atual situação:
Tenho os horarios de inicio e fim de viagem de alguns onibus e tenho em outra tabela, os horarios que os passageiros entraram no onibus. 

Preciso saber quais passageiros estao em quais linhas, visto que por dia o mesmo onibus efetua varias linhas,por exemplo:

Linha 1 - inicio 10h / fim 12h
Linha 2 - inicio 13h / fim 14h
Linha 3 - inicio 15h / fim 16h
Passageiros: 10h30,10h45,10h59, 13h30, 13h45,14h20,15h45,15h50.

Linha 1 - inicio 10h / fim 12h
Passageiros: 10h30,10h45,10h59.
Linha 2 - inicio 13h / fim 14h
Passageiros: 14h20
Linha 3 - inicio 15h / fim 16h
Passageiros: 15h45,15h50


Podem me sugerir como definir este periodo e '' alocar '' os passageiros em suas respectivas viagens?

 

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução

Olá @Bianca Vilela!

Sobre a dúvida enviada por mensagem, achei duas situações.

Uma em que a mesma viagem podia ser encaixada em mais de um horário fim, então para garantir que virá o correspondente, coloquei uma validação que o horário início do passageiro é o mesmo da linha, assim veio a Hora Fim correta e a Linha correspondente.

Para demais, pelo que percebi nos dados de viagem existe apenas o dia 10/05, então não vai achar correspondência no passageiro entende.

Caso isso atenda a sua necessidade e puder marcar a resposta que mais ajudou como Solução, por favor, assim direciona melhor qual solução resolveu o problema e também gera incentivo para quem ajuda 🙂

 

Hora Fim Viagem =
VAR vData = fPassageiros[Data]
VAR vHoraPassageiro = fPassageiros[Horário]
VAR vHoraInicioViagem = fPassageiros[Hora Inicio Viagem]

VAR vHoraFimViagem =
CALCULATE(
    MAX(fViagens[Hora Fim]),
    FILTER(
        fViagens,
        fViagens[Data] = vData &&
        fViagens[Hora Inicio] = vHoraInicioViagem &&
        vHoraPassageiro >= fViagens[Hora Inicio] &&
        vHoraPassageiro <=fViagens[Hora Fim]
    )
)

RETURN
    vHoraFimViagem

image.thumb.png.c880220070dabcfbebeb37600c69d1bf.png

image.thumb.png.46be4b6788cfd2544df8ef3beb4363f4.png

image.png.48a7a82c73f1f6841e0f504f83d967b2.png

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Olá @Bianca Vilela!

Criei um modelo de dados simplificado baseado nos seus exemplos. Porém, neste exemplo passado, você alocou alguns passageiros para a linha incorreta e o passageiro das 14h20 não tem linha correspondente, pois uma linha finaliza as 14h e a próxima começa apenas as 15h, ou seja, não tem linha nesses exemplos para alocar esse passageiro.

Fora isso, consegui montar uma coluna calculada com DAX que vai trazer na sua tabela de passageiros o horário inicio e fim da linha e a própria linha, após obter esses dois valores anteriores.

Veja se isso é o que você precisa, por favor. Segue .pbix que montei com o modelo.

image.png.ed6ba7410fcc5467cc9640245702af87.png

image.png.d4752f5f6f6e7ac683e513f9730523f4.png

Exemplo Linha Passageiro a partir das informações da Viagem.pbix

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Oi @Michele, boa tarde!

Agradeço MUITO a sua ajuda, 80% da questão consegui resolver com o seu auxílio, só gostaria que me ajudasse em um problema final, se puder. 
Depois de fazer tudo conforme vc indicou, alguns registros '' se perderam ''. 
No exemplo abaixo tenho um passageiro '' ADEGAL ROCHA " , onde me mostra 5 registros dele, porém tenho 7 na base.
Não consegui entender o motivo de estar faltando esses 2, pode me ajudar a entender?

Estou anexando o PBIX.

Mais uma vez, agradeço mto.

image.png.fce28eeb2bcf06e1d02627f468a58680.png

image.png.f02b6a5e9adafdcb6400e3dbf48d2e17.png

Passageiros.pbix

Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...