Personalización de la ordenación de varios campos de registro con la infraestructura de interfaz de usuario web
Puede personalizar el orden de las columnas de la tabla que utilizan datos que combinan varios campos de un registro (por ejemplo, mediante el uso de un procesador). Puede hacerlo con Ext JS 2.2.1 y Ext JS 3.0.2.
Para realizar esta ordenación, utilice la función sortType en la clase Ext.data.field. En lugar de pasar un elemento a sortType (valor de un campo), se pasarán tres elementos (valor de un campo, registro y el campo que se va a ordenar). Esta funcionalidad se proporciona mediante la sustitución del método sortData en la clase Ext.data.Store para pasar el registro y el campo además del valor del campo.
Si los usuarios no crean el almacén para una cuadrícula, pueden pasar sortType como una opción de configuración en la propiedad bindingData.sFieldConfig en columnModel o en las columnas de una cuadrícula.
Por ejemplo, una cuadrícula puede tener la siguiente configuración:
columns: [{ dataIndex: 'airlines', bindingData: { sFieldConfig : { mapping : "airlines", sortType: this.sortTypeFn } }}]donde this.sortTypeFn se define en el archivo JavaScript de pantalla como:
sortTypeFn: function(val, rec, fld){ return val + rec.get('airlinenumber');
// computing the value based on value of field (airlines) and
// value of 'airlinenumber' field }”