Filter Requester by Organization

Hiya Plumsail

We are using your new Helpdesk for Office 365 (Modern UI), we are trying to filter the requester by the Organziation, we can see that you have some lovely custom code for the requester field (which ignores the filtering we have setup in the normal javascript window), can you show us how to filter the requestor by a column called status, and it should only show requestors if they are active as we have to manually create tickets sometimes.

Thanking you in advance!

Hello, @Jamal_Smith-Graham

You could think that your topic is missed or forgotten, but this is not the case. I am sorry for the delay with answering to you, but indeed, filtering of the "Requester" field is kind of tricky. It's necessary to get help from developers to solve your issue which can take a while. Thank you for your patience! =)

1 Like

Thanks @Evgeniy!

Hi @Jamal_Smith-Graham!

There are several options here.

  1. If you'd like to filter the requesters by Organization, you'll need to follow these steps:
  • Add an Organization lookup field in the Tickets list (the settings may be the same as in the Contacts list)
  • Open the Ticket forms in the Plumsail Forms editor, add the Organization field to the form
  • Delete the custom code in the Requester field, add the following settings in the Extra Fields settings of the Requester field: Organization/Id and the following to the Expand settings: Organization:
  • Then open the JS window and add the following code on the top of the page:
function filterRequesters(organization) {
var organizationId = organization && organization.LookupId || organization || null;
fd.field('Requester').filter = 'Organization/Id eq ' + organizationId;
fd.field('Requester').widget.dataSource.read();

}

and the following code after the ticketForm.Render() call; inside thу fd.spRendered(function() {

fd.field('Organization').$on('change', function(value){
filterRequesters(value);
fd.field('Requester').value = null;
});

After that, the form will limit thу Requesters to only those who are selected in the Organization field:
image

Please note that losing the custom code from the Requester field will erase all the fancy formatting, you'll see the Title only.
Please consider having a look at this article to get a more general idea of what's going on.

  1. If you want to just filter the active requesters by some custom Status column, yor will still need to delete the custom code from the Requester field and then add a filter on the Requester field, like this:

fd.field('Requester').filter = function(filter) {
return filter
? substringof('${encodeURIComponent( filter )}', ConcatenatedInfo)
: '';
}

Please consider taking a look at the lookup field properties of the Plumsail Forms JavaScript Framework.

  1. Finally, If you wish to implement the filtering and save the formatting of the Requester field, please consider contacting us about the paid support, we can implement this for approx. two support hours.
1 Like

thanks @v.uspenskii, we kind of figured it out looking at the code in the custom code.
We knew about the how to do a cascading lookup!