How Do I Filter Database Access?

Hi, I have taken on a project for a non-profit and am looking to Servoy + MySQL as an alternative to Filemaker Pro Server Advanced. We are basically consolidating several databases with duplicate data into one central database/s. One of the things we are looking to do is filter client access to different information which can be either certain information within a database if one huge database is used, or filter client access to particular databases if several are used. How would I go about accomplishing this in Servoy Server? I am aware that there are filter parameters that can be set, but I don’t know the syntax, but I would assume it would be placed in servoy.properties. Keep in mind I am very new to this software and databases in general. I am fortunate enough to have no deadline so I can learn as I go. Any and all help will be appreciated. - Ryan

P.S. Just read the posting How to.
Servoy version 5.2.0 -build 997
Ubuntu x64 2.6.32-24
java.version=1.6.0_18
MySQL 5.1

Does anyone at least have a hint on where I should look? I can’t find it anywhere.

OK I just discovered Developer. I think I have a long way to go. Might stumble across what I need in the process.

databaseManager.addTableFilterParam is your friend.

Hi Ryan, welcome to the Servoy forum.

I would recommend the manuals & wiki but also the (free) video’s on http://www.servoyuniversity.com
They explain plain & simple the first basics of Servoy Developer.

Also for the free videos, you have register (that’s free)
Hope this helps.

Hi Ryan,

In servoy there are usually a number of ways to do everything including user security and privileges. I would start by looking at what you can do with users and groups. You can add groups and users in the User and Group Security section of Developer. Then when writing methods, you can access the user info using the Security object, eg. security.getUserGroups(), and then with simple if statements you can set any number of dynamic accessibility parameters for any form, table, element, etc.

You can also use the statement: databaseManager.switchServer(sourceName, destinationName) to bring the logged in user to the one database server they have access too. If data access is your primary concern, you can keep several database servers and switch to the appropriate database server on log in based on who logs in.

Hope this helps, have fun learning servoy!
-Jeremy