Консультация № 164565
10.04.2009, 00:07
0.00 руб.
0 15 3
Уважаемые эксперты! Помогите решить проблему.
В базе 1cv7.7. Торговля и склад после вируса стали происходить странные вещи, лезут минусовые обороты, там где должен быть +, берет данные прошлого отчетного периода и т.д.
Тестирование и исправление БД выдало следующее сообщение:

Файл 1SJOURN.dbf. Запись 86. Поле DS1946. Неверное содержимое поля Numeric - ""
Файл 1SJOURN.dbf. Запись 86. Поле DS4757. Неверное содержимое поля Numeric - "а"
Проверка таблиц справочников. Справочник ПроводкиХозОпераций(SC2875). . Запись 1319. Поле ID. 0
Проверка таблицы журнала документов. 1SJOURNЗапись 86. Поле ЮрЛицо(SP5365). 2
Проверка содержания справочников. ПроводкиХозОпераций. Элемент 13190. Изменено подчинение
Проверка содержания справочников. ПроводкиХозОпераций. Элемент 13180/13190. Изменено подчинение
Проверка уникальности внутреннего идентификатора в справочнике. ПроводкиХозОпераций. Элемент 13180/13190(Суммовая разница). Вн. идентификатор 0 . Исправить вручную

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

Обсуждение

Неизвестный
10.04.2009, 09:32
общий
это ответ
Здравствуйте, Aleksa!

1. Во избежание "странных вещей", тестирование/исправление рекомендуется делать регулярно. Для этого обычно настраивают регламентный запуск.
2. Тестирование/исправление может вызвать (и часто вызывает) изменения данных программы. Перед каждым исправлением рекомендуется выполнять резервное копирование.
3. Конкретно эти сообщения никак не влияют на появление неправильных остатков и минусовых оборотов.
4. Для того, чтобы исправить указанные ошибки следует найти соответствующие таблицы dbf (имена таблиц можно определить с помощью файла 1cv7.dd) и с помощью любого редактора dbf-файлов исправить ошибки вручную. ВНИМАНИЕ! Работа с таблицами dbf напрямую может привести к разрушению структуры информационной базы!
Неизвестный
10.04.2009, 13:13
общий
это ответ
Здравствуйте, Aleksa!
Вы случайно базу не на флешке держите ? Я когда-то видел подобные симптомы при использовании флешки для работы з базой. Если так - срочно записывайте на диск.
Я тогда вручную все доводил до логического вида а позже бух. сверяла остатки.
К сожалению как точно поступить в Вашем варианте - не скажу.
Неизвестный
10.04.2009, 14:11
общий
это ответ
Здравствуйте, Aleksa!

К ответу Анатолия я добавлю, что после тестирования и исправления ИБ, нужно обязательно сделать перепроведение документов. В меню Операции => Проведение документов. Выбрать период (весь), за который проводить документы, затем восстановить последовательность.
Зачем делать две операции - в последовательность могут быть включены не все документы из базы. При полном перепроведении система сама корректно сделает все записи (проводки), восстановление последовательности будет гарантировать актуальность информации.

Кстати, как давно делался бэкап?
Мой совет - делайте ежедневно, а лучше несколько раз в день (пр ибольших объемах документооборота) архивирование базы.
По ссылке Вы можете скачать архиватор баз данных. Это моя бесплатная разработка для DBF версии 1С 7.7, выполнена в виде базы данных 1С. Для архивирования и тестирования запускается 1С в режиме конфигуратора и все действия происходят штатными средствами 1С.


Успехов!
С уважением, Владимир.
Неизвестный
11.04.2009, 00:36
общий
Спасибо за ответы. Журнал я восстановила выгрузкой/загрузкой данных. Но проблема со справочником осталась:

Проверка содержания справочников. ПроводкиХозОпераций. Элемент 13190. Изменено подчинение
Проверка содержания справочников. ПроводкиХозОпераций. Элемент 13180/13190. Изменено подчинение
Проверка уникальности внутреннего идентификатора в справочнике. ПроводкиХозОпераций. Элемент 13180/13190(Суммовая разница). Вн. идентификатор 0 . Исправить вручную

Перепроведение документов за период (от 01.01.2009 по 06.04.2009) остановилось на 06.01.2009 (Проведение документа Реализация № 0000000003 от 06.01.09 НЕ ВОЗМОЖНО из-за нехватки товаров на складах). Как же до этого этот документ был проведен? И что делать дальше? Да, после выгрузки/загрузки удаляла все файлы *.cdx, восстанавливала индексы.

И как работать с DBFview? Я нашла эти записи, но что дальше, то с ними делать? Удалять или другие данные вводить?

Бэкап делали в январе, базы хранят на винте, я эту базу только начала админить, раньше был другой специалист, связи с ним нет :(
Неизвестный
11.04.2009, 00:56
общий
Если не работали с DBF вручную - не связывайтесь. Либо наймите специалиста, либо отложите конкретно этот вопрос до лучших времен (суммовую разницу можно исправить корректировкой)

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

Бэкап в январе - это очень давно. Воспользуйтесь советов Владимира, настройте резервное копирование.
Неизвестный
11.04.2009, 01:19
общий
Копирование настрою. А где можно почитать инструкции по работе с DBF вручную. Хочется самой разобраться, может есть подробный ресурс?
Неизвестный
11.04.2009, 01:29
общий
В данном случае не так важно умение работать с DBF (об этом написано в справке к программе), сколько понимание, ЧТО делать (об этом нигде не написано, потому что универсального решения нет).

Так как речь о справочнике ПроводкиХозОпераций, то видимо у Вас "Комплексная 7.7"
Эта таблица может быть восстановлена при перепроведении.
Поэтому попробуйте так:

1. Найдите (в базе) документ, к которому относится данная хозоперация
2. Найдите (в DBF) эту хозоперацию и удалите ее (пометьте на удаление)
3. Перепроведите документ и убедитесь, что проводка есть, а ошибка исчезла
Неизвестный
11.04.2009, 01:51
общий
Извиняюсь за глупый вопрос. А как мне найти этот документ в 1с, по номеру документа 13190 ничего не находится?
Да и еще момент после восстановления последовательности документов, при попытке повторного перепроведения другие документы теперь не перепроводятся, а при попытке пометить на удаление пишет, что объект заблокирован?
Неизвестный
11.04.2009, 09:20
общий
Это не документ, а элемент справочника ПроводкиХозОпераций с соответствующим кодом.
Да, для нормальной работы следует восстановить последовательность - иначе не будет корректного учета.
Объект может быть заблокирован, если он открыт в соседнем окне..
Неизвестный
11.04.2009, 23:46
общий
У меня этот справочник вообще не заполнен, также как и справочники хоз. операции и движения регистров не заполнены. В хозОперациях объект ПроводкиХозОпераций (ФС-ПроводкиХозОпераций) с кодом=0, помечен на удаление, доступа к нему нет - Недостаточно прав доступа, хотя остальные окна закрыты. И что теперь делать? Заполнение справочников, восстановление последовательностей ничего не дают, часть документов Реализация вообще не перепроводятся - типа не достаточно товаров на складах...
Неизвестный
12.04.2009, 11:00
общий
В общем дела теперь обстоят следующим образом, база исправлена, ошибок не наблюдается. Но есть одно большое НО, при попытке восстановить последовательность документов все равно вылазиют ошибки о невозможности перепроведения, т.к. не хватает товаров на складах, это косяки пользователя и надо пытать его или можно все исправить без привлечения буха? Точку актуальности ставлю на момент проведения последнего документа.
Неизвестный
12.04.2009, 21:25
общий
Поздравляю с победой над технологическими сложностями!

Восстановление последовательности (как и порядок в учете), в первую очередь, ответственность пользователей, но без Вашей помощи они не справятся.
Так что это скорее совместный процесс - Вы им поможете в технических вопросах, а они гораздо лучше знают особенности учета.
Успехов!
Неизвестный
13.04.2009, 00:33
общий
Спасибо
Неизвестный
13.04.2009, 09:21
общий
при попытке восстановить последовательность документов все равно вылазиют ошибки о невозможности перепроведения, т.к. не хватает товаров на складах, это косяки пользователя и надо пытать его или можно все исправить без привлечения буха?


Скорее всего нарушена последовательность документов не в понятиях 1С, а в работе пользователей: Документ, списывающий остатки находится раньше документа приходования, и на это могут бут несколько причин. Например, документ прихода после того, как был расход, сняли с проведения, откорректировали, удалили и т.д. - всё это происходило "задним" числом. Как раз в этом помощь бухов - это их "святая" обязанность. Лечится такое отчетом движения товаров (партий) по той позиции, которая не дает провести документ.
Возможно, отчет не покажет документы после ТА, тогда вручную установите ТА на позднюю дату и сформируйте этот отчет.
Неизвестный
14.04.2009, 17:26
общий
Спасибо! Уже решили с бухом все проблемы
Форма ответа