Crystal Reports vs. XML datasource: хочу невозможного?
От: Mavus Россия  
Дата: 10.02.05 20:40
Оценка:
Долгое вступление к довольно простой задаче.
Есть XML примерно следующей структуры:
[корень]
...[элемент]
......[поле данных /]
.....................
......[поле данных /]
.........[элемент группы сигнатур]
............[элемент сигнатуры]
...............[поле данных сигнатуры
...............[поле данных сигнатуры
............[/элемент сигнатуры]
............[элемент сигнатур аналогичный/]
.........[/элемент группы сигнатур]
...[/элемент]
...[элемент аналогичный/]
.........................
...[элемент аналогичный/]
[/корень]

Задача: построить отчет в Crystal Reports 10, используя указанный XML как источник данных, при этом страницей отчета должен быть "элемент" (дочерний к корневому), а на странице кроме аккуратно расположенных "полей данных" следует также еще разместить в строго определенных местах поля данных от 3 до 5 "элементов сигнатур", причем место размещения выбирается в зависимости от значения одного из полей данных "сигнатуры".

Возможно ли это вообще? Как я понимаю, Crystal интерпретирует мой XML как связку из трех таблиц, и делает фактически
"select t1.*, t2.3, t3. from t1, t2, t3 (с указанием join'ов)", и в результате я получаю число страниц равное не числу "элементов", а произведению числа "элементов" на число "элементов сигнатуры". Я понимаю, что можно просто переделать XML и сделать уникальные имена для полей данных элементов сигнатур, но это не спортивно.

Тем не менее, жду ответа. Или совета.
Спасибо!
Re: Crystal Reports vs. XML datasource: хочу невозможного?
От: Mavus Россия  
Дата: 14.02.05 16:26
Оценка:
Оказалось, что все гораздо проще.
На второй день работы с Crystal Reports мне явилось , что у него есть механизм подотчетов.
В случае с моей структурой XML подотчет, удовлетворяющий моим запросам, состоял из тех же трех "таблиц", связанных с главным отчетом по ИДу самого верхнего уровня, и набора критериев выборки тех записей ("сигнатур"), которые меня интересовали.
Проблема решилась за 5 минут, потрачено на нее было более 12 часов...

Век живи, век RTFM — все равно LMD!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.