SQL Query to get the Auto Script Launch Point Events
- Maximo automation script has different launch points such as Attribute, Object, Action etc. The values like 'Objectname', 'Attributename', 'Launch Point Type' etc. can be viewed via both Maximo application and back end
- But Object events ('Before Save' After Save' with combination on 'Add/Update/Delete') and Attribute events ('Validate','Run Action' etc.) are stored as number format in the 'OBJECTEVENT' column of SCRIPTLAUNCHPOINT table.
- This number follow certain sequence and multiplication of factor specific to launch point type. It is quite complex task to identify these values from back end.
- Here is a simple query to get these values via back end. This is useful for Object and Attribute launch point events.
SELECT OBJECTEVENT,
CASE
WHEN LAUNCHPOINTTYPE ='OBJECT' THEN
CASE
WHEN OBJECTEVENT=1 THEN 'Initialize'
WHEN OBJECTEVENT BETWEEN 2 AND 14 THEN
CASE
WHEN OBJECTEVENT/2=1 THEN 'BeforeSave - Add'
WHEN OBJECTEVENT/2=2 THEN 'BeforeSave - Update'
WHEN OBJECTEVENT/2=3 THEN 'BeforeSave - Add+Update'
WHEN OBJECTEVENT/2=4 THEN 'BeforeSave - Delete'
WHEN OBJECTEVENT/2=5 THEN 'BeforeSave - Add+Delete'
WHEN OBJECTEVENT/2=6 THEN 'BeforeSave - Update+Delete'
WHEN OBJECTEVENT/2=7 THEN 'BeforeSave - Add+Update+Delete'
END
WHEN OBJECTEVENT BETWEEN 16 AND 112 THEN
CASE
WHEN OBJECTEVENT/16=1 THEN 'After Save - Add'
WHEN OBJECTEVENT/16=2 THEN 'After Save - Update'
WHEN OBJECTEVENT/16=3 THEN 'After Save - Add+Update'
WHEN OBJECTEVENT/16=4 THEN 'After Save - Delete'
WHEN OBJECTEVENT/16=5 THEN 'After Save - Add+Delete'
WHEN OBJECTEVENT/16=6 THEN 'After Save - Update+Delete'
WHEN OBJECTEVENT/16=7 THEN 'After Save - Add+Update+Delete'
END
WHEN OBJECTEVENT BETWEEN 128 AND 896 THEN
CASE
WHEN OBJECTEVENT/128=1 THEN 'After Commit - Add'
WHEN OBJECTEVENT/128=2 THEN 'After Commit - Update'
WHEN OBJECTEVENT/128=3 THEN 'After Commit - Add+Update'
WHEN OBJECTEVENT/128=4 THEN 'After Commit - Delete'
WHEN OBJECTEVENT/128=5 THEN 'After Commit - Add+Delete'
WHEN OBJECTEVENT/128=6 THEN 'After Commit - Update+Delete'
WHEN OBJECTEVENT/128=7 THEN 'After Commit - Add+Update+Delete'
END
END
WHEN LAUNCHPOINTTYPE='ATTRIBUTE' THEN
CASE
WHEN OBJECTEVENT=0 THEN 'Validate'
WHEN OBJECTEVENT=1 THEN 'Run action'
WHEN OBJECTEVENT=2 THEN 'Initialize'
WHEN OBJECTEVENT=8 THEN 'Initialize Access Restriction'
WHEN OBJECTEVENT=64 THEN 'Retrieve list'
END
WHEN OBJECTEVENT IS NULL THEN 'Not Applicable'
END as EventType,* FROM SCRIPTLAUNCHPOINT
The SQL Query is based logic as explained below .
Object event types can be assigned a factor based on the range of 'Object event' value.
Type | Range of values | Factor |
---|
Before Save | >=2<=14 | 2 |
After Save | >=16<=112 | 16 |
After Commit | >=128<=896 | 128 |
Apply the below Formula and get the results specific Sub-event type.
Value = ObjectEvent / EventFactor
ObjectEvent = SCRIPTLAUNCHPOINT.OBJECTEVENT
EventFactor = Value from above table. (2, 16, 128)
Now, map the output of above formula to 'Sub-Event type' such as Add/Update/Add+Update etc. to get the final result.
Event | Value |
---|
Add | 1 |
Update | 2 |
Add+Update | 3 |
Delete | 4 |
Add+Delete | 5 |
Update+Delete | 6 |
Add+Update+Delete | 7 |