Page 1 of 2

Servoy 3.5 rc 2

PostPosted: Fri Jun 08, 2007 4:29 pm
by svroemisse
We announce the immediate availability of Servoy 3.5 rc 2

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

This version will be available shortly through auto update for users of versions later than 3.5 b2 (check via help menu -> check for new version)

Changes
[enh] mnemonic and labelfor properties on buttons and labels
[enh] plugins.file.showFileOpenDialog() accepts a fifth optional parameter to filter on file type
[enh] onAction event works with enter key in webclient
[enh] warning for use of plugin dialog in web client
[enh] add more explicit JVM versions to support in the smartclient jnlp file

[chg] AJAX can be switched on/off on a per-solution basis
[chg] implemented application.getUserPropertyNames()
[chg] create and use the log table with user_uid instead of user_name

[fix] columns can be sorted based on another column using onRecordSort
[fix] for spaces that were discarded in the format
[fix] serialize converter no longer has issues with multidimensional arrays
[fix] problems with servoy developer and using multiple monitors
[fix] pdf_output plugin printer problems using some fonts
[fix] omit last record in tableview
[fix] jar file refresh problem if client uses java 1.6
[fix] type-ahead in combination with n-m relations now working
[fix] updates via raw sql plugin wouldn't show in executing client after calling flushAllClientsCache or notifyDataChange
[fix] importing solution with calculation datatype change doesn't update the datatype in override mode
[fix] canDelete/canUpdate/canInsert/canRead functions returning wrong values for first form shown
[fix] changing selected record, then setting focus doesn't work with webclient in Internet Explorer
[fix] instanceof check on dates in Javascript
[fix] made repository dialog multideveloper-safe
[fix] onHide method doesn't block switching to design mode anymore
[fix] images not refreshing with AJAX
[fix] dimensions of the formInDialog can only be set once
[fix] spaces in tableview headers are not converted when text is html
[fix] relation.alldataprovider
[fix] tableview headers sometimes too small
[fix] data notification in web client did not always work
[fix] relaxed criteria for going into find mode
[fix] in webclient non-ajax mode, table view pager didn't submit form data
[fix] blobloader data retrieval problem
[fix] onRecordSave event not fired if there is a form with the same foundset shown in a tab panel
[fix] rawSql plugin actions are now wrapped in the database transaction used by Servoy client
[fix] client shutdown form server admin page postponed for several minutes to enable client to shutdown properly
[fix] html areas wouldn't show all content in print preview or when printing
[fix] during import, the non-text qualifier was not recognized

Previous release
http://forum.servoy.com/viewtopic.php?t=8411

PostPosted: Fri Jun 08, 2007 4:56 pm
by ROCLASI
[fix] dimensions of the formInDialog can only be set once

Not sure what it fixes but it breaks existing functionality.
I use application.setWindowSize() to resize a FID depending on what a user selects IN the FID.
In 3.1 this works fine but in 3.5rc2 it resizes the main window instead.

Am I missing something ?

PostPosted: Fri Jun 08, 2007 5:10 pm
by ROCLASI
Seems Servoy 3.5rc2 is assuming that us developers don't terminate their SQL properly with a semicolon and can simply add ' limit ?' to the query. ;)

This is my code:
Code: Select all
forms.rss_boeking_edit_new.controller.loadRecords("SELECT rss_boeking.bkg_id FROM rss_boeking WHERE bkg_id=? ORDER BY bkg_id;", [bkgID]);


Wich results in the following error:
Code: Select all
2007-06-08 17:01:02,849 ERROR [AWT-EventQueue-0] com.servoy.j2db.util.Debug - select bkg_id from rss_boeking  where bkg_id=? order by bkg_id; limit ?
org.postgresql.util.PSQLException: ERROR: syntax error at or near "limit"
        at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1525)
        at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1309)
   etc..

PostPosted: Fri Jun 08, 2007 6:52 pm
by fsciweb
[fix] html areas wouldn't show all content in print preview or when printing

Yes!

Will this be pushed back to the 3.1.x series? Makes it hard to do any custom HTML content when print sliding dies if the HTML area is set to grow / shrink.

Thank you!

NCM
FSCI

Where is 3.5 rc 2 downloadable from?

PostPosted: Sat Jun 09, 2007 12:59 am
by Michael Mooney
This thread states that this is available "shortly" via auto-update for 3.5 beta users.

If one is on 3.1.6, what is the Forum area where a person can pull down 3.5 rc 2 to begin working with this release?

Thanks

Michael

PostPosted: Sat Jun 09, 2007 12:31 pm
by ROCLASI
Hi Michael,

You can get the installer from the regular download page.
If I remember correctly you can't auto-update from 3.1.x though.
So you need the installer.

Hope this helps.

treeview bean and webclient 3.5RC2

PostPosted: Sun Jun 10, 2007 10:14 am
by erdione
The treeview bean in webclient seems to be broken in 3.5 RC2

After the update I've got an internal error when launching Webclient

log file:
<div id="bean_tree_d44fa4e1_2e50_4064_8412_5fdc6a804912" servoy:id="bean_tree_d4
4fa4e1_2e50_4064_8412_5fdc6a804912">only wicket components are supported in webclient</div>
</div>
</div>
</div>
</servoy:panel>
</form>
</body>
</html>
, index = 17, current = '<div id="bean_tree_d44fa4e1_2e50_4064_8412_5fdc6a804912
" servoy:id="bean_tree_d44fa4e1_2e50_4064_8412_5fdc6a804912">' (line 16, column1)]
at org.apache.wicket.markup.MarkupStream.throwMarkupException(MarkupStream.java:435)
at org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1226)
at org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1349)
at org.apache.wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1284)
at org.apache.wicket.Component.renderComponent(Component.java:2092)
at org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1294)

at org.apache.wicket.Component.render(Component.java:1919)
at org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1179)
at org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1349)
at org.apache.wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1284)
at org.apache.wicket.Component.renderComponent(Component.java:2092)
at org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1294)

at org.apache.wicket.Component.render(Component.java:1919)
at org.apache.wicket.MarkupContainer.renderNext

Text fields not Showing Length Attribute

PostPosted: Sun Jun 10, 2007 10:18 pm
by Michael Mooney
When I do a clean import of an existing 3.1.6 solution with Text type fields (Postgres db, Sybase local repository), why does the data provider screen not show the length attribute for a Text type field? Here is a message I noted during a clean import of my existing solution:

The server version of the column 'notes' of table 'tr_securities' in server 'production' has length -1 while in the import version the column has length 2147483647.

It seems to work ok (data is saving etc) ... just that no length attribute is visible in the data providers. Is this the new expected behaviour? It used to show the length (e.g. - 2147483647).

Thx, Michael

PostPosted: Mon Jun 11, 2007 9:06 am
by rgansevles
ROCLASI wrote:Seems Servoy 3.5rc2 is assuming that us developers don't terminate their SQL properly with a semicolon and can simply add ' limit ?' to the query. ;)


This was already introduced in the first 3.5 beta.
Will be corrected in rc3.

Rob

Re: Servoy 3.5 rc 2

PostPosted: Sun Jun 17, 2007 6:48 pm
by Riccardino
svroemisse wrote:[enh] mnemonic and labelfor properties on buttons and labels


What are those properties intended for?

3.5 rc2: Varchar(50) string is right padded with spaces

PostPosted: Mon Jun 18, 2007 1:24 am
by Michael Mooney
When entering 2 records into the City field (SQL create below), the following occurs:

1. I enter 2 records into a very simple Servoy test form (see the 6 fields below). Record 1 has "London" (no quotes) in it; record 2 has "Paris" in it.

2. Servoy records "London......." (44 spaces assumed here) to the database and "Paris................" (45 spaces padded)

I think Servoy should initialize the record without padding it out to 50 spaces as the current behaviour forces us to issue a string trim on every varchar field: the extra spaces are not user keyed. Also, if you can replicate, pls double check data provider behaviour once spaces are trimmed off in part.

Timestamp with timezone is working well.

Postgres 8.2.3. Here is the SQL (let me know if you need the full DDL - you should get the same behaviour without the city_subregion constraint):

-- Table: city

-- DROP TABLE city;

CREATE TABLE city
(
city_id bigint NOT NULL, -- City_ID
subregion_id bigint, -- Subregion_ID
city character(50) NOT NULL, -- City
creation_user_id bigint, -- User ID (app layer insertion) integer
creation_timestamp timestamp with time zone, -- Timestamp for record creation
modify_user_id bigint, -- User ID for the last modification of this record. Application layer managed.
modification_timestamp timestamp with time zone, -- Timestamp for the last user to modify this record. Application layer managed.
CONSTRAINT pk_city PRIMARY KEY (city_id),
CONSTRAINT city_subregion FOREIGN KEY (subregion_id)
REFERENCES subregion (subregion_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
)
WITHOUT OIDS;
ALTER TABLE city OWNER TO postgres;
COMMENT ON TABLE city IS 'Cities known to the Country and SubRegion hierarchy.';
COMMENT ON COLUMN city.city_id IS 'City_ID';
COMMENT ON COLUMN city.subregion_id IS 'Subregion_ID';
COMMENT ON COLUMN city.city IS 'City';
COMMENT ON COLUMN city.creation_user_id IS 'User ID (app layer insertion) integer';
COMMENT ON COLUMN city.creation_timestamp IS 'Timestamp for record creation';
COMMENT ON COLUMN city.modify_user_id IS 'User ID for the last modification of this record. Application layer managed.';
COMMENT ON COLUMN city.modification_timestamp IS 'Timestamp for the last user to modify this record. Application layer managed.';


-- Index: city_pk

-- DROP INDEX city_pk;

CREATE UNIQUE INDEX city_pk
ON city
USING btree
(city_id);

PostPosted: Mon Jun 18, 2007 8:48 am
by rgansevles
Michael,

You are using char(50) as type for the city field. This is treated by the database as a fixed-width field that is padded (by postgres, not by Servpy) when data is shorter.
Data type varchar(50) does what you need.

Rob

PostPosted: Mon Jun 18, 2007 9:16 am
by pbakker
svroemisse wrote:
[enh] mnemonic and labelfor properties on buttons and labels


What are those properties intended for?


Those properties allow you to create a "relation" between a label and a field (Servoy will do it for you automatically when placing fields with labels on your form).

Once the relation is in place, when you then set a mnemonic on the label, this will allow your users to access the field which you "related" to the label through keyboard shortcuts.

A mnemonic is a letter, usually one of the letters in the text of the label. Depending on the L&F used, the letter will be underlines or become underlined when the user presses the ALT key.

When the user presses the ALT key and then the letter you set as mnemonic, cursor focus will go the the "related" field.

Note: If there are multiple labels/buttons or menuitems (yes, all the menuitems of Servoy already have mnemonics attached to them) using the same letter as mnemonic, the focus will go the the first "object" which uses it.

Paul

PostPosted: Mon Jun 18, 2007 11:30 am
by janteque
one of the new features on 3.5 is the ability to set a "logical" column name instead of the database field name. This is great, but it would be greater if you could access the i18n editor from the column properties window, so it'd be easier to stablish a i18n title.

will this be posible in new releases of 3.5?

PostPosted: Mon Jun 18, 2007 6:37 pm
by Riccardino
pbakker wrote:
Those properties allow you to create a "relation" between a label and a field (Servoy will do it for you automatically when placing fields with labels on your form).


Got it (you have to choose to fill name property, in order to do that).
But is it also working on MacOS X?
Because I set up a field with "c" as mnemonic, but alt-c gives me the copyright sign, command-c activates the copy function and control-c does nothing...