Имя: Пароль:
1C
1С v8
Возможно определить каким отчетом пользуются чаще всего?
,
0 ArtemKolos
 
20.02.12
12:44
Возможно определить каким отчетом, обработкой пользуются чаще всего? Нужно для того, чтобы понять что тормози базу, конфигурация самописная.
1 Лефмихалыч
 
20.02.12
12:46

Процедура ПриОткрытии()
   
   ПредставлениеОбъекта = Строка(ЭтотОбъект);

   Если Найти(ПредставлениеОбъекта, "ВнешнийОтчет") <> 0 Тогда
       Событие = "Внешний отчет. Открытие";
   Иначе
       Событие = "Внешняя обработка. Открытие";
   КонецЕсли;

   ЗаписьЖурналаРегистрации(Событие, УровеньЖурналаРегистрации.Информация,,, "Открыт объект """ + Метаданные().Имя + """");

2 rbcvg
 
20.02.12
12:46
Опрос проведи, анонимный.
3 Fish
 
20.02.12
12:46
Сделай РС и пиши туда при формировании отчёта
4 ShoGUN
 
20.02.12
12:49
(0) В общем случае - можно, хоть и несколько через задний проход. Например, писать в лог/РС каждое формирование отчётов. В типовых механизм отсутствует, так что после дописок ещё надо некоторое время потратить на сбор статистики.
Можно ещё воспользоваться внешними средствами, например анализировать запросы на сервере СУБД, но это за рамками 1С.
5 ArtemKolos
 
20.02.12
12:49
Можно получить потраченное время не формирование отчета?
6 ShoGUN
 
20.02.12
12:50
(1) Открытие само по себе ни о чём не говорит, лучше писать в лог при нажатии кнопки "Сформировать".
(5) Замер производительности в отладчике чем не устраивает?
7 rbcvg
 
20.02.12
12:50
(5) замер производительности?
8 ArtemKolos
 
20.02.12
12:51
Хочу записывать в рс количество формирования отчета, и время потраченное на это
9 ShoGUN
 
20.02.12
12:54
(8) Меня всё же интересует вопрос "зачем?". Узкие места в 90-95% случаев выявляются замером производительности.
А так - нет ничего проще, меряй текущее время до начала формирования и после вывода результата. Правда точность заставляет желать лучшего - до секунд.
10 Капитан О
 
20.02.12
12:57
обMSScriptControl = Новый COMОбъект("MSScriptControl.ScriptControl");
обMSScriptControl.language = "javascript";
Старт=обMSScriptControl.eval("new Date().getTime()");
...
Финиш=обMSScriptControl.eval("new Date().getTime()");
11 Капитан О
 
20.02.12
12:57
+(10) точность до миллисекунд
12 ArtemKolos
 
20.02.12
12:57
(9), просто отчетов много, думал может быстрее как то можно?
13 ArtemKolos
 
20.02.12
12:58
(10), пасиб, попробую
14 ShoGUN
 
20.02.12
12:58
(11) Точность тут условная:
v8: миллисекунды в 1С
Хотя в первом приближении годится, а второе автору вряд ли понадобится.
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.