Maximo:如何使用 JAVA 读取应用程序的字段?
Maximo: How to read a field of an application using JAVA?
这道题应该很简单。我正在尝试读取 IBM Maximo 应用程序的字段并在方法 getList() 中使用该值。我要使用的值尚未保存在数据库中。
这是一些伪代码:
@Override
public MboSetRemote getList() throws MXException, RemoteException {
MboSetRemote result = super.getList();
//Here is where i dont know how to do it
Date field = getFieldValue(FieldName)
//Here is where i want to use the value
String string = "....field..."
result.setWhere(string);
return result;
}
谢谢大家,
问候
我认为实现在 where 子句中使用字段值的最简单和最安全的方法是使用绑定变量,如下所示:
@Override
public MboSetRemote getList() throws MXException, RemoteException {
MboSetRemote result = super.getList();
//Here is where i want to use the value
String string = "....:fieldName...";
result.setWhere(string);
return result;
}
注意 string
中 :fieldName
前面的冒号。当 Maximo 看到这个时,它会在当前记录/Mbo 上查找(不区分大小写)名为 fieldName
的属性,并将 :fieldName
替换为属性中的值——用引号或其他内容括起来,适用于属性的类型(ALN、UPPER、DATE 等)。
此方法比您介绍的方法更好,因为它将使用 Maximo 的框架来防止 SQL 注入攻击等
也就是说,获取字段值的方式如下:
Date fieldValue = getMboValue("FieldName").getDate();
此外,我强烈建议您获取一份 Maximo 的 JavaDocs。你可以做到 here.
这道题应该很简单。我正在尝试读取 IBM Maximo 应用程序的字段并在方法 getList() 中使用该值。我要使用的值尚未保存在数据库中。
这是一些伪代码:
@Override
public MboSetRemote getList() throws MXException, RemoteException {
MboSetRemote result = super.getList();
//Here is where i dont know how to do it
Date field = getFieldValue(FieldName)
//Here is where i want to use the value
String string = "....field..."
result.setWhere(string);
return result;
}
谢谢大家, 问候
我认为实现在 where 子句中使用字段值的最简单和最安全的方法是使用绑定变量,如下所示:
@Override
public MboSetRemote getList() throws MXException, RemoteException {
MboSetRemote result = super.getList();
//Here is where i want to use the value
String string = "....:fieldName...";
result.setWhere(string);
return result;
}
注意 string
中 :fieldName
前面的冒号。当 Maximo 看到这个时,它会在当前记录/Mbo 上查找(不区分大小写)名为 fieldName
的属性,并将 :fieldName
替换为属性中的值——用引号或其他内容括起来,适用于属性的类型(ALN、UPPER、DATE 等)。
此方法比您介绍的方法更好,因为它将使用 Maximo 的框架来防止 SQL 注入攻击等
也就是说,获取字段值的方式如下:
Date fieldValue = getMboValue("FieldName").getDate();
此外,我强烈建议您获取一份 Maximo 的 JavaDocs。你可以做到 here.