Автор Тема: Реализация шаблона с данными из нескольких форм  (Прочитано 449 раз)

advokat

  • Посвященный
  • **
  • Сообщений: 96
  • Благодарностей 4
Доброго времени суток.
Создаю базу под свои нужды и на данном этапе столкнулся с непреодолимыми проблемами.
У меня достаточно сложный шаблон в котором есть как просто данные из многих объектов - я их вывожу в шаблон через форму связи и с этим проблем нет. Но с этими данными мне нужно производить расчёты, которые помещать в тот же шаблон и тут возникают вопросы.
1. Можно ли создать общий шаблон для двух форм, например для формы связи и для формы итогов. Если да, то как?
2. Как рассчитать количество полей в определённом объекте и результат вывести в отдельное поле, а потом в шаблон. Например. У меня есть объект "Дни", в который я заношу каждый день участия в конкретном уголовном деле. Каждый день - это отдельная запись в которой есть ещё и доп. данные. Я хочу иметь возможность рассчитать количество дней затраченных по тому или иному делу и вывести это количество в отдельное поле ссылку на которое можно вставить в базу.
3. Можно ли рассчитать сумму в группе полей в разных записях одного объекта и вывести это значение в отдельное поле для использования в шаблоне, при этом сделать это без формы итогов?

vladimir.runa

  • Главный модератор
  • Мастер
  • **
  • Сообщений: 341
  • Благодарностей 22
  • skype: vladimir.runa
1. Шаблон документа создаётся только для одной формы/объекта. Но если формы созданы на базе одного объекта, то можно подумать над тем, как вывести все данные объекта. По ссылкам на объекты (включая системные) можно вывести все данные из них любой глубины вложенности.
2. Создаётся числовое поле со значением по умолчанию 1 (все существующие записи надо будет перебить) и данные из него можно просуммировать в форме связи из дочернего списка или в форме итогов.
3. Если коротко - то нет. Что подразумевается под "группой"? Можно создать отчёт в MS Excel/OO Calc и там сгруппировать данные с суммированием. Используя шаблоны можно значительно расширить возможности конструктора, используя его как хранилище исходных данных.

Часто возникают такие задачи: есть объект (к примеру клиенты) и события к нему, которые определены как дочерний подчинённый объект. Необходимо вывести результат по клиентам, но с данными по событиям. Основываясь на объекте/форме клиентов такой результат не получить. А если взять объект событий, то по системной ссылке на клиента можно получить отчёт по событиям со всеми данными клиентов, вывести их в Excel, а затем отсортировать или сгруппировать, получив необходимый результат.

advokat

  • Посвященный
  • **
  • Сообщений: 96
  • Благодарностей 4
1. Шаблон документа создаётся только для одной формы/объекта. Но если формы созданы на базе одного объекта, то можно подумать над тем, как вывести все данные объекта. По ссылкам на объекты (включая системные) можно вывести все данные из них любой глубины вложенности.
Вот это мне и нужно. У меня следующая структура связей.
1. объект Дела,
    2. на его базе создана форма Итогов.
3. объект Дни - связан с объектом Дела как дочерний
   4. объект Мероприятия - связан с объектом Дни как дочерний.
Есть сложный шаблон в котором нужны данные из всех перечисленных объектов и форм. Объекты 1 и 3 связаны и на их базе легко можно сделать шаблон - это ясно. Как в эту чудную связку зацепить ещё форму 2 и объект 4?

vladimir.runa

  • Главный модератор
  • Мастер
  • **
  • Сообщений: 341
  • Благодарностей 22
  • skype: vladimir.runa
Сделать шаблон для объекта/формы Мероприятия (4). В нём можно получить все данные по цепочке из Дни (3) и Дела (1). Информация из формы Итоги (2) - это тот же объект Дела (1).
Полученный документ (к примеру в Excel) можно в дальнейшем обработать до необходимого вида.

advokat

  • Посвященный
  • **
  • Сообщений: 96
  • Благодарностей 4
Сделав шаблон для объекта/формы Мероприятия я смогу вывести записи из объекта Дни (дочерний к Делам) списком, как бы я сделал, если бы шаблон был для объекта Дела? Также списком вывести данные формы Итоги?

vladimir.runa

  • Главный модератор
  • Мастер
  • **
  • Сообщений: 341
  • Благодарностей 22
  • skype: vladimir.runa
Да, из любой формы можно вывести данные базового объекта в документ. Если в форме скрыты вкладки и дочерние объекты от просмотра, то при создании шаблона в конструкторе, программа считает, что пользователю нужен именно списочный отчёт и формирует структуру с тэгами - чтобы сэкономить время и избежать ошибок в структуре шаблона. В таблицу автоматически помещаются только поля, которые отображаются в списке, а остальные, при необходимости, можно указать вручную - главное не ошибиться в правильности прописи каждого поля (их можно получить при формировании обычного шаблона).

advokat

  • Посвященный
  • **
  • Сообщений: 96
  • Благодарностей 4
Да, из любой формы можно вывести данные базового объекта в документ.
Это так, но у меня задача сложнее мне нужно выводить данные, которые вообще к этой форме отношения не имеют. Например как связаны Мероприятия и Итоги? Я создав шаблон на базе Мероприятий не могу вывести ни одного поля из Итогов, на них даже ссылок нет. Также нет тегов списка к объекту Дни и даже нет списочных тегов объекта Мероприятия. Я совершенно не понимаю как из Мероприятий добраться до других форм типа Итоги. Вообщем-то система даже ссылок для этого не даёт и видимо это не спроста, она сама этой связи не видит. Где тут собака порылась?

vladimir.runa

  • Главный модератор
  • Мастер
  • **
  • Сообщений: 341
  • Благодарностей 22
  • skype: vladimir.runa
на них даже ссылок нет.
Ну почему же нет? Очень даже есть.
Итоги - это форма над объектом Дела.
Мероприятия, являясь дочерним объектом к Дням, имеют системную ссылку на объект Дни (системой создаётся с тильдой).
Дни, являясь дочерним объектом к Делам, имеют системную ссылку на объект Дела.
Таким образом можно вывести в объекте/форме Мероприятий всю информацию по ссылкам из Дел, т.е. из Итогов.

Кажется сложным, но надо просто понимать, что ссылки на объекты позволяют получать всю информацию из этого объекта. Когда видна цепочка ссылок, то картина становится совершенно ясной. Можно только порадоваться упорству в желании понять некоторые тонкие и очень полезные инструменты в конструкторе.

advokat

  • Посвященный
  • **
  • Сообщений: 96
  • Благодарностей 4
А теги списков? С ними как быть? Как вывести список из формы Дни и формы Итоги?

vladimir.runa

  • Главный модератор
  • Мастер
  • **
  • Сообщений: 341
  • Благодарностей 22
  • skype: vladimir.runa
Теги списков задаются в шаблоне документа.
Для формы Дни создаётся свой шаблон для вывода списка. Для формы Итоги - свой шаблон для вывода списка.
Справка по шаблонам: http://runabase.ru/help/pattern.html
« Последнее редактирование: Апрель 16, 2016, 08:55:43 pm от vladimir.runa »

advokat

  • Посвященный
  • **
  • Сообщений: 96
  • Благодарностей 4
Теги списков задаются в шаблоне документа.
Для формы Дни создаётся свой шаблон для вывода списка. Для формы Итоги - свой шаблон для вывода списка.
Весь фокус в том что мне нужен единый сложный шаблон с кучей данных из разрозненных форм с возможностью вывода списков из этих форм. Возможность создать отдельный шаблон для каждой формы была для меня очевидна с самого начала. Только потом эти несколько разных документов придется вручную обьединять в один - этого я пытался избежать. Видимо не получится.

 

Яндекс.Метрика