7.7 Восстановление информации

Тема в разделе "Общие вопросы "1С:Предприятие 7.7"", создана пользователем evgPinsk, 25 фев 2013.

  1. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    Я вообще после получения образования в институте по проектированию баз данных, не мог воспринять 1с-ку с её корявостью в плане построения БД :). Никакой нормализации, избыточность данных и т.д. ). Нормальная СУБД ведь не использует всякие регистры и бухгалтерские итоги для ускорения получения отчётности, а напрямую обращается к таблицам в БД. Т.е. данные не дублируются служебными таблицами.
    И вот рано или поздно риск что эти служебные данные начинают отличаться от данных пользователя может становится критичным.
    И самое интересное, мне непонятно, почему нереализован механизм восстановления этих служебных данных (в частности регистров), не считая перепроведение документов (т.к. перепроведение автоматом затрагивает бухгалтерские итоги)

    Да, копии есть на каждый день
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Блин... И что - старый алгоритм не сохранялся? Никто не задумывался что придется перепроводить базу? Верх не профессионализма.....
  3. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    Не совсем понял ваше предложение. Вы предлагаете обнулить движение регистра до 01.01.2013 и на это число ввести верные остатки и потом перепровести 2013 год?
    Но тогда я потеряю движение товаров за предыдущие года - тоже не есть гуд
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Ну дЫк и создайте срез остатков на начало года... Если нет документа ввода остатков - можно создать. Документы до 2013 - запретить перепроводить. После 1 января - перепровести

    Так есть копии если нужен "разбор полетов". Актуальны то текущие данные
  5. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    :) По поводу алгоритма проведения документов. Мне как-раз кажется не профессиональным способ, реализованный в типовых конфигурациях, когда напрямую в модуле идёт обращение к конкретным счетам. Т.е. при изменении плана счетов нужно в конфигураторе менять текст Обработки проведения.
    В моей конфигурации, пользователь в самой 1с через настройку документа определяет процедуру создания проводок по каждому документу.
    Но 10 лет назад у меня как у заказчика были одни потребности учёта, с течением времени эти потребности росли, и соответственно менялась структура данных. добавлялись новые счета, новые субконто. И это сейчас я создаю НОВЫЕ алгоритмы проведения (тем самым сохраняя старые), но лет 7 назад я их просто переписывал на нужный

    Я в своей работе очень часто получаю отчётность за предыдущие года. например мне нужно посмотреть приход на монитор, который покупатель купил 3 года назад и принёс его по гарантии. Каждый раз лезть в копию? ((. Плюс остатёся всегда риск (хотьи маленький) проведения документа за 2012 год, и тогда мои остатки уже летят (хотя конечно этолегко вычисляется)

    Пока мне нравится всётаки написать алгоритм создания файла регистров ручным способом. Знаете ли, какие подводные камни меня ждут?
  6. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Небольшое отступление от темы. Возьмем в качестве примера конфигурацию ЗиК. Я прямо сейчас могу указать скажем 2003 год и рассчитать заработную плату по правилам, действующим в тот период. Вот это с моей точки зрения - правильно))))

    Теперь по теме: у вас на мой взгляд только 2 выхода
    1) перепроводить всю базу (как выяснилось это не возможно)
    2) внести остатки на какую-то дату.

    Других вариантов не вижу. Можно конечно "потрепыхаться".
    Поднять заведомо рабочую копию и перенести в нее вновь набранные документы.... Пробуйте.

    Не думаю что у вас это получится.
  7. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    А можно ли проводить документ без изменения проводок? Т.е. чтобы проведение затронулитолько регистры?
  8. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    Попробую развить тему ручного заполнения файла регистров. Итак это файл RG1024.dbf Ниже его структура из 1Cv7.DD

    #==TABLE no 134 : Регистр Остатки
    # Name |Descr |Type[A/S/U]|DBTableName|ReUsable
    T=RG1024 |Регистр Остатки |A |RG1024 |1
    #-----Fields-------
    # Name |Descr |Type|Length|Precision
    F=PERIOD |Period Registr |D |8 |0
    F=SP1019 |(P)Склад |C |9 |0
    F=SP1999 |(P)ТМЦ |C |9 |0
    F=SP1020 |(P)Карточка |C |9 |0
    F=SP1021 |(P)Остаток |N |15 |2
    F=SP1022 |(P)Сумма |N |15 |2
    F=SP1748 |(P)СуммаДок |N |15 |2
    F=SP1894 |(P)Резерв |N |11 |2
    #----Indexes------
    # Name |Descr |Unique|Indexed fields |DBName
    I=PROP |PERIOD+PROP |0 |PERIOD,SP1019,SP1999,SP1020 |PROP
    I=VIA1999 |VIA1999 |0 |PERIOD,SP1999 |VIA1999
    I=VIA1020 |VIA1020 |0 |PERIOD,SP1020 |VIA1020

    Насколько понимаю, индексы нам не важны. Они потом пересоздадутся. Структура самого файла вижу не сложная. Ниже поакзываю часть данных этого файла:
    Единсвтенное что мне непонятно, где идёт взаимосвязть между конкретным документом и его двежениями по регистру. В самом файле RG1024.dbf ведь нет ссылки на документ

    Вложения:

  9. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    Но сейчас понял, что мне даже не нужно вникать в эту взаимосвязь (т.е. как она реализуется мне не важно). Мне всего лишь нужно перебрать товары, и по каждому найти остаток на конец месяца, далее найти по товару и по дате нужную запись в регистре и записать в эту запись просчитанное количетсво.
    Разве такой способ не сработает?
  10. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    Абсолютно с вами согласен ). Но пример: на заре моего учёта, у меня по счёту 70 было только один вид субконто - Сотрудник, и мне этого хватало. Документ "начисление ЗП" создавал только одну проводку (дебет затраты <- кредит 70й счёт) Через два года, я добавил по 70у счёту ещё одно субконто, ещё через 2 года, добавилась в документе "начисление ЗП" ещё одна проводка, а ещё через 3 года, счёт затрат стал не 44м, а 26ой.
    Неужели ЗиК позволит всё это реализовать с возможностью в будущем перепроведения всех документов за последние 10 лет без потери информации?
    Мне казалось, что в типовых конфигурациях алгоритм проведения документа определяетс янепосредсвтенно в коде процедуры. И когда в аконодателстве чтото меняется глобальное, то программсиь просто переписывает код. (В отличии от моей самописной базы, где пользователь сам в самой 1с, создаёт новые Типы документов, новые типы проводок, а алгоритм проведения документа не меняется). К сожалению на заре ведения учёта я не всегда создавал новые элементы этих самых "Типы документов" и "Типы проводок", а просто в них менял например счета
  11. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    С 3й попытки удалось вылечить глюки в регистрах. Откатил ТА на01.01.2000 и последовательно открывал руками периоды в "Управление оперативными периодами". Почему в первый раз вылезла ошибка сложно сказать. Во второй раз получил неверные данные т.к. ТА сразу поставил на последний документ - так не проходит. Нужно именно последовательно открывать каждый период
  12. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Это я вам и предлагал))) Только не вручную, а через документ, т.е. средствами самой 1с
  13. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Да. Позволит.

    Не переписывает, а дописывает... Потом просто в модуле проведения и/или модуле формы идет условие.
    Код:
    
    Если ДатаДок<=ТакаяТоДата Тогда
    Алгоритм1
    Иначе...
    
    Также можно встретить условие по реквизиту документа, который хранит номер релиза конфигурации (такой способ применили в бухгалтерии 7.7)
  14. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    В очередной раз полетел файл промежуточных итогов по регистрам. Откатываю ТА на 31.03.2013. И хочу заново открыть период Апрель. Но теперь уже процедура "Операции/Управление оперативными итогами" выдаёт ошибку. ЧТо можно сделать, чтобы эту ошибку исправить?

    Вложения:

  15. WaRDeR
    Offline

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

    Регистрация:
    23 ноя 2006
    Сообщения:
    3.263
    Симпатии:
    14
    Баллы:
    29
    в конфигураторе выгрузка/загрузка данных

    Не перепутайте с сохранением/восстановлением
  16. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    Разбираюсь дальше, вижу что файл rg1024.dbf поломан. Много записей в нём содержать "абракодабру".
  17. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    слишком уж часто у вас катастрофы... В причинах разбираться не пробовали?
  18. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    Сегодня уже поменял память и поставили новый SSD веник.

    Вроде не помогло. Процедура выгрузки отработала. Архиф создан, в нём что-то есть. Но когда загружаю назад в пустую базу, данных в ней нет. Она пустая
  19. WaRDeR
    Offline

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

    Регистрация:
    23 ноя 2006
    Сообщения:
    3.263
    Симпатии:
    14
    Баллы:
    29
    ну, значит все... теперь только восстановление из бэкапов.

    При выгрузке формируется специальный файл, в который переносятся только корректные данные. При загрузке ИБ формируется заново, заполняется данными и выполняет все перерасчеты.

    Если данных нет, то их, по ходу, уже нет
  20. TopicStarter Overlay
    evgPinsk
    Offline

    evgPinsk Опытный в 1С

    Регистрация:
    27 окт 2010
    Сообщения:
    193
    Симпатии:
    0
    Баллы:
    26
    Но ведь rg1024.dbf - это файл служебных данных. А именно - промежуточные итоги по регистру остатков товаров. Он ведь должен пересчитываться. Можно ли например его удалить и заново его пересчитать через: откат ТА на начало существования базы и постепенное открытие каждого месяца?
    Т.к. база относительно большая, то все эксперементы занимают много времени, хотелось бы знать изначально варианты которые могут сработать или нет

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