Быстрое удаление документов за период

  1. 2 мес. назад

    Господа! Как в восьмёрке быстро удалить документы (для свёртки). Типа - оставить последний год, а предыдущие десять лет - снести.
    Целиком все документы снести если, то там есть вариант - на скуле сделать транкейт всех таблиц с документами (и регистрами), а потом натравить на базу ТИИ. Но мне-то надо часть оставить.
    Если штатное удаление, то неприемлемо долго. Если через КД тащить в новую базу, то там много подвязок через документы-основания, потянет весь зоопарк.
    Как сие делают благородные доны?

    Ответы: (3) (18)
  2. 25.12.2023 13:06:52 отредактировано Kevin

    Да по-разному наверно делают благородные доны. В последний раз что я сворачивал? УТ 10 вроде. Вот я замонался с ней. Ещё ссылки битые всякие. Написал свои обработины. Но средствами 1с удалял.

    Ответы: (2)
  3. (1) большая база была? У меня около полтинника. И в основном - это документами полтинник :)
    Транкейтом - быстро. Но всё целиком. Даже скулёвым делитом - и то долго.

    Ответы: (4)
  4. Дуб Господа! Как в восьмёрке быстро удалить документы (для свёртки)

    Средствами 1С.
    Чтобы было быстрее, запустить процесс в несколько потоков, фоновыми заданиями.

    Средствами СУБД нежелательно.
    Это нужно очень хорошо понимать, как база 1С на уровне таблиц устроена.

    Ответы: (5) (6)
  5. (2) Нет, небольшая

  6. (3) исессна - понимать нужно. Но для свёртки - на разных базах такое много лет пользую. Повторюсь: когда готовы начинать период "с нуля" (т.е. остатки по регистрам перенесли и все справочники оставили), то приемлемо.
    А несколько потоков насколько повысят производительность? Запуск - на той же машине, что и сам скуль.

    Ответы: (7)
  7. Фёдор14 Это нужно очень хорошо понимать, как база 1С на уровне таблиц устроена.

    +++++

  8. Дуб А несколько потоков насколько повысят производительность?

    В несколько раз.

    Ответы: (8)
  9. (7) я-таки извиняюсь: если задача поставлена запросом внутри скулёвой студии, то это будет медленнее, чем несколько потоков 1С?

    Ответы: (9)
  10. (8) Ну ты сказал тоже. Имхо. С помощью сиквела даже базы обновляют

    Ответы: (17)
  11. Но это надо очень хорошо знать сиквельную структуру. С помощью 1с гораздо проще

    Ответы: (17)
  12. На одной работе вот я заколебался без профайлера, когда тормоза были жестокие. Как план запроса узнать

    Ответы: (16)
  13. Даже думал админам наверно отписать, чтобы мне дали доступ

  14. Потом я вроде вычислил, что нужно ещё одно соединение по индексу. Но я уже поднял новую версию ERP. Сравнивал запросы

  15. Как же я замонался с этими запросами. Марафоны какие-то

  16. Такой пакетный запрос по расчёту себестоимости. Сидишь голову ломаешь, где, где что не так. Аааа, вот оно. Но это уже другая тема. Ещё обновление это. А понравилось

  17. Kevin На одной работе вот я заколебался без профайлера, когда тормоза были жестокие. Как план запроса узнать

    Через технологический журнал

  18. (9) не, я про другое. Я могу в скуле делитом снести то, что мне нужно. Но это долго.
    (10) а зачем мне знать скулёвую структуру? Связки БД определяет сервер 1С предприятия жи. Достаточно знать, где хранится. На каждый документ, например, по одной таблице, плюс по две на каждую таб.часть.

  19. (0) переноси данные с определённой даты в копии таблиц, потом таблицы удаляй, новые переименовывай в старые. Все на SQL разумеется

    Это самый быстрый вариант свертки. Но проблема ссылок на старые документы в вводе остатков останется, можно например грохнуть у документов только ТЧ, шапку оставить. В любом случае основной объём данных это регистры, их итоги и табчасти

  20. Я-таки извиняюсь за паникёрство, но что-то я посмотрел - если удалять в режиме обмена и внутри транзакции при этом, то не так чтобы смертельно долго. Несколько часов получается. Не смертельно. ТИИ потом едва не дольше идёт.

    Ответы: (20)
  21. (19) а если ошибка возникнет? Начинай сначала?

    Ответы: (21)
  22. (20) на тестовой копии не возникла. Но в целом - любая свёртка подразумевает резервное копирование.

или зарегистрируйтесь чтобы ответить!