Все дело в том, что при построении query, когда система пытается прописать связи с Table2 согласно relations (класс SysQueryBuilder метод newDataSource()), она неправильно отрабатывает тип связи "Поле фиксировано". В методе видно, что получаемые числа система пытается интерпретировать как id полей. Так было в версии 2.5, а в 3.0 они все же решили эту проблему и проверяют тип связи в relation`е.
Можно сделать так:
(класс SysQueryBuilder метод newDataSource())
PHP код:
...
for(lines=1;lines <= dictRelation.lines();lines++)
{
// newDataSource.addLink(dictRelation.lineExternTableValue(lines), dictRelation.lineTableValue(lines)); было так
switch (dictRelation.lineType(lines))
{
case TableRelation::Field:
{
newDataSource.addLink(dictRelation.lineExternTableValue(lines), dictRelation.lineTableValue(lines));
}
break;
case TableRelation::ThisFixed:
{
queryBuildRange = newDataSource.addRange(dictRelation.lineTableValue(lines));
queryBuildRange.value(queryValue(dictRelation.lineExternTableValue(lines)));
queryBuildRange.status(RangeStatus::Hidden);
}
break;
}
}
...