Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    Sizing Window so that it does not grow offscreen

    Hi,

    I have a Window that contains a DynamicForm where the size of the dynamic form is unpredictable in advance.
    In order to have the Window size to the contents of the form I used autoSize: true.
    The problem is that when the form is big the Window height becomes bigger than the screen height. I would like in this case to limit the Window height to the screen height.
    I set overflow: "scroll" on the Window to have scrollbars appear.
    I tried to define maxHeight for the Window but it seems not to work.
    Then I tried to explicitly setHeight on the Window comparing the height of the window to the screen height.
    The problem is that getHeight() always returns 100 as the height, even if I run the code on a delayed function call, letting the Window to show fully.
    I'm using v11.0p_2016-08-18/PowerEdition Deployment (built 2016-08-18)

    The code for the Window is:

    var win = isc.Window.create({
    ID: cfg.grid.ID + "_w",
    items: [form],
    autoSize: true,
    autoCenter: true,
    overflow: "scroll",
    maxHeight: util.pageSize().h-100,
    dismissOnEscape: true,
    isModal: true,
    showModalMask: true,
    title: "Title - Filtro"
    });

    Any help is appreciated.

    Regards,
    Luca

    #2
    Setting overflow:"scroll" on the Window directly means that the scrollbars would appear at the level of the Window as a whole, specifically, the Window's header and rounded edges would be part of the scrollable content. Instead, you want the scrollbars inside the Window's "body" sub-element (which is an AutoChild). Note that overflow:"scroll" also means that scrollbars always appear, regardless of whether they are needed - you almost certainly want overflow:"auto" instead.

    The window.autoSize feature doesn't allow a maxHeight to be specified, but you don't need such a setting: the correct way to do this is to set a maxHeight/maxWidth and overflow:"auto" on your *form*, not on the Window. At that point the form will grow up to the maxHeight and introduce scrollbars only when the maxHeight is exceeded, and the Window will autoSize to the form's width and height.

    Finally, about the results of calling getHeight(), see the documentation for getHeight() vs getVisibleHeight() and getScrollHeight(). With an auto-sizing component (inclusive of Window and other components), calling getHeight() is just going to return the specified height, which acts as a minimum when auto-sizing. getVisibleHeight() will tell you how tall the component ended up after auto-sizing to the content.

    Comment


      #3
      Thank you very much. This was really useful. I'll try tomorrow.

      Comment


        #4
        I'm struggling with exactly the same issue and having trouble getting this to work with the instructions provided. For the Window,

        * I'm not calling setAutoSize(true),
        * I'm setting maxWidth & maxHeight to sensible values,
        * I've set Overflow.AUTO to the VLayout which I add as a root item to the Window.

        My problem is that the window always opens up as 100x100 (too small) with scrollbars. The window won't grow as the content overflows.

        Is there a simple example somewhere demonstrating how the window and the content should be set up for this to work ?

        Comment


          #5
          Hi,

          I tried to implement your suggestions but if I put overflow: 'auto' on the form it does not size properly and the Window is drawn at 100x100 size.
          Tried to put autoSize in form but did not work. The only way I get a correctly sized Window is by removing the overflow attribute from the form.
          Then I'am stuck with the problem of overflowing the screen size. I tried to resize the Window from code using getVisibleHeight() but it does not resize after calling setHeight().
          This is really a nightmare. I'm spending too much time on this issue.

          If you can provide me with some working example perhaps I can fix this.

          Thank you in advance.

          Comment


            #6
            You *do* want to autoSize the window - and you want to set the overflow, maxWidth and maxHeight on the *form*. Any containling layout will, by default, grow to fit the size of the form, and the window will autosize to those extents.

            Comment


              #7
              My code is as this:
              ...
              var cmp = {
              dataSource: cfg.grid.dataSource,
              autoDraw: false,
              numCols: 26,
              colWidths: [24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24],
              autoFocus: true,
              readOnlyDisplay: "readOnly",
              titleSuffix: "",
              requiredTitleSuffix: "",
              overflow: "auto",
              maxWidth: 700,
              maxHeight: 700,
              ...}

              var form = isc.DynamicForm.create(cmp);
              var win = isc.Window.create({
              ID: cfg.grid.ID + "_w",
              items: [form],
              autoSize: true,
              autoCenter: true,
              dismissOnEscape: true,
              isModal: true,
              showModalMask: true,
              title: "Iscritti - Filtro"
              });
              ...

              The result is a 100x100 window.
              What I'm doing wrong?

              Regards,
              ​Luca

              Comment


                #8
                You didn't mention if the form draws, or whether scrollbars are introduced...

                Make those snippets of code into a runnable sample that shows the problem and post it and we can take a look.

                Note that autoDraw:false on your form may be the problem - try reversing that, such that the form has known width and height when the parent window autoSizes.
                Last edited by Isomorphic; 21 Sep 2016, 04:58.

                Comment


                  #9
                  I can't upload the test file (complains it's not an image) so I will include the code inline here.
                  As you can see the window is 100x100, the form is rendered with scrollbars.
                  If I remove the overflow: 'auto' from the form the form displays correctly but the window stretches bigger than the screen size. maxHeight seems to be ignored.
                  I also tried to remove autoDraw: false but didn't change anything.

                  <HTML>
                  <HEAD>
                  <SCRIPT>
                  var isomorphicDir = "isomorphic/";
                  </SCRIPT>
                  <SCRIPT SRC="isomorphic/system/modules/ISC_Core.js"></SCRIPT>
                  <SCRIPT SRC="isomorphic/system/modules/ISC_Foundation.js"></SCRIPT>
                  <SCRIPT SRC="isomorphic/system/modules/ISC_Containers.js"></SCRIPT>
                  <SCRIPT SRC="isomorphic/system/modules/ISC_Grids.js"></SCRIPT>
                  <SCRIPT SRC="isomorphic/system/modules/ISC_Forms.js"></SCRIPT>
                  <SCRIPT SRC="isomorphic/system/modules/ISC_DataBinding.js"></SCRIPT>
                  <SCRIPT SRC="isomorphic/skins/SilverWave/load_skin.js"></SCRIPT>
                  <SCRIPT SRC="isomorphic/locales/frameworkMessages_it.properties"></SCRIPT>
                  </HEAD>
                  <BODY style="overflow:hidden">
                  <SCRIPT>
                  var cmp = {
                  ID : "tesIscrittoQuery",
                  autoDraw: false,
                  numCols: 26,
                  colWidths: [24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24],
                  autoFocus: true,
                  readOnlyDisplay: "readOnly",
                  titleSuffix: "",
                  requiredTitleSuffix: "",
                  maxWidth: 700,
                  maxHeight: 700,
                  overflow: 'auto',
                  fields: [{
                  title: "Codice:",
                  titleColSpan: 4,
                  colSpan: 5,
                  width: 175,
                  name: 'tesEnte_anagraficaAK',
                  operator: 'equals',
                  type: 'text',
                  startRow:true
                  },{
                  title: "Partita IVA:",
                  titleColSpan: 4,
                  colSpan: 4,
                  width: 140,
                  name: 'tesEnte_partitaIva',
                  operator: 'equals',
                  type: 'text',
                  startRow:true
                  },{
                  title: "Codice Fiscale:",
                  titleColSpan: 4,
                  colSpan: 5,
                  width: 175,
                  name: 'tesEnte_codiceFiscale',
                  operator: 'equals',
                  type: 'text'
                  },{
                  title: "Provincia:",
                  titleColSpan: 4,
                  colSpan: 5,
                  width: 175,
                  name: 'tesEnte_mdProvinciaSl',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_provincie__provincie', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true,
                  changed: function() {
                  this.form.clearValue('tesEnte_mdComuneSl');
                  }
                  },{
                  title: "Comune:",
                  titleColSpan: 4,
                  colSpan: 11,
                  width: 385,
                  name: 'tesEnte_mdComuneSl',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'i_tesEnteVwEmbQuery__mdComuneSl', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains', cachePickListResults: false,
                  getPickListFilterCriteria: function() {
                  return {
                  tesEnte_mdProvinciaSl: this.form.getValue('tesEnte_mdProvinciaSl'),
                  text: this.filterWithValue ? this.getValue() : ""
                  };
                  },
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: "Localit\u00E0:",
                  titleColSpan: 4,
                  colSpan: 11,
                  width: 385,
                  name: 'tesEnte_localitaSl',
                  operator: 'custom',
                  type: 'text',
                  startRow:true
                  },{
                  title: "Nazione:",
                  titleColSpan: 4,
                  colSpan: 7,
                  width: 245,
                  name: 'tesEnte_mdNazioneSl',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_nazioni__nazioni', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Estero:",
                  titleColSpan: 2,
                  colSpan: 1,
                  width: 35,
                  name: 'tesEnte_estero',
                  operator: 'custom',
                  type: 'boolean'
                  },{
                  title: " ",
                  titleColSpan: 4,
                  colSpan: 17,
                  width: 595,
                  name: 'tesEnte_t1',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'CanvasItem', shouldSaveValue: false, canvasConstructor: 'Label', canvasProperties: {height: 24, contents: '<div id="tesEnte_t1_div" class="master_header2">TITOLARE\/LEGALE RAPPRESENTANTE</div>'}, showTitle: true, canEdit: false, canSort: false,
                  startRow:true
                  },{
                  title: "Cognome:",
                  titleColSpan: 4,
                  colSpan: 5,
                  width: 175,
                  name: 'tesEnte_tesPersonaTitolare_cognome',
                  operator: 'equals',
                  type: 'text',
                  startRow:true
                  },{
                  title: "Nome:",
                  titleColSpan: 4,
                  colSpan: 5,
                  width: 175,
                  name: 'tesEnte_tesPersonaTitolare_nome',
                  operator: 'equals',
                  type: 'text'
                  },{
                  title: " ",
                  titleColSpan: 4,
                  colSpan: 17,
                  width: 595,
                  name: 'tesEnte_i1',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'CanvasItem', shouldSaveValue: false, canvasConstructor: 'Label', canvasProperties: {height: 24, contents: '<div id="tesEnte_i1_div" class="master_header2">ISCRIZIONI</div>'}, showTitle: true, canEdit: false, canSort: false,
                  startRow:true
                  },{
                  title: "Registro Imprese n.:",
                  titleColSpan: 4,
                  colSpan: 5,
                  width: 175,
                  name: 'tesEnte_numeroCciaa',
                  operator: 'equals',
                  type: 'text',
                  startRow:true
                  },{
                  title: "Albo Artigiani n.:",
                  titleColSpan: 4,
                  colSpan: 5,
                  width: 175,
                  name: 'tesEnte_numeroIscrizioneAlboAa',
                  operator: 'equals',
                  type: 'text'
                  },{
                  title: "Natura Giuridica:",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'naturaGiuridica1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_tabNaturaGiuridicaVw__tabNaturaGiuridicaVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'tesEnte_tabNaturaGiuridicaFk$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'tesEnte_tabNaturaGiuridicaFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'l_tabNaturaGiuridicaVw__tabNaturaGiuridicaVw', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: " ",
                  titleColSpan: 4,
                  colSpan: 17,
                  width: 595,
                  name: 'a1',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'CanvasItem', shouldSaveValue: false, canvasConstructor: 'Label', canvasProperties: {height: 24, contents: '<div id="a1_div" class="section_header">ATTIVITA\'</div>'}, showTitle: true, canEdit: false, canSort: false,
                  startRow:true
                  },{
                  title: "Codice Attivita\':",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'ateco2007Cciaa1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_ateco2007Cciaa__ateco2007Cciaa', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'tesEnte_mdAteco2007Cciaa$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'tesEnte_mdAteco2007Cciaa',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'l_ateco2007Cciaa__ateco2007Cciaa', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: "No Attivita\':",
                  titleColSpan: 2,
                  colSpan: 1,
                  width: 35,
                  name: 't$_-1207990420',
                  operator: 'custom',
                  type: 'boolean'
                  },{
                  title: "Unione:",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'atecoUnioni1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_atecoUnioniVw__atecoUnioniVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'tesEnte_mdAteco2007Cciaa_atecoUnioniFk$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'tesEnte_mdAteco2007Cciaa_atecoUnioniFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'l_atecoUnioniVw__atecoUnioniVw', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: "Settore:",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'atecoSettori1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_atecoSettoriVw__atecoSettoriVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'tesEnte_mdAteco2007Cciaa_atecoSettoriFk$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'tesEnte_mdAteco2007Cciaa_atecoSettoriFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'l_atecoSettoriVw__atecoSettoriVw', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: " ",
                  titleColSpan: 4,
                  colSpan: 17,
                  width: 595,
                  name: 'tesEnte_c1',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'CanvasItem', shouldSaveValue: false, canvasConstructor: 'Label', canvasProperties: {height: 24, contents: '<div id="tesEnte_c1_div" class="master_header2">CATEGORIA SINDACALE</div>'}, showTitle: true, canEdit: false, canSort: false,
                  startRow:true
                  },{
                  title: "Codice Attivita\' Prev.:",
                  titleColSpan: 4,
                  colSpan: 13,
                  width: 455,
                  name: 'tesEnte_mdCasind',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casind__casind', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Unione Prov.:",
                  titleColSpan: 4,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_boCasindUnioniFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindUnioniProvVw__casindUnioniProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Unione Prov.:",
                  titleColSpan: 4,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_feCasindUnioniFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindUnioniProvVw__casindUnioniProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Assoc. Prov.",
                  titleColSpan: 2,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_feCasindAssocFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindAssocProvVw__casindAssocProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: "Unione Prov.:",
                  titleColSpan: 4,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_foCasindUnioniFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindUnioniProvVw__casindUnioniProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Assoc. Prov.",
                  titleColSpan: 2,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_foCasindAssocFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindAssocProvVw__casindAssocProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: "Unione Prov.:",
                  titleColSpan: 4,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_ilCasindUnioniFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindUnioniProvVw__casindUnioniProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Assoc. Prov.",
                  titleColSpan: 2,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_ilCasindAssocFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindAssocProvVw__casindAssocProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: "Unione Prov.:",
                  titleColSpan: 4,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_moCasindUnioniFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindUnioniProvVw__casindUnioniProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Assoc. Prov.",
                  titleColSpan: 2,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_moCasindAssocFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindAssocProvVw__casindAssocProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: "Unione Prov.:",
                  titleColSpan: 4,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_reCasindUnioniFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindUnioniProvVw__casindUnioniProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Assoc. Prov.",
                  titleColSpan: 2,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_reCasindAssocFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindAssocProvVw__casindAssocProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: "Unione Prov.:",
                  titleColSpan: 4,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_prCasindUnioniFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindUnioniProvVw__casindUnioniProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Assoc. Prov.",
                  titleColSpan: 2,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_prCasindAssocFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindAssocProvVw__casindAssocProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: "Unione Prov.:",
                  titleColSpan: 4,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_pcCasindUnioniFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindUnioniProvVw__casindUnioniProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Assoc. Prov.",
                  titleColSpan: 2,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_pcCasindAssocFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindAssocProvVw__casindAssocProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: "Unione Prov.:",
                  titleColSpan: 4,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_raCasindUnioniFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindUnioniProvVw__casindUnioniProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Assoc. Prov.",
                  titleColSpan: 2,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_raCasindAssocFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindAssocProvVw__casindAssocProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: "Unione Prov.:",
                  titleColSpan: 4,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_riCasindUnioniFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindUnioniProvVw__casindUnioniProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Assoc. Prov.",
                  titleColSpan: 2,
                  colSpan: 8,
                  width: 280,
                  name: 'tesEnte_mdCasind_riCasindAssocFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_casindAssocProvVw__casindAssocProvVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: " ",
                  titleColSpan: 4,
                  colSpan: 17,
                  width: 595,
                  name: 't$_1020637055',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'CanvasItem', shouldSaveValue: false, canvasConstructor: 'Label', canvasProperties: {height: 24, contents: '<div id="t$_1020637055_div" class="section_header" style="text-align:center;">ISCRITTO</div>'}, showTitle: true, canEdit: false, canSort: false,
                  startRow:true
                  },{
                  title: "Data Iscrizione Cna da:",
                  titleColSpan: 4,
                  colSpan: 3,
                  width: 105,
                  name: 'mdServizioComprato_inizioServizioDa',
                  operator: 'greaterThan',
                  type: 'date',
                  useTextField: true,
                  startRow:true
                  },{
                  title: "a:",
                  titleColSpan: 1,
                  colSpan: 3,
                  width: 105,
                  name: 'mdServizioComprato_inizioServizioA',
                  operator: 'lessThan',
                  type: 'date',
                  useTextField: true
                  },{
                  title: "A Cura di:",
                  titleColSpan: 4,
                  colSpan: 13,
                  width: 455,
                  name: 'mdServizioComprato_txACuraDi',
                  operator: 'custom',
                  type: 'text',
                  startRow:true
                  },{
                  title: "Data Cessazione Cna da:",
                  titleColSpan: 4,
                  colSpan: 3,
                  width: 105,
                  name: 'mdServizioComprato_fineServizioDa',
                  operator: 'greaterThan',
                  type: 'date',
                  useTextField: true,
                  startRow:true
                  },{
                  title: "a:",
                  titleColSpan: 1,
                  colSpan: 3,
                  width: 105,
                  name: 'mdServizioComprato_fineServizioA',
                  operator: 'lessThan',
                  type: 'date',
                  useTextField: true
                  },{
                  title: "Motivo:",
                  titleColSpan: 1,
                  colSpan: 9,
                  width: 315,
                  name: 'mdServizioComprato_tabMotivoCessazioneFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_tabMotivoCessazioneVw__tabMotivoCessazioneVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: "Attivi non cessati:",
                  titleColSpan: 4,
                  colSpan: 7,
                  width: 245,
                  name: 'mdServizioComprato_attivo',
                  operator: 'custom',
                  type: 'boolean',
                  startRow:true
                  },{
                  title: "Attivi ad oggi:",
                  titleColSpan: 3,
                  colSpan: 1,
                  width: 35,
                  name: 'mdServizioComprato_attivoO',
                  operator: 'custom',
                  type: 'boolean'
                  },{
                  title: "Tipo Compenso:",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'tipoCompenso1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_tesTabTipiCompensiVw__tesTabTipiCompensiVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'mdServizioComprato_tesTabTipiCompensiFk$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'mdServizioComprato_tesTabTipiCompensiFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'l_tesTabTipiCompensiVw__tesTabTipiCompensiVw', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: "Tipo Servizio:",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'tipoServizio1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_tesTabTipiServiziVw__tesTabTipiServiziVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'mdServizioComprato_tesTabTipiServiziFk$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'mdServizioComprato_tesTabTipiServiziFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'l_tesTabTipiServiziVw__tesTabTipiServiziVw', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: "Codice Gruppo:",
                  titleColSpan: 4,
                  colSpan: 4,
                  width: 140,
                  name: 'gruppoAK',
                  operator: 'equals',
                  type: 'text',
                  startRow:true
                  },{
                  showTitle: false,
                  colSpan: 13,
                  width: 455,
                  name: 'gruppoLL',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_ente__ente', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true
                  },{
                  title: "Ufficio",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'ufficio1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_tabUfficiVw__tabUfficiVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'mdServizioComprato_tabUfficiFk$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'mdServizioComprato_tabUfficiFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'l_tabUfficiVw__tabUfficiVw', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: "Zona",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'zona1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_tesZone__tesZone', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'tesZona$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'tesZona',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'l_tesZone__tesZone', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: "Adesione Consorzio",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'adesioneCons',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_tabAdesioneConsorzioVw__tabAdesioneConsorzioVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'tesEnte_tabAdesioneConsorzioFk$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'tesEnte_tabAdesioneConsorzioFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'l_tabAdesioneConsorzioVw__tabAdesioneConsorzioVw', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: "Firmato Delega:",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'firmatoDelega1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_tabFirmatoDelegaVw__tabFirmatoDelegaVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'mdClienteCna_tabFirmatoDelegaFk$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 7,
                  width: 245,
                  name: 'mdClienteCna_tabFirmatoDelegaFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'l_tabFirmatoDelegaVw__tabFirmatoDelegaVw', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  editorType: "CanvasItem",
                  canvasConstructor: "Label",
                  showTitle: false,
                  height: 20,
                  canvasProperties: {
                  contents: ""
                  },
                  colSpan: 4,
                  startRow: true
                  }, {
                  title: "!=",
                  name: 'tesDelega$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 6,
                  width: 210,
                  name: 'tesDelega',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'i_tesIscrittoQuery__tesDelega', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: "Reclutato da:",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'reclutatoDa1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_tesReclutatori__tesReclutatori', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "Reclutato Data da:",
                  titleColSpan: 4,
                  colSpan: 8,
                  width: 280,
                  name: 'reclutatoDa',
                  operator: 'greaterThan',
                  type: 'date',
                  useTextField: true,
                  startRow:true
                  },{
                  title: "a:",
                  titleColSpan: 1,
                  colSpan: 3,
                  width: 105,
                  name: 'reclutatoA',
                  operator: 'lessThan',
                  type: 'date',
                  useTextField: true
                  },{
                  title: "Altra Organizzazione:",
                  titleColSpan: 4,
                  colSpan: 9,
                  width: 315,
                  name: 'altraOrg1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'l_tabAltraOrgImpresaVw__tabAltraOrgImpresaVw', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'mdEnte_impresa_tabAltraOrgImpresaFk$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'mdEnte_impresa_tabAltraOrgImpresaFk',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'l_tabAltraOrgImpresaVw__tabAltraOrgImpresaVw', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: "Codice Cliente Inail:",
                  titleColSpan: 4,
                  colSpan: 2,
                  width: 70,
                  name: 'codClienteInail',
                  operator: 'startsWith',
                  type: 'text',
                  startRow:true
                  },{
                  showTitle: false,
                  colSpan: 1,
                  width: 35,
                  name: 'controcodClienteInail',
                  operator: 'equals',
                  type: 'text'
                  },{
                  title: "Anno:",
                  titleColSpan: 4,
                  colSpan: 1,
                  width: 35,
                  name: 'annoT',
                  operator: 'equals',
                  type: 'text',
                  startRow:true
                  },{
                  title: "da:",
                  titleColSpan: 4,
                  colSpan: 1,
                  width: 35,
                  name: 'annoTDa',
                  operator: 'greaterThan',
                  type: 'text'
                  },{
                  title: "a:",
                  titleColSpan: 2,
                  colSpan: 1,
                  width: 35,
                  name: 'annoTA',
                  operator: 'lessThan',
                  type: 'text'
                  },{
                  title: "Tipo Tessera:",
                  titleColSpan: 4,
                  colSpan: 7,
                  width: 245,
                  name: 'tipoTesseraT1',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'comboBox', editorProperties: { optionDataSource: 'i_tesIscrittoQuery__tipoTesseraT1', valueField: 'key', displayField: 'text', completeOnTab: true, textMatchStyle: 'substring'}, filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true,
                  startRow:true
                  },{
                  title: "!=",
                  name: 'tesseraCorrente_tesTipoTessera$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'tesseraCorrente_tesTipoTessera',
                  operator: 'equals',
                  type: 'text',
                  displayField: 'text', valueField: 'key', editorType: 'MultiComboBoxItem', optionDataSource: 'i_tesIscrittoQuery__tesseraCorrente_tesTipoTessera', comboBoxProperties: {completeOnTab: true, textMatchStyle: 'substring', filterOperator: 'iContains',
                  specialValues: { "_": "Valore Mancante"},
                  separateSpecialValues: true}
                  },{
                  title: "Quota Diretta:",
                  titleColSpan: 4,
                  colSpan: 4,
                  width: 140,
                  name: 'tesseraCorrente_flagDiretto',
                  operator: 'equals',
                  type: 'boolean',
                  editorType: 'ComboBoxItem',
                  startRow:true,
                  valueMap: {
                  "0": "No",
                  "1": "Sė"
                  }
                  },{
                  title: "Aggiornamento Manuale:",
                  titleColSpan: 6,
                  colSpan: 4,
                  width: 140,
                  name: 'tesseraCorrente_flagAggManuale',
                  operator: 'equals',
                  type: 'boolean',
                  editorType: 'ComboBoxItem',
                  valueMap: {
                  "0": "No",
                  "1": "Sė"
                  }
                  },{
                  title: "Ente per conto:",
                  titleColSpan: 4,
                  colSpan: 4,
                  width: 140,
                  name: 'tesseraCorrente_flagEntePerConto',
                  operator: 'equals',
                  type: 'boolean',
                  editorType: 'ComboBoxItem',
                  startRow:true,
                  valueMap: {
                  "0": "No",
                  "1": "Sė"
                  }
                  },{
                  title: "Tipo Pagamento:",
                  titleColSpan: 6,
                  colSpan: 9,
                  width: 315,
                  name: 'tesseraCorrente_tipoPagamentoDiretto',
                  operator: 'custom',
                  type: 'text'
                  },{
                  title: "Tessera da:",
                  titleColSpan: 4,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaTesseraDa',
                  operator: 'greaterThan',
                  type: 'float',
                  startRow:true
                  },{
                  title: "a:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaTesseraA',
                  operator: 'lessThan',
                  type: 'float'
                  },{
                  title: " ",
                  titleColSpan: 4,
                  colSpan: 17,
                  width: 595,
                  name: 'q1',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'CanvasItem', shouldSaveValue: false, canvasConstructor: 'Label', canvasProperties: {height: 24, contents: '<div id="q1_div" class="master_header2">QUOTE</div>'}, showTitle: true, canEdit: false, canSort: false,
                  startRow:true
                  },{
                  title: "Diretta:",
                  titleColSpan: 4,
                  colSpan: 1,
                  width: 35,
                  name: 'f1',
                  operator: 'custom',
                  type: 'boolean',
                  startRow:true
                  },{
                  title: "da:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaDirettoDa',
                  operator: 'greaterThan',
                  type: 'float'
                  },{
                  title: "a:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaDirettoA',
                  operator: 'lessThan',
                  type: 'float'
                  },{
                  title: "Diretta Soci:",
                  titleColSpan: 4,
                  colSpan: 1,
                  width: 35,
                  name: 'fs',
                  operator: 'custom',
                  type: 'boolean',
                  startRow:true
                  },{
                  title: "da:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaDirettoSDa',
                  operator: 'greaterThan',
                  type: 'float'
                  },{
                  title: "a:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaDirettoSA',
                  operator: 'lessThan',
                  type: 'float'
                  },{
                  title: "da Pagare:",
                  titleColSpan: 2,
                  colSpan: 1,
                  width: 35,
                  name: 'ps',
                  operator: 'custom',
                  type: 'boolean'
                  },{
                  title: " ",
                  titleColSpan: 4,
                  colSpan: 1,
                  width: 35,
                  name: 'ns',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'CanvasItem', shouldSaveValue: false, canvasConstructor: 'Label', canvasProperties: {height: 24, contents: '<div id="ns_div"> </div>'}, showTitle: true, canEdit: false, canSort: false,
                  startRow:true
                  },{
                  title: "Num. Soci da:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'numDirettoSDa',
                  operator: 'greaterThan',
                  type: 'integer'
                  },{
                  title: "a:",
                  titleColSpan: 3,
                  colSpan: 3,
                  width: 105,
                  name: 'numDirettoSA',
                  operator: 'lessThan',
                  type: 'integer'
                  },{
                  title: "Inps:",
                  titleColSpan: 4,
                  colSpan: 1,
                  width: 35,
                  name: 'f2',
                  operator: 'custom',
                  type: 'boolean',
                  startRow:true
                  },{
                  title: "da:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaInpsDa',
                  operator: 'greaterThan',
                  type: 'float'
                  },{
                  title: "a:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaInpsA',
                  operator: 'lessThan',
                  type: 'float'
                  },{
                  title: "da Pagare:",
                  titleColSpan: 2,
                  colSpan: 1,
                  width: 35,
                  name: 'p2',
                  operator: 'custom',
                  type: 'boolean'
                  },{
                  title: "Ultima Rata Pagata:",
                  titleColSpan: 7,
                  colSpan: 4,
                  width: 140,
                  name: 'rata1',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'ComboBoxItem',
                  startRow:true,
                  valueMap: {
                  "0": "Nessuna Rata",
                  "1": "1 Rata",
                  "2": "2 Rata",
                  "3": "3 Rata",
                  "4": "4 Rata"
                  },
                  specialValues: {
                  "_": "Valore Mancante"
                  },
                  separateSpecialValues: true
                  },{
                  title: "!=",
                  name: 'coalesce(tesseraCorrente_ultRataPagInps,0)$not',
                  type: 'boolean',
                  width: 30,
                  showTitle: false
                  }, {
                  showTitle: false,
                  colSpan: 9,
                  width: 315,
                  name: 'coalesce(tesseraCorrente_ultRataPagInps,0)',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'MultiComboBoxItem',
                  valueMap: {
                  "0": "Nessuna Rata",
                  "1": "1 Rata",
                  "2": "2 Rata",
                  "3": "3 Rata",
                  "4": "4 Rata"
                  },
                  specialValues: {
                  "_": "Valore Mancante"
                  },
                  separateSpecialValues: true
                  },{
                  title: "Numero Rate Pagate:",
                  titleColSpan: 7,
                  colSpan: 4,
                  width: 140,
                  name: 'rata2',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'ComboBoxItem',
                  startRow:true,
                  valueMap: {
                  "0": "Nessuna Rata",
                  "1": "1 Rata",
                  "2": "2 Rata",
                  "3": "3 Rata",
                  "4": "4 Rata"
                  },
                  specialValues: {
                  "_": "Valore Mancante"
                  },
                  separateSpecialValues: true
                  },{
                  title: "da:",
                  titleColSpan: 1,
                  colSpan: 4,
                  width: 140,
                  name: 'rataDa',
                  operator: 'greaterThan',
                  type: 'text',
                  editorType: 'ComboBoxItem',
                  valueMap: {
                  "0": "Nessuna Rata",
                  "1": "1 Rata",
                  "2": "2 Rata",
                  "3": "3 Rata",
                  "4": "4 Rata"
                  },
                  specialValues: {
                  "_": "Valore Mancante"
                  },
                  separateSpecialValues: true
                  },{
                  title: "a:",
                  titleColSpan: 1,
                  colSpan: 4,
                  width: 140,
                  name: 'rataA',
                  operator: 'lessThan',
                  type: 'text',
                  editorType: 'ComboBoxItem',
                  valueMap: {
                  "0": "Nessuna Rata",
                  "1": "1 Rata",
                  "2": "2 Rata",
                  "3": "3 Rata",
                  "4": "4 Rata"
                  },
                  specialValues: {
                  "_": "Valore Mancante"
                  },
                  separateSpecialValues: true
                  },{
                  title: " ",
                  titleColSpan: 4,
                  colSpan: 1,
                  width: 35,
                  name: 'n2',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'CanvasItem', shouldSaveValue: false, canvasConstructor: 'Label', canvasProperties: {height: 24, contents: '<div id="n2_div"> </div>'}, showTitle: true, canEdit: false, canSort: false,
                  startRow:true
                  },{
                  title: "Num. Soci da:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'numInpsSDa',
                  operator: 'greaterThan',
                  type: 'integer'
                  },{
                  title: "a:",
                  titleColSpan: 3,
                  colSpan: 3,
                  width: 105,
                  name: 'numInpsSA',
                  operator: 'lessThan',
                  type: 'integer'
                  },{
                  title: "Inail:",
                  titleColSpan: 4,
                  colSpan: 1,
                  width: 35,
                  name: 'f3',
                  operator: 'custom',
                  type: 'boolean',
                  startRow:true
                  },{
                  title: "da:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaInailDa',
                  operator: 'greaterThan',
                  type: 'float'
                  },{
                  title: "a:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaInailA',
                  operator: 'lessThan',
                  type: 'float'
                  },{
                  title: "da Pagare:",
                  titleColSpan: 2,
                  colSpan: 1,
                  width: 35,
                  name: 'p3',
                  operator: 'custom',
                  type: 'boolean'
                  },{
                  title: "Dm:",
                  titleColSpan: 4,
                  colSpan: 1,
                  width: 35,
                  name: 'f4',
                  operator: 'custom',
                  type: 'boolean',
                  startRow:true
                  },{
                  title: "da:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaDmDa',
                  operator: 'greaterThan',
                  type: 'float'
                  },{
                  title: "a:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'quotaDmA',
                  operator: 'lessThan',
                  type: 'float'
                  },{
                  title: "da Pagare:",
                  titleColSpan: 2,
                  colSpan: 1,
                  width: 35,
                  name: 'p4',
                  operator: 'custom',
                  type: 'boolean'
                  },{
                  title: " ",
                  titleColSpan: 4,
                  colSpan: 1,
                  width: 35,
                  name: 'n4',
                  operator: 'equals',
                  type: 'text',
                  editorType: 'CanvasItem', shouldSaveValue: false, canvasConstructor: 'Label', canvasProperties: {height: 24, contents: '<div id="n4_div"> </div>'}, showTitle: true, canEdit: false, canSort: false,
                  startRow:true
                  },{
                  title: "Num. Dip, da:",
                  titleColSpan: 2,
                  colSpan: 3,
                  width: 105,
                  name: 'numDipenSDa',
                  operator: 'greaterThan',
                  type: 'integer'
                  },{
                  title: "a:",
                  titleColSpan: 3,
                  colSpan: 3,
                  width: 105,
                  name: 'numDipenSA',
                  operator: 'lessThan',
                  type: 'integer'
                  }]
                  };
                  var form = isc.DynamicForm.create(cmp);
                  var win = isc.Window.create({
                  ID: "test_w",
                  items: [form],
                  autoSize: true,
                  autoCenter: true,
                  dismissOnEscape: true,
                  isModal: true,
                  showModalMask: true,
                  title: "Iscritti - Filtro"
                  });
                  </SCRIPT>
                  </BODY>
                  </HTML>

                  Comment


                    #10
                    In fact, we misled you here - this particular behavior, of resizing to given maximums and then introducing scrollbars, is not currently a builtin feature - however, there are ways to do it.

                    One would be with something like this code below - for this to work nicely, you need to make a couple of changes:

                    1) set autoDraw: false and overflow;"visible" on your DynamicForm - remove the maxWidth/Height settings
                    2) don't set autoCenter:true on your Window - instead, after you create the window, call centerInPage() on it
                    3) draw the DynamicForm offscreen, measure it and introduce scrollbars as necessary - the code below shows how to do this

                    Code:
                    function autoSizeToExtents(canvas, maxWidth, maxHeight) {
                        // draw the canvas offscreen
                        canvas.moveTo(null, -9999);
                        canvas.draw();
                        
                        // figure out if the canvas is too big for the passed sizes
                        var canvasWidth = canvas.getScrollWidth(),
                            canvasHeight = canvas.getScrollHeight(),
                            scrollbarSize = canvas.getScrollbarSize() + 4,
                            vScroll = canvasHeight > maxHeight,
                            hScroll = canvasWidth > maxWidth
                        ;
                        
                        if (hScroll || vScroll) {
                            // store the required sizes
                            canvasWidth = Math.min(canvasWidth, maxWidth);
                            canvasHeight = Math.min(canvasHeight, maxHeight);
                            // if only one scollbar is needed, add it's size to the side showing the scrollbar - comment these lines to see why this is necessary
                            if (vScroll && !hScroll) canvasWidth += scrollbarSize;
                            if (hScroll && !vScroll) canvasHeight += scrollbarSize;
                            // switch the canvas to overflow:"auto", so scrollbars will appear as needed
                            canvas.setOverflow("auto");
                            // changing overflow resets width and height, so apply the calculated sizes now
                            canvas.resizeTo(canvasWidth, canvasHeight);
                        }
                    }
                    
                    // then, after you create your form, run it through autoSizeToExtents(), passing the sizes of the page, minus the approximate extra space used by a Window's outer edges and header-area
                            autoSizeToExtents(form, isc.Page.getWidth() - 10, isc.Page.getHeight() - 30);
                    Last edited by Isomorphic; 27 Sep 2016, 04:09.

                    Comment


                      #11
                      Thank you. Your suggestion worked.

                      Comment

                      Working...
                      X