Bom dia, tudo bem?
Criei um serviço REST que efetua a integração com o Protheus para consultar (GET) a relação de todas as filiais cadastradas no sistema. O mesmo esta retornando neste formato:
{“items”:[{“CDFILDESC”:“Empresa 1 Ltda.”,“CDFILIAL”:“010001”},{“CDFILDESC”:“Empresa 2 Ltda.”,“CDFILIAL”:“090001”}]}
Entretanto não estou conseguindo criar um Dataset para armazenar tais informações e posteriormente ser consumida por um campo Zoom do formulário. Conseguem me ajudar?
Criei neste formato o Dataset:
function createDataset(fields, constraints, sortFields) {
var dataset = DatasetBuilder.newDataset();
dataset.addColumn(“CDFILIAL”);
dataset.addColumn(“CDFILDESC”);
try {
// 1. Instancia o serviço cadastrado no Fluig
var service = ServiceManager.getService("srv_rest_protheus");
var serviceHelper = service.getBean();
var clientService = serviceHelper.instantiate('com.totvs.technology.ecm.dm.ws.ServicoREST');
// 2. Define o endpoint de filiais
var endpoint = "/api/rh/v1/monitor-ng/filiais";
// 3. Executa o GET
var response = clientService.execute(endpoint, 'GET');
// 4. Trata a resposta JSON
var json = JSON.parse(response);
var filiais = json.filiais;
for (var i = 0; i < filiais.length; i++) {
dataset.addRow([filiais[i].COD, filiais[i].DESC]);
}
} catch (e) {
dataset.addRow(["Erro", e.message]);
}
return dataset;
}
Erro sendo retornado:
Erro com.totvs.technology.foundation.dataservice.exception.ServiceProviderException: