Через Query получаем список QueryBuildDataSource'ов, через них список Range'ей - но это список только тех, что программно или в дизайнере сделаны . А если пользователь добавил - то пользовательские ограничения не видны...
Есть на форме датасорс, к которому привязаны несколько других датасорсов(динамически привязывается). Наложено 3 Range..
запускаю форму, добавляю свои ограничения дополнительно , после закрытия диалога установки ограничений пытаюсь вытащить их список
Код:
int i,cnti,j,cntj;
QueryBuildDatasource qbds;
QueryBuildRange qbr;
RAssetTable_DS.queryRun().prompt();
cntj=RAssetTable_DS.query().dataSourceCount();
for(j=1;j<=cntj;j++)
{
qbds=RAssetTable_DS.query().dataSourceNo(j);
cnti=qbds.rangeCount();
for(i=1;i<=cnti;i++)
{
qbr=qbds.range(i);
info(tableid2pname(qbr.table())+" - "+fieldid2pname(qbr.table(),qbr.field())+" - "+qbr.value());
}
}
В результате вижу только установленные программно ограничения, ручных не вижу ...
Как-то проще и правильнее можно добраться до этого списка ограничений ?