如何评估 JCoStructure?
How to evaluate a JCoStructure?
我有以下结构:
|----------|----------|----|---|
| STRUCTURE 'NameOfStructur' |
|----------|----------|----|---|
|Num |A |B |C |
|----------|----------|----|---|
|0123456789|0123456789|0123|456|
|----------|----------|----|---|
| | | | |
|----------|----------|----|---|
我用它打印:
JCoStructure struct = exportParameters.getStructure(paramName);
System.out.println(struct.toString());
并与:
JCoStructure struct = exportParameters.getStructure(paramName);
JCoFieldIterator fieldIt = struct.getFieldIterator();
while (fieldIt.hasNextField()) {
JCoField field = fieldIt.nextField();
System.out.println(field.getName());
}
我收到了属性名称(Num
、A
、B
、C
),但我仍然无法从该结构中获取值。 field.getValue()
只是 returns null
和 field.toString()
提供了对象参考值。
有人知道如何接收这些值吗?
答案很简单,
|0123456789|0123456789|0123|456|
就像在每个 "empty" 和非空 table/structure 上用 "toString()" 打印时的分型线。认为这是我们的 test-sap-system 上的条目。所以这是完全正确的,我会为每个条目收到一个 "null",因为这些数据结构还为空。
所以基本上 @Trixx 关于如何从 JCoStructures/JCoFields 检索值是完全正确的,但我的问题不是我无法从文档中检索正确的方法,而是没有记录打印出来的线是分隔线,而不是我认为的示例数据元组。
JCoField.getName()
获取字段的名称,并为字段的值使用适当的 getter 方法,例如JCoField.getString()
应该始终有效。如果可行,其他 getter 方法将即时进行类型转换,例如如果字段包含字符串“623521”作为值,JCoField.getInt()
将工作并且 return 原始 int 623521。
在您的示例中,结构中的所有字段当前都是空的,因此 JCoField.getString()
将 return“”。
顺便说一句,您不需要使用字段迭代器。您还可以使用字段名称或其索引直接从 JCoStructure
访问字段值,例如使用 JCoStructure.getString("Num")
或 JCoStructure.getString(0)
.
我有以下结构:
|----------|----------|----|---|
| STRUCTURE 'NameOfStructur' |
|----------|----------|----|---|
|Num |A |B |C |
|----------|----------|----|---|
|0123456789|0123456789|0123|456|
|----------|----------|----|---|
| | | | |
|----------|----------|----|---|
我用它打印:
JCoStructure struct = exportParameters.getStructure(paramName);
System.out.println(struct.toString());
并与:
JCoStructure struct = exportParameters.getStructure(paramName);
JCoFieldIterator fieldIt = struct.getFieldIterator();
while (fieldIt.hasNextField()) {
JCoField field = fieldIt.nextField();
System.out.println(field.getName());
}
我收到了属性名称(Num
、A
、B
、C
),但我仍然无法从该结构中获取值。 field.getValue()
只是 returns null
和 field.toString()
提供了对象参考值。
有人知道如何接收这些值吗?
答案很简单,
|0123456789|0123456789|0123|456|
就像在每个 "empty" 和非空 table/structure 上用 "toString()" 打印时的分型线。认为这是我们的 test-sap-system 上的条目。所以这是完全正确的,我会为每个条目收到一个 "null",因为这些数据结构还为空。
所以基本上 @Trixx 关于如何从 JCoStructures/JCoFields 检索值是完全正确的,但我的问题不是我无法从文档中检索正确的方法,而是没有记录打印出来的线是分隔线,而不是我认为的示例数据元组。
JCoField.getName()
获取字段的名称,并为字段的值使用适当的 getter 方法,例如JCoField.getString()
应该始终有效。如果可行,其他 getter 方法将即时进行类型转换,例如如果字段包含字符串“623521”作为值,JCoField.getInt()
将工作并且 return 原始 int 623521。
在您的示例中,结构中的所有字段当前都是空的,因此 JCoField.getString()
将 return“”。
顺便说一句,您不需要使用字段迭代器。您还可以使用字段名称或其索引直接从 JCoStructure
访问字段值,例如使用 JCoStructure.getString("Num")
或 JCoStructure.getString(0)
.