Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
CR9. Несколько записей представить одной?
|
|||
|---|---|---|---|
|
#18+
Есть 2 связанные таблицы: заголовок и спецификация. Для каждой записи из заголовка в спецификации соответствуют несколько записей. Нужно, чтобы в отчете выводилась только одна запись из спецификации. Т.е. для каждой записи заголовка связанные с ней записи в спецификации однотипны по полям, поэтому не нужно печатать все однотипные записи из спецификации. + у каждой записи в спецификации есть поле с суммой, которые нужно сложить. Можно ли это сделать с помощью кристала или придется писать вьюшку? Саму механику представляю: берем первую запись в спецификации, запоминаем ее внешний ключ, затем выбираем все записи с таким же внешним ключом (т.е. относящиеся к одной записи из таблицы-заголовка). При этом запоминаем сумму у каждой записи. В итоге формируем вьюшку (виртуальную таблицу), в которой помещаем недублируемые записи из таблицы-спецификации и поле с общей суммой. зы. Надеюсь сказал понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2008, 14:22 |
|
||
|
CR9. Несколько записей представить одной?
|
|||
|---|---|---|---|
|
#18+
проще всего сделать основной отчёт на основе таблицы-заголовка и к каждой строке подцепить подотчет с соответствующей спецификацией. в подотчете мжно засупрессить детайл и выводить только репорт футер, просто перетащив в него соответствующие поля, а в поле суммы воткнуть "сумму поля суммы"... второй вариант сгруппировать по ключевому полю из заголовка и аналогично... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2008, 14:57 |
|
||
|
CR9. Несколько записей представить одной?
|
|||
|---|---|---|---|
|
#18+
Значит эту задачу можно сделать и средствами кристала. Вроде сделал через груп футер. В подотчете сделал группировку по нужному полю, плюс суммарайз по полю с цифрами. Чтобы одни и теже записи не повторялись, поместил все поля в груп футер. Теперь отчет выводит вместо всех полей (в том числе и повторяющихся по внешним ключам) только не повторяющиеся поля + поля с суммами. Предложенный вариант пока не проверял и теперь только до понедельника - ни базы, ни кристала дома нет. Поэтому вопрос на вскидку. Ты предлагаешь запостить поля в репорт футер. В кристале я новичок, в книге написано, что RF повторяется только 1 раз в конце отчета. Т.е. будет выведена только первая запись из таблицы. Или же нет? Т.е. если поместить такой подотчет в детаил отчета, то в такой комбинации будет выведена уже не одна запись? Но тогда каким образом будт произведено отбрасывание дублирующих записей? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.02.2008, 16:18 |
|
||
|
CR9. Несколько записей представить одной?
|
|||
|---|---|---|---|
|
#18+
RF повторяется только 1 раз в конце отчета. Т.е. будет выведена только первая запись из таблицы. Или же нет? Т.е. если поместить такой подотчет в детаил отчета, то в такой комбинации будет выведена уже не одна запись? Только сейчас догнал, что так и сделал, только через группировку. Однако вопрос "Но тогда каким образом будт произведено отбрасывание дублирующих записей?" , остается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.02.2008, 16:28 |
|
||
|
CR9. Несколько записей представить одной?
|
|||
|---|---|---|---|
|
#18+
если через группировку, то соответственно GF, а не RF Причём в GF-е выводится будет не первая, а ПОСЛЕДНЯЯ запись из соответствующей группы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.02.2008, 16:49 |
|
||
|
CR9. Несколько записей представить одной?
|
|||
|---|---|---|---|
|
#18+
В итоге: 1. Сделал в подотчете группировку по полю типа документа; 2. Чтобы выводилась только одна из каждой подгруппы, запихнул нужные поля в групфутер; 3. Сделал п.2 еще по одной причине: нужно было суммирующее поле для каждой подгруппы, в детаил вставлять запрещено. 4. Подотчет поместил в отчет, в поле детаил. Все заработало, но одна загвоздка. Нужно пронумировать строки. 1. В детаиле отчета сместил подотчет немного вправо. 2.На свободном месте слева вставил стандартное поле кристала рекорд намбер (или как-то так). По идее каждая новая строка в детаиле должна нумероваться, однако нумеруется тольк первая строка, хотя выводятся несколько строк. Мне подсказали сделать счетчик через формулу, прямо в подотчете (простой инкремент). До этого я пытался химичить с рекорд намбер, помещая его в разные секции. Ничего не получалось. Вопрос: может я что-то неправильно сделал, что счетчик могу сделать только через формулу? Или для групп это единственный вариант? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2008, 18:39 |
|
||
|
|

start [/forum/topic.php?fid=31&msg=35163918&tid=1537229]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
100ms |
get tp. blocked users: |
1ms |
| others: | 11ms |
| total: | 186ms |

| 0 / 0 |
