2012-06-27 6 views
14

Ho una domanda broker di cui ho bisogno di ordinare in base 2 campi diversi (utilizzando JSP e il 2011 SP1)L'applicazione di più di una sorta su una query mediatore Tridion

L'API ha il metodo "addSorting", che Mi candido .

Sembra, tuttavia, che la seconda chiamata addSorting sovrascrive la prima chiamata addSorting - piuttosto che l'aggiunta del secondo tipo:

// Sort by Date 
CustomMetaKeyColumn customMetaKeyColumnDate = new CustomMetaKeyColumn("date", MetadataType.DATE); 
query.addSorting(new SortParameter(customMetaKeyColumnDate, SortParameter.DESCENDING)); 

// Sort by Owner 
CustomMetaKeyColumn customMetaKeyColumnOwner = new CustomMetaKeyColumn("owner", MetadataType.STRING); 
query.addSorting(new SortParameter(customMetaKeyColumnOwner, SortParameter.ASCENDING));     

Essi smista bene il lavoro individuale.

È previsto? AddSorting è davvero un setSorting - dove può essere specificato solo 1 ordinamento o mi manca un modo per combinare 2 tipi?

+0

Ciao Jonathan, ho rapidamente esaminato parte del codice e mi sembra che dovrebbe essere in grado di gestire più chiamate ad addSorting. Puoi controllare la query che viene lanciata contro il DB? –

risposta

14

Il metodo addSorting funziona perfettamente. Tuttavia, semplicemente non funziona per le colonne di CustomMeta !!! È già presente un difetto confermato relativo a questo argomento con il seguente riepilogo: "SortParameter non funziona con due campi di metadati". Questo è ancora un difetto aperto per 2011SP1 ed è programmato per essere corretto solo per la prossima versione.

Cheers, Daniel.

+0

Grande risposta, potremmo interessarti ad aderire alla [specifica specifica di Area 51 Tridion] (http://area51.stackexchange.com/proposals/38335/tridion?referrer=gPujQMxthNCNn9xqeeO2NA2). Iscriviti con lo stesso account SO se hai un momento. –