|
没有此属性: <groovy variable name> for class: groovy.lang.Binding
|
不适用 |
这可能是未使用 RTPS 模型的结果,并且变量通过方括号或大括号进行引用。这导致 Groovy 引擎尝试将其作为 Groovy 表达式进行评估。
|
使用 rtps.<variable name>,或重新检查大括号或方括号中的表达式。
|
|
无法将 type java.lang.Object 类型的值分配给 double 类型的变量
|
def data = []
double valFor = data[0]
|
出现该错误的原因是未显式键入列表数据,因此 Groovy 将其视为 List<Object>。当您使用 data[0] 从列表中访问元素时,它返回的对象无法直接分配给 double 变量。
|
要解决此问题,请执行以下操作之一:
-
显式键入列表。
使用正确的类型(如 List<Double>)定义列表。
例如:
List<Double> data = []
double valFor010 = data[0]
-
将值强制转换为 double。
使用 as double 语法显式将对象强制转换为 double 值。
例如:
def data = []
double valFor010 = data[0] as double
|
|
无法将 java.lang.Object 类型的值分配给 int 类型的变量
|
def finalList = mergeList.get(i)
int pmntfrequency = finalList.get(3)
|
出现该错误的原因是未显式键入要分配的对象或未将其强制转换为 int。在这种情况下,finalList.get(3) 返回的对象无法直接分配给 int 变量。
|
要解决此问题,请将该值强制转换为 int。
使用 as int 语法显式将对象强制转换为 int 值或使用 as int 标记。
例如:
def finalList = mergeList.get(i)
int pmntfrequency = (int) finalList.get(3)
int pmntfrequency = finalList.get(3) as int
|
|
无法将 java.util.List <java.lang.String> 类型的值分配给 java.lang.String[] 类型的变量
|
String[] arrGridMbrs = it.getMemberNames()
|
出现该错误的原因是 it.getMemberNames() 返回了 List<String>,而它无法直接分配给 String[] 数组。
|
要解决此问题,请添加 as String[] 强制转换以显式将 List<String> 转换为 String[] 数组。
例如:
String[] arrGridMbrs = it.getMemberNames() as String[]
|
|
无法调用以下项:
oracle.epm.api.grid.DataGridDefinitionBuilder#addPov(java.util.List <java.lang.String>, java.util.List <java.util.List>)
使用的参数为
[java.util.List <java.lang.Object>, java.util.List <java.lang.Object>] |
def columnDims = []
def columnMbrs = []
builder.addColumn(columnDims, columnMbrs)
|
出现该错误的原因是 List<String> 和 List<List<String>> 参数作为 List<Object> 和 List<Object> 传入。
|
要解决此问题,请指定变量的数据类型。
例如:
List<String> columnDims = []
List<List<String>> columnMbrs = []
builder.addColumn(columnDims, columnMbrs)
|
|
无法调用以下项:
oracle.epm.api.grid.DataGridDefinitionBuilder#addRow(java.util.List <java.lang.String>, java.util.List <java.util.List>)
使用的参数为
[java.util.List <java.lang.Object>, java.util.List <java.lang.Object>]
|
dataGridDefinitionBuilder.addRow(['Account', 'Period'], [['Account1'],['P1']])
|
出现该错误的原因是 List<String> 和 List<List<String>> 参数作为 List<Object> 和 List<Object> 传入。
|
要解决此问题,请添加 as String[] 强制转换以显式将 List<String> 转换为 String[] 数组。
例如:
dataGridDefinitionBuilder.addRow(['Account', 'Period'] as List<String>, [['Account1'],['P1']] as List<List<String>>)
|
|
无法调用以下项:
oracle.epm.api.grid.DataGridDefinitionBuilder#addColumn(java.util.List <java.lang.String>, java.util.List <java.util.List>)
使用的参数为
[java.util.List <java.lang.Object>, java.util.List <java.lang.Object>]
|
dataGridDefinitionBuilder.addColumn(['Account', 'Period'], [['OCX_Payment Frequency'],['Begbalance']])
|
出现该错误的原因是 List<String> 和 List<List<String>> 参数作为 List<Object> 和 List<Object> 传入。
|
要解决此问题,请添加 as String[] 强制转换以显式将 List<String> 转换为 String[] 数组。
例如:
dataGridDefinitionBuilder.addRow(['Account', 'Period'] as List<String>, [['Account1'],['P1']] as List<List<String>>)
|
|
找不到匹配的方法 java.util.Date#getAt(int)
|
rtps.endDate.getDataAsDate().getAt(Calendar.YEAR)
|
出现该错误的原因是以前在早期版本的 Groovy 中可用的 getAt(int) 方法不再可用。
|
要解决此问题,请输入以下内容:
Calendar calendar = Calendar.getInstance()
calendar.setTime(rtps.endDate.getDataAsDate())
int year = calendar.get(Calendar.YEAR)
|
|
找不到匹配的方法 java.util.Date#format(java.lang.String)
|
rtps.endDate.getDataAsDate().format("yyyy-MM-dd")
|
出现该错误的原因是以前在早期版本的 Groovy 中可用的格式方法不再可用。
|
要解决此问题,请输入以下内容:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd")
String formattedDate = sdf.format(rtps.endDate.getDataAsDate())
|
|
找不到匹配的方法 oracle.epm.api.model.Application#getDimension(java.lang.String, java.util.List)
|
List <Cube> cube = operation.application.getCubes() Dimension dimScenario = operation.application.getDimension("Scenario", cube.toArray(new Cube[cube.size()])) |
List<Cube> 传递到第二个参数,而此参数需要 0 个或多个多维数据集。
|
要解决此问题,请执行以下操作之一:
-
确保声明的类型正确且方法存在。
-
输入以下内容:
List <Cube> cubes = operation.application.getCubes()
Dimension dimScenario = operation.application.getDimension("Scenario", cubes.toArray(new Cube[cube.size()]))
-
如果仅需要对特定多维数据集有效的维,则输入以下内容:
Cube cube = application.getCube("Plan1")
Dimension dimScenario = operation.application.getDimension("Scenario", cube)
|