Showing posts with label MIF. Show all posts
Showing posts with label MIF. Show all posts

Sunday, 17 May 2020

Invoke/Call a Publish Channel Conditionally - Automation Script | Maximo


Normally trigger point for the Publish channels is Event Listener, which is save/update any record. 

Question: Can we send the data using publish channel with a custom trigger point /condition ??

Answer: Yes you can. by using Maximo Automation Script. 
Below is the simple tricks to call a publish channel 

server = MXServer.getMXServer()
userInfo = mbo.getUserInfo()
whereClause = <CONDITION>
server.lookup("MIC").exportData("<Publish Channel Name>", "<External System Name>", whereClause, userInfo, 1000)
---------------------------------
Another example:
micSrv = MXServer.getMXServer().lookup("MIC")
server.lookup("MIC").exportData("MXPO", "LegecyApp", " ponum='"+vPONum+"' and revisionnum="+vREVNUM , micSrv.getNewUserInfo() , 1)


Note:

Mic is old service name for MIF, but still the same name


Thursday, 18 May 2017

Sequence Error when Uploading Assets using MIF | IBM Maximo

for instance look at this error:
BMXAA8010E - An asset with the asset identifier 16,058 already exists. Enter a new asset identifier

Solution is very easy , just need to increment object's sequence (asset in my case)

Run these below mentioned command one by one in sqldeveloper(Oracle):

1. Increment of 10,000 in AssetIdSeq sequence:
ALTER SEQUENCE assetidseq INCREMENT BY 10000;

2. Now run this select command once to update Asset Sequence Id
SELECT assetidseq.nextval FROM DUAL;

3. in last run this command to set Asset's Sequence back to routine:
ALTER SEQUENCE assetidseq INCREMENT BY 1;

Reference: http://www-01.ibm.com/support/docview.wss?uid=swg21998810

Saturday, 14 January 2017

Get Location data using REST API in External application | IBM Maximo

create a html file named index.html
paste this code into it.

<html>
<head>
</head>
<body>
<form action="http://maximo/maxrest/rest/mbo/locations?_lid=maxadmin&_lpwd=maxadmin" method="GET" >
GET LOCATION type location:<input type="text" name="location" value="SEG100" />
<input type="submit" value="SUBMIT" />
</form>

Post/Update Asset's Description using POST method:
<form action="http://maximo/maxrest/rest/mbo/asset/123?_lid=maxadmin&_lpwd=maxadmin" method="POST" >
POST/UPDATE ASSET<input type="text" name="description" value="new description HVAC System- 50 Ton Cool Cap/ 450000 Btu Heat Cap" />
<input type="submit" value="SUBMIT" />
</form>
</body>
</html>

Get Person Record using REST API | IBM Maximo

Create a file for example, index.html
paste this code into it.

<html>
<head>
</head>
<body>
<form action="http://maximo/maxrest/rest/os/MXPERSON/3?_lid=maxadmin&_lpwd=maxadmin" method="GET" >
GET person where personuid is 3:<input type="submit" value="SUBMIT" />
</br>
<form action="http://maximo/maxrest/rest/os/mxperson" method="GET" >
GET PERSON enter personid:<input type="text" name="personid" value="WILSON" />
<input type="submit" value="SUBMIT" />
</form>
</form>
</body>
</html>

How to Deploye a Web Service | IBM Maximo

first check this system properties, it should be set to 1
mxe.int.containerdeploy

Now go to integration, web servcies library application
New(b), Create Web Service, Create From Object Structure
select MXASSET > and hit Create(b) button

Open newly created MXASSET in list view
in select action menu > deploye to AS web Service Container > Generate Deployement File Entries

now copy this file fro c:\mif\jaxws\deplmodule.dar
to c:\ib\smp\maximo\deployement\ folder

redeploye EAR file (bulidmaximoear.cmd)

after if all goes good

hit this url: http://<host>:<port>/meaweb/wsdl/mxasset.wsdl

Export Flat file with Enable Event Listner MIF - IBM Maximo

1. Object Structure 
New > D-Person  Demo Person AQ_PERSON_OS
Consumed by : Integration
Support Flat structure Flag : True
Source Person
Exclude all column except , personid, firstname, lastname

2. Publish Channel
New > D-Person Demo Publish Channel Person AQ_PERSON_PC
Operation: Publish
Object Struction: D-Person AQ_PERSON_OS
Action > Enable Event Listner
Action > Message Tracking > Enable Message Tracking Flag : True > Ok(b)

Tuesday, 10 January 2017

Change Status using REST API integrated in HTML | IBM MAXIMO

REST API (Representational State Transfer) (Application Programming Interface)
it was introduced in 7501, a new protocol to integrate Maximo with external systems.
Its a part of Maximo Integration Framework (MIF) works and can be use to CRUD.
With Business objects (Mbo) and Object structures (OS)

Useful Links



For example, lets try to change the stautus of a Workorder using REST API

create a html file named index.html
paste this code into it.

Thursday, 14 January 2016

Import Data into Maximo using INTERFACE tables MIF – IBM Maximo



First of all, we need to have interface/intermediate tables to import something into Maximo from an external/3rd party database. Suppose we want to import some inventory data or for instance we try to figure out with a real example. Let’s assume we need to import data from a legacy application into Maximo. That legacy application is actually an inventory issuance system already implemented somewhere, we have to integrate it with New Maximo Inventory system.
MATRECTRANS tables is actually the main table to
To import data into Maximo, few steps are required to configure step by step.
1.            Object Structure (OS)
2.            End Point (EP)
3.            Enterprise services (Inbound or to import data) (ES)
4.            Publish Channel (Outbound or export data, we will not use in this case) (PC)
5.            and Combine above all into an External System (ExS)
6.            Generate Interface tables
7.            Configure Cron task for Scheduling (CT)
8.            Done. Now insert data into Interface tables and Maximo will read as per given schedule in CT.

Object Structures (OS)

Sunday, 29 November 2015

Export (Import) Flat File with Enable Event Listner MIF - IBM Maximo

1. Object Structure 
New > D-Person  Demo Person AQ_PERSON_OS
Consumed by : Integration
Support Flat structure Flag : True
Source Person
Exclude all column except , personid, firstname, lastname

2. Enterprise Service
New > D-ESPerson Demo Enterprise Service Person AQ_PERSON_ES
Operation: Sync
Object Struction: D-Person AQ_PERSON_OS
Action > Enable Event Listner

Friday, 27 November 2015

A List of JDBC Driver and URLs for Integration End Points - IBM Maximo

Oracle 
URL: jdbc:oracle:thin:@<HOST>:<PORT>:<SID>
DRIVER: oracle.jdbc.driver.OracleDriver
 
IBM DB2
URL: jdbc:db2://<HOST>:<PORT>/<DB>
DRIVER: COM.ibm.db2.jdbc.app.DB2Driver


Microsoft SQL Server
URL: jdbc:weblogic:mssqlserver4:<DB>@<HOST>:<PORT>
DRIVER: weblogic.jdbc.mssqlserver4.Driver

JDBC-ODBC Bridge
URL: jdbc:odbc:<DB>
DRIVER: sun.jdbc.odbc.JdbcOdbcDriver

MySQL (MM.MySQL Driver)
URL: jdbc:mysql://<HOST>:<PORT>/<DB>
DRIVER: org.gjt.mm.mysql.Driver

Friday, 9 October 2015

Services URL - Maximo Integration Framework - IBM Maximo

Useful URLs

Object Service (os)
http://[hostname]:[port]/meaweb/os/[objservname]
for example:
http://deploymaximo.com:9080/meaweb/os/mxperson

Enterprise Service (es)
http://[hostname]:[port]/meaweb/es/[extsysname]/[entservname]

Standard service (ss)
http://[hostname]:[port]/meaweb/ss/[stdservname]

Web Service (services)
http://[hostname]:[port]/meaweb/services/[webservname]


Wednesday, 7 October 2015

Basic Concepts of Maximo Integration Framework (MIF) - IBM Maximo

Basic Concepts of Maximo Integration Framework (MIF)

Object Structures :-
    |__ Business Objects
    |__ Relationship
    |__ Message Content Services or Channels

Services (to receive) :-
by using Web Services, HTTP, DB tables, Flat and XML files

    |__ Processing Rules
    |__ XML Map
    |__ User Exit and Processing Classes


Channel (to Send):-
by Flat, XML File, Interface table, HTTP, WebService, Command Line
    |__ Publish Channel    (by Trigger on completed transaction)
    |__ Invocation Channel    (by action class within app, workflow or escalation)