[xwiki-devs] Automatic document generation on xwiki based on external database
Hello! I'm planning the development of the following functionality: - Running xwiki instance on MySQL; - There will be an external database (a Datawarehouse to be more precise), with business indicators - If any of the indicators reached a predefined limit value, I' d like to have my xwiki generate a document with information about this event and send an e-mail alert to the administrator (or other users) My strategy may be to create a IndicatorClass with some properties like name, description, businessarea, currentvalue, limitvalue, externalTable, externalColumn etc. Then I'll have to update these indicators on a regular basiis, which I could do with a procedure that will check the external database and get the latest values. For those which reached the limit values, I'd like to generate automaticaly a document (of the class Risk for instance) and send an e-mail to warn of these risks. What do you think? Maybe a plugin could be a more structured way of doing this... Thanks in advance for your tips :) Bye, Ricardo. _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
Hi, You can do this in two ways: one is to make the wiki regularly check on the warehouse, and create documents when it detects the watched events, the other one is to put a notifier between the warehouse and the wiki, either directly in the database system, if it supports such things, or as another application that watches the warehouse and communicates back to the wiki. The first variant has the advantage that you don't need another tool, or to change the database settings, you will have the watch mechanism included in XWiki. It has the disadvantage that you will have to write it. You could use the new scheduler plugin we have, combined with some Groovy scripting, which will make things a bit easier. The second variant has the advantage that you will use something existing, you won't have to write it from scratch. If you use a database functionality for this, another advantage is that you won't poll for changes, you will get notified exactly when something happens in the database. On 9/2/07, Ricardo Pinto <[email protected]> wrote:
Hello!
I'm planning the development of the following functionality:
Running xwiki instance on MySQL; There will be an external database (a Datawarehouse to be more precise), with business indicators If any of the indicators reached a predefined limit value, I' d like to have my xwiki generate a document with information about this event and send an e-mail alert to the administrator (or other users) My strategy may be to create a IndicatorClass with some properties like name, description, businessarea, currentvalue, limitvalue, externalTable, externalColumn etc. Then I'll have to update these indicators on a regular basiis, which I could do with a procedure that will check the external database and get the latest values. For those which reached the limit values, I'd like to generate automaticaly a document (of the class Risk for instance) and send an e-mail to warn of these risks.
What do you think? Maybe a plugin could be a more structured way of doing this... Thanks in advance for your tips :)
Bye,
Ricardo.
Sergiu -- http://purl.org/net/sergiu
Thanks Sergiu for your answer. I was thinking of using wiki for that, maybe if I have to write it myself ;) I'll take a look at the scheduler plugin and try to use it to update my indicators. I saw that I can put some code in a page and then set a XWiki.Task to handle it, which is great. I was wondering if it's somehow possible to call a mySQL procedure from velocity/groovy, which will solve the problem... Is there something like this in the API? Maybe with some configuration changes in the HSQLDB file.. What do you think? Regards, Ricardo Pinto. On 9/17/07, Sergiu Dumitriu <[email protected]> wrote:
Hi,
You can do this in two ways: one is to make the wiki regularly check on the warehouse, and create documents when it detects the watched events, the other one is to put a notifier between the warehouse and the wiki, either directly in the database system, if it supports such things, or as another application that watches the warehouse and communicates back to the wiki.
The first variant has the advantage that you don't need another tool, or to change the database settings, you will have the watch mechanism included in XWiki. It has the disadvantage that you will have to write it. You could use the new scheduler plugin we have, combined with some Groovy scripting, which will make things a bit easier.
The second variant has the advantage that you will use something existing, you won't have to write it from scratch. If you use a database functionality for this, another advantage is that you won't poll for changes, you will get notified exactly when something happens in the database.
On 9/2/07, Ricardo Pinto <[email protected]> wrote:
Hello!
I'm planning the development of the following functionality:
Running xwiki instance on MySQL; There will be an external database (a Datawarehouse to be more precise), with business indicators If any of the indicators reached a predefined limit value, I' d like to have my xwiki generate a document with information about this event and send an e-mail alert to the administrator (or other users) My strategy may be to create a IndicatorClass with some properties like name, description, businessarea, currentvalue, limitvalue, externalTable, externalColumn etc. Then I'll have to update these indicators on a regular basiis, which I could do with a procedure that will check the external database and get the latest values. For those which reached the limit values, I'd like to generate automaticaly a document (of the class Risk for instance) and send an e-mail to warn of these risks.
What do you think? Maybe a plugin could be a more structured way of doing this... Thanks in advance for your tips :)
Bye,
Ricardo.
Sergiu -- http://purl.org/net/sergiu _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
participants (2)
-
Ricardo Pinto -
Sergiu Dumitriu