我在使用Java API运行MaxL "export database“命令时遇到了问题。我尝试过使用这样的代码:(参考Essbase Java API示例com.essbase.test.ExecuteMaxl.java)
IEssMaxlSession test = olapSvr.openMaxlSession("test"); test.execute("export database sample.basic using report_file 'top.rep' to data_file 'c:/topExp.txt'"); It失败,出现以下异常:
无法执行maxl语句。MaxL错误(1290101):此Essbase语句需要客户端支持。目前还不支持此功能。
我正在运行Essbase 11.1.2.1和相同版本的Java API。
发布于 2014-11-28 08:14:07
您没有告诉Essbase在哪里可以找到报表文件。如果"top.rep“在服务器上,则必须在Maxl语句中显式引用它。因此,它将是:"...using服务器report_file“。否则,如果文件驻留在客户端上,则必须像为输出数据文件指定路径一样指定路径(例如,"c:/top.rep")
Rgds,AleMon
发布于 2014-11-29 07:48:06
在我的经验中,通过Java API运行MaxL命令不起作用,并给出了所指出的错误(也就是说,它可能依赖于一些本机代码,比如在C API中,但正如它所说的,它不受支持)。为什么不在Java API中使用report running命令呢?
发布于 2016-12-04 04:39:09
导出数据为什么不使用java api方法exportData
private static void exportData(IEssCube cube) throws EssException {
System.out.println("Exporting data BSO");
// As the path is relative, file will be exported to "ARBORPATH/app/Demo/Basic" on Essbase server.
cube.exportData("Demo/Basic/exportedData.txt",IEssCube.EEssDataLevel.ALL, true);
// As the path is absolute, file will be exported to "C:/temp/exportedData.txt" on Essbase server.
//cube.exportData("C:/temp/exportedData.txt",IEssCube.EEssDataLevel.ALL, true);
System.out.println("Exporting data Complete.");
}https://stackoverflow.com/questions/27141834
复制相似问题