May 06, 2008

[Tip] Table row height controls Comments (2)

by David Workman
Data Mosaic

Changing the row height of a table layout is not very obvious. Portals have a specific property to control this -- tables don't. Changing a field object height doesn't help nor does changing the font size.

What does affect row height is the height of any button/label objects on the table. So put a small invisible label object on your table to set the row height to other than the default 20 pixels.

CORRECTION: see comment below!

Picture_28

For web client, all objects in the table need to be the same height as they are all rendered individually.

On a related note: the size of the body part determines how many rows are displayed on the web client. "Chevron" page controls are automatically added if there are more records than what will fit in the size of the body part.

| Posted by David Workman on May 6, 2008 at 02:48 PM in Tips | Permalink | Comments (2)

May 02, 2008

[Tip] AM/PM times Comments (0)

by David Workman
Data Mosaic

You have to do a little work to store and display time data so that it is user friendly. AM/PM display is the most common time format here in the U.S. And displaying seconds is most often overkill -- sometimes 30 minute intervals is the most granularity a user needs.

Picture_26

Continue reading "[Tip] AM/PM times"

| Posted by David Workman on May 2, 2008 at 06:36 PM in Tips | Permalink | Comments (0)

April 22, 2008

[Tip] Using graphics in table column headers Comments (1)

by David Workman
Data Mosaic

Header_graphics_3

Sometimes a graphic says so much more than words. Especially when you're reduced to using a single letter in a table column header because the column is so narrow.

Today a user at a client site asked me if I could replace the single letters -- "C", "P" and "E" -- I had above the checkbox columns with some graphics. For some reason the idea had never occurred to me before.

As it turns out, it is quite easy using html in the text property of the field. A nice surprise!

| Posted by David Workman on April 22, 2008 at 07:28 PM in Tips | Permalink | Comments (1)

January 29, 2008

[Challenge] Difference between controller.newRecord() and foundset.newRecord() Comments (5)

by David Workman
Data Mosaic

Here's a trivia question for you: what are the differences between the controller.newRecord() function and foundset.newRecord() function?

Both functions create a new record. But after that there are some interesting and subtle differences. I'll give you a day or two to think this one through. Feel free to post your thoughts!

| Posted by David Workman on January 29, 2008 at 03:37 PM in Challenge | Permalink | Comments (5)

January 25, 2008

[TIP] Get record data by PK ID without executing a search Comments (7)

by Karel Broer

Is it possible to get all info from a record without doing any search? The answer is yes! For this trick you only need to know the record primary key and Servoy 3.5.

So now you get a record without any searching and no complicated SQL. You might doublecheck if vSet.loadRecords() get's a record by performing:

| Posted by David Workman on January 25, 2008 at 04:31 PM in Tips | Permalink | Comments (7)

December 12, 2007

[Commentary] Servoy 4.0 (Eclipse based) Impressions Comments (6)

Since Servoy World 2006 in Boston we've been hearing a lot about the switch to the Eclipse IDE that Servoy will be implementing with version 4.0. I think the biggest question in all of our minds with this...to put it mildly... *ahem* ... HUGE EVOLUTIONARY DEFYING CHANGE is: will it still be the Servoy I know and love?

No

Will I have to learn Servoy all over again?

Yes

Will I have to learn how to create layouts all over again?

Yes

Will I have to learn how to code all over again?

Yes

Argh!! Who can I throw tomatoes at?

Hint: his head is large and bald

Baby

(I could only dig up a baby picture)

But before you do that latter, ask yourself these questions:

Continue reading "[Commentary] Servoy 4.0 (Eclipse based) Impressions"

| Posted by David Workman on December 12, 2007 at 04:14 PM in Commentary | Permalink | Comments (6)

November 26, 2007

[Events] Live Online Servoy QuickStart Class Dec. 10-13 Comments (0)

Dec. 10th - 13th I will be offering my Servoy Quickstart training class in an interactive online format. The format will be similar to a Webinar but with these important differences:

- full two-way audio for all attendees
- full two-way screen sharing/controlling. Supports Macs, Windows & Linux.
- 1-800 number for US/Canada callers. (Additional fees apply for international callers - call for details)
- max 8 attendees
- Cost: pay by Dec. 3 - $495 / pay after Dec. 3 - $595

The class takes place over 4 half-days (12 hours in all), leaving you time to keep up with your other work. Classes run from 9 AM - noon PST.

More details, including course content, are on the training page my website. Interested parties please drop me an email.

_________________
Adrian McGilly
SAN Partner
Servoy Developer & Trainer
www.mcgilly.com

| Posted by Adrian Mcgilly on November 26, 2007 at 05:30 PM in Events | Permalink | Comments (0)

November 14, 2007

[Events] November VUG tomorrow Comments (0)

WHEN:

8am and 1pm EST November 14, 2007
Sign up: http://www.servoy.com/events

THEME:

Productivity Tools for Servoy Developers

AGENDA:

1 - Servoy Post Conference Update (20 mins) by Jan Aleman

Servoy is continually changing. Web client, Eclipse -- a recap of the latest progress by the Servoy development team.

2 - Create Eye-popping Charts (15 mins) by Ellen Meserow, Meserow Consulting (http://www.meserow.com/)

Ellen closed Servoy World with her session on charting. I think the unanimous response was stunned amazement at what is possible. She deftly cuts through the plethora of undocumented parameters and functions of the various charting beans so you don't have to.

3 - Gantt Bean and Analyzer 1.6 (15 mins) by Marcel Trapman, IT2Be (http://www.it2be.com)

See the first ever demo of Marcel's soon to be released Gantt bean. And just in case you aren't totally convinced you should be buying stuff from him, he will run through the latest features in Analyzer 1.6 -- one very impressive tool.

4 - Turbo Tables (15 mins) by Patrick G. Ruhsert, Dr. Maison & Partner (http://www.servoy-plugins.de)

Patrick is going to show us his new Table Bean (http://forum.servoy.com/viewtopic.php?t=9309). I find this bean so compelling I'm willing to predict that it will become one of the most widely used beans for Servoy development by the time the next Servoy World comes around. I'll stand behind all bets made on this statement in Las Vegas next year....

5 - Mosaic Frameworks for Servoy (15 mins) by David Workman & Troy Elliott, Data Mosaic (http://www.data-mosaic.com)

If you haven't heard of our frameworks for Servoy yet, time for you to check it out. A quick rundown of the features you can use to write business applications with Servoy many times faster than starting with a blank screen. In the very cool stuff category.

6 - Q & A with the presenters

Save up your questions for the presenters and get them answered.

| Posted by David Workman on November 14, 2007 at 12:24 PM in Events | Permalink | Comments (0)

November 08, 2007

[Tip] Automating disconnecting idle clients Comments (4)

by David Workman
Data Mosaic

For security reasons and license use efficiency, disconnecting idle clients is a good thing. Unfortunately, Servoy doesn't have a function to accomplish this programmatically. The only way to disconnect clients at the moment is manually via the Servoy admin application:

Picture_27

This is also the only place where Servoy gives you a hint as to what the current idle time of a client is (this data is not stored in the repository).

The solution to automate this is to process the Servoy admin client pages with curl every so many minutes, check for any clients who are over the idle time limit you specify, and then disconnect them with an additional curl call.

Put the following code in a batch processor and you're good to go! Works with Servoy 2.2x through 3.5.2. It's a bit of a hack and I was lazy with the code (should have used regex for everything but it gave me a headache) -- but it works like a champ.

(Note for windows users: make sure curl is installed for starters. Off the top of my head I think that the executeProgram(...) call has to be formatted a bit differently as well. There are several forum posts on how to use this function with windows you can look up.)

Continue reading "[Tip] Automating disconnecting idle clients"

| Posted by David Workman on November 8, 2007 at 03:18 PM in Tips | Permalink | Comments (4)

November 05, 2007

[Article] Customizing Security for Servoy Solutions Comments (0)

by Adrian McGilly
Information Systems Consultant

1 Quick overview of the Servoy Security Tool

Servoy provides a powerful security tool which you can access under the Tools menu if you are logged in as an Administrator. This tool lets an Administrator create users & groups, assign users to one or more groups and define the privileges of each group. This information (usernames, passwords, groupnames and group privileges) is all stored in the repository.

The Security tool makes sure that you never lock yourself out by insisting that there always be at least one user in the Administrator group. So as long as you remember that user's username and password, you will always be able to log into any solution, and you'll always be able to get into the Security tool to make changes to security settings.

The tool also provides a 'Solution Login Required' option, illustrated below:

Image007

This option applies specifically to the solution you're in at the time. Upon opening any solution, Servoy will only prompt the user for username and password if this option is turned on for that solution.

Note that whenever a user logs in, they are not only logging into the solution, they are logging into the repository, and they will remain logged into the repository until they either log out (using the File>>Logout command) or until a method logs them out. This means that if you give a user access to several solutions in the same repository, once logged in, he will be able to move freely among them without having to log into each one.

Continue reading "[Article] Customizing Security for Servoy Solutions"

| Posted by David Workman on November 5, 2007 at 11:49 AM in Articles | Permalink | Comments (0)