I’m fairly new to the server side of Business Objects. I’m using 6.1b with windows OS. One of our user has stored up many unread documents and is requesting them to be deleted. I can find the read docs in the storage folder, but where are the unread docs found?
It has been a while, but I believe there is an option to remove unread inbox documents via the Supervisor application. I know it has been a while because when I tried to start my 6.5 local install to check it told me my license key had expired. So I can’t check to confirm.
If you search in the Supervisor forum for “unread inbox” you will get some topics that help you out.
Yes, you are correct there is an option to the purge the inbox in supervisor. The only problem is that it purges every users inbox, and I only have the request from 1 specific user to have their inbox purged.
I think that there is not a real instance of the unread document anywhere in the file system in BO server.
There is only information about the unread BO inbox document(s) in the BO repository tables.
So unless you want to play with the BO repo data (which is not supported) the best way would be to “hack” the user’s BO account (change the password and then login as him/her) and manually delete those unread documents from his/her inbox. Then set the “change password at first login” so the user will be prompted to change the initial password.
I had a feeling that was going to be the answer. I will just tell the user they are SOL and have to manually delete all their unread mail themselves.
If it becomes too much of a problem I will let all the users know that I will be purging documents that are more than a month old to clean up space on the server.
if you use trace when performing the “purge” operation, you are able to catch the SQL generated by BO to achieve this operation
delete from OBJ_M_ACTORDOC where M_ACTDC_N_DOCID in (13) and M_ACTDC_N_ACTORID = 12
delete from OBJ_X_DOCUMENTS where OBJ_X_DOCUMENTS.X_DOC_N_ID IN (13)
delete from OBJ_M_ACTORDOC where M_ACTDC_N_DOCID in (13)
delete from OBJ_M_DOCUMENTS where M_DOC_N_ID in (13)
DELETE FROM OBJ_M_DOCAT WHERE M_DOC_N_ID=13
DELETE FROM OBJ_M_DOCATVAR WHERE M_DOC_N_ID=13
delete from OBJ_M_OBJSLICE where M_OBJS_N_ID=13 and M_OBJS_N_TYPE=516
delete from OBJ_M_OBJSLICE where M_OBJS_N_ID=13 and M_OBJS_N_TYPE=515
delete from OBJ_M_OBJSLICE where M_OBJS_N_ID=13 and M_OBJS_N_TYPE=514
delete from OBJ_M_OBJSLICE where M_OBJS_N_ID=13 and M_OBJS_N_TYPE=513
delete from OBJ_M_DOCCATEG where M_DOC_N_ID = 13
where 13 is the DOC_ID and 12 the USER_ID
if you want an advice, check it first on dummy access repository with select statement instead of delete. After, when you are sure, use it as your own risks because as it has been said that it was not supported of course. As far as we are concerned, we use it without trouble in our Bo environement
what SQL statements would remove reports from the repository older than say 200 days ? we want to automatically remove reports older than a certain number of days. thanks
purging inbox what was this topic’s subjects is not the same thing than purging reports from corporates documents olders than 200 days. you can make a sql on obj_m_documents with a condition regarding the date easily to display the ones concerned