Technical Blog Post
About grouping PM generation into to generate at a time
We were wondering how we could stagger PM generation within an organization across time zones and how we could further divide up the PM generation within a single large site. We would ideal like to be able to group our PM generation into even groups to generated at a certain hour within their time zone and use multiple Crontask to generate them. We can current only control the PM generation at the site configuration level. We seem to only be able to run all PMs with a single crontask with this configuration.
PMWoGenCronTask executes for all sites that the "user" has access to. When a PM Wogen crontask runs, it executes across all org/site combinations, which have automatic work order generation for PM enabled and for which the where clause defined for the site returns records.
In that scenario, Maximo currently does not offer a functionality that allows you to do that, and some Maximo documents mention that it is important not to set up multiple instances which may contain the same sites within the users group, since this could cause errors when processing the records for generation. In other words, you cannot just set up multiple cron task instances to all process the same Site, or recordset as defined by the PM where clause.
However, if you still would like something to workaround this, I believe you can do the following :
NOTE : This is just a try, I'm not sure if it will fully meet your needs, but feel free to try it on a TEST environment. :)
The PMWoGenCronTask could be divided across multiple JVMs by creating individual crontask instances, each assigned to an user restricted to see specific PM records from the same site. These specific users would have access to different PM records on the same site based on Security Restrictions / Object Restrictions defined in Security Groups app.
These users would be set as Run as User for each specific crontask instance for the PMWoGenCronTask.
In other words, you would create multiple administrative users that could run the PMWoGenCronTask, and each crontask instance would use a different value for Run As User. The important, and implied detail, is that the crontask instances need to be selecting different record sets.