Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
17 Дек 2017, 13:11
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Как вылечить регистр сведений с битыми данными?  (Прочитано 2212 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн andante

  • *
  • Сообщений: 7
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Ученик 1С
Здравствуйте. Столкнулся с такой вот проблемой. При попытке выгрузить ИБ выскочила ошибка "Количество таблиц в запросе превышает 256"
Попытался запустить проверку целостности с исправлением ошибок. Вылетела на регистре ИсторияОбменаДанными на 90% обработки регистра. Прочитал данные регистра запросом. Ближе к концу (90%) в данных регистра явный мусор, но ключевые поля (Период и Измерения) заполнены корректно. Попытки добраться обходом до битых записей неудачны, вылет по ошибке. Попытка очистить все записи регистра методом

Набор = РегистрыСведений.ИсторияОбменаДанными.СоздатьНаборЗаписей();
Набор.Записать();

привела к той же ошибке "Количество таблиц в запросе превышает 256".  Удалить регистр не могу, так как он предопределен в используемой базовой конфигурации.
    Пробовал предпринять восстановление целостности в SQL Server. Вылетает по ошибке сразу.
    Как последний шанс попробовал сделать копию базы в SQL Server. О чудо! Копия создана без ошибок. Накатил копию назад восстановлением. Все восстановилось, в том числе и "нечитаемый" злополучный регистр.

    Всё. Мысли иссякли. Подскажите, люди добрые чем убить регистр?

 


Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
читайте РС с отбором по измерению. В принипе можно отюор на любое измерение, главное чтоб не читать весь РС целиком.

Оффлайн LexaK

  • *****
  • Сообщений: 1267
  • РЕПУТАЦИЯ: 347
  • КПД: 27%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
если данные регистра ИсторияОбменаДанными не нужны
попробуйте следующее
1.сохраните конфигурацию в файл
2.удалите этот регистр из конфигурации, нажмите кнопку применить
3.через сравнить/объединить конфигурации, верните назад регистр, нажмите кнопку применить

Помогло? - Нажми СПАСИБО!!!
                       :)

Оффлайн andante

  • *
  • Сообщений: 7
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Ученик 1С
2.удалите этот регистр из конфигурации, нажмите кнопку применить

    Данные в регистре не нужны. Там хранятся данные о прошедших обменах. Проблема в том, что удалить этот РС я не могу, он
является составной частью конфигурации Управление торговлей, на основе которой была разработана рабочая версия конфигурации. Может быть есть какой-то нештатный способ удалить предопределенный РС?

Добавлено: 11 Фев 2015, 16:29

читайте РС с отбором по измерению. В принипе можно отюор на любое измерение, главное чтоб не читать весь РС целиком.

    Создавая новый (пустой) набор записей и пытаясь его записать, я вообще пытаюсь не читать регистр. Но он таки читается и вылетает по ошибке. Проблема не в том, чтобы прочитать часть инфы из РС, а в том, как бы его грохнуть, не читая (не инициируя ошибку).

Оффлайн LexaK

  • *****
  • Сообщений: 1267
  • РЕПУТАЦИЯ: 347
  • КПД: 27%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
если данные регистра ИсторияОбменаДанными не нужны
попробуйте следующее
1.сохраните конфигурацию в файл
2.удалите этот регистр из конфигурации, нажмите кнопку применить
3.через сравнить/объединить конфигурации, верните назад регистр, нажмите кнопку применить

пункт 3 дочитайте!
Помогло? - Нажми СПАСИБО!!!
                       :)

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
2.удалите этот регистр из конфигурации, нажмите кнопку применить

    Данные в регистре не нужны. Там хранятся данные о прошедших обменах. Проблема в том, что удалить этот РС я не могу, он
является составной частью конфигурации Управление торговлей, на основе которой была разработана рабочая версия конфигурации. Может быть есть какой-то нештатный способ удалить предопределенный РС?

Добавлено: 11 Фев 2015, 16:29

читайте РС с отбором по измерению. В принипе можно отюор на любое измерение, главное чтоб не читать весь РС целиком.

    Создавая новый (пустой) набор записей и пытаясь его записать, я вообще пытаюсь не читать регистр. Но он таки читается и вылетает по ошибке. Проблема не в том, чтобы прочитать часть инфы из РС, а в том, как бы его грохнуть, не читая (не инициируя ошибку).
Ваше писать не читая, на уровне платформы означает, что считать весь РС целиком, удалить все записи и записать пустой набор. На чтении большого объема платформа и валится.
Не хотите - делайте, как посоветовали, через объединение - тоже достаточно неплохой вариант.

Оффлайн andante

  • *
  • Сообщений: 7
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Ученик 1С
если данные регистра ИсторияОбменаДанными не нужны
попробуйте следующее
1.сохраните конфигурацию в файл
2.удалите этот регистр из конфигурации, нажмите кнопку применить
3.через сравнить/объединить конфигурации, верните назад регистр, нажмите кнопку применить

пункт 3 дочитайте!


Да я дочитал. В предложенном Вами алгоритме я застрял на втором пункте, поэтому и привел его в цитате.
Не доступен этот регистр для удаления. Не могу я его удалить, поэтому и перейти к третьему пункту алгоритма не могу :(

Попробую вставить фото.

Добавлено: 11 Фев 2015, 22:39

vitasw, спасибо за разъяснение, попробую откусывать данные частями. Позже отпишусь, что вышло.
Добавлено: 11 Фев 2015, 23:18

Вот такой обработкой стал удалять записи регистра. Удалил в два приема. Сначала записи до 31.12.2013. Все удалились. Затем до 31.12.2014.
Выборка = РегистрыСведений.ИсторияОбменаДанными.Выбрать(,'20141231');    // Отбор
    Пока Выборка.Следующий() Цикл
            // удаление существующей
        Выборка.ПолучитьМенеджерЗаписи().Удалить();
 
    КонецЦикла;

Удалились все здоровые записи до первой битой (дата 30.11.2014).
Затем вылет по ошибке (Фото 1)
Попробовал на уже урезанном регистре снова записать пустой набор записей, снова получил ошибку (Фото 2)

Последний раз редактировалось: andante; 11 Фев 2015, 23:18. Причина: Объединение сообщений

Оффлайн дфтын

  • Могу решить ЛЮБУЮ задачу в 1С и не только.. С вопросами в личку:)
  • *****
  • Сообщений: 2720
  • РЕПУТАЦИЯ: 325
  • КПД: 12%
  • 1С наше все
  • Регистрация: 2014-04-29
    • Skype: Soprov1C
  • Компания: Корпорация зонтиков
  • Профессия: Разработчик 1С
в сикул сервере  - DELETE * FROM
Добавлено: 12 Фев 2015, 00:23

только, прошу, базу скопируйте.. а то будет как cdx удалили...
Помог? Нажми - Спасибо :)
skype: Soprov1C

Последний раз редактировалось: дфтын; 12 Фев 2015, 00:23. Причина: Объединение сообщений

Оффлайн andante

  • *
  • Сообщений: 7
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Ученик 1С
в сикул сервере  - DELETE * FROM
Добавлено: 12 Фев 2015, 00:23

только, прошу, базу скопируйте.. а то будет как cdx удалили...

   Да, похоже спасение где-то в недрах SQL.
Научился находить объекты 1С в таблицах SQL.
Команда DELETE не сработала, вылетела по ошибке.
Ошибки показала и проанализировала DBCC CHECKTABLE. Порекомендовала исправить их в режиме repair_allow_data_loss.
Оказалось, что этот режим возможен только при однопользовательском запуске SQL.
Читаю буквари, пытаюсь разобраться, как же этот однопользовательский режим запустить...

В общем, с ностальгией вспоминаю время месячной давности, когда я понятия не имел какой жизнью живет 1С. Бурное знакомство, однако...

Оффлайн дфтын

  • Могу решить ЛЮБУЮ задачу в 1С и не только.. С вопросами в личку:)
  • *****
  • Сообщений: 2720
  • РЕПУТАЦИЯ: 325
  • КПД: 12%
  • 1С наше все
  • Регистрация: 2014-04-29
    • Skype: Soprov1C
  • Компания: Корпорация зонтиков
  • Профессия: Разработчик 1С
вы издеваетесь что ли? вы там кто?
Цитировать
Оказалось, что этот режим возможен только при однопользовательском запуске SQL.
а вы не можете обеспечить монопольный запуск чтоли?
слушайте НЕ МОРОЧТЕ НАМ ГОЛОВЫ.
если вы не админ, не надо туда лезть. срочно отойдите от компьютера!!!!
 
Добавлено: 12 Фев 2015, 04:25

Я вам написал что надо делать. ненадо ничего в 1с удалять добавлять. нужно просто зантЦо SQlем
а некоторым книги почитать

Добавлено: 12 Фев 2015, 04:27

andante, я абсолютно уверен, что вам этого делать не надо, вызовите програмера. денег не дают? ну скажите директору, что базы больше не будет.
такие ошибки просто так не возникают
Помог? Нажми - Спасибо :)
skype: Soprov1C


Теги:
 

Отличие проводки по регистру сведений от проводки по регистру накопления?

Автор DirecTwiXРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 4855
Последний ответ 18 Апр 2012, 02:19
от Dethmontt
Добавление сведений в графу "основание" документа "ТОРГ-12"

Автор Ярослав1984Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 7758
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984
Как можно подставлять цену из регистра сведений "Цены поставщиков" в документ"ПоступлениеТоваров" на актуальную дату? Необходимо использовать запрос в решении.

Автор Елена6666666666Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 14
Просмотров: 9383
Последний ответ 24 Окт 2014, 13:30
от cska-fanat-kz
В чем отличие регистра сведений от регистра накопления?

Автор Dmitry QweРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 521
Последний ответ 11 Сен 2017, 10:50
от ilyay
Обмен данными между 1С УТ (базовая) 8.2 редакция 10.3 и Розница (базовая) редакция 1.0

Автор Андрей ОлимпиевРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 7
Просмотров: 5033
Последний ответ 17 Мар 2015, 20:16
от дфтын

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
145 Сообщений
ilyay ilyay
63 Сообщений
AIFrame
55 Сообщений
alex0402
50 Сообщений
andron81_81
44 Сообщений
oleg-x
42 Сообщений
BuhRust
32 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 276
  • Точка Скрытых: 0
  • Точка Пользователей: 7
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal