This commit is contained in:
2026-05-06 16:01:10 -03:00
parent f31f809ce7
commit 4a31410351
26 changed files with 22041 additions and 2083 deletions
+14 -13
View File
@@ -1,7 +1,6 @@
function createDataset(fields, constraints, sortFields) {
var dataset = DatasetBuilder.newDataset();
// Definir colunas que queremos no retorno
dataset.addColumn("C1_FILIAL");
dataset.addColumn("C1_NUM");
dataset.addColumn("C1_ITEM");
@@ -15,6 +14,7 @@ function createDataset(fields, constraints, sortFields) {
dataset.addColumn("C1_CONTA");
dataset.addColumn("C1_SOLICIT");
dataset.addColumn("C1_EMISSAO");
dataset.addColumn("C1_APROV");
dataset.addColumn("C1_COTACAO");
dataset.addColumn("C1_PEDIDO");
dataset.addColumn("C1_ITEMPED");
@@ -23,8 +23,11 @@ function createDataset(fields, constraints, sortFields) {
dataset.addColumn("hora_consulta");
dataset.addColumn("sucesso");
function emptyRow() {
return ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "false"];
}
try {
// 🔎 Captura o número da SC passado como constraint
var numeroSC = null;
if (constraints != null) {
for (var i = 0; i < constraints.length; i++) {
@@ -35,17 +38,16 @@ function createDataset(fields, constraints, sortFields) {
}
if (!numeroSC) {
dataset.addRow(["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "Erro: número SC não informado"]);
dataset.addRow(emptyRow());
return dataset;
}
// ⚙️ Monta requisição para o Protheus
var data = {
companyId: "1",
serviceCode: "Postprod", // ajuste conforme seu serviço cadastrado
endpoint: "/rest/uf_mata110/" + numeroSC,
serviceCode: "Postprod",
endpoint: "/UF_MATA110/" + numeroSC,
method: "get",
timeoutService: "10000",
timeoutService: "60000",
headers: {
"Content-Type": "application/json"
}
@@ -58,9 +60,7 @@ function createDataset(fields, constraints, sortFields) {
var result = JSON.parse(response.getResult());
if (result.sucesso && result.solicitacoes && result.solicitacoes.length > 0) {
var sc = result.solicitacoes[0]; // pega a primeira solicitação retornada
// ⚠️ Trata a cotação: ignora valores default
var sc = result.solicitacoes[0];
var cotacao = sc.C1_COTACAO || "";
if (cotacao == "000000" || cotacao == "000001") {
cotacao = "";
@@ -80,6 +80,7 @@ function createDataset(fields, constraints, sortFields) {
sc.C1_CONTA || "",
sc.C1_SOLICIT || "",
sc.C1_EMISSAO || "",
sc.C1_APROV || "",
cotacao,
sc.C1_PEDIDO || "",
sc.C1_ITEMPED || "",
@@ -89,13 +90,13 @@ function createDataset(fields, constraints, sortFields) {
"true"
]);
} else {
dataset.addRow(["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "false"]);
dataset.addRow(emptyRow());
}
} else {
dataset.addRow(["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "false"]);
dataset.addRow(emptyRow());
}
} catch (e) {
dataset.addRow(["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "Erro: " + e.message]);
dataset.addRow(emptyRow());
}
return dataset;