УТ 11.4. Жутко долго открывается документ, но проводится быстро.

1. Angealtor 23 02.04.18 12:46 Сейчас в теме
Всем доброго дня!
Есть документы установки цен по 4000строк. Даже при одной пользователе в базе открываются такие документы около 2 минут, но проводятся за 1-2 секунды. MS SQL 2012, Проц 3.2 * 16 ядер, память 128 ГБ. База свежая - 3.5 Гб. Дисковые массивы на аппаратном RAID10.
С чем может быть связано? Как решить?
adhocprog; +1 Ответить
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Dream_kz 129 02.04.18 13:22 Сейчас в теме
(1)
- Сделать замеры
- Попробовать отрубить сжатие
3. Angealtor 23 02.04.18 14:33 Сейчас в теме
Документ: "Регистрация цен поставщиков".
Сжатие убирал - не изменилось.
Сделал замер. Все время берет
СтрокаНоменклатура = Строка(ТекущиеДанные.Номенклатура)
+ ?(ИспользоватьХарактеристикиНоменклатуры,
?(ЗначениеЗаполнено(ТекущиеДанные.Характеристика), " (" + Строка(ТекущиеДанные.Характеристика) + ")", ""), "");
Очень странно, но замер не подсчитал время открытия. Реальное время открытия документа в этот раз: 1мин45сек
Прикрепленные файлы:
4. spacecraft 02.04.18 15:11 Сейчас в теме
(3) это в типовом коде такое извращение?
В общем клиентском модуле получение представления на каждый ссылочный элемент?!
Явно двоечник делал.
5. Angealtor 23 02.04.18 16:02 Сейчас в теме
(4) Да в типовой. Но я не думаю, чтоб проблема долгого открывания документа в этом.
6. Fe9_min 50 02.04.18 16:16 Сейчас в теме
(3) Ну если разрабы 1ц двоечники, то кто тогда мы?!
Если я не ошибаюсь, то это стандартный код RLS - ограничение прав на уровне записи. Удивляться нечему, особенно тормозам.
9. Xershi 1551 02.04.18 17:22 Сейчас в теме
(6) он написал, только конкретный релиз не указал.

Там проблема в формировании формы, она программно создается, чем больше строк и видов цен, тем больше.
23. Cooler 22 17.04.18 00:13 Сейчас в теме
(3)
Сделал замер. Все время берет
СтрокаНоменклатура = Строка(ТекущиеДанные.Номенклатура)
+ ?(ИспользоватьХарактеристикиНоменклатуры,
?(ЗначениеЗаполнено(ТекущиеДанные.Характеристика), " (" + Строка(ТекущиеДанные.Характеристика) + ")", ""), "");
ИМХО, вредно полагаться на встроенный в 1С механизм преобразования типов данных.

Конкретно: что вернет Строка(ТекущиеДанные.Номенклатура)? Наименование номенклатуры? Так и надо писать вместо него ТекущиеДанные.Номенклатура.Наименование, которое заведомо есть строка, а не грузить движок 1С преобразованием агрегатного типа в строку, тем более, что результат этого преобразования заведомо известен.

С ТекущиеДанные.Характеристика - аналогично.

P.S. А еще я бы разделил это выражение на 2 строки: в первой присваивал бы значение СтрокаНоменклатура, а во второй - добавлял бы к нему характеристику. И тогда повторил бы замер чтобы узнать - какой фрагмент этого выражения создает тормоза? Мерещатся мне тут некие сюрпризы...
24. Angealtor 23 17.04.18 10:42 Сейчас в теме
(23) Согласен. Но если я не ошибаюсь такие тормоза не по этой причине - данный код отрабатывает один раз с временем менее 0.5 секунды. 10-15 минут отработки открытия формы даже не попадают в замер.
25. Cooler 22 17.04.18 10:56 Сейчас в теме
(24)
10-15 минут отработки открытия формы даже не попадают в замер.
Тогда это что-то "за пределами кода 1С". Например, антивирус, проверяющий временные файлы, которые 1С может создавать при загрузке в память такого объема данных.

И это не шутка: меня недавно попросили помочь разобраться с типовой "Розницей", которую ставил и настраивал не я. Проблема была в том, что чек ККМ печатался порядка 4 минут: сначала комп о чем-то долго думал, потом начиналась печать, но тоже с тормозами, напечатает строчку - и задумывается на несколько десятков секунд.

Смотрю в диспетчере задач - систему грузит Defender (Windows 10), загрузка начинается как раз во время печати и заканчивается с ее окончанием. Отключил - тормоза пропали, совсем.

Пробовал добавить в исключения папки с базой, с платформой 1С, с модулем УТМ - не помогает, что-то еще он проверяет долго и нудно. Заморачиваться не стал, правкой реестра отключил его нафиг и предупредил. чтобы с рабочего компа по Инету не лазили.

В-общем, я бы смотрел диспетчер процессов, ну и монитор производительности на всякий случай - может, какое железо загружено?
27. Angealtor 23 17.04.18 14:20 Сейчас в теме
(25) Такое долгое открывание выявлено пока только с одним типом документов - "Регистрация цен поставщиков". "Установка цен" с значительно большим количество строк в документе открывается "легко" - 5-10сек.
29. spacecraft 17.04.18 16:58 Сейчас в теме
(24) перечитайте еще раз (3) и (4).
Этот код выполняется на каждую строку из овер 4000.
Вот ради эксперимента, вместо этой строки указать:
СтрокаНоменклатура = "1";

Можно попробовать на копии.
30. spacecraft 17.04.18 17:08 Сейчас в теме
(24) у меня стойкое убеждение, что кто-то пытался перенести логику обычных форм на управляемые. Причем напрямую, топорно.
31. roman77 336 17.04.18 18:01 Сейчас в теме
(30) 1-совцы там перемудрили просто. Там есть табличная часть с реквизитами типа "номенклатура", "вид цены", "цена" и они эту таблицу в форме переворачивают так, что виды цен становятся столбцами. Ну и с логикой явно проблемы - вместо того, чтобы передать массив на сервер, там обработать и загрузить в форму долбятся на сервер построчно.
Angealtor; +1 Ответить
32. spacecraft 17.04.18 18:29 Сейчас в теме
(31) по непроверенным данным, уже давно типовые не пишут в фирме 1С полностью. Им франчи пересылают свои доработки, которые затем выборочно внедряют в типовые. Судя по ляпам, очень на это похоже.
7. mazechild 02.04.18 16:50 Сейчас в теме
А может дело не в открытии, а в отображении? Или в передаче данных на клиента?
8. Angealtor 23 02.04.18 17:04 Сейчас в теме
(7) Возможно, но как это проверить?
10. Angealtor 23 02.04.18 17:24 Сейчас в теме
(9) В этой теме коллега столкнулся с похожей проблемой.
https://forum.infostart.ru/forum34/topic188990/
У него отключение сжатия похоже решило проблему. Мне же это не помогло. Платформа у меня 8.3.11.3034.
УТ 11.4.3.126
11. a.doroshkevich 1513 03.04.18 06:39 Сейчас в теме
(10)
Регламенты на SQL сделаны и работают?
ОС под SQL настроена?
12. Angealtor 23 03.04.18 09:36 Сейчас в теме
(11) Сделаны, работают. Документ "Установка цен" с 5000 строк, например, быстро открывается - в течении 5 сек. Проблема пока выявлена только у документа "Регистрация цен поставщиков".
14. a.doroshkevich 1513 05.04.18 11:48 Сейчас в теме
(12)Тогда только смотреть код экспертом
13. Angealtor 23 04.04.18 10:39 Сейчас в теме
15. Дмитрий74Чел 239 06.04.18 11:56 Сейчас в теме
Что нетипового есть в коде формы/объекта/менеджера?
16. Angealtor 23 06.04.18 16:52 Сейчас в теме
(15) Все типовое, кроме свойства у приложения "Без совместимости" +Расширение. По документам там дополнений нет.
26. Дмитрий74Чел 239 17.04.18 13:43 Сейчас в теме
(16) Так может проще уйти от этих 4000 строк? Их же явно не руками набивают пользователи. Скорее всего грузите из Excel. Провести документ можно из формы списка, не открывая. А движения - через отчет посмотреть.
Ну и наконец, не меняете же вы цены на все 4000 позиций единовременно. Оставляйте в документе только строки с измененными ценами.
28. Angealtor 23 17.04.18 14:23 Сейчас в теме
(26) Грузится из Excel, меняются сразу у всех. Пока так и делаем - проводим без открывания, движения и контроль через отчет.
17. Angealtor 23 16.04.18 11:10 Сейчас в теме
Документы "Регистрации цен поставщиков", в которых строк более 8000, вообще не открываются. Проводятся так же быстро в течении 5-10сек. Попробую обновить платформу до 8.3.12.1412.
18. roman77 336 16.04.18 11:15 Сейчас в теме
(17) Я не проверял, но там ведь небось в форме что-то неоптимально сделано, небось многократные обращения к серверу при выводе каждой строчки. Попробуйте сделать свою простенькую форму, которая не будет никуда обращаться из ПриСозданииНаСервере.
20. Angealtor 23 16.04.18 12:13 Сейчас в теме
(18) Скорее всего. Не хотелось бы править типовой код конечно, но как временное решение похоже так и придется сделать. Спасибо.
21. roman77 336 16.04.18 12:24 Сейчас в теме
(20) можно без правки типового кода расширением
22. Angealtor 23 16.04.18 22:43 Сейчас в теме
19. roman77 336 16.04.18 11:20 Сейчас в теме
(17) Еще у меня 1 раз было такое, что простенькая форма открывалась очень долго на одной из баз. А на других открывалась нормально. Чистка кэша не помогала, зато помогло "установить стандартные настройки".
33. rafaiil 18.04.18 14:20 Сейчас в теме
Было у меня подобное на ут 11, на удивление помогла смена питания в Панели управления на максимальную производительность.
34. Дмитрий74Чел 239 18.04.18 15:51 Сейчас в теме
(33) Обычно это используют для того чтоб процессор всегда работал на максимальной частоте, а не понижал частоту при снижении нагрузки. И не "раскочегаривался" при росте нагрузки. И вообще для сервера 1с это рекомендуемая настройка.
Посмотрим поможет ли автору.
35. rafaiil 18.04.18 16:06 Сейчас в теме
(34) а это я у Гилёва нашёл. там ещё надо в биосе поковырять все энерго-сберегалки выключить.
я сам удивился.у меня 1 запрос(типовой) отрабатывал по 30-40 секунд. фактор совпадения я тоже исключаю,стоит включить назад режим энерго сбережения,тормоза начинаются вновь.
36. Angealtor 23 26.06.18 11:28 Сейчас в теме
(35) Режим питания "Максимальная производительность" стоял изначально.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот