I need to customize Compiere to do the following:
A CRM system for a service company that is workflow oriented, (every customer will go through a serie of steps to get one or more services provided). So the idea is to categorize customer by the process/workflow he involved. To describe the requirement at a very high level, the system should provide all the workflows/process infomation of a customer by a simple look up, and the user should be able to define trigger/notification at any step along the workflow. The trigger/notification can be a predefined set of rules, i.e. for workflow W1 if condition C1 is realized, Trigger T1 is true. It can also be a bit more complicated, i.e. if Trigger T1 and T2 are both true and T3 is false, T4 is true, but most of the time are simple cases.
Here are the question I came up with:
1. how to define workflows in Compiere?
2. how to input/import customer data, correct me if I am wrong, the Business Partner section with some customization seems to a match the requirement
3. provided 1 and 2 is done, how can I associated customer with workflow?
4. how to define trigger/notification in a workflow process.
experties in Java and SQL are avaliable for this project, so if any customization need to be done in code level are also welcome. Can this be done in compiere with reasonable amoung UI costomization and/or code extension. any advise, opinion (positive and negative), suggestion will be greatly appreciated.
Probably the closest Compiere process seems to be , Project Management cycles.
However it may be advisable to design new/modified entities/tables, and extend Compiere. Adding table attributes/columns, windows, reports, and input validation is relatively simple. However the triggers, processing logic will have to b developed.
An outline solution could be along the following lines:
1. An entity to store the standard workflows, eg. one for a new customer line, a repair order, ordering/procuring equipment and installing it etc. With multiple records, for each activity in that workflow, possibly have reference to the resources required to execute the activity.
2. Handle the Customer entity record keeping in the existing Compiere functionality. When the Customer requires a service, pick it up from the above entity, enter the customer-ID, schedule info, and service-ID.
3. Check the resource availability, and schedule the service request.
4. Track the service request with actions completed. Report, by exception/triggers on conditions beyond limits.
5. The above data-set can be accessed by Customer, Process, Resource etc.
These extensions would enhance Compiere's CRM and Field Service functionality.
Further research we had done indicate that Compiere might be a overkill for this phrase of the project, although we are still considering using your product for the next phrase. There are other options being consider, i.e. OFBiz(the workflow engine specifically) and OSWorkflow etc, now say if we do use one of these open source workflow engines to complete the task at hand, how difficult would it be to integrate, say OSWorkflow, into compiere. In another words, what kind of engineering problem is it to extend compiere by intergrating other open source project into it. I do realize that this is not a task to be taken lightly, but personally, I think this would add alot of values to compiere if it provide a framework/architecture to work with other open source projects. what do you think? Thank you for your time and help.
Sign up for the SourceForge newsletter:
You seem to have CSS turned off.
Please don't fill out this field.