Versão atual:

Zoom com base em outro zoom

Tenho um zoom listando as empresas. De acordo com as empresas, preciso que sejam listadas as filiais. São datasets diferentes.

Já olhei na documentação, mas não consegui colocar para funcionar. Alguém poderia ajudar?

   <div class="row">
                           <div class="form-group col-sm-12">
                              <label for="empresa" class="col-sm-4 control-label">Empresa:</label>
                              <div class="col-sm-8">
                                 <input
                                    type="zoom" 
                                    id = "empresa"
                                    name="empresa"
                                    data-zoom="{
                                       'displayKey':'CODEMP',
                                       'datasetId':'protheus_consulta_empresas',
                                       'fields':[
                                          {
                                             'field':'CODEMP',
                                             'label':'Código'
                                          },{
                                             'field':'EMP',
                                             'label':'Empresa',
                                             'standard':'true'
                                          }
                                       ]
                                    }"  
                                 />
                              </div>
                           </div>
                        </div>

                        <!-- Deve ser listada de acordo com a empresa selecionada -->
                        <div class="row">
                           <div class="form-group col-sm-12">
                              <label for="filial" class="col-sm-4 control-label">Filial:</label>
                              <div class="col-sm-8">
                                 <input
                                    type="zoom" 
                                    id = "filial"
                                    name="filial"
                                    data-zoom="{
                                       'displayKey':'CODFIL',
                                       'datasetId':'protheus_consulta_filial',
                                       'fields':[
                                          {
                                             'field':'CODFIL',
                                             'label':'Código'
                                          },{
                                             'field':'FIL',
                                             'label':'Filial',
                                             'standard':'true'
                                          },{
                                             'field':'CNPJ',
                                             'label':'CNPJ'
                                          }
                                       ]
                                    }"  
                                 />
                              </div>
                           </div>
                        </div>
function setSelectedZoomItem(selectedItem) {
    var FIELD = selectedItem.inputId;
    console.log('FIELD = ' + FIELD);

    if (FIELD == "empresa") {
        document.getElementById('empresa').value = selectedItem['CODEMP'];

        var codigo = $("#empresa").val();
        console.log('codigo = ' + codigo);

        var c1 = DatasetFactory.createConstraint("empresa", codigo, codigo, ConstraintType.MUST);
        var constraints = new Array(c1);

        // nome; campo a ser filtrado, valor que irá filtrar.
        reloadZoomFilterValues("filial", "CODEMP," + selectedItem['CODEMP']);
    }
}

Versão (1):

Ver a versão formatada

Zoom com base em outro zoom

Comentário

new question