Более одного пула данных для скрипта в RFT

Можно ли как-нибудь добавить два пула данных в один скрипт? Или, другими словами, как мы можем получить входные данные из двух разных пулов данных в один скрипт.

Заранее спасибо.


person Sarathee    schedule 16.12.2011    source источник


Ответы (1)


Да, вы можете вручную загружать любое количество пулов данных и управлять ими.

    /**
 * 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: пул данных

person ADR    schedule 02.01.2012
comment
Будут ли приведенные выше фрагменты работать для доступа к пулам данных, которые не связаны со сценарием? - person Sarathee; 10.04.2012
comment
Да, вы можете загрузить любой пул данных, если он находится в пути к проекту: - person ADR; 12.04.2012
comment
Да, все работает нормально... на самом деле я ошибся с путем... спасибо за помощь..... - person Sarathee; 12.04.2012
comment
вы должны пометить этот вопрос как ответ, если он действительно помог вам решить вашу проблему. - person Buddha; 08.12.2012