code: function(store) {
  		var me = this;
  
  		if (!me.autoUpdateAutoStores && me.autoStoresLoaded) return;
  
  		me.autoStores.eachKey(function(key, item) {
  			var field = me.fields.get(key);
  			if (field) {
  				field.suspendEvents();
  				var fieldValue = field.getValue();
  			}
  			if (!store.remoteFilter) { // values from local store
  				var data = store.collect(key, true, false).sort();
  				var records = [];
  				Ext.each(data, function(txt) {
  					if (Ext.isEmpty(txt)) {
  						Ext.Array.insert(records, 0, [{
  							text: me.autoStoresNullText,
  							id: me.autoStoresNullValue
  						}]);
  					} else {
  						records.push({
  							text: txt,
  							id: txt
  						});
  					}
  				});
  				item.loadData(records);
  			} else { // values from server
  				if (store.proxy.reader.rawData[me.autoStoresRemoteProperty]) {
  					var data = store.proxy.reader.rawData[me.autoStoresRemoteProperty];
  					if (data[key]) {
  						var records = [];
  						Ext.each(data[key].sort(), function(txt) {
  							if (Ext.isEmpty(txt)) {
  								Ext.Array.insert(records, 0, [{
  									text: me.autoStoresNullText,
  									id: me.autoStoresNullValue
  								}]);
  							} else {
  								records.push({
  									text: txt,
  									id: txt
  								});
  							}
  						});
  						item.loadData(records);
  					}
  				}
  			}
  			if (field) {
  				field.setValue(fieldValue);
  				field.resumeEvents();
  			}
  		}, me);
  		me.autoStoresLoaded = true;
  		if (me.grid.store.remoteFilter && !me.autoUpdateAutoStores) {
  			delete me.grid.store.proxy.extraParams[me.autoStoresRemoteProperty];
  		}
  	}
docs: private