SmartClient 6.5.1 has a bug whereby one gets a Javascript error and is unable to retrieve columns in TreeGrid back after unselecting all the columns.
This is a patch to address that issue:
This is a patch to address that issue:
Code:
//---------------------------------------------------------------------------- // Isomorphic SmartClient 6.5.1 patch // Purpose: Fix error: Getting Javascript error and unable to retrieve columns in TreeGrid back, after unselecting the the columns // // Applies to SmartClient 6.5.1 builds only //---------------------------------------------------------------------------- if (window.isc && isc.version.startsWith("6.5.1/")) { if (isc.ListGrid) { isc.ListGrid.addMethods({ getHeaderContextMenu: function() { return this.ns.Menu.create({ID:this.getID()+"$314",grid:this,hide:function(){this.Super("hide",arguments);if(this.grid&&this.grid.headerMenuButton&&this.grid.headerMenuButton.isVisible()){this.grid.headerMenuButton.hide()}},doSort:function(_7,_8){this.grid.sort(_7,_8)},toggleField:function(_7,_8){var _1=this.grid,_2=_8.$35q,_3=_2?_2.data.findIndex("groupItem",true):null,_4=_2?_2.data[_3]:null,_5=(_4&&_4.fieldName==_7.fieldName);if(_7.checked){if(_1.fields.length>1){_7.checked=false;_1.hideField(_7.fieldName);if(_5)_2.setItemEnabled(_3,false)} if(_1.fields.length==1){for(var i=0;i<_8.data.length;i++){if(_8.data[i].checked){_8.setItemEnabled(i,false);this.$54f=i}}}}else{_7.checked=true;_1.showField(_7.fieldName);if(this.$54f!=null&&_8.data[this.$54f]){_8.setItemEnabled(this.$54f,true);this.$54f=null} if(_5)_2.setItemEnabled(_3,true)}},groupField:function(_7){var _1=this.grid;if((!_1.groupByField)||!_1.groupByField.contains(_7.fieldName)){_1.groupBy(_7.fieldName)}},ungroup:function(){this.grid.ungroup()} ,shouldEnable:function(_7,_8){ for(var i=0;i<_7.data.length;i++){ if(_7.data[i].checked&&i!=_8)return true } if(_7.data[_8] && _7.data[_8].checked)return false;else return true } }) } }); } } else if (window.isc) { isc.Log.logWarn("Patch for SmartClient 6.5.1 builds included in this application. " + "You are currently running SmartClient verion '"+ isc.version + "'. This patch is not compatible with this build and will have no effect. " + "It should be removed from your application source."); }