97 lines
3.3 KiB
JavaScript
97 lines
3.3 KiB
JavaScript
function defineStructure() {
|
|
dataset.addColumn("codigo");
|
|
dataset.addColumn("descricao");
|
|
dataset.addColumn("CNPJ");
|
|
dataset.addColumn("ENDERECO");
|
|
dataset.addColumn("COMPLEMENTO");
|
|
dataset.addColumn("BAIRRO");
|
|
dataset.addColumn("CIDADE");
|
|
dataset.addColumn("ESTADO");
|
|
dataset.addColumn("CEP");
|
|
dataset.addColumn("CODIGO MUNICIPIO");
|
|
dataset.addColumn("BPCS");
|
|
dataset.addColumn("LOJA");
|
|
|
|
}
|
|
|
|
function onSync(lastSyncDate) {}
|
|
|
|
function createDataset(fields, constraints, sortFields) {
|
|
var dataset = DatasetBuilder.newDataset();
|
|
var dataSource = "/jdbc/ProtheusP12"; // Nome da conexão cadastrada no Fluig
|
|
var ic = new javax.naming.InitialContext();
|
|
var ds = ic.lookup(dataSource);
|
|
var conn = ds.getConnection();
|
|
var stmt = null;
|
|
var rs = null;
|
|
|
|
try {
|
|
log.info("Iniciando execução do dataset...");
|
|
|
|
var sql = "SELECT M0_CODFIL, M0_FILIAL, M0_CGC, M0_ENDENT, M0_COMPENT, M0_BAIRENT, M0_CIDENT, M0_ESTENT, M0_CEPENT, M0_CODMUN, M0_TEL_PO, * from SYS_COMPANY WHERE M0_CODFIL LIKE '0101%' OR M0_CODFIL LIKE'03%' AND D_E_L_E_T_= ''";
|
|
log.info("Query SQL: " + sql);
|
|
|
|
stmt = conn.prepareStatement(sql);
|
|
rs = stmt.executeQuery();
|
|
|
|
dataset.addColumn("CODIGO");
|
|
dataset.addColumn("DESCRICAO");
|
|
dataset.addColumn("CNPJ");
|
|
dataset.addColumn("ENDERECO");
|
|
dataset.addColumn("COMPLEMENTO");
|
|
dataset.addColumn("BAIRRO");
|
|
dataset.addColumn("CIDADE");
|
|
dataset.addColumn("ESTADO");
|
|
dataset.addColumn("CEP");
|
|
dataset.addColumn("CODIGO MUNICIPIO");
|
|
dataset.addColumn("BPCS");
|
|
dataset.addColumn("LOJA");
|
|
|
|
|
|
|
|
var encontrados = {}; // Usando um objeto para evitar duplicação
|
|
|
|
while (rs.next()) {
|
|
var codigo = rs.getString("M0_CODFIL");
|
|
var descricao = rs.getString("M0_FILIAL");
|
|
var cnpj = rs.getString("M0_CGC");
|
|
var endereco = rs.getString("M0_ENDENT");
|
|
var complemento = rs.getString("M0_COMPENT");
|
|
var bairro = rs.getString("M0_BAIRENT");
|
|
var cidade = rs.getString("M0_CIDENT");
|
|
var estado = rs.getString("M0_ESTENT");
|
|
var cep = rs.getString("M0_CEPENT");
|
|
var ibge = rs.getString("M0_CODMUN");
|
|
var bpcs = rs.getString("M0_TEL_PO");
|
|
// aqui monta a coluna nova
|
|
var loja = (bpcs ? bpcs.trim() : "") + "-" + (descricao ? descricao.trim() : "");
|
|
|
|
|
|
if (!encontrados[codigo]) { // Verifica se já foi adicionado
|
|
encontrados[codigo] = true; // Marca como processado
|
|
log.info("Registro encontrado: " + codigo + " - " + descricao);
|
|
dataset.addRow([codigo, descricao,cnpj,endereco,complemento,bairro,cidade,estado,cep,ibge, bpcs, loja]);
|
|
}
|
|
}
|
|
|
|
if (Object.keys(encontrados).length === 0) {
|
|
log.info("Nenhum registro encontrado para a consulta.");
|
|
}
|
|
|
|
} catch (e) {
|
|
log.error("Erro ao executar dataset: " + e.message);
|
|
} finally {
|
|
try {
|
|
if (rs) rs.close();
|
|
if (stmt) stmt.close();
|
|
if (conn) conn.close();
|
|
} catch (e) {
|
|
log.error("Erro ao fechar recursos: " + e.message);
|
|
}
|
|
}
|
|
|
|
return dataset;
|
|
}
|
|
|
|
function onMobileSync(user) {}
|