Configurando o Excel

Nesse artigo, descubra como fazer a configuração do Excel para integrar com as API's do Omie

Hugo Alves avatar
Escrito por Hugo Alves
Atualizado há mais de uma semana

Olha que legal, você pode utilizar o aplicativo Excel Desktop da Microsoft para consumir nossas API's!

Para começar, abra o Excel e crie uma pasta de trabalho em branco:

Acesse a aba "Dados" e clique em "Obter Dados", em seguida inicie o "Editor do Power Query":

Com o “Editor do Power Query” aberto, acesse a opção “Gerenciar parâmetros” / “Novo parâmetro”:

Crie os parâmetros “path” e “limit”:

📌 O "Valor Atual" do path, será a URL da requisição que deseja testar. No nosso caso, vamos usar a de clientes:

Com esses dois parâmetros definidos, clique em "Inserir Dados":

Crie uma Tabela com o nome “pagination” contendo apenas uma coluna chamada “pages”:

Inclua quantas linhas achar necessário, considerando que cada uma delas será correspondente ao número da página que você deseja retornar. Por fim, clique em "Ok"

Com a tabela criada, clique uma “Consulta Nula” chamada Consulta1, através da opção “Nova Fonte” / “Outras Fontes”: 

Após criar a consulta, para definir o código dela use a opção “Editor Avançado”:

Insira o código abaixo e clique sobre o botão “Concluído”

Código da query

let
body = "{
""call"":""ListarClientes"",
""app_key"":""XXXXXXXXXXX"",
""app_secret"":""XXXXXXXXXXXXXXXXXX"",
""param"":[
{
""pagina"": 1,
""registros_por_pagina"": 20,
""apenas_importado_api"": ""N""
}
]
}",
Data=Json.Document(Web.Contents(
"https://app.omie.com.br/api/v1/geral/clientes/", [
Headers=[#"Content-Type"="application/json"],
Content=Text.ToBinary(body)
])),
#"Convertido para Tabela" = Record.ToTable(Data),
#"Linhas Filtradas" = Table.SelectRows(#"Convertido para Tabela", each ([Name] = "clientes_cadastro")),
#"Colunas Removidas" = Table.RemoveColumns(#"Linhas Filtradas",{"Name"}),
#"Value Expandido" = Table.ExpandListColumn(#"Colunas Removidas", "Value"),
#"Value Expandido1" = Table.ExpandRecordColumn(#"Value Expandido", "Value", {"bairro", "bloquear_faturamento", "cep", "cidade", "cidade_ibge", "cnpj_cpf", "codigo_cliente_integracao", "codigo_cliente_omie", "codigo_pais", "complemento", "dadosBancarios", "email", "endereco", "enderecoEntrega", "endereco_numero", "estado", "exterior", "inativo", "info", "inscricao_estadual", "inscricao_municipal", "nome_fantasia", "optante_simples_nacional", "pessoa_fisica", "produtor_rural", "razao_social", "recomendacoes", "tags", "bloquear_exclusao", "telefone1_ddd", "telefone1_numero"}, {"bairro", "bloquear_faturamento", "cep", "cidade", "cidade_ibge", "cnpj_cpf", "codigo_cliente_integracao", "codigo_cliente_omie", "codigo_pais", "complemento", "dadosBancarios", "email", "endereco", "enderecoEntrega", "endereco_numero", "estado", "exterior", "inativo", "info", "inscricao_estadual", "inscricao_municipal", "nome_fantasia", "optante_simples_nacional", "pessoa_fisica", "produtor_rural", "razao_social", "recomendacoes", "tags", "bloquear_exclusao", "telefone1_ddd", "telefone1_numero"}),
#"dadosBancarios Expandido" = Table.ExpandRecordColumn(#"Value Expandido1", "dadosBancarios", {"agencia", "codigo_banco", "conta_corrente", "doc_titular", "nome_titular", "transf_padrao"}, {"agencia", "codigo_banco", "conta_corrente", "doc_titular", "nome_titular", "transf_padrao"}),
#"info Expandido" = Table.ExpandRecordColumn(#"dadosBancarios Expandido", "info", {"cImpAPI", "dAlt", "dInc", "hAlt", "hInc", "uAlt", "uInc"}, {"cImpAPI", "dAlt", "dInc", "hAlt", "hInc", "uAlt", "uInc"}),
#"recomendacoes Expandido" = Table.ExpandRecordColumn(#"info Expandido", "recomendacoes", {"codigo_transportadora", "codigo_vendedor", "email_fatura", "gerar_boletos"}, {"codigo_transportadora", "codigo_vendedor", "email_fatura", "gerar_boletos"}),
#"tags Expandido" = Table.ExpandListColumn(#"recomendacoes Expandido", "tags"),
#"tags Expandido1" = Table.ExpandRecordColumn(#"tags Expandido", "tags", {"tag"}, {"tag"})
in #"tags Expandido1"

⚠️ Importante

  • Esse é apenas um exemplo de código, pois não prestamos suporte às funcionalidades do Excel. O tratamento dos dados obtidos deve ser feito pelo desenvolvedor responsável pela integração

Para testar, selecione a “Consulta1”, informe o número da página que deseja retornar da API e clique sobre o botão “Invocar”:

Após o processamento teremos o retorno da consulta:

Feche o “Editor do Power Query” mantendo as alterações e visualize a nova planilha no Excel:


Visualizando todas as páginas

Para visualizar o resultado de todas as páginas definidas na tabela “pagination”, use a opção “Invocar função personalizada” do “Editor do Power Query”:

Defina a parametrização como mostra a imagem abaixo e clique sobre o botão “OK”:

Clicando sobre cada uma das linhas abaixo você visualizará o resultado:

Clique sobre o botão “Fechar e carregar” para visualizar o resultado no Excel


📌 Confira alguns exemplos de querys do Excel:

Integração, Chave de Acesso, Credenciais, usuário e senha API, App Key, App Secret
Respondeu à sua pergunta?