有没有办法在一个脚本中添加两个数据池?或者换句话说,我们如何从两个不同的数据池获取输入到单个脚本。
提前致谢。
答案 0 :(得分:2)
是的,您可以手动加载和管理任意数量的数据池。
/**
* Creates a IDatapoolIterator pointing the first record
* @param datastore default project path
* @param dataPoolPath relative path in the project
* @return IDatapoolIterator pointing the first record
*/
public static IDatapoolIterator getDataPoolIterator(String datastore, String dataPoolPath)
{
java.io.File dpFile = new java.io.File(datastore, dataPoolPath+".rftdp");
DatapoolScriptSupport dss = new DatapoolScriptSupport();
IDatapool dp = (IDatapool) dss.dpFactory().load(dpFile, true);
IDatapoolIterator dpIter = dss.dpFactory().open(dp, null);
dpIter.dpInitialize(dp);
dpIter.dpReset();
return dpIter;
}
然后在你的代码中
myDatapool = getDataPoolIterator((String)getOption(IOptionName.DATASTORE), "relative/path/intheproject");
您可以通过
访问数据池中的任何变量myDatapool.dpString("Variable");
根据所需变量的类型使用正确的方法。使用
myDatapool.dpNext();
您将前进到数据池中的下一条记录。 希望这会有所帮助。 更多信息:IBM Help System: Datapool