Forum Discussion

e1smann's avatar
e1smann
New Member
10 months ago

Pré Filtragem

Olá!

Em meu painel, tenho uma segmentação de dados com o campo de ano. Nela, posso filtrar pelos dados de 2025, 2024, 2023, etc...

Eu preciso que, todos os meus gráficos tragam por pré definição o Ano Atual em que estamos. 

Mas que, caso eu selecione por exemplo, o ano de 2024 ou algum outro na minha segmentação de dados, ele altere este filtro de ano atual para os que eu selecionei.

O objetivo é: Ao abrir o painel, todos os dados serão do Ano Corrente.

Se eu selecionar algum Ano manualmente na segmentação de dados, este que deve ser considerado.

10 Replies

  • Hi e1smann ,

     

     Criar uma coluna “Ano Atual” no Power Quer

    let
        // Etapa 1: Carregar o arquivo Excel do caminho local
        Fonte = Excel.Workbook(File.Contents("C:\Caminho\Para\Seu\Arquivo\Financial Sample.xlsx"), null, true),
    
        // Etapa 2: Acessar a planilha ou tabela nomeada correta
        Dados = Fonte{[Item="Sheet1", Kind="Sheet"]}[Data],
    
        // Etapa 3: Promover cabeçalhos e definir os tipos de dados
        CabecalhosPromovidos = Table.PromoteHeaders(Dados, [PromoteAllScalars=true]),
        Tipado = Table.TransformColumnTypes(CabecalhosPromovidos, {
            {"Date", type date}
        }),
    
        // Etapa 4: Adicionar coluna personalizada comparando o ano atual com o ano da data
        AnoAtual = Date.Year(DateTime.LocalNow()),
        AdicionarColunaPersonalizada = Table.AddColumn(Tipado, "AnoResultado", each 
            let
                AnoLinha = Date.Year([Date])
            in
                if AnoLinha = AnoAtual then 
                    Text.From(AnoAtual) 
                else 
                    Text.From(AnoLinha), type text)
    in
        AdicionarColunaPersonalizada
    let
        // Step 1: Load Excel file from local path
        Source = Excel.Workbook(File.Contents("C:\Path\To\Your\Financial Sample.xlsx"), null, true),
    
        // Step 2: Access the correct sheet or named table
        Data = Source{[Item="Sheet1", Kind="Sheet"]}[Data],
    
        // Step 3: Promote headers and set data types
        PromotedHeaders = Table.PromoteHeaders(Data, [PromoteAllScalars=true]),
        Typed = Table.TransformColumnTypes(PromotedHeaders, {
            {"Date", type date}
        }),
    
        // Step 4: Add custom column comparing year of today vs year of date column
        CurrentYear = Date.Year(DateTime.LocalNow()),
        AddCustomColumn = Table.AddColumn(Typed, "YearOutput", each 
            let
                RowYear = Date.Year([Date])
            in
                if RowYear = CurrentYear then 
                    Text.From(CurrentYear) 
                else 
                    Text.From(RowYear), type text)
    in
        AddCustomColumn

    Above is the transalated message so just to help you understand Try to create a column in power query which will give you current year as output or other year value as output

    Please give Kudos or mark it ass solution once confirmed.

     

    Thanks and Regards,

    Praful

    • e1smann's avatar
      e1smann
      New Member

      Olá!

      Obrigado pela mensagem.

      Estou trazendo meus dados diretamente do SQL, na minha extração tenho uma coluna de Ano (período dos dados que estou consultando) e também trouxe o AnoAtual do sistema a partir do Year(Getdate()).

      A minha dúvida seria como configurar no painel para que quando o usuário acesse, traga automaticamente dados referentes ao ano atual de forma dinâmica. Ou seja, quando mudar para 2026, trazer dados referentes a este ano.

      Até aí já consegui fazer, porém, após aplicada essa regra ele não respeita mais a segmentação de dados. Se o usuário selecionar 2026, não retorna nada.


  • Hi e1smann,

    Checking in to see if your issue has been resolved. let us know if you still need any assistance.

     

    Thank you.

    • e1smann's avatar
      e1smann
      New Member

      Olá!

       

      Infelizmente ainda não. Desculpe a demora a retornar.

       

      No decorrer dessa semana irei responder novamente com o passo a passo que realizei e o que faltou funcionar.

    • e1smann's avatar
      e1smann
      New Member

      Olá!

       

      Infelizmente ainda não. Desculpe a demora a retornar.

       

      No decorrer dessa semana irei responder novamente com o passo a passo que realizei e o que faltou funcionar.

    • e1smann's avatar
      e1smann
      New Member

      Olá!

       

      Infelizmente ainda não. Desculpe a demora a retornar.

       

      No decorrer dessa semana irei responder novamente com o passo a passo que realizei e o que faltou funcionar.

      • v-saisrao-msft's avatar
        v-saisrao-msft
        Icon for Community Support rankCommunity Support

        Hi e1smann,

        Checking in to see if your issue has been resolved. let us know if you still need any assistance.


        Thank you