Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

QueryBuilder

370
12 января 2008 года
koval
443 / / 29.08.2005
Есть строка запроса из TFS на языке WIQL
Цитата:
SELECT [System.Id], [System.WorkItemType], [System.AssignedTo], [System.CreatedBy], [Microsoft.VSTS.Common.Priority], [System.Title], [System.Description] FROM WorkItems WHERE [System.TeamProject] = @project AND ( [System.WorkItemType] = 'Bug' AND ( [System.State] <> 'Closed' AND [System.AreaPath] UNDER '710_task_automatization_system\TeamXpand\Outlook Add-In' )) ORDER BY [System.CreatedBy]


Язык очень похож на SQL, но есть свои тонкости.
Эту строку надо парсить и из нее должно получится Grid представленный на рисунке.
Все что, находится до оператора WHERE и после ORDER BY, абсолютно не интересто.
Получается строка

Цитата:
[System.TeamProject] = @project AND ( [System.WorkItemType] = 'Bug' AND ( [System.State] <> 'Closed' AND [System.AreaPath] UNDER '710_task_automatization_system\TeamXpand\Outlook Add-In' ))



Все бы ничего, но контрол должен позволять объединять в ячейки в группы, в запросе это показывается как выражение взятое в скобки, а в контроле в качестве "скоб", которые объединяют строки в Grid-e.
Загвоздка собственно в алгоритме построения контрола из строки, ведь группа может содержать сколько угодно объединений.

Может кто-нибудь, может предложить алгоритм для разбора строки и помещения ее в грид, интересует имменно группировка, как хранить данные в одной группе, что бы потом контрол мог разбивать на группы, как показано на рисунке, т.е. как хранить данные которые находятся в оденой группе, подгруппе, подподгруппе и т.д.

P.S. Для реализации использую С#, но это значения не имеет.
P.S.S. Может еще кто-либо подскажет как реализовать такого рода группировку для DataGridView.(Выделение строк как показано на рисунке).

За любую помощь - пиво на e-mail или в аську :)

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог