Page 1 of 2

NOW AVAILABLE: Public Pre-Release of Servoy 4.0

PostPosted: Tue May 13, 2008 8:15 pm
by svroemisse
We are pleased to announce the public Pre-Release of Servoy 4.0!

This new version of Servoy is based on Eclipse - and has been enhanced in many ways. You can download the software through the download page on the Servoy website in the Developer section (http://www.servoy.com/developer).

After you've installed the software - you will see a Welcome screen that has links to some Pre-Release flash tutorials and other PDF resources. You can also access this information at any time from within Servoy Developer by choosing "Welcome" from the "Help" menu.

NOTE: this is PRE-RELEASE SOFTWARE, use with caution and make BACKUPS before you start.

Make a backup of your ENTIRE current Servoy installation (directory and database) before installing.

If you find a bug or have a feature request, please file a case in our support system: http://crm.servoy.com/servoy-webclient/ ... oy_support

You can also discuss this Pre-Release version on the forum in the "New Releases" section.


Changes in Client
[new] form onUnLoad event, see unload event on a form
[new] case 119296: application.setStatusText(...) is now also working in web client
[new] case 127512: range check in find / search to detect bogus ranges
[new] case 122988: added global method converter plugin
[new] function getDataProviderID added for labels and buttons
[new] two new security methods: setSecuritySettings(...) and getElementUUIDs(...)

[enh] case 39682: convert foundset to dataset, databaseManager.convertToDataSet(...) now support the specification of column names
[enh] print preview initial zoom can be specified as an argument
[enh] labelfor labels to become headers in tableview to apply styles
[enh] Servoy sequence range extended to long (64-bits)
[enh] UUID column support (as 16 bytes binary, 36 char string of native db type) and UUID sequence generator in case of primary key
[enh] initialsort property in relations
[enh] case 127292: HTTP put and cookie support on the HTTP plugin

[fix] case 130932: labelfor labels and their referenced field should have the same visibility when configured via security
[fix] case 124895: transparency setting for title borders is honored

Changes in Developer
[new] case 51232: new solution types; solutions can now be flagged as web client-only, smart client-only or for both
[new] form inheritance, see below
[new] form variables, see below

[enh] also contains all improvements from 3.5.5 and those that will be in 3.5.6

[chg] in the solution explorer view, CTRL + double click will try to execute the default open action, double click will expand or collapse the tree
[chg] separate property categories for properties
[chg] combined server and table in one editor dialog

API changes
[new] case 49029: added add/removeColumn methods to JSDataSet

New Repository Version
We needed to make some changes to the repository database. This means that 4.0 repositories can no longer be read by previous versions of Servoy.

Form Variables
Form instance variables are a new feature in Servoy 4.0. These variables are visible to all the form functions, but not to global functions or functions from other forms.

Form Inheritance
With Servoy 4.0, forms can inherit layout, variables and functions from other forms. Sub-forms receive part definitions from their super form and can add parts to the end of the list of form parts. For instance, if form B inherits from form A and form A has a leading grand total, form B cannot add a title, but it can add a body.

Overloaded super form methods can be called using "_super". This will prevent possible future clashes with "super", which is expected to become a reserved word in the JavaScript 2.0 specification.

Transparency Setting for Title Borders
The transparency setting for title borders is honored. By default, transparency has always been on. This means you should check your solutions for title borders that unintentionally have become transparent.

Error handling changes
In Servoy 4.0, the error handling of record deletion was slightly changed:
In Servoy 3.5, when deletion of records fails because of servoy-application-checks, an error message is logged, the delete is rejected and scripting methods return value false.
In Servoy 4.0, when deletion of records fails because of servoy-application-checks, a ServoyException is thrown. When an on-error method is defined, the exception will be passed to the method.

New Exception error codes
As a consequence of the error handling change described above, two new ServoyException error codes have been defined:

error 331: NO_PARENT_DELETE_WITH_RELATED_RECORDS :
i18nmessage: servoy.foundset.error.noParentDeleteWithRelatedrecords

error 332: DELETE_NOT_GRANTED :
i18nmessage: servoy.foundset.error.deleteNotGranted

Rhino Update
The Javascript engine we use, Rhino, has been updated from version 1.5R3 to 1.6R7. This fixes a number of issues:
1. .toFixed() now works as expected (http://forum.servoy.com/viewtopic.php?t ... ht=tofixed)
2. method.apply() now works as expected (http://forum.servoy.com/viewtopic.php?p=51648)
3. many regex issues have been fixed

It also adds some very interesting features:
1. XML support (http://www.w3schools.com/e4x/e4x_howto.asp, http://www.w3schools.com/e4x/e4x_example.asp )
2. Getter and Setter support on Objects (http://developer.mozilla.org/en/docs/Co ... nd_Setters )

Known issues
- alignment toolbar missing
- break on entry is not selectable yet
- runtime builder plugin not yet functional
- port settings from service preference panel are not applied
- bean editor does not yet fully support custom property editors
- installer will install database pre-filled with sample solutions and their data, even if sample solutions are not selected
- installer overestimates the amount of space that is needed

Congratulations to us

PostPosted: Tue May 13, 2008 8:54 pm
by BDuncan
Ha ha! So exciting - great job Engineering team!

PostPosted: Wed May 14, 2008 12:45 am
by antonio
Excellent news, Servoy! Thanks for making this beta available. Can you look into the crystal ball and give us some best-case and worst-case estimates of when you expect 4 to progress out of beta?

PostPosted: Wed May 14, 2008 11:58 am
by LOGIsoft
As always, you guys have out-done yourselves! Fantatstic job! :D

Keep'em coming,

Ben

Release of 4.0

PostPosted: Wed May 14, 2008 11:25 pm
by BDuncan
Tony - the best case is tomorrow. The worst case is never.

ha ha!

Seriously, I will ask and see if we can let you know a more exacting answer.

I will say that we usually release within a couple of months after this stage.

For now, follow the restrictions (make a back up of your app - do not use in real production, etc.)

We appreciate people testing, poking, prodding and letting us know where the "kinks" are so we can make the best possible release.

Thanks again!

Swtich Statment

PostPosted: Thu May 15, 2008 12:49 am
by monetteboy
I have messed with this all day and give up.

I have some buttons that call this method. All it does is get the elementname of what button that was pressed and checks it via a switch statement.

This has worked fine in all previous versions but not in 4.0.

If I hard code the variable it works fine
i.e. button_pressed = 'BPbutton1';

I tried adding "'" + button_pressed + "'" and changing a few other things but it never works.

Thanks

var button_pressed = application.getMethodTriggerElementName();
var button_pressed_form_name = application.getMethodTriggerFormName();
var buttonid = '';

switch( button_pressed )
{
case 'BPbutton1':
buttonid = globals.BPbutton1;
break;
case 'BPbutton2':
buttonid = globals.BPbutton2;
break;
case 'BPbutton3':
buttonid = globals.BPbutton3;
break;
case 'BPbutton4':
buttonid = globals.BPbutton4;
break;
}

PostPosted: Thu May 15, 2008 1:18 am
by IT2Be
I have messed with this all day and give up.
That is ok obviously but we are talking beta software here!
I think everybody will be grateful when you make an entry for it in the support system.

PostPosted: Thu May 15, 2008 10:36 am
by jcompagner
monetteboy, i think i already fixed that what you encountered just yesterday. Will quickly look into your usecase if that was the case.

PostPosted: Thu May 15, 2008 11:20 am
by jcompagner
monetteboy, i tested your case and yes it is fixed.

PostPosted: Thu May 15, 2008 2:47 pm
by Jan Blok
We just created Servoy 4.0 forum, to prevent Servoy 4.0 related comments/suggestion/problems to scatter all over the forum, so please use:
Servoy 4.0 Pre-Release forum

Thanks.

PostPosted: Thu May 15, 2008 4:38 pm
by monetteboy
jcompagner,

Thanks so much!

Jan,
Good deal on adding the forum for us to talk about 4.0.

PostPosted: Sat May 17, 2008 3:32 pm
by dpearce
OK,

so i am a slow starter, but can someone tell me how i get to see the for designer view in eclipse. I can see everything else, except the actual form!!!

Sorry, i cant wait until the London roadshow in July and i now i am being thick!

David

PostPosted: Sat May 17, 2008 3:46 pm
by ROCLASI
Hi David,

Right-click on the form in the object tree and select 'Open in form designer'.

PostPosted: Sat May 17, 2008 3:50 pm
by grahamg
Hi David

From memory so might not be perfect -:)

In Eclipse - right-click is a key feature! Select your form from the list under Active Solution and right click to open a pane to edit in designer view. To view the Form you just click Smart and/or Web Client icons

HTH

PostPosted: Wed May 21, 2008 8:59 pm
by bcusick
Also - DO check out the tutorials here: http://www.servoy.com/generic.jsp?mt=396&taxonomy_id=790

They are a great place to start. You can also get to the same place by choosing Help -> Welcome in the 4.0 version.