Maximo Open Forum

 View Only
  • 1.  Enabling publish channels throwing error

    Posted 08-23-2020 12:15
    Hello everyone,

    We are currently working on integrating Maximo with two external systems using MIF. This is an XML based integration.
    Recently we migrated integration code into the Production environment. It included some 12 outbound Publish Channels and around 10 Enterprise Services(for inbound). The publish channels are based on custom object structures.

    Around 3 such publish channels use JOBPLAN as one of the objects in their Object Structure. We have included 6 attributes on the JOBPLAN object in the object structure viz. EXCODE, WKCODE,JPNUM,PLUSCREVNUM,ORGID,SITEID. Out of these attributes, EXCODE and WKCODE are custom attributes.

    When we enabled the Publish channel listeners as well as the associated External System in Prod, users started getting " Attribute does not exist" error on doing transactions like changing Work Order status, generating PM Workorders, etc.

    The system first throws an error for EXCODE attribute. If I exclude this from all the three publish channels where JOBPLAN object is used in the corresponding object structure, the system throws an error for the WKCODE attribute. On excluding this as well, it then throws an error for OOB field PLUSCREVNUM and so on.

    We had to disable all the 3 publish channel listeners and then bounce the JVMs for this error to go off in Prod. The entire code is working fine in our internal development and test environments. For your reference, we are on Maximo 7.5 and our Prod environment is clustered with 10 servers, each having separate JVMs for UI, Cron, MEA, etc.

    Please suggest how can we fix this issue?
    #Integrations

    ------------------------------
    Atul Kumar
    ------------------------------


  • 2.  RE: Enabling publish channels throwing error

    Posted 08-24-2020 09:05

    Are you able to see a stack trace on the server (most likely in the SystemErr.log) when this occurs? That tends to be pretty useful in deducing where it's trying to reference the attribute. I would also look at the logs on server startup to see if you have any cache issues, as orphaned records in the maxintobjdetail and such tables can cause issues (though I'm not sure you would see the attribute does not exist error in that scenario). 

    I don't have a test 7.5 environment available, but my assumption would be since end users are seeing the error during their standard operations, that it's a problem with the publish channel itself and not an issue writing to the endpoint. Writing to the end point shouldn't be a problem in a XML file (assuming it can write to that directory), but is a common problem when dealing with flat files like CSV or IFACE table integrations. Since it's impacting a user interactively, the issue occurs prior to writing to the JMS queue which means that it's just dealing with the publish channel. 

    I would look at any processing rules or java customizations you have on your publish channels or these attributes and make sure that it matches what you have configured in your non-production systems. It's possible one of these is firing on a different object that you're expecting and so it's trying to retrieve these attributes on a different object. 



    ------------------------------
    Steven Shull
    Projetech
    ------------------------------



  • 3.  RE: Enabling publish channels throwing error

    Posted 08-30-2020 11:08
    Hello Steven,

    Thanks for your insights which helped us in fixing this issue.

    Looking closely at the Object Structure level, we noticed in the three Object Structures, we were using the OOB relationship between WORKORDER and JOBPLAN objects, which seemed to be creating the issue. We replaced it with our own custom relationship, enabled the listeners on publish channel / external system and this solved our issue.

    ------------------------------
    Atul Kumar
    Wipro
    ------------------------------