Курилка Свернуть базу так, чтобы пользователи не заметили

Тема в разделе "Курилка", создана пользователем AntonB, 27 фев 2012.

  1. TopicStarter Overlay
    AntonB
    Offline

    AntonB Опытный в 1С

    Регистрация:
    25 ноя 2011
    Сообщения:
    143
    Симпатии:
    0
    Баллы:
    26
    Тема возникла из следующей темы
    http://www.1c-pro.ru/topic39956.html

    Ее краткое содержание:
    acherey:

    Есть база УТ 10.3.3.3. Размер 126 Гб. Требуется свертка данных с 2008 по 2010 включительно. На действующей базе не хочу делать, т.к работа в базе идёт круглосуточно. Возникла идея - сделать свертку на копии базы, а затем перенести документы корректировки в действующую и пометить на удаление в ней документы. Корректно ли это будет?

    Возникшие сложности:
    acherey:
    изначально я решил пока срезать 1 год с базы, запустил свертку и при этом после 4 часов свертки, где-то на регистре продажи программа зависла и аварийно завершила работу, потому что кто-то надумал срочно провести продажу, из-за взаимоблокировки, свертка аварийно завершилась, потому половина документов уже с пустыми движениями, другая половина с неполным набором движений. На текущий момент уже база некорректна
    acherey:
    помечать на удаление и удалять можно и в процессе работы, а вот сворачивать регистры и очищать в процессе работы не получится, он блокируется и пользователи не могут проводить документы. Скажем регистр "продажи" очищается около 3 суток, никто столько ждать не будет. Это и есть основной мой нюанс. Поэтому, если обороты по регистрам будут корректны, то в принципе думаю так можно сделать

    "Классическая" рекомендация от mialord:
    Откройте обработку, укажите чтобы она не помечала документы,
    отключите пометку на удаление при свертке, это Вам поможет ускорить процесс получения документов корректировки.
    Главное чтобы в сворачиваемый период никаких изменений внесено не было, тогда можно выкрутиться и выполнить нормальную свертку, вот только с удалением документов из базы будет сложновато, база будет лагать, и очень долго, в качестве рекомендации советую в дальнейшем обработку удаления дописать, чтобы проверку на возможность удаления документов из базы делала пачками по 1000-и документов, иначе неделю сервер будет висеть, а гарантии что удалит нету.

    К "классическому" методу свертки возникает несколько резонных вопросов:
    1. Как исключить изменение пользователями документов сворачиваемого периода?
    2. Как воспользоваться результатом свертки и уменьшить размер базы (упаковка таблиц выполняется в режиме Конфигуратора)
    3. Где гарантия, что свертка и в следующий раз не завершится аварийно?

    Теперь внимание!!!
    То, что пишется ниже на реальных базах, тем более такого размера не проверялось!!!
    И рассматривается как гипотетическая возможность.
    Неуверенным в себе и слабонервным дальше не читать и не использовать!!!
    или, как говорится, "использовать на свой страх и риск"

    Рассматривается следующая непроверенная!!! гипотетическая схема:

    1. Делаем копию базы и спокойно ее сворачиваем. Пользователи пока работают в старой базе
    2. Когда со сверткой в копии все в порядке - делаем ее доступной всем пользователям, но работать еще не разрешаем.
    3. Переносим выгрузкой-загрузкой в идентичную конфигурацию все накопившиеся за это время документы
    4. Останавливаем работу в старой базе. И быстренько еще раз переносим выгрузкой-загрузкой в идентичную конфигурацию все новые документы (их уже будет немного)
    5. Разрешаем пользователям работать в новой базе

    п.4 можно не делать, если сделать п.3 вечером или в выходные

    Diego поступил бы точно так же...

    Возражение mialord:
    документы редактируют не только сегодняшним числом,
    поэтому переносить документы придется за очень большой период,
    чтобы точно захватить все измененные (видимо, имеется в виду, что за год),
    потом все эти документы обменом посыплются в бухгалтерскую базу

    Согласен, что есть 2 проблемы:
    1. Если интервал времени нельзя ограничить или вообще запретить редактирование документов задним числом, то этот вариант не проходит.
    2. Обмен с бухгалтерией также требует особого внимания.

    Предлагается рассмотреть следующую уточненную схему:
    1. Создаем в базе обмен с идентичной (односторонний, через общий ресурс)
    2. Ставим дату запрета редактирования на дату свертки базы
    3. Полностью очищаем регистрацию объектов для обмена.
    4. Делаем копию базы
    5. Копию базы начинаем сворачивать. Пользователи пока работают в старой базе
    6. В копии удаляем план обмена и подключаем ее как базу-приемник к тому же обмену.
    7. Когда со сверткой в копии все в порядке - делаем ее доступной всем пользователям, но работать еще не разрешаем.
    8. Переносим обменом все накопившиеся в рабочей базе за это время документы (можно сделать несколько обменов - между разными этапами свертки)
    9. Останавливаем работу в старой базе. Делаем еще раз обмен и переносим все новые документы (их уже будет немного)
    10. Разрешаем пользователям работать в новой базе

    Предполагается, что работа пользователей останавливается только на шаге 9,
    и желательно, но даже необязательно, на шаге 4

    Преимущества второй схемы:
    для обмена регистрируются только измененные документы, поэтому нет необходимости выгружать документы "на глаз" за большой интервал времени

    Внимание!!! Для реализации метода обмен надо знать хорошо, иначе легко "накосячить".
    Возможно, необходимо также запретить пользователям менять коды элементов справочников и номера документов или проверить и слегка подправить правила обмена.

    Если по этой части нет будет возражений, дальше обсудим, что делать с обменом с бухгалтерией.
    Тем более, для КА и УПП этого обмена вообще не требуется.

    Внимание! Просьба пока высказать соображения по пп.1-10,
    и оставить на потом вопрос обмена с бухгалтерией
  2. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    Это не преимущество, а недостаток, т.к. Вы почему то предполагаете, что пользователи работают только в текущем периоде, а это не правда для 90% пользователей, и лишь 10% из моей клиентской базы работают только в текущем периоде. Все это приводит к тому что из старой базы в новую нужно будет выгрузить документы за весь открытый период, из-за чего они зарегистрируются на обмен и перепроведут всю бухгалтерскую базу.
    Я не девка чтоб со мной нежничаться и чтобы обижаться, это вполне здоровая дискуссия, когда и Вы меня слышите, ибо я Вас услышал и сам применял данную схему, ничего координально нового, я еще 2 года назад так делал, но у каждой задачи есть свой подтекст. А это - это здоровая дискуссия, в споре рождается истина, так что не надо расстраиваться что кого-то обидели, я могу еще целый час ругаться и отстаивать свою точку зрения. Где-то может даже очень резко, это моя натура. Но если хотите доказать что Ваша схема к данной задаче подходит безупречно, тогда не стоит бояться кого-то обидеть. Оскор***** только не нужно, люди разны бывают, кто-то может сильно разозлиться.
    Читайте вопрос темы, если там КА или УПП я искренне удивлюсь, не надо теорий, ибо может быть Вы посчитали что что-то новое изобрели и пытаетесь мне эту теорию объяснить, прочитайте задачу пользователя.
  3. TopicStarter Overlay
    AntonB
    Offline

    AntonB Опытный в 1С

    Регистрация:
    25 ноя 2011
    Сообщения:
    143
    Симпатии:
    0
    Баллы:
    26
    Извините, здесь я объявил правила игры:
    Все вопросы обмена с бухгалтерией во второй главе!

    Это можно читать так: "Если не заботиться об обмене с бухгалтерией, то это известно и так можно делать"?
    Я могу переходить ко второй главе "Обмен с бухгалтерией"?
    Сам пользователь почему-то об обмене с БП вообще не упоминает... а есть ли он вообще у него?

    Читаю:
    Пользователю нужно свернуть базу за 3 года.
    Он попытался пока свернуть всего за год, но даже при этом база встала ра.ом
    Он делает вывод - если база не успеет свернуться за 4 часа - затея бесполезна.
    Вы ему советуете, как сделать это за час

    Резюмирую:
    если с неба иногда падают кирпичи и ты идешь - наверняка получишь по голове,
    а если бежишь - скорее всего, не получишь

    Во втором варианте я ничего не предполагаю.
    Перед копированием базы я очищаю всю регистрацию для обмена.
    Те и только те документы и справочники, которые будут редактировать пользователи в любом периоде, зарегистрируются для обмена
    (для обмена УТ-УТ !!! , а не с бухгалтерией, весь обмен с БП во второй главе)

    Могу согласиться пока только с таким соображением:
    1. Если в базе отредактируют старый документ, а потом восстановят ГП, то зарегистрируются все документы за этот период.

    Да, тогда нужно заранее влезть в конфигурацию и отключить регистрацию при проведении документа, если документ не изменен
  4. vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    а что если создать новую чистую базу идентичной конфигурации, и перенести в неё остатки на начало года и документы с начала года с помощью ВыгрузкаЗагрузкаДанныхВФорматеXML?

    имхо - разумнее новую базу создать, чем организовывать шаманские танцы с базой в 126 гигабайт.
  5. TopicStarter Overlay
    AntonB
    Offline

    AntonB Опытный в 1С

    Регистрация:
    25 ноя 2011
    Сообщения:
    143
    Симпатии:
    0
    Баллы:
    26
    Попробую упредить ответ mialord:
    1. А как Вы потом отберете документы, которые нужно выгружать?
    Пока вы выгружаете очередную порцию пользователи залезут в прошлый год и там что-нибудь поменяют.
    (И я с ним на этот раз соглашусь)

    2. в базу бухгалтерии насыплются документы за год
    и после этого бухгалтеры со мной и с Вами знаете что сделают?
    (здесь я с ним буду спорить, но во второй главе...)

    По моим представлениям шаг 5 можно делать разными способами,
    в том числе и таким... но...

    1. Автор хочет оставить в базе документы за весь 2011 год.
    За 4 года было 120 ГБ, значит, за год это минимум 30 ГБ и порядка 1 000 000 документов.
    При выгрузке в xml это даст файл больше 100 ГБ... а скорее несколько сотен ГБ...
    и как и за сколько времени он выгрузится, загрузится и проведется - не понятно...
    Хотя при таких масштабах вообще много чего не понятно...

    2. Не установив обмен УТ-УТ мы никогда не перенесем все измененные документы.
    Или работу пользователей нужно останавливать надолго - на все время переноса...
  6. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    Пока Вы очищаете работа идет, сняли регистрацию, и, если я бухгалтер, я Вас уволил, или удержал с Вашей зп пеню которую придется уплатить :D Лет за 5-ть отработаете, но это так, в шутку
    Вы действительно что-ли не понимаете как будет идти выгрузка УТ-УТ, или Вы хотите выгрузить только зарегистрированные на обмен в УТ для УТ, интересный финт ушами, покажите типовой функционал. Обработка "Выгрузка данных в идентичную ..." выгрузит документы за период, которые перепроведутся.
    Если регистрация включена всё зарегистрируется на обмен в БП
    Если регистрация не стоит документы не попадут в БП. Значит потом придется все перепровести, иначе потом можно наткнуться на пеню ибо такие ошибки замечают далеко не сразу (Как раз сейчас в 10 вечера сижу на работе и правлю чудиков за 2007 год и придумать не могу какие бы справки то сдать к изменению баланса).
    И первое и второе искажает финансовый результат. Или один я тут такой наивный и понимаю что в крупных организациях один то месяц порой закрыть - каторга, а разбираться после массовой выгрузки, снова перебирать налоговые платежи проставлять счета, перераспределять ТМЦ которые одновременно могут находиться и на 41 и на 10-ом.
    Мне интересен вопрос, Вы с бухучетом работаете, или только выгружаете? Отчетность делали, сдавали?
    Ответьте на мои вопросы тогда, коли у Вас есть гениальная идея с удовольствием выслушаю, мне даже в кайф, да еще и подучусь, мало ли, у некоторых людей порой созревают интересные идеи. Только подробно с описанием процесса, что и как, а я пока пойду дальше по поводу 2007-го года думать.

    Глянул тут, думал уж я совсем дурак и не помню как работают обмены.
    "Выгрузка в идентичную.." не может выгружать только зарегистрированные, она этого никогда не сделает, т.к. не привязана к плану обмена.
    Для регистрации измененных, обязательное условие наличие плана обмена, соответственно единственный план обмена подходящий по функционалу для такого обмена это "Полный", но я точно не буду РИБ делать для сворачивания, ибо зарегистрируются удаляемые :D
  7. TopicStarter Overlay
    AntonB
    Offline

    AntonB Опытный в 1С

    Регистрация:
    25 ноя 2011
    Сообщения:
    143
    Симпатии:
    0
    Баллы:
    26
    что ж Вы так нервничаете...
    ну, да, пришли к Вам школьники на экскурсию...
    в нашей песочнице таких баз нету, а посмотреть любопытно... :unsure:
    Но мы хоть за руль БелАЗа не садимся в отличие от других школьников... :tit:
    теперь по делу...

    Обмен УТ-УТ имеется в виду, конечно, по плану обмена Полный
    Видимо, с небольшими доработками:
    1. После настройки обмена нужно очистить регистрацию по этому плану обмена,
    а с учетом объема базы лучше заранее подправить код и сразу не дать зарегистрировать
    объекты для обмена (по этому плану обмена, а не по УТ-БП!!!)
    Полноценный РИБ, разумеется, не делаем... зачем нам все синхронизировать...
    2. Нужно убрать регистрацию документов при перепроведении без изменения

    Я такие изменения в коде сделаю за вечер, Вы - за полчаса

    "Выгрузка в идентичную.." во втором варианте не рассматривается, только обмен по плану обмена Полный.
    Я понял то Ваше возражение (про изменение пользователями старых документов)

    Вообще, если Вам так не дает покоя обмен с БП я тоже задам встречный вопрос по обмену УТ-БП:
    В огромной базе УТ кто-то из пользователей залез в закрытый период и поменял документ,
    => сбилась последовательность документов,
    => восстанавливать ее, видимо, когда-то все равно нужно,
    => при ее восстановлении перепроведутся все документы
    => и тоже зарегистрируются на обмен с БП!
    Почему Вас такая ситуация не пугает? Она без всяких сверток и обменов возможна
  8. TopicStarter Overlay
    AntonB
    Offline

    AntonB Опытный в 1С

    Регистрация:
    25 ноя 2011
    Сообщения:
    143
    Симпатии:
    0
    Баллы:
    26
    О себе, если уж Вам интересно...

    У нас база небольшая пока... КА недавно перевалила 2 ГБ.
    Нет никаких проблем попросить бухгалтера выбрать удобный ей день,
    чтобы она могла полдня отдохнуть (съездить в банк или налоговую) и дать поставить обновления.
    Сложнее остановить днем УТ...

    Вечером и в выходные никто не работает - можно спокойно свернуть или доработать базу
    и в понедельник запустить всех в новенькую и чистенькую...

    Сложности бывают только с переходом с одной конфигурации на другую - с 7.7 на 8, например...

    Бухгалтер и операторы в основном справляются со всем сами.
    Мои инструкции при необходимости записывают и успешно потом выполняют.
    Ко мне обращаются только когда с чем-то не могут разобраться:
    какие-то особенности и непонятки в ведении учета,
    при изменениях в ставках налогов, формах ПФРов, НДФЛов и т.п.

    Но базы растут, другие незнакомые клиенты обращаются,
    поэтому проблемы больших баз хочется представлять.
  9. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    В УТ партии уже будут расписаны по документам, до этого документа, и не будут перевосстанавливаться, только по тому в котором нет партии, а значит в единичном случае на финансовый результат не повлияет. Однако, когда мы говорим об организованной работе, а не о хаосе с бухты барахты, мы точно знаем что в том периоде исправить может только бухгалтер, а значит он уже готов либо спрятать эту сумму, либо писать справки в ИФНС.
    Я смотрю Вы зацепились к моей плохой мысли, что есть плохая возможность использовать план обмена Полный, ну раз так, объясните мне свои доработки на один час делов :D
    1. Полноценный РИБ, разумеется, не делаем - и что дальше, что с этим гибридом делать. Половина общих модулей предназначена для обмена данными тем, либо другим способом, что дальше?

    2. Фраза лишена всякого смысла. При проведении Вы не узнаете были ли изменения, ибо проведение и есть изменения.
    Давайте, либо серьезно, либо не будем бумагу марать. Вы человеку предлагаете на форуме решение, при этом не можете толко без танца с бубном конструктивно описать решение, "Видимо, с небольшими доработками", а возможно Машку за ляшку, прежде чем начинать сворачивание должно быть точное понимание как мы это будем делать. Как говорит мой знакомый, это Все хорошо, но без ИНСТРУМЕНТА, пустой звук. КОНКРЕТИКА. Если предлагаете, значит делали, если делали, то чтою...
  10. TopicStarter Overlay
    AntonB
    Offline

    AntonB Опытный в 1С

    Регистрация:
    25 ноя 2011
    Сообщения:
    143
    Симпатии:
    0
    Баллы:
    26
    1. От плана обмена требуется только одно - пометить все документы, которые будут изменены в исходной базе после создания ее копии. Чтобы потом знать, что выгружать. И, соответственно, желательно, снятие этой пометки после получения квитанции из базы-приемника. Это все есть в стандартном механизме.

    Мелкая, простая и необязательная доработка:
    в мастере создания обмена не дать зарегистрировать все объекты для обмена
    - просто чтобы полдня не ждать пока они зарегистрируются,
    а оставшиеся полдня - пока регистрация удалится

    Да, вот это неожиданно... не думал, что с этим могут возникнуть сложности...

    На самом деле второй пункт снимается...
    Он был предназначен для борьбы как раз с этой ситуацией, про которую я спрашивал
    - проведение старого документа, восстановление ГП и регистрация всех документов для обмена с БП.
    Раз Вас он не беспокоит - чего мне то о нем заботиться?
    Только чего тогда было меня то пугать этим?
  11. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    Вижу конструктивной беседы не получается и Вы зря отняли у меня время менее оптимальной идеей. Ладно, тему для себя считаю закрытой, ибо предлагается прикручивание пятого колеса. Буду делать так, как делал всегда и как сейчас делают мои ребята, ибо как нач отдела сопровождения франчей насворачивался этих баз до изжоги, не разу не подводило, а данный механизм, дуристика.
    На будущее, когда общаетесь с модерами или с администраторами, учтите что у них у всех огромный опыт за плечами и все операции они уже делали и проверяли, если есть конструктивная идея я Вас с огромным удовольствием выслушаю, Ваша пока притянута за уши. Всего доброго!
    Удачи!
  12. TopicStarter Overlay
    AntonB
    Offline

    AntonB Опытный в 1С

    Регистрация:
    25 ноя 2011
    Сообщения:
    143
    Симпатии:
    0
    Баллы:
    26
    Жалко... мне только сейчас начало было казаться, что Вы, наконец, начали меня слушать... слышать...
    (то есть читать то, что я пишу)...

    Хотел как раз ко второй главе переходить - про обмен с БП...

    Модераторов и администраторов я уважаю. А руководителей франчайзи особенно.
    Надеюсь, у Вас не было претензий по тону беседы?
  13. vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    если б обычную свертку запустили - давно бы свернули все. без всяких планов обмена.
  14. TopicStarter Overlay
    AntonB
    Offline

    AntonB Опытный в 1С

    Регистрация:
    25 ноя 2011
    Сообщения:
    143
    Симпатии:
    0
    Баллы:
    26
    так вот acherey так и запустил...
    больше его уже неделю никто не видел - укушен взбесившейся бухгалтершей :)
  15. vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    дык на копии свертку. а потом выгрузить/загрузить документы за период пока сворачивали.

    чета как то усложнили все. да пусть хоть неделю сворачивается - от вас никаких телодвижений ненадо.
  16. TopicStarter Overlay
    AntonB
    Offline

    AntonB Опытный в 1С

    Регистрация:
    25 ноя 2011
    Сообщения:
    143
    Симпатии:
    0
    Баллы:
    26
    в этом я ему верю.
    Сложно отобрать документы, которые поменяли за время свертки базы
  17. vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    дык всем громогласно обЪявить чтоб не лезли в 2011 год (нафига там что-то менять?!). поставить дату запрета редактирования 01.01.2012. потом начинать недельную свертку на копии.

    после свертки выгрузить данные с 01.01.2012 из рабочей в копию. поставить копию как рабочую.
  18. TopicStarter Overlay
    AntonB
    Offline

    AntonB Опытный в 1С

    Регистрация:
    25 ноя 2011
    Сообщения:
    143
    Симпатии:
    0
    Баллы:
    26
    дык, это и было первое, что я предложил
    http://www.1c-pro.ru/topic39956.html/page__p__199652#entry199652

    1. Делаем копию базы и спокойно ее сворачиваем. Пользователи пока работают в старой базе
    2. Когда со сверткой в копии все в порядке - делаем ее доступной всем пользователям, но работать еще не разрешаем.
    3. Переносим выгрузкой-загрузкой в идентичную конфигурацию все накопившиеся за это время документы
    4. Останавливаем работу в старой базе. И быстренько еще раз переносим выгрузкой-загрузкой в идентичную конфигурацию все новые документы (их уже будет немного)
    5. Разрешаем пользователям работать в новой базе

    За что тут же и был побит... и ушел в эту тему
    Уж я думаю, mialord про дату запрета редактирования и без нас знает... и чем-то его это не устраивает

    с 01.01.2012 придется переносить и проводить 200 000 документов... сначала в УТ, а потом в БП
  19. TopicStarter Overlay
    AntonB
    Offline

    AntonB Опытный в 1С

    Регистрация:
    25 ноя 2011
    Сообщения:
    143
    Симпатии:
    0
    Баллы:
    26
    Хотя, судя вот по этому сообщению:

    "Если закрыта только БП, а нам пришлось изменить т.к. руководителю нужно было изменить, все обмены с БП будут остановлены при записи."

    может, и не знает...
    точнее, зачем-то делает вид, что не знает...

    что в обмене тоже можно указать начальную дату, раньше которой документы не выгружаются
    и что когда в базе-приемнике выставляется граница запрета редактирования,
    то такая же дата должна быть выставлена в параметрах обмена...

Поделиться этой страницей