Integração Com ERP Bling

228 views
Skip to first unread message

Estilo Ao Cubo

unread,
Apr 5, 2022, 12:18:19 PM4/5/22
to Google Apps Script Community
Estou tentando criar um script para receber dados do ERP via callback. Quando o pedido mudar de status ele enviará o callback em formato JSON para a URL do script google porem não tive sucesso, alguém consegue me dizer o que fiz de errado? Vou deixar abaixo o script que fiz e um exemplo de como será o arquivo que será enviado do ERP para a URL do script

//Meu script->

//this is a function that fires when the webapp receives a GET request
function doGet(e) {
  return HtmlService.createHtmlOutput("request received");
}

//this is a function that fires when the webapp receives a POST request
function doPost(e) {
  var params = JSON.stringify(e.postData.contents);
  params = JSON.parse(params);
  var myData = JSON.parse(e.postData.contents);
  var data = myData["data"]["pedido"]["data"];
  var numero = myData["data"]["pedido"]["numero"];
  var numeroPedidoLoja = myData["data"]["pedido"]["numeroPedidoLoja"];
  var situacao = myData["data"]["pedido"]["situacao"];
  var quantidade = myData["data"]["pedido"]["itens"]["item"]["quantidade"];
  var codigo = myData["data"]["pedido"]["itens"]["item"]["codigo"];
  var descricao = myData["data"]["pedido"]["itens"]["item"]["descricao"];
  var totalvenda = myData["data"]["pedido"]["totalvenda"];
  var loja = myData["data"]["pedido"]["loja"];
  var tipoIntegracao = myData["data"]["pedido"]["tipoIntegracao"];
  var uf = myData["data"]["pedido"]["cliente"]["uf"];
  var precocusto = myData["data"]["pedido"]["itens"]["item"]["precocusto"];
  var sheet = SpreadsheetApp.getActiveSheet();
  var lastRow = Math.max(sheet.getLastRow(),1);
  sheet.insertRowAfter(lastRow);
  sheet.getRange(lastRow + 1, 1).setValue(data);
  sheet.getRange(lastRow + 1, 2).setValue(numero);
  sheet.getRange(lastRow + 1, 3).setValue(numeroPedidoLoja);
  sheet.getRange(lastRow + 1, 4).setValue(situacao);
  sheet.getRange(lastRow + 1, 5).setValue(quantidade);
  sheet.getRange(lastRow + 1, 6).setValue(codigo);
  sheet.getRange(lastRow + 1, 7).setValue(descricao);
  sheet.getRange(lastRow + 1, 8).setValue(totalvenda);
  sheet.getRange(lastRow + 1, 9).setValue(loja);
  sheet.getRange(lastRow + 1, 10).setValue(tipoIntegracao);
  sheet.getRange(lastRow + 1, 11).setValue(uf);
  sheet.getRange(lastRow + 1, 12).setValue(precocusto);
  sheet.getRange(lastRow + 1, 13).setValue(params);
  SpreadsheetApp.flush();
  return HtmlService.createHtmlOutput("post request received");




ex do arquivo que será enviado do ERP via POST:

{ "data":{ "pedidos":[ { "pedido":{ "desconto":"15,00", "observacoes":"Testando o campo observações do pedido", "observacaointerna":"Testando o campo observações internas do pedido", "data":"2017-07-28", "numero":"1", "numeroPedidoLoja":"100000001", "vendedor":"João da Silva", "valorfrete":"22.50", "totalprodutos":"139.98", "totalvenda":"147.48", "situacao":"Em Aberto", "loja": "123456789", "dataPrevista":"2017-07-28", "tipoIntegracao":"Magento", "cliente":{ "nome":"Organisys Software", "cnpj":"00.000.000/0000-1", "ie":"0000000000", "rg":"162788484", "endereco":"Rua Visconde de São Gabriel", "numero":"000", "complemento":"Sala 000", "cidade":"Bento Gonçalves", "bairro":"Cidade Alta", "cep":"95.700-000", "uf":"RS", "email":"testeorganisyscombr", "celular":"", "fone":"(54) 2222-22222" }, "itens":[ { "item":{ "codigo":1234, "descricao":"Mochila", "quantidade":"2.0000", "valorunidade":"69.990000000", "precocusto":null, "descontoItem":"0.00", "un":"Pç", "pesoBruto": "0.520", "largura": "20", "altura": "18", "profundidade": "15", "unidadeMedida": "cm", "descricaoDetalhada": "Ecobag esportiva" } } ], "parcelas":[ { "parcela":{ "idLancamento": "123456", "valor":"73.74", "dataVencimento":"2017-07-28 00:00:00", "obs":"Teste obs 1", "destino": "3", "forma_pagamento":{ "id":"1", "descricao":"Dinheiro", "codigoFiscal":"1" } } }, { "parcela":{ "idLancamento": "123457", "valor":"73.74", "dataVencimento":"2017-08-28 00:00:00", "obs":"Teste obs 2", "destino": "3", "forma_pagamento":{ "id":"1", "descricao":"Dinheiro", "codigoFiscal":"1" } } } ], "nota":{ "serie":"1", "numero":"012346", "dataEmissao":"2017-08-28 00:00:00", "situacao":"1", "chaveAcesso":"43140401056417000139550010000123461496923524", "valorNota": "147.48" }, "transporte":{ "transportadora":"Transportadora", "cnpj":"00.000.000/0000-1", "tipo_frete":"R", "volumes":[ { "volume":{
"id": "6423805580", "idServico":"1231293", "servico":"SEDEX 10",
"codigoServico":"03158", "codigoRastreamento":"SX052413651BR", "dataSaida":"2017-07-28", "prazoEntregaPrevisto":"1", "valorFretePrevisto":"11.25", "valorDeclarado": "0.00", "remessa":{ "numero":"12345AAA", "dataCriacao":"2017-10-17" }, "dimensoes":{ "peso":"1.553", "altura":"20", "largura":"15", "comprimento":"20", "diametro":"0" }, "urlRastreamento":"https://www.exemplo.com.br/rastreio?q=EC272330554BR" } }, { "volume":{
"id": "6423805635", "idServico":"1231293", "servico":"SEDEX 10",
"codigoServico":"03158", "codigoRastreamento":"SX052413651BR", "dataSaida":"2017-07-28", "prazoEntregaPrevisto":"1", "valorFretePrevisto":"11.25", "remessa":null, "dimensoes":{ "peso":"1.553", "altura":"20", "largura":"15", "comprimento":"20", "diametro":"0" } } } ], "enderecoEntrega":{ "nome":"Organisys Software Entrega", "endereco":"Rua Assis Brasil", "numero":"222", "complemento":"", "cidade":"Bento Gonçalves", "bairro":"Centro", "cep":"95.700-000", "uf":"RS" } } } } ] } }

vou deixar o link da central de ajuda do ERP também:

desde já obrigado a todos!

João Batista da Silva

unread,
Apr 5, 2022, 1:06:56 PM4/5/22
to google-apps-sc...@googlegroups.com
Boa tarde.
Recebeu algum erro específico no Logger? ficaria mais fácil de reconhecer exatamente onde está o problema

Livre de vírus. www.avast.com.

--
You received this message because you are subscribed to the Google Groups "Google Apps Script Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-apps-script-c...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-apps-script-community/da8ef8d8-082e-4fb4-9a95-cb93d825c445n%40googlegroups.com.

Emerson Maia

unread,
Apr 6, 2022, 6:58:13 AM4/6/22
to google-apps-sc...@googlegroups.com
Bom dia, você quer ficar ouvindo uma api, e assim que entrar algo novo nessa api  você quer atualizar  na sua planilha sheets, é isso?

On Tue, Apr 5, 2022 at 1:18 PM Estilo Ao Cubo <adolfo.ferreir...@gmail.com> wrote:
--

Lidio Pereira

unread,
Jul 30, 2022, 5:03:37 AM7/30/22
to Google Apps Script Community
Sim, eu queria ter um espelho no google sheets, e toda vez que uma linha fosse adicionada ele seria incluido no bling 
Reply all
Reply to author
Forward
0 new messages