Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Boa tarde;
Tenho uma fonte de dados automáticos e não consigo atualizar meu arquivo, o qual é o erro retornado abaixo, me ajudar?
Já tentei utilizar a função Web.Contents e não obtive êxito, onde eu poderia estar errando, me ajudem por gentileza
let
url =
"https://api.sienge.com.br/ebm/public/api/v1/sales-commissions?",
Query = startDueDate=2000-01-01&endDueDate=2050-12-31,
RegistrosPorPagina = 200,
cabecalhos = [
#"Authorization" = "",
#"Content-Type" = "application/json"
],
obterResultadoJson = (Url) =>
let opcoes = [Headers=[
#"Authorization" = "",
#"Content-Type" = "application/json"
]],
dadosConteudo = Web.Contents(Url, opcoes),
dadosJson = Json.Document(dadosConteudo)
in
dadosJson,
obterTotalRegistros = () =>
let Url = url & "&offset=0",
Json = obterResultadoJson(Url),
dados = Json[#"resultSetMetadata"],
quantidade = dados[#"count"]
in
quantidade,
obterRegistrosDaPagina = (pagina) =>
let offset = "&offset=" & Text.From(pagina * RegistrosPorPagina),
limit = "&limit=" & Text.From(RegistrosPorPagina),
Url = url & offset & "&" & limit,
Json = obterResultadoJson(Url),
resultados = Json[#"results"]
in
resultados,
totalRegistros = List.Max({ RegistrosPorPagina, obterTotalRegistros() }),
numeroDePaginas = Number.RoundUp(totalRegistros / RegistrosPorPagina),
indicesDasPaginas = { 0 .. numeroDePaginas - 1 },
paginas = List.Transform(indicesDasPaginas, each obterRegistrosDaPagina(_)),
paginasUnidas = List.Union(paginas),
tabela = Table.FromList(paginasUnidas, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Column1 Expandido" = Table.ExpandRecordColumn(tabela, "Column1", {"id", "contractId", "customerId", "installmentsNumber", "billId", "rate", "value", "baseValue", "type","installments"},
{"Column1.id", "Column1.contractId", "Column1.customerId", "Column1.installmentsNumber", "Column1.billId", "Column1.rate", "Column1.value", "Column1.baseValue", "Column1.type", "colum.installments"}),
#"colum.installments Expandido" = Table.ExpandListColumn(#"Column1 Expandido", "colum.installments"),
#"colum.installments Expandido1" = Table.ExpandRecordColumn(#"colum.installments Expandido", "colum.installments", {"id", "dueDate", "amount", "status"}, {"colum.installments.id", "colum.installments.dueDate",
"colum.installments.amount", "colum.installments.status"}),
#"Colunas Renomeadas" = Table.RenameColumns(#"colum.installments Expandido1",{{"Column1.id", "Código da comissão"}, {"Column1.contractId", "Código do contrato de vendas da comissão"},
{"Column1.customerId", "Código do cliente do contrato de vendas da comissão"}, {"Column1.installmentsNumber", "Número de parcelas da comissão"}, {"Column1.billId", "Número do título da comissão"},
{"Column1.rate", "Percentual de comissão"}, {"Column1.value", "Valor da comissão"}, {"Column1.baseValue", "Valor base da comissão"}, {"Column1.type", "Tipo de comissão"}, {"colum.installments.id", "Número da parcela"},
{"colum.installments.dueDate", "Data de vencimento da parcela"}, {"colum.installments.amount", "Valor da parcela"}, {"colum.installments.status", "Situação atual da parcela"}}),
#"Personalização Adicionada" = Table.AddColumn(#"Colunas Renomeadas", "%", each [Percentual de comissão] * 100),
#"Coluna Personalizada Adicionada" = Table.AddColumn(#"Personalização Adicionada", "% percentagem comissão", each let split = Splitter.SplitTextByDelimiter(",", QuoteStyle.None)(Text.From([#"%"], "pt-BR"))
in Text.Combine({split{0}?, "%"}), type text),
#"Texto em Maiúscula" = Table.TransformColumns(#"Coluna Personalizada Adicionada",{{"Situação atual da parcela", Text.Upper, type text}})
in
#"Texto em Maiúscula"
Infelizmente não obtive êxito, esta me retornando : Expression.Error: A importação Query não corresponde a nenhuma exportação. Você perdeu alguma referência de módulo?
Se importam em me ajudar reescrever ?
let
url =
Web.Contents("https://api.sienge.com.br/ebm/public/api/v1/sales-commissions?",
Query = startDueDate=2000-01-01&endDueDate=2050-12-31),
RegistrosPorPagina = 200,
cabecalhos = [
#"Authorization" = "",
#"Content-Type" = "application/json"
],
obterResultadoJson = (Url) =>
let opcoes = [Headers=[
#"Authorization" = "",
#"Content-Type" = "application/json"
]],
dadosConteudo = Web.Contents(Url, opcoes),
dadosJson = Json.Document(dadosConteudo)
in
dadosJson,
obterTotalRegistros = () =>
let Url = url & "&offset=0",
Json = obterResultadoJson(Url),
dados = Json[#"resultSetMetadata"],
quantidade = dados[#"count"]
in
quantidade,
obterRegistrosDaPagina = (pagina) =>
let offset = "&offset=" & Text.From(pagina * RegistrosPorPagina),
limit = "&limit=" & Text.From(RegistrosPorPagina),
Url = url & offset & "&" & limit,
Json = obterResultadoJson(Url),
resultados = Json[#"results"]
in
resultados,
totalRegistros = List.Max({ RegistrosPorPagina, obterTotalRegistros() }),
numeroDePaginas = Number.RoundUp(totalRegistros / RegistrosPorPagina),
indicesDasPaginas = { 0 .. numeroDePaginas - 1 },
paginas = List.Transform(indicesDasPaginas, each obterRegistrosDaPagina(_)),
paginasUnidas = List.Union(paginas),
tabela = Table.FromList(paginasUnidas, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Column1 Expandido" = Table.ExpandRecordColumn(tabela, "Column1", {"id", "contractId", "customerId", "installmentsNumber", "billId", "rate", "value", "baseValue", "type","installments"}, {"Column1.id", "Column1.contractId", "Column1.customerId", "Column1.installmentsNumber", "Column1.billId", "Column1.rate", "Column1.value", "Column1.baseValue", "Column1.type", "colum.installments"}),
#"colum.installments Expandido" = Table.ExpandListColumn(#"Column1 Expandido", "colum.installments"),
#"colum.installments Expandido1" = Table.ExpandRecordColumn(#"colum.installments Expandido", "colum.installments", {"id", "dueDate", "amount", "status"}, {"colum.installments.id", "colum.installments.dueDate", "colum.installments.amount", "colum.installments.status"}),
#"Colunas Renomeadas" = Table.RenameColumns(#"colum.installments Expandido1",{{"Column1.id", "Código da comissão"}, {"Column1.contractId", "Código do contrato de vendas da comissão"}, {"Column1.customerId", "Código do cliente do contrato de vendas da comissão"}, {"Column1.installmentsNumber", "Número de parcelas da comissão"}, {"Column1.billId", "Número do título da comissão"}, {"Column1.rate", "Percentual de comissão"}, {"Column1.value", "Valor da comissão"}, {"Column1.baseValue", "Valor base da comissão"}, {"Column1.type", "Tipo de comissão"}, {"colum.installments.id", "Número da parcela"}, {"colum.installments.dueDate", "Data de vencimento da parcela"}, {"colum.installments.amount", "Valor da parcela"}, {"colum.installments.status", "Situação atual da parcela"}}),
#"Personalização Adicionada" = Table.AddColumn(#"Colunas Renomeadas", "%", each [Percentual de comissão] * 100),
#"Coluna Personalizada Adicionada" = Table.AddColumn(#"Personalização Adicionada", "% percentagem comissão", each let split = Splitter.SplitTextByDelimiter(",", QuoteStyle.None)(Text.From([#"%"], "pt-BR")) in Text.Combine({split{0}?, "%"}), type text),
#"Texto em Maiúscula" = Table.TransformColumns(#"Coluna Personalizada Adicionada",{{"Situação atual da parcela", Text.Upper, type text}})
in
#"Texto em Maiúscula"
Hi @Sandro_Tec ,
Please refer to these two similar threads.
Solved: This dataset includes a dynamic data source: how t...
Solved: Help: Dataset includes a dynamic data source error
Best Regards,
Gao
Community Support Team
If there is any post helps, then please consider Accept it as the solution to help the other members find it more quickly. If I misunderstand your needs or you still have problems on it, please feel free to let us know. Thanks a lot!
How to get your questions answered quickly -- How to provide sample data
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.