Saturday, April 28, 2007

GenWise Templates and the Project life-cycle

One of the unique features of the GenWise Template System is the fact that the templates are always alive during your project life-cycle. The Generation process is not a single step (normally an initial step) but it's present during the whole life-cycle.

This has major advantages:
#1) Template can adapt themselves to new scenarios
This is basically achieved by the fact that their input meta-data can change and template will regenerate their code according to the new input.
Several templates have "Auto Calculated Template Options", for this cases the advantage is even greater since the templates will also adapt the default values of the Template Options (Questions to the user).

#2) Template Option Changes can be easier applied since the Template Options are still available at the end of the project.

#3) Same applies to Global Changes, or global extension : like adding Security Template, make project Ajax aware ( Ajax Templates ), or any other extension.

#4 ) Template itself (new version) can improve or fix a specific scenario and this change might automatically apply to all template instances in your projects.

To make this possible, the IDE needs to keep a Project System. This project system is part of the GenWise Framework which contains ALL your project meta-data.

MySQL GetSchema("Views")

Today i've spend some time debugging why when we use GenWise Studio to import a MySQL database, Views (supported only in MySQL 5.x ) where not imported as VIEWS but where treated as normal TABLES.

Applies to : ODBC 5.00.11 (latest from website) and 3.54.14 shows same behaviour. Server version : 5.0.22

Having an odbc connection with catalog/database set to a specific database when executing this commands :

_connection.GetSchema("Tables") --> returns tables + views (should have been only tables)
If this was expected behaviour it would have been handy that "TABLE_TYPE" could be set as view.. (currently set as TABLE)
_connection.GetSchema("Views") --> returns null.

ODBC TRACE (just partial...)

When requesting VIEW ( _connection.GetSchema("Tables") ) --> 15 are returned instead of 14 (1 is a view)

NOTE: When INFORMATION_SCHEMA (at the server ) shows correct / expected result
SELECT * FROM information_schema.VIEWS V;

Friday, April 27, 2007

SourceGear Vault branching tool

Inside GenWise we had very often the situation that for testing a specific new feature we would need to create separate SourceGear Vault branch.

That's why Ward Bekker created this free tool to share with the community : Vault Branching Tool