Use of presentation value for key value in (access) filter

JeRoen shared this idea 4 months ago
Idea Logged

Hello,

Using the latest 8.0.5 release.

We work with hospitals which have a CIC code. This is an unique code for each hospital that is used in most of the tables in our DB. There is ofcourse also a dim hospital table in which the detaildata for all hospitals is saved (full name, main contact, telefoon, city, e.d.)

We use LDAP for authentication/autorisation and each hospital has a group (based on the CIC code) in the endusers are saved.

In our view I have set the CIC code to link to an access filter on the datasource. This is all working fine but ofcourse in our filter we now have the CIC code and we would like to show the name of the hospital.

How to realize that?

It looks like there can only be one input field in a filter. And I would like the key field (CIC code in my case) and a presentation field that is shown in the filter. This can be the name or even name and CIC code combination like "hospitalname (CIC-code)".

I currently have my filter set up to show access filter values:

/291b673f0bf9cad37320390960a6ea5c

But then it is only showing the CIC codes.

I can set it to custom query in which in which I can then set my query but YellowFin is telling me to make sure the query return only a single column.

/67a48aea1db819d4c8721da6850d6187

And even if it would allow me to use multiple columns how would I refer to the access filter so the CIC codes I see as a result are only those CIC codes I am authorized for.

I would expect this to be relatively simple but I am unable to get it done.

Please let me know if this scenario is possbile and if so, help is appreciated because it is not obvious to me how to do it.

Regards,

JeRoen

Comments (9)

photo
0

Hi JeRoen,


Sorry for the delay in my reply. In order to ensure the best performance for this, I would like to suggest taking a step back from Yellowfin and creating a table that maps CIC to the Hospital Name (if one does not already exist, for example CIC_Hospital_Name).

Once we have that table (physically created in the DB is ideal, but this could be a Virtual Table in the view if the DB option is not possible), we can add that to the view, create a join to the Hospital Dim via the name.

Then in the Prepare step of the view, add the access filter to CIC field in our new CIC_Hospital_Name table, then finally on the report use the Hospital Name field (from the CIC_Hospital_Name table) as the filter on your reports.

Please let me know if I have been unclear in my explanation or if there are some other elements at play that I am not aware of and we will see where we are at after this.

Cheers,

Neal

photo
0

Hello Neal,

I try to follow your explanation. But I already do have a table that maps the CIC to the hospital name. That is the dim_hospital table. That is currently already in the view, like so:

/6aa993ce7c8b7e12956fdfa418ffbf2b

This table joins to the picew table on dica_id_num field. The access filter is on the dim_ziekenhuis > dica_id field but I would like to show the naam in the filter.

Do you suggest to add another hospital table to the view?

As you describe this I would need to add the access filter to the CIC field in the new table and use the hospitalname for the filter. That is exactly what I am already doing with the dim_hospital table. But when I add the name as the filter I am unable to select value list > Access filters values because the access filter is on another field (the dica_id field).

I apologize when I completely misunderstand your explanation but I am unable to get to the result as described in the first post.

Regards,

JeRoen

photo
0

Hi JeRoen,


Thank you for the further explanation of your setup, I clearly misunderstood where the issue was. The option for Access Filter Values in the format of a column, will only be available for those columns which have an access filter attached to them. With this being said, what we can do, is to create a Filter Group at the View level which uses the overarching CIC access filter, to filter the values of it's sub-filters (if that makes sense). For the example below, I have an access filter that users an email address as the reference which is called UA. This UA access filter is applied to the UserId field in the UserAccessFilter table, which is joined to the CAMP table on RegionID.

cf4fbe9076a23167e8edf4aa93ed851e

You can see the UA access filter applied to the UserID field below:

85affbc9777872b4e35a597aa078a738

Then (and this should be the only part you need to do), I have created a Filter Group and dragged in my Camp Region field to the Filter Group and then I have applied the UA access filter to the entire group as show below:

8e40441529fc262a3ab339f1c014cd90

At the view level, I have set Camp Region selection to Cached Values. I did this with a user who has full access to all values (using the wildcard operator on the access filter), so that all values were present in the cache. Finally I added the Filter Group to the report and this will automatically filter out the values a user cannot see due to their access filter permissions.


Please give that a try, let me know if it does work as you want it to and if not, let's do a screen share to get this up and running for you.


Cheers,

Neal

photo
0

Hi JeRoen,

Hope you are well. I wanted to check in to see if my additional details were of help? If I am still missing something, please let me know and we can go through it all via a screen share to get this working for you.

Cheers,

Neal

photo
0

Hi JeRoen,

Hope you had a good weekend. I am touching base to see if my last explanation was able to get you the outcome you were looking for? Was there anything else we needed to do to get this working as you wanted?

Cheers,

Neal

photo
0

Hello Neal,

Sorry for my late response. I did manage to get it working as you described. So thank you for that.

I do find the whole process to get there a bit cumbersome, but it gets the job done :-).

Regards,

JeRoen

photo
0

Hi JeRoen,

I will pass on that feedback, and I am glad to hear you are able to get this working. Please let me know if you run into any issues with this.

Cheers,

Neal

photo
0

Hello Neal,

The whole reason I find the process a bit cumbersome is that I have to alter all the reports in my dashboard (33 reports) to only alter the presentation of a filter.

I had it working with the CIC number code but instead of being able to keep the CIC filtering and optionally link to a text field with a 1-on-1 relation with the CIC field to present in the filter, I now have to change all 33 reports because with the above method you change the field you are filtering on. Instead of the CIC number you filter now on the hospitalname field which is a text field.

The productowner wanted me to change the filter from a number (CIC) to a nice presentation (hospitalname) so it is beter recognizable for the enduser. But it will take me quite a while to change.

A whole lot of work for a very small change (change the presentation value of a filter)

Regards,

JeRoen

photo
0

Hi JeRoen,


I can appreciate the amount of work in doing that and I would have liked to have been able to provide an easier solution at this time. I have raised a request with the team about being able to include some kind of reference code/presentation value for an access filter and see if this would be possible in the future. While that doesn't do you any favors at this time, if it does become a feature later, hopefully it would make a change like this much easier.


Cheers,

Neal