Re: Подсчет данных в формате
Пользователь:
Дунаевская (IP-адрес скрыт)
Дата: 01, April, 2011 16:21
ukntb написал(а):
-------------------------------------------------------
> Добрый день!
> Спасибо за помощь, но этот вариант не подходит.
> Попробую еще раз объяснить задачу:
> Есть повторяющееся поле
> 62^a-Дата
> 62^b-Услуга
> 62^d-Кол-во
> 62^e- Сумма
>
> Я сделал табличную форму генератором табл. форм,
> где,:
> 1 столбец- дата, формируется форматом (if p(v62)
> then if val(v62^a)>=val(&uf('Av991^a#1')) and
> val(v62^a)<= val(&uf('Av991^b#1')) then v62^a|\par
> | fi fi/)
> 2 столбец-услуга, формируется форматом (if p(v62)
> then if val(v62^a)>=val(&uf('Av991^a#1')) and
> val(v62^a)<= val(&uf('Av991^b#1')) then v62^b|\par
> | fi fi/)
> 3 столбец- кол-во, формируется форматом (if p(v62)
> then if val(v62^a)>=val(&uf('Av991^a#1')) and
> val(v62^a)<= val(&uf('Av991^b#1')) then
> v62^d|\par | fi fi/)
> 4 столбец Сумма, формируется форматом (if p(v62)
> then if val(v62^a)>=val(&uf('Av991^a#1')) and
> val(v62^a)<= val(&uf('Av991^b#1')) then v62^e|\par
> | fi fi/)
>
> Этот вариант работает нормально , но мне бы
> хотелось чтобы каждое повторение поля не
> выводилось отдельной строкой, а группировалось
> Например у нас сейчас так:
>
> Дата Услуга Кол-Во Сумма
> 20110101 Выдача 50 100
> 200110102 Выдача 100 1000
>
> Необходим следующий вариант:
> Дата Услуга Кол-Во Сумма
> 201101 Выдача 150 1100
> Заранее благодарен.
Попробуйте так (проверяла только форматом, но не в табличной форме)
Формат для столбца 1
&uf('+7W1#'(if p(v62) then if val(v62^a)>=val(&uf('Av991^a#1')) and val(v62^a)<= val(&uf('Av991^b#1')) then |^a|v62^a.6,|^B|v62^b fi fi/)), &uf('+7G1'),&uf('+7T1'),(if p(g1) then g1^a '\par 'fi)
Формат для столбца 2
(if p(g1) then g1^b '\par 'fi),
Формат для столбца 3
(if p(g1) then &uf('+7W3#'g1),&uf('6v3') '\par 'fi),
Формат для столбца 4
(if p(g1) then &uf('+7W4#'g1),&uf('6v4') '\par 'fi)
Кроме того создайте 2 формата V3 и V4
Формат V3
f(rsum((if p(v62) then if v62^a:&uf('Ag3^a#1') and v62^b:&uf('Ag3^b#1') then v62^d|;| fi fi)),0,0)
Формат V4
f(rsum((if p(v62) then if v62^a:&uf('Ag4^a#1') and v62^b:&uf('Ag4^b#1') then v62^e|;| fi fi)),0,0)
Редактировано 1 раз. Последний раз 05.04.2011 11:35 пользователем Дунаевская.