EvaldoMaciel

Dataset IBGE - Estados

Nov 23rd, 2021
1,326
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function defineStructure() {
  2.     addColumn("cod", DatasetFieldType.STRING);
  3.     addColumn("sigla");
  4.     addColumn("nome");
  5.     addColumn("regiao");
  6.     setKey(["cod", "sigla"]);
  7.     addIndex(["cod"]);
  8.     addIndex(["cod", "sigla", "nome"]);
  9. }
  10.  
  11. function createDataset(fields, constraints, sortFields) {
  12.     var dataset = DatasetBuilder.newDataset();
  13.     dataset.addColumn("cod");
  14.     dataset.addColumn("sigla");
  15.     dataset.addColumn("nome");
  16.     dataset.addColumn("regiao");
  17.     var estadosRetorno = getDados();
  18.     for (var index = 0; index < estadosRetorno.length; index++) {
  19.         dataset.addRow(estadosRetorno[index]);             
  20.     }
  21.     return dataset;
  22. }
  23.  
  24. function onSync(lastSyncDate) {
  25.     var dataset = DatasetBuilder.newDataset();
  26.     var estadosRetorno = getDados();
  27.     for (var index = 0; index < estadosRetorno.length; index++) {
  28.         dataset.addOrUpdateRow(estadosRetorno[index]);             
  29.     }
  30.     return dataset;
  31. }
  32.  
  33. function getDados() {
  34.     var clientService = fluigAPI.getAuthorizeClientService();
  35.     var data = {
  36.         companyId: String(getValue("WKCompany")),
  37.         serviceCode: 'IBGE',
  38.         endpoint: '/api/v1/localidades/estados',
  39.         method: 'get',
  40.     }
  41.     var vo = clientService.invoke(JSON.stringify(data));
  42.     var objeto = JSON.parse(vo.getResult());
  43.     var estados = [];
  44.     if (vo.getHttpStatusResult() == 200) {
  45.         if (vo.getResult() == null || vo.getResult().isEmpty()) {
  46.             estados.push([
  47.                 "Retorno vazio ou com erro",
  48.                 "Retorno vazio ou com erro"
  49.             ]);
  50.             return estados;
  51.         } else {
  52.             for (var index = 0; index < objeto.length; index++) {
  53.                 estados.push([
  54.                     String(objeto[index].id),
  55.                     objeto[index].sigla,
  56.                     objeto[index].nome,
  57.                     objeto[index].regiao.nome
  58.                 ]);
  59.             }
  60.             return estados;
  61.         }
  62.     }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment