childFoundsetPromise = ...; // callServerSideApi
childFoundsetPromise.then(function success() { /* do your thing */ }, function error() { /* do your thing */ })
$scope.onFilterApi=function(columnsName,operation,searchString){
var columnsActualName =[]
var parentFoundset = $scope.model.foundset.foundset;
parentFoundset.find();
//CREATE CONDITIONAL QUERY FOR FILTERING
for(var i=0;i<columnsActualName.length;i++)
{
var columnDef = columnsActualName[i]
if(operation[i]==='contains')
{
parentFoundset[columnDef]= "%" + searchString[i]+ "%"
}
else if(operation[i]==='<=')
{
if(typeof searchString[i]==="string"){
var date=dateConverter(searchString[i]);
parentFoundset[columnDef]= "<="+date +"|MM/dd/yyyy";
}
else{
parentFoundset[columnDef]= "<="+searchString[i].toString();
}
}
else if(operation[i]==='<')
{
if(typeof searchString[i]==="string"){
var date=dateConverter(searchString[i]);
parentFoundset[columnDef]= "<"+date +"|MM/dd/yyyy";
}
else{
parentFoundset[columnDef]= "<"+searchString[i].toString();
}
}
else if(operation[i]==='>')
{
if(typeof searchString[i]==="string"){
var date=dateConverter(searchString[i]);
parentFoundset[columnDef]= ">"+date +"|MM/dd/yyyy";
}
else{
parentFoundset[columnDef]= ">"+searchString[i].toString();
}
}
else if(operation[i]==='between')
{
var data = searchString[i].split('...');
if(typeof data[0]==="string"){
var startDate=dateConverter(data[0]);
var endDate=dateConverter(data[1]);
parentFoundset[columnDef]=startDate + "..." + endDate +"|MM/dd/yyyy";
}
else
{
parentFoundset[columnDef]= searchString[i].toString();
}
}
}
parentFoundset.search();
}
childFoundsetPromise=$scope.handlers.svy_servoyApi.callServerSideApi("onFilterApi",[columnsName,operation,searchString]);
// childFoundsetPromise.then(function(){
// });
setTimeout(function(){
var result = {
data:$scope.model.foundset.viewPort.rows,
totalCount: $scope.model.foundset.viewPort.rows.length
}
deferred.resolve(result);
}, 500);
}
$scope.$watch("model.foundset", function (newValue, oldValue) { ... }); // will let you know when foundset property value changed by reference
$scope.$watch("model.foundset.serverSize", function (newValue, oldValue) { ... }); // will let you know when foundset property value's serverSize changed
$scope.$watch("model.foundset.viewPort", function (newValue, oldValue) { ... }); // will let you know when foundset property value's viewPort has completely changed
$scope.$watch("model.foundset.viewPort.rows", function (newValue, oldValue) { ... }); // will let you know when foundset property value viewPort's rows has completely changed
$scope.$watchCollection("model.foundset.viewPort.rows", function (newValue, oldValue) { ... }); // will let you know when foundset property value's rows have changed (any item in the rows array was changed by reference/added/removed or the rows itself changed by reference)
$scope.$watch("model.foundset.viewPort.rows", function (newValue, oldValue) { ... }, true); // will let you know when foundset property value's rows have changed in depth (so any change at any level after rows will be reported)
$scope.$watchCollection("model.foundset.model.foundset.selectedRowIndexes", function (newValue, oldValue) { ... }); // will let you know when foundset property value's selection has changed
Users browsing this forum: No registered users and 13 guests