Проблема со сменой родительского очета
Исходные данные.
1. Отчет А
2. Отчет Б, который унаследован от отчета А
3. Оба отчета хранятся в БД, для загрузки базового используется событие OnLoadTemplate
4. В некоторый момент времени возникает потребность сменить у отчета Б родителя с А, на третий отчет С, с удалением дубликатов.
Проблема возникает в тот момент, когда объекту Б поле ParentReport сбрасывается в ''.
Т.е. мы делаем следующее:
1. Сбрасываем значение поля ParentReport
2. Вызываем метод InheritFromTemplate, передаем в него код нового базового шаблона и параметр imDelete
3. После этого, в отчете Б теряется весь дизайн, и вместо него видим дизайн шаблона С
Как это исправить? Может быть я что-то пропустил?
1. Отчет А
2. Отчет Б, который унаследован от отчета А
3. Оба отчета хранятся в БД, для загрузки базового используется событие OnLoadTemplate
4. В некоторый момент времени возникает потребность сменить у отчета Б родителя с А, на третий отчет С, с удалением дубликатов.
Проблема возникает в тот момент, когда объекту Б поле ParentReport сбрасывается в ''.
Т.е. мы делаем следующее:
1. Сбрасываем значение поля ParentReport
2. Вызываем метод InheritFromTemplate, передаем в него код нового базового шаблона и параметр imDelete
3. После этого, в отчете Б теряется весь дизайн, и вместо него видим дизайн шаблона С
Как это исправить? Может быть я что-то пропустил?
Комментарии
Параметр imDelete удаляет дубликаты объектов. Так, если в отчете уже есть бэнд с именем ReportTitle1 и мы наследуем отчет от родителя, в котором тоже есть такой бэнд, то бэнд со всеми объектами будет удален из отчета и будет использован родительский ReportTitle1.
Т.е. в решаемой задаче, родительские отчеты содержат просто шапки (ReportTitle к примеру), а дочерние - непосредственно данные... И вот когда программно меняем родителей, с заменой всех дублирующися объектов, по идее в дочернем отчете просто одна шапка должна подмениться на вторую, а сам отчет не пострадать. А получается, что вместо наследованной шапки + тела самого отчета, я вижу того новую наследованную шапку и пустое тело отчета.