A Division of Technology Associates International Corporation
Maximo Blog

The relationship between Domains and MBOs

June 06, 2009 in Maximo, Maximo 6, Maximo 7, Maximo: Programming by Michael Chrisman 3 Comments

There is a relationship between domains and MBOs that until you understand it, can be very frustrating. For example, you create an MBO (or even use an existing MBO), you then create a domain, attach it to a field in the MBO, but when you go to use the screen, there is no data in the domain (even though you did add data). I have seen people add a domain twice just to try to solve this problem. However, the solution is not adding the same domain multiple times, but rather understanding the relationship between the domain and the MBOs.

When you create your domain, you will notice there are SITEID and ORGID fields. These fields are optional.

DomainSample

These field determine what Site and/or Org the domain is for. How this is related to an MBO is on the MBO there is a Level attribute.

DBConfigScreen

This attribute has several options.

LevelOptions

You have to set up these values in the correct combination. This table gives you an overview. Any other combinations will return an empty domain.

DOMAIN Value Filled in MBO LEVEL value Results
both blank COMPANYSET
ITEMSET
ORG
ORGAPPFILTER
SYSTEMORG
SITE
SITEAPPFILTER
SYSTEMSITE
ORGSITE
SYSTEMORGSITE
SYSTEM
SYSTEMAPPFILTER
Displays all values in the domain
SITEID
SITEID and ORGID
SITE
SITEAPPFILTER
SYSTEMSITE
Displays domain data for the SITEID of the current record
ORGID
SITEID and ORGID
ORG
ORGAPPFILTER
SYSTEMORG
Displays domain data for the ORGID of the current record
SITEID and ORGID ORGSITE
SYSTEMORGSITE
Displays domain data for the SITEID/ORGID of the current record

It is important to understand that this behavior is regardless of how many org or sites you have (even if you only have one org and one site). As a general rule, if the values in the domain are NOT site or org specific, then leave the SITEID and ORGID values blank.

Technorati Tags: ,

Comments

Wes Faul
Posted on June 16, 2009

Is there an MBO that ties a domain to a field?  I currently am trying to get a list of valid domains for a particular field and cannot figure out how to programatically determine which domain is tied to which MBO field.
Thanks

Michael Chrisman
Posted on June 16, 2009

Wes,

This SQL should get it for you:

SELECT * from MAXATTRIBUTE where domian = ‘DomainID’;

Mike

Wes Faul
Posted on June 17, 2009

The problem that I have is that I can’t find anywhere to find which DomainID a field uses.  For example, I have an MXAsset record.  All I know is that the Type field has a data type of MXDomain, but I can’t find a way to tie that field (through the MEA web services) to the ASSETTYPE domain.  Is there a way to do that?  Or does the domain id need to be manually mapped to the field?
Thanks

Post a Comment

Remember my personal information.
Notify me of follow-up comments?

We don't know if you're a human. Confirm below: