Jump to content
Sign in to follow this  
dinamo

Using dynamic global variables for portal filtering for user accounts

Recommended Posts

Hello,

New to the forum and a FileMaker novice.  I'm working on a solution at work that contains multiple portals and I'm trying to work out the best way to filter them.  

Currently I'm filtering the records in the portals by creation date and completion status.  I have buttons which toggle the state of global fields "FILTER_DATE" and "FILTER_COMPLETE" and that works ok. It filters the portals successfully but it sorts all the portals on that record and I'm afraid having multiple users browsing the same record on different layouts will mess with the filter settings for each other.  As I continue to build the solution I feel like this method is going to get cumbersome with the amount of global fields I will need to manage.  I also would like to make the portal filters to be user account specific, which I can't see how to implement with this system of global fields.  

I had the thought that I could maybe write a script that creates a dynamic global field when a user presses a filter option.  The idea being that user "Adam" clicks on the "Filter Incomplete" button.  The button triggers a script which would then toggle a variable named something like "$$FILTER_COMPLETE & "_" & Get(AccountName)".  The portal can then access the appropriate variable using the same method, referencing the account name to filter the portal for that user.

Is this a common way of dealing with user settings?  Are the better methods for dealing with user settings?  In an ideal world each portal in my solution would have its own user specific filter settings.  There will be around 20 portals total and each would need to filter for 2-5 variables.

 

Thanks in advance for your input

Share this post


Link to post
Share on other sites

Something to know - a global field's value is unique to each user's session - they don't run into each other even when using the same field.

So you can use your global FILTER_DATE and FILTER_COMPETE fields for all users.

The other thing to remember is that these global fields are reset to their original default values every time a user logs in. If the value of FILETR_DATE was "2016" when the database was originally hosted, then that will be the value when a user starts a session. Then you can use a script to reset that user's global to different values...

Hope this helps

  • Like 1

Share this post


Link to post
Share on other sites

Thanks, this is very helpful.  I may look in to adding separate sorting to each portal later in the solution but for now I can progress knowing that at least users wont conflict with each other using the global fields.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By SCbill
      Hi All,
      I'm new to these forums so hopefully I'm posting this is the right spot. I'm fairly new to the more complex elements of Filemaker and have just started getting into Portals. I have two databases, one for Projects (quoting, invoicing) and one for inventory. Through portal filtering I've been able to pull up inventory based off of the type of material chosen in the PROJECT that matches the material in INVENTORY. Specifically, if I'm quoting Material "A", the portal only shows the available material "A" from inventory.

      Is there a way for me to go one step further and 'tag' the available inventory for a specific project? For instance...
      1. Project 'Smith' requires two pieces of material "A"
      2.The portal of INVENTORY shows three available, "A-1, A-2, A-3" along with the value of each
      3. I want to tag specifically A-1 and A-2 and have the sum value of those become a value in my project database for this specific record only. Each project is a record.

      I assume that I could filter matching the PROJECTS::Project Name = INVENTORY::Project Name, but that would require going into inventory and tagging the material. I could also do this by typing in the name of the project in the inventory portal in the PROJECTS, but I was hoping to create an easier method like maybe a check box or something. Something I could click and it would put the name in and then give me the value of the material.

      Any advice would be appreciated. In the mean time, I'm going to use two portals, one that allows me to type the project name into INVENTORY from the PROJECT database and the second that specifically shows what inventory I've assigned to the project.

      Thanks
×

Important Information

By using this site, you agree to our Terms of Use.