First of all i would like to thank you for your interest in Replication project.
I'm extensively working on the projects and hope in next weeks to finish main functionality.
Status at the moment:
User can define in newly developed 'Export Format' table format of XML message which will be exported. I have defined example formats (Sales Order and Business Partner). At the moment when new record is created system creates xml files on local hard drive. There is import process which reads xml file and imports into the system. This is initial functionality as a Proof of Concept that export and import can be done automatically just based on Export/Import format defined by Administrator of the system. What i'm working on is transport layer. Idea is xml file to be sent to Local JMS Server or other destination (System will be flexible and will allow developer to define Export Processors and develop his own java implementation). When Local JMS Server has connection to Central JMS Server messages will be transfered.
Kind regards,
Trifon
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks a lot for your fast reply!
The information you provided has been really helpful. thank you!
I can see that you are using the import/export loader formats in adempiere and communicating the data in xml files. It is a very good idea indeed.
I am dealing with such a project currently too... however, i have been thinking much more in the direction of the replication strategy framework in adempiere. (half completed)
What do you think of this method of replication? I mean why did you not use it?
Kind regards,
karvesh
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
>I am dealing with such a project currently too... however, i have been thinking much more in the direction of the >replication strategy framework in adempiere. (half completed)
Can you describe more?
>
>What do you think of this method of replication? I mean why did you not use it?
I'm not sure that i understand well your question?
Are you asking about existing tables in Adempiere concerning replication?
I was planning to use an EGB layer on server beans.
I want the branches or HQ to read directly into the tables of the remote location and do the replication within so predefined strategy. I am not too keen to use files to make the replication (csv)
In fact i want to know why did you choose loading files in import loaders instead of the replication framework? (i mean what do you think might be the pros or cons?)
thanks a lot!
regards,
karvesh
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
>I was planning to use an EGB layer on server beans.
I think that you mean EJB?
>I want the branches or HQ to read directly into the tables of the remote location and do the replication within so >predefined strategy. I am not too keen to use files to make the replication (csv)
>
>In fact i want to know why did you choose loading files in import loaders instead of the replication framework? (i >mean what do you think might be the pros or cons?)
Sorry if my description wasn't clear.
I do not plan to load Files into import Loaders or to use files for replication.
Files are generated now only as an example and Proof of Concept that system can export data into XML format and import data from XML format only by reading Export format defined in Application dictionary. I divided Replication project in two parts as wasn't' sure if system can create automatically xml and import them properly into the system. Dividing of development minimizes the risk in case of failure and in case that initial assumptions appear to be non real or very hard(impossible) to implement.
XML messages will be sent to external Server (JMS Server) which will take care for delivery to other JMS Server. Adempiere will just need to send message to JMS Server and read message from JMS server. JMS will take care for management of transportation.
Kind regards,
Trifon
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello Triffon
Thanks again for your reply.
I have been reflecting on the description of the project you have have provided.
For the 2nd phase:
You will be using JMS: messages will be queued in XML format.
There will be Local and Server JMS servers.
I have a question concerning the functionality:
The replication will invlove
Records created on Central server: Product, Price, Term Credit, Business Partner.
Records created on Remote servers: Sales Order, Shipment, Invoice (Customer), Payment, Journal Cash and Business Partner , Inventory
Will it be possible to implement the replication of additional features in the future? I mean how
flexible is the implementation. Is it a lot of hard coding or rather configurations?
thanks a lot Triffon
kind regards,
karvesh
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
>Will it be possible to implement the replication of additional features in the future? I mean how
>flexible is the implementation. Is it a lot of hard coding or rather configurations?
It will be matter of configuration only.
No coding.
Power of Application dictionary is to decrease developer effort and give more freedom and tasks to users.
Kind regards,
Trifon
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
thanks for the message!
I have another question concerning the replication development:
for what database are you planning to deploy the project: oracle or postgres?
thanks!
regards,
karvesh
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Its been a long time since I last looked around here. I just saw this new project with very interesting potential for adempiere (especially for posterita and remote/offline POS/CRM functionality.
it allows n-level 2-way sync between databases in intermittent/low bandwidth areas especially useful in the areas that I work in (mid-east/africa).
I attach some of their blurb for your info.
SymmetricDS is web-enabled, database independent, data synchronization/replication software. It uses web and database technologies to replicate tables between relational databases in near real time. The software was designed to scale for a large number of databases, work across low-bandwidth connections, and withstand periods of network outage.
By using database triggers, SymmetricDS guarantees that data changes are captured and atomicity is preserved. Support for database vendors is provided through a Database Dialect layer, with implementations for MySQL, Oracle, SQL Server and PostgreSQL included.
Synchronization can be configured to push data (trickle-back) or pull data (trickle-poll) at an interval. SymmetricDS allows for 2-tier and even n-tier synchronization, such as the following:
* A farm of web server nodes fronting an enterprise-class general office database
* A handful of regional servers for synchronizing from the general office to remote geographical areas
* 1000(s) of store server nodes using a departmental class database to sync with a regional node
* 10(s) of Point of Sale (POS) register nodes using an embedded database to sync with a store server
Deployment options include the following:
* Web application archive (WAR) deployed to an application server such as Tomcat, Jetty, or JBoss
* Standalone service
* Embedded in an application
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Funambol is and I believe is an application server that provides push email, Mobile email (Blackberry like), address book and calendar (PIM) data synchronization, and device management, you cannot use it to synchronize to databases.
Therefore I would like to help in making replication stable.
I also have one (or maybe two) question(s):
Is it correct, that from adempiere's point of view replication is just exporting and importing xml strings via server processes?
So transporting these xml data between different servers is handled outside of adempiere (e.g. by jms or shell scripts), right?
> Hi Victor,
>I'm just starting to work on a project that requires replication as described in >http://www.adempiere.com/wiki/index.php/Sponsored_Development:_Replication#Requirements.
>
I will answer as i'm responsible for development of replication.
>Therefore I would like to help in making replication stable.
>
>I also have one (or maybe two) question(s):
>Is it correct, that from adempiere's point of view replication is just exporting and importing xml >strings via server processes?
Yes. Replication is export and import of data. I implemented xml import/export but any other format is possible too.
>So transporting these xml data between different servers is handled outside of adempiere (e.g. by jms >or shell scripts), right?
Yes. Currenlty i have implemented JMS and FTP transport, but any other transport is possible too.
Supoprt of development is greately welcome.
Kind regards,
Trifon
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Trifon,
Is this to say that currently as long as you use the two modes you have specified Adempiere functionality is good to go?
Are there any caveats that we should know of?
Regards
Ngigi Waithaka
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
>Is this to say that currently as long as you use the two modes you have specified Adempiere functionality is good to >go?
I'm sorry but question is not clear for me.
>Are there any caveats that we should know of?
Every application/functionality has strong and weak side. Tests will show which are good and bad side of current functionality.
Kind regards,
Trifon
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Trifon,
Sorry my question was not clear enough.
What I would like to know is whether Adempiere replication is production quality?
I am looking at setting up Adempiere for central office and then at least 2 remote offices with POS.
The products are defined(Requisition, Purchase) in Central office while the sales are in the remote centers.
Is the current functionality able to replicate this. If not, what in your opinion do you think would not be possible?
Regards
Ngigi Waithaka
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
>What I would like to know is whether Adempiere replication is production quality?
Current phase is test. Functionality is working.
>I am looking at setting up Adempiere for central office and then at least 2 remote offices with POS.
>The products are defined(Requisition, Purchase) in Central office while the sales are in the remote centers.
>Is the current functionality able to replicate this. If not, what in your opinion do you think would not be possible?
Yes. This can be done.
Kind regards,
Trifon
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi to all,
I have seen that there has been a sponsored development in adempiere on data replication.
http://www.adempiere.com/wiki/index.php/Sponsored_Development:_Replication
The project has been undertaken by Victor Perez and Trifon Trifonov.
I want to know what is the current status of the project. Is it completed and working properly?
Thanks a lot
Karvesh
Hi Karvesh,
> http://www.adempiere.com/wiki/index.php/Sponsored_Development:_Replication
>
>The project has been undertaken by Victor Perez and Trifon Trifonov.
>
>I want to know what is the current status of the project. Is it completed and working properly?
First of all i would like to thank you for your interest in Replication project.
I'm extensively working on the projects and hope in next weeks to finish main functionality.
Status at the moment:
User can define in newly developed 'Export Format' table format of XML message which will be exported. I have defined example formats (Sales Order and Business Partner). At the moment when new record is created system creates xml files on local hard drive. There is import process which reads xml file and imports into the system. This is initial functionality as a Proof of Concept that export and import can be done automatically just based on Export/Import format defined by Administrator of the system. What i'm working on is transport layer. Idea is xml file to be sent to Local JMS Server or other destination (System will be flexible and will allow developer to define Export Processors and develop his own java implementation). When Local JMS Server has connection to Central JMS Server messages will be transfered.
Kind regards,
Trifon
Hello Triffon!
Thanks a lot for your fast reply!
The information you provided has been really helpful. thank you!
I can see that you are using the import/export loader formats in adempiere and communicating the data in xml files. It is a very good idea indeed.
I am dealing with such a project currently too... however, i have been thinking much more in the direction of the replication strategy framework in adempiere. (half completed)
What do you think of this method of replication? I mean why did you not use it?
Kind regards,
karvesh
Hi Karvesh,
>I am dealing with such a project currently too... however, i have been thinking much more in the direction of the >replication strategy framework in adempiere. (half completed)
Can you describe more?
>
>What do you think of this method of replication? I mean why did you not use it?
I'm not sure that i understand well your question?
Are you asking about existing tables in Adempiere concerning replication?
Tables described here:
http://www.adempiere.com/wiki/index.php/Sponsored_Development:_Replication#Existing_functionality
Any existing functionality will be used.
Kind regards,
Trifon
Hi Triffon,
my replication project will mostly deal with the replication of orders, bps and products from branches to HQ and vice versa.
To do it, i was planning to use the existing replication framework with the tables listed in
http://www.adempiere.com/wiki/index.php/Sponsored_Development:_Replication#Existing_functionality
I understand that it is half way done but i was planning to complete the current framework... (hopefully)
I was planning to use an EGB layer on server beans.
I want the branches or HQ to read directly into the tables of the remote location and do the replication within so predefined strategy. I am not too keen to use files to make the replication (csv)
In fact i want to know why did you choose loading files in import loaders instead of the replication framework? (i mean what do you think might be the pros or cons?)
thanks a lot!
regards,
karvesh
Hi Karvesh,
>I was planning to use an EGB layer on server beans.
I think that you mean EJB?
>I want the branches or HQ to read directly into the tables of the remote location and do the replication within so >predefined strategy. I am not too keen to use files to make the replication (csv)
>
>In fact i want to know why did you choose loading files in import loaders instead of the replication framework? (i >mean what do you think might be the pros or cons?)
Sorry if my description wasn't clear.
I do not plan to load Files into import Loaders or to use files for replication.
Files are generated now only as an example and Proof of Concept that system can export data into XML format and import data from XML format only by reading Export format defined in Application dictionary. I divided Replication project in two parts as wasn't' sure if system can create automatically xml and import them properly into the system. Dividing of development minimizes the risk in case of failure and in case that initial assumptions appear to be non real or very hard(impossible) to implement.
XML messages will be sent to external Server (JMS Server) which will take care for delivery to other JMS Server. Adempiere will just need to send message to JMS Server and read message from JMS server. JMS will take care for management of transportation.
Kind regards,
Trifon
Hello Triffon
Thanks again for your reply.
I have been reflecting on the description of the project you have have provided.
For the 2nd phase:
You will be using JMS: messages will be queued in XML format.
There will be Local and Server JMS servers.
I have a question concerning the functionality:
The replication will invlove
Records created on Central server: Product, Price, Term Credit, Business Partner.
Records created on Remote servers: Sales Order, Shipment, Invoice (Customer), Payment, Journal Cash and Business Partner , Inventory
Will it be possible to implement the replication of additional features in the future? I mean how
flexible is the implementation. Is it a lot of hard coding or rather configurations?
thanks a lot Triffon
kind regards,
karvesh
Hi Karvesh,
>Will it be possible to implement the replication of additional features in the future? I mean how
>flexible is the implementation. Is it a lot of hard coding or rather configurations?
It will be matter of configuration only.
No coding.
Power of Application dictionary is to decrease developer effort and give more freedom and tasks to users.
Kind regards,
Trifon
Hello Trifon!
thanks for the message!
I have another question concerning the replication development:
for what database are you planning to deploy the project: oracle or postgres?
thanks!
regards,
karvesh
>I have another question concerning the replication development:
>for what database are you planning to deploy the project: oracle or postgres?
both and any DB which Adempiere supports in future.
Kind regards,
Trifon
Hi guys
Its been a long time since I last looked around here. I just saw this new project with very interesting potential for adempiere (especially for posterita and remote/offline POS/CRM functionality.
http://symmetricds.sourceforge.net/index.html
it allows n-level 2-way sync between databases in intermittent/low bandwidth areas especially useful in the areas that I work in (mid-east/africa).
I attach some of their blurb for your info.
SymmetricDS is web-enabled, database independent, data synchronization/replication software. It uses web and database technologies to replicate tables between relational databases in near real time. The software was designed to scale for a large number of databases, work across low-bandwidth connections, and withstand periods of network outage.
By using database triggers, SymmetricDS guarantees that data changes are captured and atomicity is preserved. Support for database vendors is provided through a Database Dialect layer, with implementations for MySQL, Oracle, SQL Server and PostgreSQL included.
Synchronization can be configured to push data (trickle-back) or pull data (trickle-poll) at an interval. SymmetricDS allows for 2-tier and even n-tier synchronization, such as the following:
* A farm of web server nodes fronting an enterprise-class general office database
* A handful of regional servers for synchronizing from the general office to remote geographical areas
* 1000(s) of store server nodes using a departmental class database to sync with a regional node
* 10(s) of Point of Sale (POS) register nodes using an embedded database to sync with a store server
Deployment options include the following:
* Web application archive (WAR) deployed to an application server such as Tomcat, Jetty, or JBoss
* Standalone service
* Embedded in an application
anyone have try funambol,
the project is based on syncml, and i can see they move to become 2 new market, push mail and data sync, they have db connector to sync 2 database.
but i never success install it, but scalix.com did integrate the mail with funambol.
hello Frans
Funambol is and I believe is an application server that provides push email, Mobile email (Blackberry like), address book and calendar (PIM) data synchronization, and device management, you cannot use it to synchronize to databases.
http://www.funambol.com/
http://en.wikipedia.org/wiki/Funambol
Regards
Muthah
Hi Team,
i would like to inform you that Replication is in test phase now.
Kind regards,
Trifon
Trifon, I would like to help in the testing phase.
Regards Paul
Hi Victor,
I'm just starting to work on a project that requires replication as described in http://www.adempiere.com/wiki/index.php/Sponsored_Development:_Replication#Requirements.
Therefore I would like to help in making replication stable.
I also have one (or maybe two) question(s):
Is it correct, that from adempiere's point of view replication is just exporting and importing xml strings via server processes?
So transporting these xml data between different servers is handled outside of adempiere (e.g. by jms or shell scripts), right?
Regards,
Tobi
http://www.metas.de
Hi Tobi,
> Hi Victor,
>I'm just starting to work on a project that requires replication as described in >http://www.adempiere.com/wiki/index.php/Sponsored_Development:_Replication#Requirements.
>
I will answer as i'm responsible for development of replication.
>Therefore I would like to help in making replication stable.
>
>I also have one (or maybe two) question(s):
>Is it correct, that from adempiere's point of view replication is just exporting and importing xml >strings via server processes?
Yes. Replication is export and import of data. I implemented xml import/export but any other format is possible too.
>So transporting these xml data between different servers is handled outside of adempiere (e.g. by jms >or shell scripts), right?
Yes. Currenlty i have implemented JMS and FTP transport, but any other transport is possible too.
Supoprt of development is greately welcome.
Kind regards,
Trifon
Hi Trifon,
>Support of development is greately welcome.
How can I help?
Regrads,
Tobi
Hi Tobi,
>>Support of development is greately welcome.
>
>How can I help?
Two ways:
1) Development
2) Sponsorship
Kind regards,
Trifon
Trifon,
Is this to say that currently as long as you use the two modes you have specified Adempiere functionality is good to go?
Are there any caveats that we should know of?
Regards
Ngigi Waithaka
hi Ngigi,
>Is this to say that currently as long as you use the two modes you have specified Adempiere functionality is good to >go?
I'm sorry but question is not clear for me.
>Are there any caveats that we should know of?
Every application/functionality has strong and weak side. Tests will show which are good and bad side of current functionality.
Kind regards,
Trifon
Trifon,
Sorry my question was not clear enough.
What I would like to know is whether Adempiere replication is production quality?
I am looking at setting up Adempiere for central office and then at least 2 remote offices with POS.
The products are defined(Requisition, Purchase) in Central office while the sales are in the remote centers.
Is the current functionality able to replicate this. If not, what in your opinion do you think would not be possible?
Regards
Ngigi Waithaka
>What I would like to know is whether Adempiere replication is production quality?
Current phase is test. Functionality is working.
>I am looking at setting up Adempiere for central office and then at least 2 remote offices with POS.
>The products are defined(Requisition, Purchase) in Central office while the sales are in the remote centers.
>Is the current functionality able to replicate this. If not, what in your opinion do you think would not be possible?
Yes. This can be done.
Kind regards,
Trifon
Dear Trifon!
I am try test the replication but current a get a error with current trunk when load the data test.
please can you review this issue for I can continue with the test.
kind regards
Victor Perez
CEO
www.e-evolution.com
hi Victor,
>I am try test the replication but current a get a error with current trunk when load the data test.
which ant task do you start?
kind regards,
Trifon