SAAS

I own servoy developer but have not had much experience with it. Before I jump in, I’d like to know if I’m in the right product. What I do now is offer a Filemaker database with web publishing to my clients to keep track of their customers. I offer this as software as a service. My challenge is that every time someone comes up with a worthwhile improvement, I need to make it to all the different database files, one for each client. Before SAAS I would just send out one update, now I have to make several updates. This will not be practical once I get 100 customers. Can servoy handle this in a different manner?

Thanks
Bill Belanger

BillB:
…I’d like to know if I’m in the right product…

From what you describe, Servoy webclient is definately the right product for you. Create and host a single multi-tenant solution. Then when you make one change, all 100 companies will immediately benefit from it.

We have hosted a Servoy multi-tenant solution now for over a year. We have over 500 companies on it with no problems. 99.99% uptime.

If you are not sure how to do it and need to be up and running fast, then I suggest you hire Servoy or one of the experienced Servoy developers to help you create a multi-tenant webclient solution.

Dean Westover
Choices Software, Inc.

Bill,

I just noticed that you are from Maine. Have you talked to the folks at adBlocks? They are located in Kennebunkport, ME and have some very talented Servoy developers. Good people!

Dean

Where can I learn more about the multi tenant model? I can’t seem to find anything about it on the website. Is it described in one of the available books?

Thanks
Bill Belanger

I am not aware of a sample unprotected multi-tenant solution that you can look at. However, there are other developers on this list that you could hire to put together a barebones multi-tenant solution to help demonstrate the concept.

Off the top of my head it requires the following. Create a company and user table. Create your own login forms and methods. Have login check username and password against appropriate columns. Branch to offer sign up if user/company does not exist. If correct username and password are entered, use addFoundSetFilterParam to apply permanent company_id filter to appropriate tables so that only the records for that particular company can be accessed and modified during entire session. Include a group table if you want to limit rights.

Probably a good starting point would be to do a search on addFoundSetFilterParam and addTableFilterParam on this list.

Dean

Thanks Westy,
It seems only two scenarios are possible. Either the login directs the user to their own set of tables, or as you say, limits them to their own records. I did see the add permanent filter method and pretty much assumed that was the way it’s done. If you had each company with their own tables, then when you needed to add a column (field), you’d need to add it to every table.

I’ve created a solution and can access it with both web and servoy clients, even from my pda. Unfortunately, I’m a bit stumped at the novice level. I can do a find with the servoy client, but not with the web client. I even used buttons with a “find” method first, then another button with a “search” method, and it doesn’t seem to work from the web. I also can’t find any navigation methods, ie to go to another form. I’ll keep plugging away. Thanks for your help.

Bill Belanger

I now see that the “find” method is looking for a parameter, it does not “enter find mode” Still got Filemaker in my head…

Bill Belanger

Wrong again. I can do the “find” then do the search. I just needed to eliminate the optional parameters (but leave the empty brackets).

Bill

Figured out how to show another form. Is there a list somewhere that tells us what doesn’t work with the web client, such as value lists? Or is it a trial and error?

Bill Belanger

Hi Bill,

Look under the View menu in the menubar.
You will see the option ‘Web Filter’. That does what you want.

Hope this helps.

An example of find and then show a form:

controller.find();
contact = 'John Doe';
company = 'ABC Co%';
controller.search();

forms.yourformname.controller.show();

From Servoy Editor always right click to move code over and/or see examples of code. This will also help you because the code that is brought over will be in the proper syntax. Become familiar with the Servoy Object Model (SOM). Read the Servoy Advanced Programming Guide for FileMaker developers. It’s a classic and is extremely helpful. Also see the Servoy Beginners handbook:

http://forum.servoy.com/viewtopic.php?t=6927

Dean