Hi all, We are running into issues with the Default Filter on Records

Hi all,

We are running into issues with the Default Filter on Records on 7.7. Hoping to hear some viable workarounds…

Background:
One of our record-backed case-management stye applications is approaching the limits of the # of parameters SQL Server can accept (2100 is the default). The app grown 2-3 times faster than we originally anticipated, so our plan for archiving requests after Xyears is no longer valid.

For the Record’s Default Filter, we are using the IN clause (eg. caseID IN (1,2,3...3000)). Very similar to the best practise recommended at: forum.appian.com/.../Record_Level_Security_for_Entity_Backed_Records_Best_Practice.html , (but we are not creating an Appian group per request... we can determine viewer rights based on a View we query).

Record security required:
- Requestors and Approvers can view requests that they are involved in.
- Business Admin’s can view ALL requests <<< It is here where use of the IN clause wi...

OriginalPostID-154122

OriginalPostID-154122

  Discussion posts and replies are publicly visible

Parents
  • ...ll ultimately fail when we pass 2100 records.

    Stop-gap solution:
    We will add pagingInfo to the Default Filter on the Record (limit it to 2000 rows – our DBA’s will not increase the SQL parameter limit), so that we do not cause crashes when 2100+ parameters are passed to the IN clause. We also have historical reports set up, outside of Appian, but the business admins are concerned they won't be able to view their historical requests (outside of the top 2000) from within Appian anymore.

    The issue:
    By limiting the records returned through the Default Filter, to say, the top 2000, then any requests outside of that range are inaccessible via Appian. Even if we put an older request ID to the record list search or tempo report filters, no results will be returned.

    Requirement:
    Any record in the data store should be viewable in Appian reports and Dashboards if we provide the correct filters– eg ID, business unit, requestor.

    Thanks for reading. Hope I’ve described things...
Reply
  • ...ll ultimately fail when we pass 2100 records.

    Stop-gap solution:
    We will add pagingInfo to the Default Filter on the Record (limit it to 2000 rows – our DBA’s will not increase the SQL parameter limit), so that we do not cause crashes when 2100+ parameters are passed to the IN clause. We also have historical reports set up, outside of Appian, but the business admins are concerned they won't be able to view their historical requests (outside of the top 2000) from within Appian anymore.

    The issue:
    By limiting the records returned through the Default Filter, to say, the top 2000, then any requests outside of that range are inaccessible via Appian. Even if we put an older request ID to the record list search or tempo report filters, no results will be returned.

    Requirement:
    Any record in the data store should be viewable in Appian reports and Dashboards if we provide the correct filters– eg ID, business unit, requestor.

    Thanks for reading. Hope I’ve described things...
Children
No Data