И снова быстродействие

1. PRoman 73 30.11.10 10:23 Сейчас в теме
В модуле "Общего назначения" есть процедура в которой перед проведением документа очищаются движения по регистрам у которых есть записи по данному регистратору. И на это "уходит" 60% времени . Кто знает как ускорить это?

УдалитьДвиженияРегистратора(ДокументОбъект, Отказ) Экспорт

.......
СтрокаДвижения.НаборЗаписей.Записать();
......
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. maguga 19 04.01.11 20:21 Сейчас в теме
Например добавить проверку проведен ли на данный момент этот документ, если нет то игнорировать удаление. Далее, если предположить что документ сделает движение по тем же самым регистрам, и просто перезапишет их то от нее и вовсе можно отказаться(хотя думаю совет это ОЧЕНЬ плохой). В каждой конкретной ситуации нужно смотреть на что именно, на какой регистр и т.д. уходить это самое время. Так как модуль общий, то его юзают очень много различных документов. Как вариант, например, можно в этот блок прописать свой обработчик по типу объектов.
Предположим Если Тип(ДокументОбъект)=ТакойТоДокумент то очищаем такие то регистры.
Ну и общая рекомендация, побыстрее серваки. новое железо ну и т.д.
3. Sobol007 20 24.10.13 03:04 Сейчас в теме
У меня при проведении документа "расчет себестоимости" колом становится вся БД при попытке проведения любого документа получается конфликт блокировок. Смотрел в отладчике например документ перемещение начинает свое проведение и спотыкается на функции

УдалитьДвиженияРегистратора(ДокументОбъект, Отказ)


Почему-то при очистке движений обычное перемещение пытается очистить Затратные регистры, регистры НезавершенногоПроизводства

Подскажите что делать? Как и себестоимость рассчитать и людям дать работать? Не всегда получается провести себестоимость ночью.
И ведь самое интересное нужны обязательно серии ГТД печатать в документах реализации. Т.е мне нужно оперативное проведение.
4. sh_max 24.10.13 10:51 Сейчас в теме
В платформе версии 8.2+ реализован такой механизм записи по регистрам при котором если записи не изменились, то ничего и не перезаписывается. Так что у вас лишние удаления не делаются, не переживайте. А если на удаление уходит много времени, то это скорее вопросы к "железу" на котором работает сервер ИМХО.
5. neckto 30.10.13 15:59 Сейчас в теме
(0) Узнай, на котором регистре тормозит, потом думай.
(3) Есть разные варианты, начиная с оптимизации РСВ, заканчивая разными уловками. Например, на одном из проектов на заводе, который работает в режиме 24/7, создавали копию БД для проведения РСВ. После закрытия в копии переносили движения в рабочую БД. При переносе, конечно, также возникали блокировки, но время переноса занимало не более 20 минут, что было позволительно.
6. vervolf9 30.10.13 23:01 Сейчас в теме
Базу в скуль, реиндексация и обновление статистики и будет вам счастье.
7. пользователь 30.10.13 23:03
Сообщение было скрыто модератором.
...
8. vervolf9 30.10.13 23:03 Сейчас в теме
9. vervolf9 30.10.13 23:03 Сейчас в теме
хотя в гилева есть получше описание
10. Alex_Japanese_Student 464 31.10.13 03:32 Сейчас в теме
как-то доводилось анализировать проведение по регистрам. Буквально посекундно замерять время по проведению документа реализации с огромным количеством строк (сейчас не помню сколько, но больше тысячи) - сколько по какому регистру занимает времени.
Ответ был однозначный, что это бухгалтерские регистры, это узкое место, по ним максимум времени занимает, все остальное вместе взятое меньше в разы.
11. neckto 31.10.13 09:44 Сейчас в теме
(10) +1. РБ - самый тяжелый регистр, т.к. хранится в большом количестве физических таблиц. Иногда спасает отложенное проведение документов.
Оставьте свое сообщение

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