Customizando a Classificação de Vários Campos de Registro com o Web UI Framework
Você pode customizar a classificação de colunas de tabela que utilizam dados que combinam diversos campos de um registro (por exemplo, utilizando um renderizador). É possível fazer isso com o Ext JS 2.2.1 e o Ext JS 3.0.2.
Execute essa classificação utilizando a função sortType na classe Ext.data.field. Ao invés de um item ser transmitido para sortType (valor de um campo), três itens serão transmitidos (valor de um campo, o registro e o campo que está sendo classificado). Esta funcionalidade é fornecida ao substituir o método sortData na classe Ext.data.Store para passar o registro e o campo além do valor do campo.
Quando os usuários não estão criando o armazenamento para uma grade, eles podem passar o sortType como uma opção de configuração na propriedade bindingData.sFieldConfig no columnModel ou em colunas de uma grade.
Por exemplo, uma grade pode possuir a configuração a seguir:
columns: [{ dataIndex: 'airlines', bindingData: { sFieldConfig : { mapping : "airlines", sortType: this.sortTypeFn } }}]em que this.sortTypeFn é definido no arquivo JavaScript da tela 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 }”