Вась, подскажи. А что даст, если получиться во временной таблице получить нужный recId, через что и как ты потом будешь его использовать?
Я так понимаю вы хотите реализовать механизм driilldown.
А recId хотите использовать, как форточку для недостающих данных. Или не так.
Как я делал такой механизм:
1) Снимал слепок(данные) с запроса в первую временную таблицу.
2) Группировал требуемые данные из первой временной таблицы, получая вторую.
3) Суммировал итоговые поля во второй, получал третью(Если нужны подитоги).
4) Результаты 2 и 3 выкидывал на элемент ActiveX, похожий на Excel.
5) Когда два раза щёлкаем на строке отчёта открывается форма со стороками из которых была получена данная строка. Как это реализуется в системе: берём запрос из первого пункта, считываем строку на которой сделали drilldown, получаем значения полей по которым у нас была группировка, достраиваем range-ми по ним наш запрос. Берём форму которая будет открываться по drillDown, получаем её первый датасорс formDataSource = formRun.dataSource(); и заменяем её query, нашим formDataSource.query(наш query).
Если в 1 пункте данные считываются из одного запроса всё ок, driilldown реализуется нормально, если есть дополнительные find-ы, ифы, начинаются танцы с бубном, которые в результате могут ни к чему не превести.
Что вполне логично, чтобы что-то раскрутить, нужно тоже самое перед этим скрутить.
Последний раз редактировалось miklenew; 29.06.2008 в 08:08.
|