О, насколько конфигурации 1С:Предприятие 8.1 сложны!!
Это просто не описуемо! Сколько у них внутри сложных связей явных и неявных!! Это просто не описуемо!
Вот наиболее яркие впечатления недели (много букоф про 1С):
1. Понятно, что нельзя просто так удалить в БД объект, который где-то уже используется. Многие это знают и понимают, зачем это правило.
А многие ли знают, что объект таки можно удалить, удалив его сначала в смежной базе.
Например:
Некий контрагент в БД "Управление Торговлей" нигде не используется, да и вообще лишний какой-то. Поскольку он нигде не используется и никакие связи его не держат - его удаляют без проблем.
После удаления делают обмен с Бухгалтерией и этот контрагент удаляется и там. А как иначе? Все действия с объектами переносятся.
Потом обнаруживаем, что У этого контрагента были документы.. Платёжки там, накладные всякие..
Контрагент упаковал чемоданы и исчез. Вместо контрагента созерцаем "<Объект не найден> (137:8b270030482898d011daad3cc45fc830)"
2. Все нормальные организации, использующие БП и УТ все торговые операции (отгрузка, оплата, приход, складские операции) ведут в торговле. Затем всё это счастье благополучно выгружается в БП. Но я что-то оказался слишком мягкотелым и прогнулся под нашу бухгалтерию, которая наотрез хотела забивать банковские документы исключительно в БП. Как быть? Коммерческой службе тоже нужно видеть поступление денежных средств!
Казалось бы фигня! Накидал в конверсии правила обмена и погнали выгружать платёжки из БП в УТ!
Первые проблемы появились, когда в УТ удвоились контрагенты. Оказывается платёжки тащили за собой тучу других объектов, которые в случае отсутствия добавлялись. А соответствие контрагентов устанавливалось по коду. Ясен перец, коды контрагентов в разных базах были разные.
Дык удвоились - нет проблем. Дубли удалил. Правила поправил. ВОт только после выгрузки в БП там пропали контрагенты. Всё тот же <Объект не найден>.
То же самое произошло с номенклатурой, с Реализацией товаров и услуг. Под конец платёжки в БП тоже удвоились, т.к. при выгрузке из УТ к номеру документа добавлялся префикс, а значит соответствие нарушалось, связь не находилась, и создавался новый объект.
После нескольких итераций я таки уломал бухов делать всё по нормальному, с обменом только в одну сторону.. Ещё пара дней ушла на отлов проблем в БД. Сегодня ситуация нормализовалась... вроде...
НЕ ДЕЛАЙТЕ КАК Я
3. При работе с одним документом наблюдалась стабильная ошибка. Ошибка настолько неявная и тёмная, что пришлось восстанавливать всю БД из бекапа.
Ошибка будто исчезла. Однако каково было моё удивление, когда увидел как на одном компьютере ошибка упорно продолжала выскакивать.
Проблема решилась окончательно не исправлением в конфигураторе кодов, не ковырянием в регистрах. Просто достаточно оказалось удалить локальную папку
C:\Documents and Settings\Пользователь\Application Data\1C
Вот так интересно 1С работает...
Результат работы программы зависит не только от состояния БД, но и от неких долговременных локальных файлов.