Skip to main content

Posts

ORA-00959: Tablespace 'MAXIMO' does not exist

Error occurred while doing updatedb: Maximo 7.6.1 - Oracle 12c (12.2) - Websphere 9.0.0.7

ORA-00959: Tablespace 'MAXIMO' does not exist

After creating oracle database instance, we creates tablespaces MAXDATA, MAXTEMP and MAXINDEX.

Identify whether store partitions of the tables and indexes are correctly inserted in below tables:

SELECT DISTINCT STORAGEPARTITION FROM MAXTABLECFG;

if it returns MAXIMO, then run below query

UPDATE MAXTABLECFG SET STORAGEPARTITION = 'MAXDATA' WHERE STORAGEPARTITION = 'MAXIMO' ;

UPDATE MAXTABLE SET STORAGEPARTITION = 'MAXDATA' WHERE STORAGEPARTITION = 'MAXIMO' ;

COMMIT;

Now will verify in MAXSYSINDEXES

SELECT DISTINCT STORAGEPARTITION FROM MAXSYSINDEXES;

if it returns MAXIMO, then run below query

UPDATE MAXSYSINDEXES SET STORAGEPARTITION = 'MAXDATA' WHERE STORAGEPARTITION = 'MAXIMO' ;
COMMIT;

For me, above solution is worked. Please try in dev environment and analyse the solution, before you apply to production.

Recent posts

Kill Oracle session

Sorry guys, its been long time.

Error occured in Maximo 7.6.1 and Oracle 12c. This error occured while doing db config after adding index in WORKORDER table.

Error: ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired

Ran below query to find out the locked sessions:

select a.sid, a.serial#,b.object_id,b.oracle_username,b.os_user_name,c.object_name,c.owner from v$session a, v$locaked_bject b, dba_objets c where b.object_id = c.object_id and a.sid = b.session_id and object_name='<TABLE NAME>';

Once you get the output, note the sid and serial# values.

Run below query to kill the locaked session by login into sqlplus as user 'system'. If you know any user like 'sys' or 'maximo' having privileges to kill session, use them.

alter system kill session 'sid,session#'; -- Replace the sid and serial# values in the query.

Now verify DB config is stuck:

select * from maxvars where varname = 'CONFIGURING'; --Verify VARV…

MBO Date Formats

Sometimes we need to filter the MboSet records based on dates.
By using MXFormat.dateToSQLString(Date d) you can get the date format as "yyyy-MM-dd".
For example:
MboSetRemote mboSetRemote = getMboSet("ASSET");
mboSetRemote.setWhere(MXFormat.dateToSQLString(getDate("STATUSDATE")));

Here MXFormat.dateToSQLString will return date as string and format is '2015-09-17' (with single quotes).

If your database is using different date format, then update it in system properties mxe.db.format.date and use SQLFormat.getDateFunction(Date d)
For example:
MboSetRemote mboSetRemote = getMboSet("ASSET");
mboSetRemote.setWhere(SQLFormat.getDateFunction(getDate("STATUSDATE"));

Here SQLFormat.getDateFunction will return date as string in two ways:

1. If mxe.db.format.date is not null/blank then it will return string with given date format in this property.
for example: If mxe.db.format.date is dd-MM-yyyy, then return string will be '17-09-2015'

BMXAA6002E - You cannot save object JOBPLAN : Job Plan=TESTJP1 Organization=ORG1 Site=SITE1 Revision=0 because of the data security restrictions. If you save the object, it becomes read-only and hidden

Error: BMXAA6002E - You cannot save object JOBPLAN : Job Plan=TESTJP1 Organization=ORG1 Site=SITE1 Revision=0 because of the data security restrictions. If you save the object, it becomes read-only and hidden

Environment: Maximo 7.6.0.1

Steps to reproduce above error:

1. Create a job plan and save it with DRAFT status.
2. Create a condition expression "status <> 'DRAFT'".
3. Create a global data restriction --> Object restriction --> Object JOBPLAN , app JOBPLAN , READONLY and add condition created in step 2.
4. Create a new user and associate a security group which has access job plan application (not maxadmin group).
5. Login with new user and go to job plans application.
6. Change status of job plan created in step 1 to ACTIVE and save the record.
7. Above error will occur.

Note: These steps will reproduce error in Maximo 7.6.0.1. In Maximo 7.1, job plans are editable even status is ACTIVE. So above steps will not reproduce errors in Maximo 7.1.

Cause: Out…

Maximo restore database error in SQL Server

System.Data.SqlClient.SqlError: RESTORE cannot process database '<DbName>' because it is in use by this session. It is recommended that the master database be used when performing this operation.

While restoring database, faced above issue.
Even though all services stopped, still restore database given error that “Database is in use by this session”
Solution:
Connect to Sql server management studio:
Expand SecurityàLoginà Right click on “maximo” à Click Properties
Default database:” value = <your database name>. Change it to “master”.

Automation Script - Retrieve List

Sample code - Retrieve list event of attribute launch point in automation script:

In my example, I want to display only PR companies starting with "SK".

1. Created a table domain, TEST_COMP_SK
2. Create a attribute launch point and select option "Retrieve List".

Launch point name: TEST_PRVENDOR
Object: PR
Attribute: VENDOR

Script Name: TEST_RETRIEVELIST
Script Language: jython

Source Code:

domainid = "TEST_COMP_SK"
listWhere = "COMPANY LIKE 'SK%'"
listOrder = "COMPANY"

Save the script.

THATS IT :)

Now you can test in PR application - Company lookup - It will display companies starting with SK and order by company name ascending.

Below information will give the list of implicit variables in Retrieve List event:

1. domainid - Specifies the domain that is used to provide the list of values that are shown for the attribute launch point.
2. listWhere - Establishes which set of result data is displayed and which filter is set before the resu…

Error: The mbo value info for atttribute AUTHALLGLS for object grpreassignauth could not be retrieved

One of my friend faced this issue. This error is little bit tricky, because there is no attribute called "AUTHALLGLS" exist in GRPREASSIGNAUTH table. But still maximo throws this error. And also error logs will not provide any detailed information. This error can find in system out log as a warning.

This error can occur while creating new security group or assigning security group to user.

Cause: Few security groups has granted access to create users.

Solution: Except for MAXADMIN security group, need to remove granted access to create users for other security groups.

I am providing this in my blog, just in case, if anyone faces this issue and not to waste their time to solve it.