The current status of this question is the following:
- The option of direct access to the Openbravo ERP database has been rejected. The idea is to create the initial data load process more friendly with the current data interfaces proposed by Openbravo ERP and do not replicate functionality in the initial data load process that is already implemented in the current data interfaces, like execution of process, management of audit fields, management of primary key, ...
- This question is closely related to other technical question: The posibility to integrate the initial load execution in the context of Openbravo ERP forum thread. ETL tools like Pentaho PDI and Talend make it possible to execute integration jobs embedded in the context of other applications like Openbravo ERP. From the implementor point of view is a good improvement because this way he will not need to deal with ETL. From an Openbravo ERP window he will have access to parametrize, execute and monitorize the ETL integration jobs without having to deal with another external tool. In the other side the ETL integration job will be tightly integrated with Openbravo ERP code and probably will not be possible to run in an isolated context, that is the usual execution mode of ETL integration jobs. For example, embedding ETL integration jobs in the Openbravo ERP context will problably prevent us to develop a connector for the ETL tool selected of the style of existing connectors for other applications like Sugar CRM, Salesforce, ...
- To develop some functional requirements like the defaulting mechanism and also access to data using DAL, can be too complex to implement in the context of an ETL job. These kind of requirements will be easier to develop in plain java code.
- The current REST web services interface contains all functionality needed by the Initial Data Load project? Load / save data, execution of Openbravo process, etc.? This question is important if we decide to go with REST web services and end point in the Openbravo ERP side.
- Openbravo ERP entities structure evolves every version. This means that if entities used by the Initial Data Load change, the Initial Data Load code needs to be modified. This is important to keep in mind in order to find a solution that allows to inspect entities structure to validate the Initial Data Load process and to keep the block of code of the Initial Data Load process that depends on Openbravo ERP entities structure as small as possible.
To summarize, at this point the important question, depending of the data end point in the Openbravo ERP side, is if we are going to develop the initial data load project based on an ETL tool or in java, from scratch without any ETL tool.
I would like all people with authority in these areas to give their opinion to help us to take the right direction in the Initial data load project