Archiving of cases is relatively not much known topic. Typically, archiving strategy should be planned along with the implementation itself but does not get that much attention at that point of item. Typically, after 2-3 years of operation, archiving becomes important by that time there would have been enough objects created in the database so as to make some difference in the performance of the system.
For archiving cases in NW Folder Management(NWFM), there is an archiving object SCMG provided. This archives the case record, process route & case notes as of now. Point to be noted here is that archiving of case record does not mean that the objects which are linked to the case get archived too. They do not. Just the links to them which exist in the case record get archived. So if for your scenario, archiving case means archiving all linked objects along with case then first archive those objects & then archive the case. This way you can keep a check on what got archived & what not.
Archiving case has got several steps:
- Setup the customizing for archiving:
- The first & foremost thing to do is setup the options to decide which cases are archived – this is based on the case type, case status & the retention time( time since the last change on the case).You also have to select a functionaing content server for moving case record content(check content repositories in transaction OAC0).- All this is to be done in option Set Archiving Time.
- If you have added subcomponents of your own to the case then there are two options for you to archive those along with case:
- For the custom subcomponent you can create an archiving class. In the class which implement the business logic/backend, you can implement interface IF_SCMG_ARCHIVABLE.& add code to register the archiving class in method INIT.
- Register the subcomponent for archiving in IMG option Register Classes for Archiving Own Subcomponents.
- Implement the BADIs given in pre-processing(BAdI:Extend Archivability Check), write(BAdI:Extend Archiving of Case Data) & delete(BAdI:Extend Case Data Deletion) operations to take care of the tables of your subcomponent. This option is also for related objects in say other applications which are not attached to the case as subcomponents.
- Copy over the case record content to the content server which functions as archive for content. This is done by program CASE_RELOCATE_PROGRAM.
- Go to transaction SARA & execute the following for archiving object SCMG:
- Preprocess the cases for archiving( button Preproc )
- Write the cases to archiving( button Write )
- Delete the cases from application Database( button Delete )
- With this archiving process for cases is complete.
Some other things of interest:
- You can read case in archive (archive should be connected) & display standard attributes, customer attributes, case notes & case record( button Read for archiving object SCMG in transaction SARA).
- Currently a default archiving information structure is delivered with which standard archive search is done(this is used in reading cases from archive). If you want to use custom attributes for searching & reading the cases from archiving then make use of IMG option Define Attribute Search for Cases. The steps are given in the IMG node documentation.
- It is not possible to reload the archived cases in the system.