Tuesday, March 11, 2014

Automatically Refresh the Start Center for each user

Goal:
Bulk refresh a Start Center for all the users in Maximo 7.5.


Problem:
I updated the Start Center a lot of users use. Problem is that every user has to click on the ' Update Start Center' link in order to see the updates.

Solution:
Run a script that forces an update of the Start Center after a user logs in.
This can be done by deleting the layout associated with the user's Start Center and then deleting the Start Center config.
This solution requires that you can login on the Database with the maximo user.


First off, the start situation, a Start Center with three applications for the user GZOTEST;


Next I login as MAXADMIN to modify the Start Center template so that it contains a Bulletin Board;



I login as GZOTEST and the startcenter is not updated;



I need to click on 'Update Start Center' in the top right corner to see the Bulletin Board;




The changes are shown to the user. This is the manual method, and each user has to click on the 'Update Start Center' link in order to see our changes.


Now in order to show the changes automatically to the user.

First I wil change the Start Center again as MAXADMIN.


I added 'Inbox/Assignments' to the left column.

When I login as GZOTEST the changes are not shown:


Log out again and open a DB tool (I use SQL Developer)
Run the query: 

select * from scconfig;


For each user a record exists in this table. We can see the SCTEMPLATEID the user has assigned.

now run: 

select * from layout;



This shows all the elements assigned to the different users. When the user clicks on the 'Update Start Center' link this table is checked and updated. 

Next we want to delete all the records in the layout table and scconfig table matching the Start Center we want to update. In our example this is '2'
Run the two queries below to delete these records.

delete from layout
where scconfigid in
(
 select scconfigid
 from scconfig
 where sctemplateid = '2'
);

delete from scconfig
where sctemplateid = '2';


Do not forget to commit the changes to the database if you use an Oracle DB, like in my example.



Next I login to Maximo as GZOTEST again.


et voila, the Start Center shows the lastest addition, the 'Inbox / Assignments'


GNZ.