function createDataset(fields, constraints, sortFields) { var dataset = DatasetBuilder.newDataset(); dataset.addColumn("json"); try { // Número do pedido recebido como constraint var numPed = ""; if (constraints && constraints.length > 0) { for (var i = 0; i < constraints.length; i++) { if (constraints[i].fieldName == "numeroPed") { numPed = constraints[i].initialValue; } } } if (!numPed) { dataset.addRow([JSON.stringify({ sucesso: false, mensagem: "Número do pedido não informado" })]); return dataset; } // Monta chamada para o Protheus var clientService = fluigAPI.getAuthorizeClientService(); var data = { companyId: "1", serviceCode: "Postprod", // nome do serviço cadastrado no Fluig endpoint: "/rest/uf_mata121/" + numPed, method: "get", timeoutService: "100", headers: { "Content-Type": "application/json" } }; var response = clientService.invoke(JSON.stringify(data)); if (!response || !response.getResult()) { throw "Sem resposta da API Protheus"; } var result = JSON.parse(response.getResult()); dataset.addRow([JSON.stringify(result)]); } catch (e) { log.error("❌ Erro dsConsultaPedido: " + e); dataset.addRow([JSON.stringify({ sucesso: false, mensagem: "Erro ao consultar pedido: " + e })]); } return dataset; }