Scenario:
In Search screen,enter search criteria and press "Search" button.
search results are sorted by column "Revelence" in descending order.
I clicked on another column("Date") and data got sorted accordingly.Now in search results screen,i hit back to search criteria screen and clicked on search button.
The search results are returned with previous result sort order "Date" instead of default sort order "Relevence" column.
Can some one suggest how can I make the search results sort by "Relevence" column everytime i click on search button.
Code:
var columnModel = [{
title: nmc.platform.strings.LogStartDate, dataIndx: "DateLogStart", editable: false, width: 150, align: "left",
render: function (ui) {
var rowData = ui.rowData,
dataIndx = ui.dataIndx,
cellData = rowData[dataIndx];
if (typeof cellData === "undefined")
return "<span ></span>";
else {
var startDateTime = new Date(parseInt(cellData.substring(6, cellData.length - 2)));
return "<span >" + NMCApp.toLocalDateTime(startDateTime,false) + "</span>";
}
}
},
{
title: nmc.platform.strings.FileName, dataIndx: "OriginalFilename", width: 200, align: "left",
dataType: function (val1, val2) {
return NMCApp.stringSort(val1, val2);
}
},
{
title: nmc.platform.strings.ProductName, dataIndx: "ProductName", width: 200, align: "left",
dataType: function (val1, val2) {
return NMCApp.stringSort(val1, val2);
}
},
{
title: nmc.platform.strings.Relevance, dataIndx: "Relevence", width: 100, align: "left", hidden: false
},
{
title: nmc.platform.strings.TaskID, dataIndx: "TaskID", width: 200, align: "left", hidden: true,
dataType: function (val1, val2) {
return NMCApp.stringSort(val1, val2);
}
},
{ title: 'LogGuid', dataIndx: 'LogGuid', hidden: true },
];
serverLogsGrid.pqGrid({
width: NMCApp.getSearchGridWidth(),
height: NMCApp.getSearchGridHeight(),
editable: false,
showTop: false,
showBottom: false,
hoverMode: 'row',
selectionModel: { type: 'row', mode: 'block' },
numberCell: false,
roundCorners: false,
wrap: false,
colModel: columnModel,
virtualY: true,
virtualX: true,
dataModel: {
//sortIndx: "Relevence",
//sortDir: "down",
data: []
},
sortModel: {
cancel: false,
type: "local",
sorter: [{ dataIndx: "Relevence", dir: "down" }]
},
});
function searchLogsAjax() {
$.ajax({
type: 'GET',
url: searchUrl + '&skip=' + startIndex,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
processdata: false,
cache: false,
success: function (data, textStatus, request) {
for (var i = 0; i < data.length; i++) {
searchedSvrLogs.push(data);
}
if (data.length == NMCApp.getMaxSearchNumber() && NMCApp.isSearchCancelled() == false) {
serverLogsGrid.pqGrid("option", "dataModel.data", searchedSvrLogs);
serverLogsGrid.pqGrid("option", "dataModel.sortIndx", 5);
serverLogsGrid.pqGrid("refreshDataAndView");
searchServerLogsViewModel.numberOfServerLogs(searchedSvrLogs.length);
startIndex = startIndex + NMCApp.getMaxSearchNumber();
searchServerLogsAjax();
}
else {
var colM = serverLogsGrid.pqGrid("option", "colModel");
if (searchServerLogsViewModel.showSearchCriteriaTaskId()){
for (var i = 0; i < colM.length; i++) {
if (colM.dataIndx == "TaskID") {
colM.hidden = false;
break;
}
}
}
else {
for (var i = 0; i < colM.length; i++) {
if (colM.dataIndx == "TaskID") {
colM.hidden = true;
break;
}
}
}
serverLogsGrid.pqGrid("option", "colModel", colM);
serverLogsGrid.pqGrid("option", "dataModel.data", searchedSvrLogs);
serverLogsGrid.pqGrid("option", "dataModel.sortIndx", 5);
//serverLogsGrid.pqGrid("refreshView");
serverLogsGrid.pqGrid("refreshDataAndView");
if (searchedSvrLogs.length > 0)
serverLogsGrid.pqGrid("setSelection", { rowIndx: 0 });
searchServerLogsViewModel.numberOfServerLogs(searchedSvrLogs.length);
if (NMCApp.isSearchCancelled() == false) {
NMCApp.hideLoadingWindow();
searchServerLogsViewModel.numberOfServerLogs(searchedSvrLogs.length);
}
else
searchServerLogsViewModel.numberOfServerLogs(searchedSvrLogs.length + ' (cancelled)');
}
},
error: function (request, status, error) {
NMCApp.hideLoadingWindow();
NMCApp.handleNMCException(request.responseText);
}
});
}