2014-11-06 10 views
0

是否可以使用腳本添加到Maximo中的CustomMboSet?我正在使用名爲TIMESHEET的自定義對象編寫自定義應用程序。作爲應用程序的一部分,我正在編寫一個需要動態構建MboSet(一組TIMESHEET)的(Jython)腳本。該代碼檢索現有的CustomMboSet並嘗試向其添加元素。它使用開箱即用的MboSet時可以工作,但是當我嘗試在自定義MboSet上運行相同的代碼時,它似乎不起作用。沒有錯誤發生,但是違規行下面的代碼沒有運行。Maximo - 使用腳本將元素添加到CustomMboSet

換句話說,這個工作(LABTRANS是一個開箱MBO的):

myMboSet = mbo.getMboSet("LABTRANS") 
newMbo = myMboSet.add() 
# Set attributes on newMbo, everything is happy 

但這並不(時間表是一個自定義的MBO):

myMboSet = mbo.getMboSet("TIMESHEET") 
newMbo = myMboSet.add() 
# Code does not execute after the above line 

任何人有任何見解至於爲什麼我看到這種行爲? Maximo腳本框架是否不支持動態構建CustomMboSets?任何幫助表示讚賞。謝謝。

回答

0

您需要確保數據庫配置中當前MBO和自定義MBO之間存在關係,否則它將無法工作。

或者,你可以使用下面的代碼,以動態創建一個新的mboSet:

timeSheetMboSet = mxServer.getMboSet("TIMESHEET", userInfo) 
+0

感謝您的答覆,安德魯,並且遺憾的響應遲。我解決了這個問題。原來,這與自定義對象的屬性之一有關。由於自定義對象是在組織級別創建的,因此orgid是必需的屬性。原來,orgid屬性的搜索類型爲「無」。將其更改爲任何其他值(我選擇通配符)允許我的腳本工作。再次感謝您的輸入! – stevepoll 2014-12-31 17:11:14

0
mbo.getMboSet(RELATIONSHIPNAME). 

LABTRANSTIMESHEET必須是關係名稱在自動腳本的對象。

如果你想獲得/任何對象添加記錄,使用

mxServer.getMboSet(OBJECTNAME, userInfo) 
0

多一點的解釋。您可以從自動化腳本中創建自己的自定義關係。訣竅是確保它不存在。這就是爲什麼我用我的美元符號。

變量= mbo.getMboSet(tempRelationshipName,對象,where子句)

previousPhaseSet = mbo.getMboSet("$wophasetranstemp1", "exitdate is null") 
相關問題