3 回答

TA貢獻1794條經驗 獲得超7個贊
它不受支持,但您可以在 autoscript 應用程序中創建并授予自己 EXECUTE sig 選項。這將啟用執行操作,允許您按需執行腳本。但是,由于沒有使用啟動點來提供上下文,因此您可能習慣使用的隱式變量和其他上下文將不可用。
“按需自動腳本”是我所謂的腳本,我開發的目的是從該執行操作中執行。我已經編寫了 On Demand 腳本來執行諸如重新同步嵌套工作流或準備我們的數據以進行升級之類的事情。On Demand 腳本雖然創建方式相同,但與 7.6 文檔所稱的“庫腳本”的不同之處在于,即使庫腳本不是(必須)從它們自己的啟動點調用,調用它們的腳本通常也提供一些上下文/隱式變量。
On Demand Autoscript 通??雌饋硐襁@樣,您可以在 Maximo API JavaDocs 中查找文檔。
from psdi.server import MXServer
server = MXServer.getMXServer()
security = server.lookup("SECURITY")
userInfo = security.getSystemUserInfo()
mboSet = server.getMboSet("SOMEOBJECT", userInfo)
try:
mboSet.setWhere("somecol = 'somevalue'")
mbo = mboSet.moveFirst()
while mbo:
print "do something with mbo %s: %s" % (
mbo.getUniqueIdentifer(), mbo.getString("DESCRIPTION"))
mbo = mboSet.moveNext()
if "applicable":
mboSet.save()
finally:
if not mboSet.isClosed():
mboSet.close()
綜上所述,您應該可以輕松地“編寫一個循環遍歷表中的記錄并根據特定條件更新值的腳本。我可以按需執行它?!?/p>

TA貢獻1155條經驗 獲得超0個贊
您可以使用以下代碼從任何 Java 類(在 maximo 中)執行腳本——即使沒有啟動點:
ScriptDriverFactory.getInstance().getScriptDriver(ScriptName).runScript(ScriptName, Context);
...whereContext
是腳本中可能需要的所有變量的哈希圖。
添加回答
舉報