cancel
Showing results for 
Search instead for 
Did you mean: 

Alfresco as the underbelly of a legacy system

jay_ydar
Champ in-the-making
Champ in-the-making
Hi,
i might be OT or asking way too obvious questions  here but  was simply unable to find the answers in this forum so far, maybe to a lack of correct lingo on my side:
What I am trying to achieve is geared more towards old fashioned DMS:

I would like to mount my Alfresco Repository via CIFS and use it as a “normal fileshare” onto which a legacy application stores the letters and templates that this application produces or is being handed to keep attached towards a matter.

This legacy application stores its files in folders which in their hierarchy represent a matter id (as in doc_root/case_type/serial_no/location_id/extender/letter.doc)
At first I want to create an alias/symbolic link on my repository to represent those folders in a flat list
( so that it looks like doc_root/case_typeserial_nolocation_idextender/letter.doc)
That part I could do the OS/CIFS level, but since I want to remain cross-platform, i´d like to know whether alfresco provides a native functionality for symlinks of folders?


Secondly i´d like to have a script watch each folder on the bottom layer and perform CRUD operations against the legacy app´s SQL db (mainly T-SQL or PL/SQL), so that a table on the legacy apps´s db is being updated each time I add a file to one of the bottom folders of the legacy app.
What would be the best environment to create such a script ? .js? java?

In general what would be the best way to let Alfresco drive CRUD Operations against extern databases ?

I know that this sounds like a hack, but it would take away a lot of pain in a transitional period

Thanks for your thoughts.
Jay
1 REPLY 1

jpotts
World-Class Innovator
World-Class Innovator
i´d like to know whether alfresco provides a native functionality for symlinks of folders?
A given node can have multiple parents. In your example, doc_root/case_type/serial_no/location_id/extender/ might be the primary parent of letter.doc and doc_root/case_typeserial_nolocation_idextender/ could be a secondary parent.

Secondly i´d like to have a script watch each folder on the bottom layer and perform CRUD operations against the legacy app´s SQL db (mainly T-SQL or PL/SQL), so that a table on the legacy apps´s db is being updated each time I add a file to one of the bottom folders of the legacy app.
What would be the best environment to create such a script ? .js? java?

In general what would be the best way to let Alfresco drive CRUD Operations against extern databases ?
There are a lot of ways to do this. You could:
- Put a rule (Java, JavaScript) on the folder so that when a new document gets added, the rule fires and then invokes a web service.
- Implement a behavior bound to a specific type or aspect that would trigger the web service invocation.
- Implement your file-system polling idea using any language you want that knows how to either look at the repository as if it were a file system via CIFS, WebDAV, or FTP and then makes calls to the db
- Implement a poller that looks at the repository via CMIS using one of the CMIS APIs (Java, Python, PHP). When you configure Alfresco to turn on auditing, CMIS change sets can be used. Seems like that might be a nice thing to leverage for something like this.

Hope that gives you some ideas to go on.

Jeff