А если немного "подпилить" класс SysTableBrowser, метод run()
PHP код:
public void run(tableId tableId, Common _tmpTable = null)
{
// Обозреватель временных таблиц -->
FormDataSource formDataSource;
// Обозреватель временных таблиц <--
Form tableBrowser;
..........
formRun.parmTableId(tableId);
// Обозреватель временных таблиц -->
if (_tmpTable && (_tmpTable.isTmp() || dictTable.isTmp()))
{
formDataSource = formRun.dataSource(1);
if (_tmpTable.isTmp())
{
formDataSource.cursor().setTmp();
}
formDataSource.cursor().setTmpData(_tmpTable);
formDataSource.allowCreate(false);
formDataSource.allowDelete(false);
}
// Обозреватель временных таблиц <--
formRun.run();
......
}
и в коде, который правил oip во втором сообщении изменить:
PHP код:
if(formRun && formRun.dataSourceCount()>0)
{
ds=formRun.dataSource();
tableID = ds.table();
if(tableID)
new SysTableBrowser().run(tableID, ds.cursor());
}
if(!tableID && selected && selected.sysNodeType()==#NT_DBTABLE)
{
tableID=tableName2ID(selected.treeNodeName());
if(tableID)
new SysTableBrowser().run(tableID);
}
то мы "научим" наш обозреватель таблиц смотреть содержимое временных таблиц