February 03, 2009 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 10 Comments
Sometimes, because of the structure of the message Maximo has to send, you have to make one table the base for the Integration object, but you need to trigger the interface when a record is modified on a child table. Since Maximo only listens for changes on the base MBO, …
Read More
February 02, 2009 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 14 Comments
It is possible to pass a SQL statement into the database without having to define a connection string. From any MBO object, you can get a connection to the current database. From that, you can pass in any SQL statement and use the results to populate values in a Integration …
Read More
January 27, 2009 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 4 Comments
If you created a custom UserExit or Mbo class and when you try to run it in Maximo you get the follow error in the log: Class Not Found. Class bytes found but defineClass()failed Note this is not a standard Class Not Found error. What this means is that you …
Read More
January 08, 2009 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments
Querying on Children MBOs According to the MEA Programming documentation, in Maximo 6, if you create a Query/Response Web Service where the Integration Object has a parent and child MBO, you cannot query fields against the child MBO. I do have people that have tested this and found it to …
Read More
December 12, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments
Sometimes, when dealing with Maximo domains, you need to export the Description for the domain item and not just the Domain Value. This can be done by creating a relationship and then a SET outbound rule. Although in this example I will be using AssetType (and the descriptions are not …
Read More
December 03, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 2 Comments
It is possible to install just the Integration Client on a computer without installing full Maximo on that computer. You will still need to have Maximo installed (and configured) on a computer somewhere so you can copy the needed files. This install is not small (requires around 170 meg) as …
Read More
November 25, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 1 Comment
OK, I hinted that I might create a user's manual for the INTCLIENT and now, here it is. This is just version one and I am sure there are some things I either missed or got wrong. If you find something, please let me know and I'll update the document. …
Read More
November 25, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 0 Comments
I got this error when trying to use a web service (SOAPDOC). This error appeared in the command window running the intclient. Nothing appeared in the Message window of the inclient or on the application server. I don't know why this error occurs on some installs and why it doesn't …
Read More
November 20, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 9 Comments
Someone recently asked me to teach them about the MEA and I pointed them to this web site. Only, as I was showing it to him, I realized that my site assumes the reader has a basic understanding of how the MEA works. What was missing was a definition of …
Read More
November 19, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 2 Comments
You probably noticed that Maximo (out of the box) is very ridged in the format of the message. Both XML and flat files must be in a "Maximo" centric format. However, you can make Maximo create messages in a different format. To do this, you have to create your own …
Read More
October 17, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 3 Comments
It turns out that you can use the MEA to export your integration and database changes, and then import them into another system. You can do this because out of the box Maximo comes with integration objects for the MEA objects as well as the Object Configuration, Max Messages, Domains, …
Read More
September 11, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 18 Comments
So far, we have covered how to interface with Maximo using standard out of the box tools, but sometimes, you need to do some complex processing. Maximo provides a way to do this by creating a custom user exit class. A user exit class is Java code that you can …
Read More
August 22, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 5 Comments
If you are using some type SOA tool, then you will need to setup the MEA to send and receive data on different JMS Queues. The MEA actually uses three JMS Queue for internal use. One is an outbound sequential queue, one is an inbound sequential queue (records will be …
Read More
August 14, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 14 Comments
Another way of getting data in and out of Maximo is via a HTTP Post method (like submitting a web form). Although this works well for putting data into Maximo, it is not very practical for send data out of Maximo (unless the receiving system is also Maximo). Let talk …
Read More
August 01, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 11 Comments
The Maximo MEA has the ability to automatically generate both XML and flat files for outbound transactions. Out of the box, there is no way to automated the loading (inbound) of flat or XML files. Let's look at how to do it. Setup The Integration Object and Integration Interface are …
Read More
July 25, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 4 Comments
So far, we have covered how to get data into Maximo via a web service and how to query data out of Maximo. The last step is making Maximo push data out to a web service in another system. Let's get started with the setup. Integration Object and Integration Interface …
Read More
July 18, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments
It is important to under the behavior of Outbound Integration Objects. Specifically, I am talking about when data that is changed in the Maximo, what will trigger the Integration Interface. When you create your Integration Object, you select a main MBO (this is the one without any parent MBO). For …
Read More
July 11, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 28 Comments
In the last entry, we talked about the Notify Web Service. This is use for incoming "Syncing" data. If you want to get data out of Maximo (using a web service), then you have to setup a Query/Response web service. Basically, you can use one Integration Object (or two if …
Read More
June 26, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 9 Comments
One of the features of the MEA is its ability to create a web service based on an integration interface. This is all done without having to write one line of code. You can create two different types of web services, Notify and Query/Response. A Notify web service is used …
Read More
June 22, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments
One thing you might find is that when you have a MEA record error, the JMS server keeps trying to reprocess the record over and over. This causes the server to slow down and fill up the drive space with log files. The reason for this is that the default …
Read More
June 22, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 4 Comments
When the MEA processes a record and it has an error, the MEA do three things. The first is that it writes the error message to the server log file. Next it sends the error to the administrators email address. The last thing is that it write an XML file …
Read More
June 20, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments
Let's take a minute to look a the XML message format. When dealing with the MEA you will end up dealing with messages in XML format. Even when you import flat files and interface tables, Maximo converts each record to the XML format. There are three different XML message formats, …
Read More
June 12, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 9 Comments
Let's look at the External Systems screen. External system is a way to group together interfaces that 1) go to the same external application and 2) have the same end point (more on this later) and 3) will be run on the same schedule. Every Integration Interface MUST be assigned …
Read More
June 05, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 14 Comments
Now that I have covered how to setup processing rules, I thought it would be good to give some samples on when to use what type of rule. Situation: say you have to have to convert lookup data from system X to Maximo lookup data. You know that each value …
Read More
June 04, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 2 Comments
In my last post, I talked about setting up Stop/Skip rules. In this post I will be talking about the other types of rules. There are two basic types of rules. The first type are rules that either skip a record or stop processing. The other type are rules that …
Read More
May 30, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 2 Comments
Let's talk a little more about processing rules. I covered the Integration Interface screen. In that I talked about the processing rules tabs, but only covered the fields and not how to set up processing rules. I will now attempt to cover how to create processing rules. However, there is …
Read More
April 20, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 1 Comment
Once you have your integration object all setup, the next step is to create your Integration Interface. An Integration Interface is where all data going between the Integration Object and some external system (inbound or outbound) must pass through. This is also where you can attach special processing classes that …
Read More
April 11, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 17 Comments
Let's take a minute to look at the Integration Object screen. First we need to define what an Integration Object is. An Integration Object is a Maximo MEA Object used to define what data will be available for both inbound and outbound data flow. It is made up of Maximo …
Read More
March 26, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 8 Comments
Maximo comes with a couple of very hand tools for helping you manage and program the MEA. These tools are officially unsupported, but they are pretty useful. The first tool is called: Integration Client. This is a Java tool that allows you to test your inbound MEA interface. This includes …
Read More
March 18, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments
Here are a few other setup tasks that you might need to do to setup you Maximo MEA. Maximo MEA Server Name For purposes of the MEA each install of Maximo is given a name. This name is very important to the MEA as XML messages must be "addressed" to …
Read More
January 01, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 1 Comment
With the new version of Maximo (6.x), Work Tech had to create new interface for their WorkTech Time application. I have to say, this new interface is pretty nice. They have developed an interface that makes it fairly easy to get data from WorkTech Time to Maximo Using the MEA. …
Read More
November 14, 2007 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 19 Comments
In this entry I will be talking about how to debug and troubleshoot the MEA Interface tables. The MEA can seam very much like a "black box" where you put records in and they come out the other end, but what happens inside the box can be a mystery. If …
Read More
November 05, 2007 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments
In this entry, I will be talking about how to program the MEA interface tables. In the last entry I talked about how to setup the MEA but the one thing to remember is that you do not get to define what the table looks like (at least not directly), …
Read More
October 27, 2007 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 70 Comments
This is the first of a three part series on the Maximo Enterprise Adapter (MEA). I will be talking about the MEA found in Maximo Version 6.x (MXES). The MEA is a tool that helps you with interfaces to other applications. It allows you to automate importing and exporting data …
Read More