Compiere does not do this in elastic way. There is no way to alter service
definition as it is normal java method. There is no language to make change.
All changes must be done in database via GUI.
I do not thing there is problem with UI changes. The UI could be altered in
same way as entity (there is just important sequence of fields so some
positioning keywords should be available).
I know that there is alredy infrastructure in OfBiz to do this. That it is
why I write here.
Best regards,
Marek
----- Original Message -----
From: "BJ Freeman" <bjf...@free-man.net>
To: <dev@ofbiz.apache.org>
Sent: Friday, May 15, 2009 6:26 PM
Subject: Re: OfBiz 4GL
There are applications like Compiere that use this. so Why change ofbiz?
Also how about addressing some of the inherited features like UI and
DB(at least the adds) change when entities changes
Then there is the automatic Creation of CRUD services that get built
from the Entity.
Triggers are covered under ECA's
Also the ECA's let you model your business flow the way a clients needs.
For those that need java the services can be written in Java with just a
simple service interface.
Marek Mosiewicz sent the following on 5/15/2009 3:24 AM:
What could be very interesting would be to add new language to OfBiz. It
could be some 4GL which would
bring many interesting features:
First it could be service writing languge. It could be static language
which would make it types based on entities
and services (maybe services could be more entity coupled) and could be
more user freindly than XML mini language.
Second it could be system repository manipulation language. Currently
Ofbiz has XML repository of entities services
and forms. But imagine that we store it in database or just as
serialized java object. Now add to this manipulation language like this:
ALTER CLASS Invoice
ADD PROPERTY AdditionalDescriptions
BEFORE:Description
TYPE: Text
LENGTH: 400
END
REPLACE SETTER TRIGGER MyTrigger
PHASE:BEFORE
LANGUAGE: OFBIZ
TARGET: AdditionalDescriptions
CODE
TaxId = Nip
END
END
ADD SERVICE TRIGGER CompleteAdditional
TARGET : Complete
PHASE: AFTER
LANGUAGE: JAVA
CLASS :org.apache.ofbiz.addins.InvoiceJMSNotification
END
END;
ALTER CLASS Order
ALTER ACCESS RIGTH Access
ALTER ROLE Marek
READ: TRUE
WRITE TRUE
DELETE: FLASE
END
END
END
ALTER FORM Invoice
ALTER GROUP Main
ADD RENDERER AdditonalDescription
END
END
END
ADD TRANSLATION
LANGUAGE:pl_PL
KEY: Invoice.AdditionalDescriptions
END
Some parts of language could be client available like validation rules
for example.
It would be something like dynamic application server. You could alter
the main code whch would make platform very good
for components.Anyone could easly alter componetns for its needs.
Another great thing would be use of Ofbiz with some ORM, the best would
be OpenJPA but it currently works only on
class level (no support for Map entites).
Best regards,
Marek
--
BJ Freeman
http://www.businessesnetwork.com/automation
http://bjfreeman.elance.com
http://www.linkedin.com/profile?viewProfile=&key=1237480&locale=en_US&trk=tab_pro
Systems Integrator.