Como utilizar reloadZoomFilterValues no DataSet WsConsultaSQL

Uso esse dataset aqui para buscar na minha consulta lá no RM os colaboradores com mais de 365 dias de casa.

DATASET utilizado

``` function createDataset(fields, constraints, sortFields) {

var NOME_SERVICO = "WsConsultaSQL"; // Nome do serviço criado no Fluig Studio var CAMINHO_SERVICO = "com.totvs.WsConsultaSQL"; // Caminho do serviço var dataset = DatasetBuilder.newDataset();

try { // Obtem a instancia do serviço var servico = ServiceManager.getServiceInstance(NOME_SERVICO); // Inicializa o serviço var instancia = servico.instantiate(CAMINHO_SERVICO); // Obtem o WebService para consumo var ws = instancia.getRMIwsConsultaSQL(); var serviceHelper = servico.getBean(); // Autenticação no serviço var authService = serviceHelper.getBasicAuthenticatedClient(ws, "com.totvs.IwsConsultaSQL", 'mestre', 'senhamestre');

var parametros ="CODFILIAL=1";

var result = authService.realizarConsultaSQL("FLUIG.0003", parseInt("1") , "G", parametros); log.info("!!! INFO !!!"); log.info(result); if ((result != null) && (result.indexOf("===") != -1)) { var msgErro = result.substring(0, result.indexOf("===")); log.error("Erro: " + msgErro); throw "Erro: " + msgErro; }

// Insere o resultado em um objeto XML para melhor manipulação dos dados var xmlResultados = new XML(result); log.info(xmlResultados); // Cria as colunas que serão retornadas pela consulta SQL e que serão utilizadas dataset.addColumn("CODFILIAL"); dataset.addColumn("FUNCIONARIO"); dataset.addColumn("FUNCAO"); dataset.addColumn("CARGO");

// Adiciona os dados no dataset for each(row in xmlResultados.Resultado) { dataset.addRow(new Array(row.CODFILIAL.toString(), row.FUNCIONARIO.toString(), row.FUNCAO.toString(), row.CARGO.toString() )); }

} catch (e) { if (e == null) e = "Erro conexão Totvs"; var mensagemErro = "Erro na comunicação com o app (linha: " + e.lineNumber + "): " + e; log.error(mensagemErro); log.info(mensagemErro); dataset.addColumn("ERROR"); dataset.addColumn("MESSAGE_ERROR"); dataset.addRow(new Array(-1, mensagemErro)); }

return dataset; } ```

// Consulta SQL

SELECT A.CODFILIAL, A.NOME AS FUNCIONARIO, B.NOME AS FUNCAO, C.NOME AS CARGO
FROM PFUNC A, PFUNCAO B, PCARGO C
WHERE A.CODFUNCAO = B.CODIGO
AND B.CARGO = C.CODIGO
AND DATEDIFF(DAY, A.DATAADMISSAO, GETDATE()) > 365
AND A.CODSITUACAO <> ('D')
AND A.CODFILIAL = :CODFILIAL

Eu queria que assim que o cara escolher a filial no Formulário ele retornasse somente os funcionários daquela filial, vou postar aqui meu formulário com o JS, tem como alguém me ajudar e informar o que está faltando ou no que estou errando?

<div class="form-group row"> <div class="col-md-2"> <label for="unidade">Unidade</label> <select class="form-control" name="unidade" id="unidade"> <option value="">Escolha a Unidade</option> <option value="1">Unidade 1</option> <option value="2">Unidade 2</option> <option value="14">Unidade 14</option> <option value="15">Unidade 15</option> <option value="16">Unidade 16</option> </select> </div> <div class="col-md-5"> <label for="avaliado">Avaliado</label> <input type="zoom" id = "avaliado" name="avaliado" data-zoom="{ 'displayKey':'FUNCIONARIO', 'datasetId':'ds_func_acima_365', 'maximumSelectionLength':'1', 'placeholder':'Escolha o Avaliado', 'fields':[ { 'field':'CODFILIAL', 'label':'FILIAL' },{ 'field':'FUNCIONARIO', 'label':'FUNCIONARIO', 'standard':'TRUE' },{ 'field':'FUNCAO', 'label':'FUNCAO' },{ 'field':'CARGO', 'label':'CARGO' } ] }" /> </div> </div>

JavaScript

$(document).ready(function() {
    $('#unidade').change(function() {
        var filial = $('#unidade').val();
        alert(filial);
        reloadZoomFilterValues(avaliado, "CODFILIAL," + filial);
    });    
});

O que estou errando que não consigo mudar o valor do CODFILIAL no dataset e mudar os colaboradores que são exibidos?

compartilhar
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do fluig Forum!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags reloadzoomfiltervalues ou faça a sua própria pergunta.