IBM Support

IV30616: THE PERSON DOES NOT EXIST OR IS NOT ACTIVE ERROR WHEN INSERTING RECORDS IN HSE APPLICATIONS

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • The following error is displayed when trying to insert records
    into the
    Risk Assesment and Operating Procedures
    applications:
    "BMXAA3097E - The person does not exist or is not active."
    
    The error appears in, at a minimum, these two applications, and
    the
    client scenario is that Active Directory integration results in
    the
    PersonID records are different than the associated UserID
    record.
    
    Steps to Reproduce:
    Log in to maxdemo with a user id that has a different person id
    In any of the Oil & Gas, or HSE applications, such as Operating
    Procedures or Risk Management, insert a new record;
    Error message appears;
    
    NOTES:  The customer has made the following observations from
    his
    analysis of the code:
    "... the validation is checking for a valid person id (Which you
    confirmed)->
    which throws an error when the field is autopopulated with the
    userid
    when a new record is initially created."
    
    "...In the PlusGProcedure class located in the
    <drive>...\SRM\maximo\applications\maximo\businessobjects\classe
    s\psdi\p
    lusg\app\plusgproc directory, the Add() method sets values for
    some
    fields.  In our scenario, we can see that the createdby field is
    set to
    the UserID of the logged in user.
    public void add()
        throws MXException, RemoteException
      {
        super.add();
        Date localDate = MXServer.getMXServer().getDate();
        setValue("status",
    getTranslator().toExternalDefaultValue("PLUSGPROCSTATUS",
    "DRAFT",
    this));
        setValue("statusdate", localDate);
        setValue("createdby", getUserName());  <---Origin of the
    problem
        setValue("createddate", localDate);
      }
    In addition, the PlusGFldProcedureCreatedBy class file in the
    same
    directory extends the fldPersonID class which validates the
    contents of
    the createdby field.
    So when the field is prepopulated with the logged in person's
    userid and
    that value is validated against the logged in person's personid,
    an
    error is thrown because the userid is not valid in the person
    table.
    Repeating again that this only occurs when you opt to have
    different
    personids and userids, as in our case."
    
    The client suggested to change the setValue("createdby",
    getUserName());
    line
    to setValue("createdby", getPersonId());
    
    "... Any place where a field class is an extension of the
    fldPersonID class and any auto initiating value is set using the
    getUserName() method will throw the same error.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * IBM Maximo for Oil and Gas 7.5 users of applications         *
    * Operating Procedures (Oil)  Risk Assessment (Oil).           *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * If user ID of the current user doesn't have a matching       *
    * person ID, user will not be allowed to create new Operating  *
    * Procedure or Risk Assessment records, as today the user ID   *
    * is getting copied into fields Created By and Prepared By,    *
    * respectively, but both fields are validated against person   *
    * ID's.                                                        *
    ****************************************************************
    * RECOMMENDATION:                                              *
    * Apply the latest interim fixes to resolve the problem.       *
    ****************************************************************
    

Problem conclusion

  • Instead of copying the user ID to each of these fields, when a
    new record is created, the related person ID is being copied,
    resolving the problem.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV30616

  • Reported component name

    WORK & MTRL APP

  • Reported component ID

    TIVOWRKMM

  • Reported release

    750

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2012-10-22

  • Closed date

    2012-12-07

  • Last modified date

    2012-12-07

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    MAXIMO OIL & GA

  • Fixed component ID

    5724R5400

Applicable component levels

  • R750 PSN

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSLL9G","label":"Maximo for Oil and Gas"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"750","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Document Information

Modified date:
15 November 2022