Like any other solution BPC needs to be maintained and needs general housekeeping. Recently, I have been assisting customers with various performance related issue. One of the first things that strike me is that the general housekeeping of BPC is not being done.
A simply example would be the maintenance of the WebFolders. (Please Note: This blog is applicable to the MS Version)
The BPC WebFolders is like a file server, it still needs to adhere to best practises. In doing the performance troubleshooting, I often find that performing some basic maintenance on the WebFolders structure can go a long way in improving the overall performance of the SAP BPC solution.
General best practise recommendations are:
- Remove any EVDRE debug files
- Remove any files in the PrivatePublications that are older than 6 months
- Remove *.TMP files older than 6 months (You could remove all of the files, it is a copy of your imported data, technically speaking that data is already in the database)
- Remove *.LOG files older than 6 months
- Remove any inactive / old / backup reports or input schedules that are not being used
This kind of housekeeping can be done manually at regular intervals, but it would be way better if this could be automated and scheduled. Hence the reason for this blog.
I wrote a simple C# console application which recursively would go through the WebFolders and remove the files which need to be removed. It is a simple application which can be expanded to do more tasks.
You can download the program from the following link:
You can download the source code from the following link:
How the program works..
Pre-Requites: .NET 2.0 Framework
Essentially the core of the program is in the config file. It is called MaintainBPC.exe.config
In the file you will find the following configurable parameters which have to be amended to reflect your environment
- CleanWF_Log_File – This is the a log file where the operations of the program will get recorded to
- BPC_WebFolders_Path – This is the path of the BPC WebFolders
- Deletion_Period – This tells the program how old the files must be before deleting them
- Delete_Ext – This tells the program which files to delete, this is an important configuration parameter, as you don’t want to delete any input, reports, script logic files, etc
- Prod_Mode – this tells the program to move the files and not to delete the files (this provides an extra layer of security, as you will have to manually peruse the TobeDeleted folder before deleting the files
- ToBeDeleted_Path – this folder will be used when Prod_Mode is set to true
This program has been tested on BPC 7.0 and 7.5. I haven’t tested it on BPC 10 MS version yet. I am not a programmer, so I am pretty sure that there are ways of improving the program.
Please Note: This program will not be supported by SAP product support and as not standard functionality nor delivered with SAP BPC.
Please test the program thoroughly before deploying and RULE 1; always ensure that you have working backups.
Hopefully this program will help out some of the customers in automating some of the maintenance around the BPC WebFolders.