System Down DB password expired

เจอเคสใช้งานอยู่ดี ๆ ก็ login เข้าใช้งานระบบไม่ได้ จึงเข้าไปดู log พบว่าไม่สามารถ Connect Database ได้

ใน SystemOut.log มี message ดังนี้

[ERROR] [] [] BMXAA6421E – The system could not connect to the JDBC source: jdbc:db2://DBHOSTNAME:50005/maxdb76[jcc][t4][2012][11248][3.69.71] Connection authorization failure occurred. Reason: Password expired. ERRORCODE=-4214, SQLSTATE=28000
[ERROR] [] [] BMXAA6538E – Failed to initialize MAXIMO business object services.
psdi.util.MXSystemException: access#DBConnectFail

สาเหตุคือ Password maximo user (database user) Expired.

ทำการแก้ไขได้โดย Reset Password ใหม่ (ใช้ password เดิม) และทำการ check Password never expires เพื่อไม่ให้เกิดเหตุการณ์นี้อีก

Read More

Maximo custom alert message box

ในกรณีที่ต้องการจะเรียก message box จาก Custom Class ให้ทำการ New Message ใน Database Configuration ดังรูป

 

จากนั้นใน Class ทำการเขียน Function เพื่อเรียกใช้งาน Messagebox

private void msgbox(String msg)

{

String params[] = {msg};

this.clientSession.showMessageBox(this.clientSession.getCurrentEvent(), “custmsg”, “CustomMessage”, params);

}

 

เวลาเรียกใช้งานสามารถ call msgbox ได้เลย เช่น

msgbox(“Action has been completely.”);

Read More

Maximo write custom log

เวลาเขียน Custom Class หากต้องการเขียน log ลงไป เพื่อทำการ Debug ให้ทำการ Configure ที่ Logging Application ดังนี้

1.Navigate to System Configuration -> Platform Configuration -> Logging
2.Click on New Row under Root Logger
3.Enter the following:
Logger: Customization
Log Level: DEBUG
Key: log4j.logger.maximo.Customization
Inherited Appenders: Console,Rolling
Enable Active checkbox.
4.Save the logging properties
5.Click on Select Action -> Apply Settings

 

จากนั้นใน Java Class ให้เขียน Function ขึ้นมาเพื่อเขียน log เช่น

 

private static void log(String msg)private static void log(String msg) {

MXLogger myLogger = MXLoggerFactory.getLogger(“maximo.Customization“);

if (myLogger.isDebugEnabled())

{

myLogger.debug(msg);

}

}

แล้วเวลาใช้ก็เรียน Function log เช่น

log(“Write Hello World”);

 

Read More

[SCCD] Finding Parameter Value of Report Schedule

Some report have parameter to filter the result records. But when these reports have been set as schedule we can not see it in the system. However, we can see these value for each parameter in the database.

Firstly you can query data in REPORTSCHED table. You will see report schedule information. Then notice the CRONTASKNAME and INSTANCENAME.

These 2 values are also in CRONTASKPARAM table. So you can see parameter value in this table by using where CRONTASKNAME and INSTANCENAME.

 

Read More

[SCCD] increase size of TICKETID

To change size of TICKETID of TICKET object. You also need to change several object to avoid some error.

which are

RECORDKEY in the WORKVIEW object
RECORDKEY in the WORKLOG object
TICKETID in the TKSTATUS object
ORIGRECORDID in the TICKET object
RELATEDRECKEY in the RELATEDRECORD object
OBJECTKEY in the INBOUNDCOMM object

 

Reference : https://developer.ibm.com/answers/questions/212594/how-do-you-modify-ticketid-when-numbers-run-out/

Read More

[SCCD] Filter Graph Option Display by attribute of Result Set

When you enable graph option for result and select display by attribute, you might confuse with many attributes as example below.

querycolumn1

SCCD shows all attributes (query column) which are in object of result set’s query.

Read More

Read More

[SCCD] Report error “Premature end of file”

We found an error “org.xml.sax.SAXParseException: Premature end of file” during run report on IE and Chrome (but not on Firefox).

 

After investigation and searching information, we found that this error is about prototype.js in com.ibm.tivoli.maximo.report.birt.viewer_1.0.0.jar (https://bugs.eclipse.org/bugs/show_bug.cgi?id=310512)

 

The solution to fix is replace new com.ibm.tivoli.maximo.report.birt.viewer_1.0.0.jar in directory

/opt/IBM/WebSphere/AppServer/profiles/ctgAppSrv01/installedApps/ctgCell01/MAXIMO.ear/maximouiweb.war/WEB-INF/birt/platform/plugins

Then restart Application Server

 

You can download new com.ibm.tivoli.maximo.report.birt.viewer_1.0.0.jar here

 

 

 

Read More

[SCCD] Enable incremental VMMsync

From Technote No.1573669

You can configure Change Polling to allow for Incremental Synchronization with VMMSYNC follow description below

To enable incremental sync you must modify the repository to set change polling to native. This is done using the wsadmin.bat and initializing it using Jython. If your system does not have Jython installed you will need to download it before continuing.
(you can find file jython.jar from the <WAS_SERVER_HOME>/optionalLibraries/jython/ directory on an application server installation then copy to the <WAS_CLIENT_HOME>/optionalLibraries/jython/ directory on your client computer.)

Read More

Read More

[SCCD] Using Application Import/Export

วิธีการ Import / Export ที่เคยเสนอไปนั้น

– Export : http://nativetech.co.th/sccd-export-data/

– Import : http://nativetech.co.th/sccd-import-data/

อาจจะมีหลายขั้นตอนและยุ่งยาก ใน Maximo V7.5 ได้มี Feature ใหม่ที่ช่วยให้สามารถ import / export จากหน้า Application ได้โดยตรงเลย

แต่ว่าการ import / export ในลักษณะนี้ไม่เหมาะกับ จำนวนข้อมูลใหญ่ เนื่องจากว่า ไม่ได้ผ่าน JMS queues ซึ่งจะทำให้เกิดผลกระทบ (กิน resource อย่างสูง) ระหว่างการ import/export สำหรับจำนวนข้อมูลขนาดใหญ่ได้

สำหรับขั้นตอนนั้น สามารถทำได้ง่าย ๆ โดย

Read More

Read More

[SCCD] Set ticket to high priority for VIP person

In some case we need to set ticket priority align person’s information.

However internal priority is calculated by  impact and urgency from priority matrix.

This example will show you how to set high priority (or urgent) when effected person is VIP person.

Read More

Read More