These list describes the features of the existing CRM application.
Those features that I would like to keep and move into the new framework.
One feature that I would like to get rid of is the dialog that
pops up from time to time saying Application Error.
The product has a server based job scheduler for scheduling tasks
which are written in Delphi Web Script which can be tested in a small
IDE on the client. There is a script showing all the commands available
but not all are tested (or even functional). One problem is that DWS
has been updated since then but the new version is pretty different
from the old. I haven't looked at the implications of upgrading.
A Multithreaded PC Server - would have been made into a service
but not done yet. The entire server is created as a component and is
just added to a form (or service form) and can be started and stopped
etc.I had intended to make a full client server version on an Interbase
(now firebird) database but I never got that far. You do not need the
server to run at this point.
Serverguard to restart the server - (like FBGuard in firebird or
IBGuard in interbase). Server guard checks continually to see if the
server is running, if not, it starts the program again. It also talks
to the server and checks to see if the server has "stopped responding".
If so, after a period (to be safe), the server program is shut down and
restarted.
Status based configurable processing. For example - Create
invoice when order status changes from pending to done or add task (or
schedule a future task) for a user when a prospect becomes a client etc. The Basis for a graphical workflow module.
Multi language/currency. Because of hacking the security to make
the demo, the language editing module does not work from within the
main program. Just run languageMod.exe to have a look.
Password hashing *** Dont enable passwords, you may never see the inside of the program again***
Store documents in database and attach to invoice, resource,
product, client etc (this seems to be working only on the client page
for some reason not the company, agent, supplier or prospect).
Table level auditing that can be switched on and off as desired by admin.
User defined fields (not sure at what stage this is) Have a look
at Master data/Prospect on the contacts tab. If a user defined field is
added to the database, the button in the top right is displayed. This
is on all forms.
Resource grouping for mass emails etc
Incoming mail filtering and auto forwarding defined by rules. eg
forward to sales if "Web Enquiry" is in the subject or generate
statement and reply if "Statement Request: ClientA" is in the body.
Status Change Actions defined for most documents/products/resources
Template based emails and reports - send to individual contacts at a customer in his/her own language (if you know it).
Actions (DWS scripts) are scheduled as events. Events are grouped
into defined schedules. Defined schedules are copied to a scheduled job
queue and await the times in the event definitions. Jobs can have
dependencies and scripts can run other scripts if completed
successfully or not