Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис   
АРМ Книговыдача :  ИРБИС Irbis
 
Стат форма в новой БД
Пользователь: countess_lr (IP-адрес скрыт)
Дата: 28, May, 2014 10:58

Помогите, пожалуйста!
Создаю стат. форму в новой БД, она должна считать количество посещений по отделам за год.
v5 - отдел
v6 – количество участников
v4 – дата (ГГГГММДД)

Form7
if &uf('Av1000^a.4#1')=v4.4 then &uf('+7W1#'f(rsum(g1,','v6,),0,0)), &uf('+7g1'),(g1/),v4*4.2 fi
month_sf.mnu
if &uf('Av1000^a.4#1')=v4.4 then v5 fi
kv.MNU
4,7
991.wss,1000
'Посещения по отделам за год ',v1000^A
1,1

Проверяла в редакторе форматов: формат &uf('+7W1#'f(rsum(g1,','v6,),0,0)), &uf('+7g1'),(g1/) считает сумму значений поля v6, а в результате выводится количество повторений поля v6.
Как сделать так, чтобы выводилась сумма значений поля v6?

Ирбис64 2011.1



Редактировано 1 раз. Последний раз 28.05.2014 11:57 пользователем countess_lr.

Re: Стат форма в новой БД
Пользователь: woodyfon (IP-адрес скрыт)
Дата: 28, May, 2014 14:32

Цитата:
Как сделать так, чтобы выводилась сумма значений поля v6?
Здесь не обязательно применять глобальные переменные. Чтобы вывести сумму значений в поле v6, достаточно применить код:
f(rsum(v6|;|),0,0)
А чтобы вывести количество повторения поля v6, используем такой код:
f(rsum((if p(v6) then '1;' fi)),0,0)



Редактировано 1 раз. Последний раз 28.05.2014 14:32 пользователем woodyfon.

Re: Стат форма в новой БД
Пользователь: countess_lr (IP-адрес скрыт)
Дата: 28, May, 2014 15:41

woodyfon написал(а):

> Здесь не обязательно применять глобальные
> переменные. Чтобы вывести сумму значений в поле
> v6, достаточно применить код:
>
> f(rsum(v6|;|),0,0)

Я пробовала этот код, в результате одни нули

Re: Стат форма в новой БД
Пользователь: woodyfon (IP-адрес скрыт)
Дата: 28, May, 2014 17:59

В выходной форме или в формате?

Re: Стат форма в новой БД
Пользователь: countess_lr (IP-адрес скрыт)
Дата: 29, May, 2014 08:07

В выходной форме нули, а в формате при переходе от записи к записи выводит значение поля, но не суммирует.

Re: Стат форма в новой БД
Пользователь: woodyfon (IP-адрес скрыт)
Дата: 29, May, 2014 15:18

Прикрепите сюда все файлы статистической формы (month_sf.mnu, kv.MNU, *.xlt). Обратите внимание, что сбор статистики проводится по БД Читателей (RDR). В каком модуле работаете? Может, статистику лучше собрать в модуле АРМ-Каталогизатор, выбрав предварительно соответствующую БД.

Re: Стат форма в новой БД
Пользователь: countess_lr (IP-адрес скрыт)
Дата: 02, June, 2014 08:51

Я работаю в модуле АРМ-Каталогизатор, ошибочно разместила тему не в той ветке, написала модератору просьбу о перемещении, но пока все есть как есть.
В АРМ-Каталогизатор выбираю созданную нами БД Мероприятия, и в ней должны собираться стат данные.
Файлы прикрепляю.

Вложения: stat.zip (6.2KB)  
Re: Стат форма в новой БД
Пользователь: woodyfon (IP-адрес скрыт)
Дата: 02, June, 2014 14:42

Заполните пока файлик xlt начальными данными (просто во все ячейки вбейте нули). Нет файлика 991.wss и примеров записей из базы.

Re: Стат форма в новой БД
Пользователь: countess_lr (IP-адрес скрыт)
Дата: 02, June, 2014 15:50

Извините, про записи как-то не подумала сразу.

Вложения: 991.wss (37 bytes)   mer.TXT (244 bytes)  
Re: Стат форма в новой БД
Пользователь: woodyfon (IP-адрес скрыт)
Дата: 02, June, 2014 17:17

Вы хотите сделать выборку сразу по трем данным
1) Дата
2) Место проведения
3) Количество посещений
Так сделать не получиться.
При сборе статисики в форму необходимо передать такие данные, которые совпадают по имени со значением справочника по вертикали или по горизонтали.
Т. е. по вертикали передать значения мест проведения (v6), а по горизонтали - месяц проведения (v4*4.2).
Здесть проблема в том, чтобы передать значение места проведения равному количеству посещений. Как это можно сделать, не могу подсказать, Возможно другие пользователи что-то подскажут.
Вы можете по этой стат. форме определить общее количество мероприятий и их распределение во времени. Т. е. статистика будет по количеству проведенных мероприятий, а не по посещениям.
Лучше, конечно, это реализовать через табличные формы, а не статистические. Табличная форма будет содержать 3 столбца
1) Месяц
2) Место проведения
3) количество посещений
Есть возможность получить суммирующие итоги по третьему столбцу.



Редактировано 2 раз. Последний раз 02.06.2014 17:32 пользователем woodyfon.

Re: Стат форма в новой БД
Пользователь: countess_lr (IP-адрес скрыт)
Дата: 03, June, 2014 08:30

Очень жаль :( Ладно, буду пробовать сделать табличную форму. Спасибо большое за внимание и советы.

Re: Стат форма в новой БД
Пользователь: aris (IP-адрес скрыт)
Дата: 31, October, 2014 14:24

версия 13.1
В стат.форме 8 ДЛЯ АРМА Книговыдача, в базе RDR файл Form8.stf
похоже, ошибочка
вместо else v40^V
надо : else v40^K

Form8
mhl,(if p(v40) then if (v40^a<>'') and (&uf('Av1000^a#1')=v40^d.6) then v40^d*6.2/ fi fi)
date_STF.mnu
mhl,(if p(v40) then if (v40^a<>'') and (&uf('Av1000^a#1')=v40^d.6) then if v40^V='' then '*' else v40^V fi / fi fi)
kv_STF.mnu
4,7
1001.wss,1000
'Распределение выдач по местам выдач за ',&uf('36',v1000^A*4.2)," "v1000^A.4" г.",
1,1

здесь требуется Место выдачи(отдел),
а это - подполе 40^K

Re: Стат форма в новой БД
Пользователь: KrVs (IP-адрес скрыт)
Дата: 17, November, 2014 08:09

Подскажите пожалуйста, а можно ли взять данные для статформы из другой базы данных? Имеется такая возможность?

Имеется такой код статформы:

Form1
(if p(v1) then if (v3>=&uf('Av1000^A#1')) and (V3<=&uf('Av1000^B#1')) then &uf('Av2') else '*' fi fi/)
RTheme_SF.mnu
(if p(v1) then if (v3>=&uf('Av1000^A#1')) and (V3<=&uf('Av1000^B#1')) then &uf('Av6') else '*' fi fi/)
inform_SF.mnu
2, 3
999.wss,1000
'Количество тематических рассылок, осуществленных за период с ',v1000^A*6.2".",v1000^A*4.2".",v1000^A.4,' по ',v1000^B*6.2".",v1000^B*4.2".",v1000^B.4
1,1

Нужно чтобы данные во второй рассортировке брались не из поля 6 этой БД, а из подполя 140^H БД RDR. По идентификатору читателя (поле 1) текущей базы данных.

Re: Стат форма в новой БД
Пользователь: Дунаевская (IP-адрес скрыт)
Дата: 17, November, 2014 11:33

Форматирование документа из другой БД - функция &unifor('D...)

Re: Стат форма в новой БД
Пользователь: KrVs (IP-адрес скрыт)
Дата: 17, November, 2014 13:52

Спасибо.
Прописал, но что-то ничего не считается.

(if p(v1) then if (v3>=&uf('Av1000^A#1')) and (V3<=&uf('Av1000^B#1')) then &uf('DRDR,/RI='v30'/,v140^H') else '*' fi fi/)

Не пойму как правильно сделать. Как вообще тут сопоставить идентификатор читателя в БД ИРИ (поле 1) с полем 140^H этого читателя?

Re: Стат форма в новой БД
Пользователь: Дунаевская (IP-адрес скрыт)
Дата: 17, November, 2014 14:00

Через глобальную переменную

Re: Стат форма в новой БД
Пользователь: KrVs (IP-адрес скрыт)
Дата: 19, November, 2014 08:38

Спасибо за ответ. Только через глобальную переменную или через модельное поле? Делал по этому примеру [irbis.gpntb.ru]

Прошу прощения за глупые вопросы может быть, но не могу понять как использовать глобальную переменную тут. Не разобрался пока с этим.

Пробовал такой код, но это наверное неправильно совсем:
(if p(v1) then if (v3>=&uf('Av1000^A#1')) and (V3<=&uf('Av1000^B#1')) then &uf('+7W1#',(v1/)), &uf('DRDR,g1,v140^h') else '*' fi fi/)



Редактировано 1 раз. Последний раз 19.11.2014 09:36 пользователем KrVs.

Re: Стат форма в новой БД
Пользователь: Дунаевская (IP-адрес скрыт)
Дата: 19, November, 2014 12:27

Непонятно, какие поля у Вас повторяющиеся- V1 ? v3 ?
Связаны ли их повторения между собой?
Покажите на примере (ISO,TXT)

Re: Стат форма в новой БД
Пользователь: KrVs (IP-адрес скрыт)
Дата: 19, November, 2014 12:46

В текущей базе данных, где статформа расположена, повторяющихся полей нет. Каждый mfn отдельно идет, без повторяющихся полей. Это база данных результатов обслуживания по ИРИ.

А в базе данных читателей, откуда хочу брать подполе 140^H (ответственное лицо), заместо поля 6, там повторяющиеся поля идут, в зависимости от профиля ИРИ. То есть у разного профиля разный ответственный может быть. Может в этом нестыковка? Система не поймет из какого повторения брать данные. То есть помимо идентификатора читателя нужно указывать еще и код профиля (V2) наверное.



Редактировано 1 раз. Последний раз 19.11.2014 12:50 пользователем KrVs.

Вложения: IRI.TXT (723 bytes)   RDR.TXT (648 bytes)  
Re: Стат форма в новой БД
Пользователь: Дунаевская (IP-адрес скрыт)
Дата: 19, November, 2014 21:59

Да, правильно. Но тоже через глобальную переменную



Извините, только зарегистрированные пользователи могут писать в этом форуме.
This forum powered by Phorum.