-
Total de itens
582 -
Registro em
-
Última visita
Tipo de Conteúdo
Perfis
Fóruns
Desafios
Calendário
Downloads
Galeria
Tudo que Alex Pereira postou
-
Processo de Carregamento tabelas
Alex Pereira respondeu ao pergunta de Bruno Roque Lins Da Silva em Power Query e Linguagem M
Bom dia não sei se tem uma forma de fazer isso quando os dados forem atualizados, o que você pode fazer para facilitar seu trabalho de análise é você ter uma dimensão dessa coluna. Que no caso você iria atualizar ela e teria todos DEM. Nat. Oper de forma distinta. -
Recomendo ela olhar tbm se todas as fontes de dados dela estão como organizacionais e criptografia marcada. É interessante ela validar tbm se onde ela instalou o gateway é o mesmo ambiente ao qual ela está fazendo teste, porque as vezes ela está com acesso no ambiente local dela, mas o gateway está instalado em um servidor e lá não está tendo acesso! Tbm recomendo ela utilizar o gateway entprise ao invês personal que ele dá menos problemas
-
Tenho está resposta sobre algumas possíveis soluções que ela pode tentar geralmente funciona!
-
MS PowerBI não registrado - Erro ao atualizar informações
Alex Pereira respondeu ao pergunta de ruanargolo em Conexão com dados
Bom dia achei essa reposta no forum da alura com problema semelhante. https://cursos.alura.com.br/forum/topico-bug-o-provedor-microsoft-powerbi-oledb-nao-esta-registrado-330999 Experimente instalar e desistalar novamente power bi -
Execution Timeout Expired
Alex Pereira respondeu ao pergunta de kleberfernandes em Conexão com dados
Você aplica alguma outra transformação dentro do power query? Quando você aplica outra transformação dentro do power query os dados ele tem são trazidos do seu banco e depois será feita transformação dentro seu ambiente local é recomendado se faça todo processo de etl já dentro da propria consulta sql! Dê uma olhada nessa aula! -
Dê uma olhada nessa live aqui você terá um caminho de como fazer esse tipo transformação!
- 3 respostas
-
- power query
- power bi
- (e 3 mais)
-
Execution Timeout Expired
Alex Pereira respondeu ao pergunta de kleberfernandes em Conexão com dados
Tem sim exemplo utilizando conector mysql: Fonte = MySQL.Database(IP, Database, [ReturnSingleDatabase=true, Query=Query,CommandTimeout=#duration(0, 0, 35, 0)]) Observe que utilzei o CommandTimeout para aumentar meu tempo de execução de 10 para 35 minutos. Para mais detalhes de uma olhada na documentação da Microsoft sobre conector você está utilizando. https://learn.microsoft.com/en-us/powerquery-m/mysql-database Observação: Você deve tomar cuidado ao mudar esse parâmetro porque as vezes pode ser melhor você dar uma melhorada em sua query utilizando atualização incremental ou refatoração diminuir tempo de processamento da query. -
Erro ao instalar gateway .net 4.8
Alex Pereira respondeu ao pergunta de Henrique Marsal em Gateway e atualização de dados
Aqui alguns passos você pode fazer para ver se está funcionando: 1 - Verifique se o .NET Framework 4.8 está realmente instalado e atualizado. Vá em Painel de Controle > Programas > Programas e Recursos e procure pela entrada "Microsoft .NET Framework 4.8". Se não estiver lá, reinstale o .NET Framework 4.8 2 - Caso o .NET Framework 4.8 já esteja instalado, tente instalar o gateway novamente. Se o erro persistir, vá para o próximo passo. 3 - Abra o Prompt de Comando como administrador e execute o seguinte comando para reparar a instalação do .NET Framework 4.8: %windir%\Microsoft.NET\Framework64\v4.0.30319\ngen.exe executeQueuedItems Isso irá recompilar os assemblies do .NET Framework 4 - Reinicie o servidor e tente instalar o gateway novamente. 5 - Se ainda assim o erro persistir, verifique se não há conflitos com outras versões do .NET Framework instaladas. Você pode tentar desinstalar versões anteriores do .NET Framework e reinstalar apenas a versão 4.8 6 - Caso o problema persista, tente instalar o gateway em modo de compatibilidade com versões anteriores do .NET Framework, se disponível na opção de instalação -
Erro ao instalar gateway .net 4.8
Alex Pereira respondeu ao pergunta de Henrique Marsal em Gateway e atualização de dados
Poderia fornecer o erro? -
Drill - Through não aparece no gráfico de Colunas
Alex Pereira respondeu ao pergunta de Antonio Cella em Visualização de dados
Só anexando aqui quando você baixa esse arquivo a opcao Drill Through não parece estar habilitada nesse arquivo você dispanabilizou, talvez seja por ser um arquivo anexado seu de uma versão antiga ou alguma configuração feita. No caso o que fiz para habilitar foi vir aaqui na opcao de informação e clicar em redefinir para o padrão Feito isso o filtro de drill trought foi restaurado! -
Repetir valor da ultima linha, no total
Alex Pereira respondeu ao pergunta de Luany S S Oliveira em Linguagem DAX
Boom dia, expreimente usar função Isiscope. De uma olhada nessa aula! https://app.xperiun.com/aula/1704330688582x112559474388616460?v=1704838857306x837654171097005300 -
Poderia anexar o arquivo? tbm forneça codigo você utilizou
-
Problema na Tabela Calendario - Gera Datas Sem Utilização
Alex Pereira respondeu ao pergunta de Thiago Palmeira em Modelagem e relacionamentos
Tente dessa forma: TabelaCalendario = VAR DataMin = MIN(fato_notas[data_emissao]) VAR DataMax = MAX(fato_notas[data_emissao]) RETURN CALENDAR(DataMin, DataMax) Caso estiver dando mesmo erro verifique a sua data mínima no seu conjunto de dados!- 5 respostas
-
- 1
-
- modelagem de dados
- calendar
- (e 1 mais)
-
Zerar valores de Colunas com base em outra coluna
Alex Pereira respondeu ao pergunta de Marcio Monteiro em Power Query e Linguagem M
Veja se esse código resolve seu problema V1 let // Cria uma tabela fictícia com dados de exemplo FonteDeDados = Table.FromRecords({ [VIAGENS = 1, KM = 100, PALLETS = 10, PESO_CARGA = 5000, M3_PONDERADA = 12], [VIAGENS = 0, KM = 200, PALLETS = 20, PESO_CARGA = 10000, M3_PONDERADA = 25], [VIAGENS = 2, KM = 300, PALLETS = 30, PESO_CARGA = 15000, M3_PONDERADA = 35], [VIAGENS = 0, KM = 400, PALLETS = 40, PESO_CARGA = 20000, M3_PONDERADA = 45] }, type table [VIAGENS = number, KM = number, PALLETS = number, PESO_CARGA = number, M3_PONDERADA = number]), // Transforma cada linha com base no valor da coluna VIAGENS TransformarLinhas = Table.TransformRows(FonteDeDados, (row) => if row[VIAGENS] = 0 then [VIAGENS = 0, KM = 0, PALLETS = 0, PESO_CARGA = 0, M3_PONDERADA = 0] else row ), // Converte a lista de registros transformados de volta para uma tabela TabelaFinal = Table.FromRecords(TransformarLinhas) in TabelaFinal -
DataFlows - API Inconsistente
Alex Pereira respondeu ao pergunta de Henrique Marsal em Power BI online (serviço)
Bom Diaaaa, poderia fornecer mais informações sobre a API? - Existe documentação? - Qual erro você está tendo no dataflow? -
Bom dia! Abaixo estão os passos exemplificados para a conexão com uma das APIs: Documentação: https://developer.sankhya.com.br/reference/requisições-via-gateway Passo 1 - Criar parâmetros de autenticação: - App Key - Token - email - password Passo 2 - Criar função de autenticação: Desenvolva uma função que utilize os parâmetros acima para autenticar no sistema. No nosso caso chamaremos nossa função de ObterToken. let AutenticarAPI = () => let url = "https://api.sankhya.com.br/login", payload = "{}", headers = [ #"Appkey" = Appkey, #"Token" = Token, #"Username" = email, #"Password" = password ], options = [ Headers = headers, Content = Text.ToBinary(payload), IsRetry = false ], response = Web.Contents(url, options), jsonResponse = Json.Document(response), BearerToken = if Record.HasFields(jsonResponse, "bearerToken") then jsonResponse[bearerToken] else null in BearerToken in AutenticarAPI Passo 3 - Consultar uma tabela específica: Você pode fazer consultas em tabelas específicas conforme sua necessidade. Para cada consulta, utilize uma URL específica junto com um tipo de 'request body'. No exemplo a seguir, utilizamos a consulta à Tabela de Preços, conforme a documentação disponível em: https://developer.sankhya.com.br/reference/get_tabelapreco let // Obtém o token de acesso para autenticação na API. AcessToken = ObtemToken(), // Define a URL base da API para consulta de produtos. url = "https://api.sankhya.com.br/gateway/v1/mgecom/service.sbr?serviceName=ConsultaProdutosSP.consultaProdutos&outputType=json", // Prepara o corpo da requisição, definindo filtros e critérios para a consulta de produtos. requestBody = [ filtros = [ criterio = [ resourceID = "br.com.sankhya.com.cons.consultaProdutos", PERCDESC = "0", CODPROD = Record.FromList({"$"}, {"6"}) ], isPromocao = "false", isLiquidacao = "false" ] ], // Monta o payload final da requisição com o corpo preparado. payload = Json.FromValue([ serviceName = "ConsultaProdutosSP.consultaProdutos", requestBody = requestBody ]), // Configura os cabeçalhos da requisição, incluindo o tipo de conteúdo e a autorização. headers = [ #"Content-Type" = "application/json", #"Authorization" = "Bearer " & AcessToken ], // Define as opções da requisição, como cabeçalhos e conteúdo. options = [ Headers = headers, Content = payload, IsRetry = false ], // Executa a requisição à API e captura a resposta. response = Web.Contents(url, options), jsonResponse = Json.Document(response), responseBody = Record.Field(jsonResponse, "responseBody"), // Verifica se existe o campo 'responseBody' e converte para tabela, caso contrário retorna nulo. tabela = if Record.HasFields(jsonResponse, "responseBody") then Table.FromRecords({responseBody}) else null, // Expande colunas do registro 'produtos' para acessar detalhes específicos de cada produto. #"produtos Expandido" = Table.ExpandRecordColumn(tabela, "produtos", ["existemMaisRegistros", "maxregconsprod", "produto"], ["produtos.existemMaisRegistros", "produtos.maxregconsprod", "produtos.produto"]), #"produtos.produto Expandido" = Table.ExpandListColumn(#"produtos Expandido", "produtos.produto"), #"produtos.produto Expandido1" = Table.ExpandRecordColumn(#"produtos.produto Expandido", "produtos.produto", ["ISPROMOCAO", "ISLIQUIDACAO", "Cadastro_CODPROD", "Cadastro_DESCRPROD", "TIPCONTEST", "TIPLANCNOTA", "Preço_1", "DECQTD", "ORDEMMEDIDA", "CORSEMESTOQUE", "Estoque_1", "DECVLR", "CODVOL", "DESCRPROD", "CODPROD", "TEMIMAGEM", "PRECOBASE"], ["produtos.produto.ISPROMOCAO", "produtos.produto.ISLIQUIDACAO", "produtos.produto.Cadastro_CODPROD", "produtos.produto.Cadastro_DESCRPROD", "produtos.produto.TIPCONTEST", "produtos.produto.TIPLANCNOTA", "produtos.produto.Preço_1", "produtos.produto.DECQTD", "produtos.produto.ORDEMMEDIDA", "produtos.produto.CORSEMESTOQUE", "produtos.produto.Estoque_1", "produtos.produto.DECVLR", "produtos.produto.CODVOL", "produtos.produto.DESCRPROD", "produtos.produto.CODPROD", "produtos.produto.TEMIMAGEM", "produtos.produto.PRECOBASE"]), // Processo continua para cada coluna necessária com detalhes expandidos até alcançar o resultado final. in // Retorna a última tabela expandida com todos os detalhes de produtos. #"produtos.produto.DECVLR Expandido"
-
Atualização do Postgresql no serviço do Power BI
Alex Pereira respondeu ao pergunta de Fabio Graciano em Gateway e atualização de dados
Qual serviço de nuvem você está utilizando? Para criar não utilizar o gateway você pode criar um vNet, mas se não me engano é limitado em contas premium do power bi e somente via nuvem azure. De uma olhada na documentação: https://learn.microsoft.com/pt-br/data-integration/vnet/create-data-gateways -
Erro ao Atualizar Conexão MySQL
Alex Pereira respondeu ao pergunta de Claudionor em Gateway e atualização de dados
Você chegou fazer um test no servidor onde instalado o gateway se está conseguindo conectar ao conjunto de dados? 1 - Faça teste em seu ambiente 2 - Veriques se as fontes estão como organizacio e nivel de privacidade habilitados 3 - Verique se você tem o driver de conexão do mysql em seu servidor! -
Mês não aparecendo em um visual apenas
Alex Pereira respondeu ao pergunta de Jessé Anselmo em Visualização de dados
Experimente excluir o filtro e fazê - lo novamente do zero! -
Relacionamentos e Modelagem de Dados com Problemas
Alex Pereira respondeu ao pergunta de Janio Rolim em Modelagem e relacionamentos
Olá! Realmente, esse é um desafio que exige uma análise detalhada dos dados para fornecer uma resposta precisa. No entanto, eu sugiro que você explore no curso as aulas sobre modelagem de dados dimensionais, pois isso pode esclarecer muitas das suas dúvidas. Pelo que entendi, a tabela de Ordens de Produção atua como uma ponte entre as tabelas de Apontamentos de Produção e de Paradas. Uma abordagem possível seria integrar as informações relevantes da tabela de Ordens de Produção diretamente nas tabelas de Apontamentos, para simplificar o modelo e focar nas análises que você precisa realizar. Isso ajudaria a manter os dados mais acessíveis e talvez até melhore o desempenho do seu dashboard. É claro que é essencial estudar mais sobre o modelo atual e as regras de negócio para garantir que qualquer mudança seja benéfica e alinhada com as necessidades da sua análise. Espero ter ajudado 🙂 -
Só complementando a resposta do bruno deve - se tomar cuido em fazer isso no python pq por padrão seu index começa no zero. Alguns comentários ajudar! # Python utiliza indexação baseada em zero, o que significa que o primeiro elemento de uma lista está no índice 0. # Portanto, ao especificar índices para remover elementos de uma lista, certifique-se de que os índices correspondam # aos elementos desejados, considerando que a contagem começa do zero. lista = [1, 2, 3, 4, 5, 6] print("Lista original: ", lista) # Definindo os índices dos elementos que desejamos remover. indices_a_remover = [0, 2, 4] # É importante remover os elementos de trás para frente quando iteramos diretamente sobre a lista, # isso evita problemas com o deslocamento de índices após cada operação de remoção. for indice in sorted(indices_a_remover, reverse=True): del lista[indice] print("Lista após remoções:", lista)
-
Chamar Função Personalizada pelo Filtros
Alex Pereira respondeu ao pergunta de Vinicius Rossi Manduruca em Power Query e Linguagem M
Tem como fazer conexão via direct query ai você vai estar puxando dados direto banco. Contudo tudo tem suas limitações. -
Falha em atualização de fonte de dados
Alex Pereira respondeu ao pergunta de Eduardo_Braga em Power BI online (serviço)
Acredito que o o problema seja devido se usar uma fonte dinâmica dentro do seu conjunto de dados que no caso seria sua url, se não me engano isso não é permitido no power bi. Tente utilizar parâmetro de Query dentro da API. (optional ultCod as number, optional travelList as list) => let ultCode = if ultCod = null then 1 else ultCod, baseUrl = "https://tjgrm.begcloud.com/ws_rest/public/api/viagem", headers = [ #"Content-Type" = "application/json", #"Authorization" = "Basic V1NUSjpXUzQ1OFdT", #"X-APP-TRAFEUGS" = "9" ], // Correção: Definindo o parâmetro Query diretamente nas opções options = [ Headers = headers, Query = [#"UltCodigo" = Text.From(ultCode)] ], response = Json.Document(Web.Contents(baseUrl, options))[viagens], lastId = if List.IsEmpty(response) then -1 else List.Last(response)[viagemId], travels = if travelList = null then response else List.Combine({travelList, response}), out = if lastId = -1 then Table.FromRecords(travels) else @fRecursiveTravels(lastId, travels) in out