78 lines
2.4 KiB
JavaScript
78 lines
2.4 KiB
JavaScript
function createDataset(fields, constraints, sortFields) {
|
|
var dataset = DatasetBuilder.newDataset();
|
|
|
|
dataset.addColumn("codigo");
|
|
dataset.addColumn("descricao");
|
|
dataset.addColumn("tipo");
|
|
dataset.addColumn("medida");
|
|
dataset.addColumn("armazem");
|
|
dataset.addColumn("icms");
|
|
dataset.addColumn("ipi");
|
|
dataset.addColumn("contrato");
|
|
dataset.addColumn("localizacao");
|
|
dataset.addColumn("rastro");
|
|
dataset.addColumn("bloqueado");
|
|
dataset.addColumn("ultimo_preco");
|
|
|
|
|
|
try {
|
|
var clientService = fluigAPI.getAuthorizeClientService();
|
|
var data = {
|
|
companyId: "1",
|
|
serviceCode: "Postprod",
|
|
endpoint: "/rest/uf_mata010/",
|
|
method: "get",
|
|
timeoutService: "60000",
|
|
params: {}
|
|
};
|
|
|
|
var vo = clientService.invoke(JSON.stringify(data));
|
|
var retorno = vo.getResult();
|
|
|
|
if (retorno) {
|
|
var objData = JSON.parse(retorno);
|
|
var itens = objData["produtos"];
|
|
|
|
if (itens && itens.length > 0) {
|
|
for (var i = 0; i < itens.length; i++) {
|
|
var item = itens[i];
|
|
|
|
// aplica filtro:
|
|
var codigo = (item["B1_COD"] || "").trim();
|
|
var bloqueado = (item["B1_MSBLQL"] || "").trim();
|
|
|
|
// só adiciona se o código NÃO tiver 5 dígitos OU se bloqueado != "1"
|
|
if (codigo.length !== 5 && bloqueado !== "1") {
|
|
dataset.addRow([
|
|
codigo,
|
|
item["B1_DESC"],
|
|
item["B1_TIPO"],
|
|
item["B1_UM"],
|
|
item["B1_LOCPAD"],
|
|
item["B1_PICM"],
|
|
item["B1_IPI"],
|
|
item["B1_CONTRAT"],
|
|
item["B1_LOCALIZ"],
|
|
item["B1_RASTRO"],
|
|
bloqueado,
|
|
item["B1_UPRC"]
|
|
|
|
]);
|
|
}
|
|
}
|
|
} else {
|
|
dataset.addRow(["Sem produtos retornados"]);
|
|
}
|
|
} else {
|
|
dataset.addRow(["Sem resposta da API"]);
|
|
}
|
|
|
|
} catch (e) {
|
|
dataset = DatasetBuilder.newDataset();
|
|
dataset.addColumn("ERRO");
|
|
dataset.addRow([e.message]);
|
|
}
|
|
|
|
return dataset;
|
|
}
|