The attempt to restrict the XE3 professional license did evolve into an amazing discussion in Embarcadero forums, and Delphi-related blogs.
David I announced the
(reverted) EULA for Delphi Pro. Remote database access is again possible,
with terms similar to Delphi Xe2.
You can check the Software License and Support Terms (EULA) for RAD Studio XE3 products.
This is good news, but also the opportunity to check the definitive terms.
In short, with the XE3 pro license, you have a deployment restrictive clause:
- You can use DBExpress components and units only locally;
- You can use DataSnap features only locally (it means that you can prototype using DataSnap, but are not allowed to deploy or redistribute DataSnap).
If you want to use those two features on Client-Server, you would need to buy a Client/Server Pack license:
If licensee has purchased a Client/Server Pack, the Licensee of RAD Studio, Delphi, or C++Builder XE3 Professional Edition (“Product”) may deploy that portion of the Product identified as "dbExpress" and dbExpress enterprise database drivers, in executable form only, to enable client server database access. Embarcadero may deliver the Product identified as “Enterprise,” however Licensee is licensed to use only the “Professional” edition features plus "dbExpress" and the Enterprise dbExpress database drivers in a client/server configuration. Licensee may evaluate the n-Tier DataSnap functionality included in the Enterprise Product delivered, but may not deploy or redistribute DataSnap.
This is now a real opportunity for our Open Source mORMot framework.
With a XE3 pro license, and even with a XE3 starter license, you are able, via our free units and classes:
- To call any database engines, via OleDB, ODBC or directly for SQlite3 and Oracle - with best performance possible (our classes support features like array binding, whereas DbExpress does not);
- To define Client-Server services, via a RESTful / JSON architecture, using plain interface in Delphi code, with a diverse (and IMHO better) model than DataSnap;
- And many other included features, like Client-Server ORM, logging, security, reporting, UI generation...
That is, everything you need to build from a small Client-Server or stand-alone application up to the most scalable Domain-Driven design.
Nice, isn't it?