Здравствуйте peter@work, Вы писали:
@>проект на MSVC6 MFC + ADO + DocView
@>Имею два Recordset'а и желание запихать эти данные на один грид(MS HierDataGrid)
@>как это сделать?
перед открытием соединения задай провайдера как
m_spShapeConnection->Provider = "MSDataShape";
и твою обычную коннекшн стринг с который открываешь обычные плоские рекодсеты.
дальше самое трудно — создать запрос... об этом можно поглядеть в МСДН, а также попробовать в Васике создать его с помощью мастера (что-там типа DataWizard или что-то близкое) получится что-то типа
SHAPE {SELECT <поля главной таблицы> FROM <главная таблица> } APPEND ({SELECT <поля из вспомогательной таблицы> FROM <вспомогательная таблица>} RELATE <поле по которому сращиваем> TO <поле по которому сращиваем>)
но при больших таблицах конечно работает не совсем быстро... а с гридами можно хлебнуть — функции связанные с координатами нередко либо круто врут либо работают не совсем корректно... хотя конечно красиво выглядит (на первый взгляд).
А на мой взгляд лучше попробовать работать с обычным деревом и дочерние запросы проводить по событию разворачивания конкретного узла, а не закачивать много не всегда востребованной информации. а с деревом можно сделать всё гораздо привлекательнеее! вот.