Есть документ в 1с7 с проводками.
1с7 серверная на скуле 2000.
История: бух сделала документ (не корректно там заполнила реквизиты) документ вылез в ошибку на коде
Операция.Записать();
{Документ.ДокументБуха.Модуль Документа(190)}: Выбраны счета из разных планов счетов!(проводка 3)
Пройдя отладчиком по этому документу и не найдя ничего путного нажал ф5 документ якобы провелся, отменил проведение. Нажал провести еще раз и получил следующую картинку см. файл ниже. После этого повторил эту операцию на копии этого файла т.е. продолжение отладки вызывает на новом документе такой же глюк.
Как с этим бороться?
На текущий момент попробовал сделать реиндексацию в скуле не помогло.
ТиИ запустил в конфигураторе (все галки) на копии (полная скульная копия и копия файлов на тестовом сервере) пока еще работает. Уже день, правда база 16 гигов.
Планирую ручками удалить в скуле запись, которая на картинке.
(4) falcon, а там корректно заполнено.
Дело в том что раньше в плане счетов был счет 91.09, а теперь он 91.05. В новом плане счетов нет его вовсе поэтому исправил код проведения и все пошло, базе то уже лет 8. Когда это было написано и кем бог его знает.
Но вопрос же не в этом, а в том был как убрать "Violation of PRIMARY KEY constraint ... Cannot insert duplicate key in object"!
По итогу:
Проблема была в том что документ не проведен, а записи в регистре есть. Вот и ошибку валит, когда я пытаюсь провести документ.
Решение выбирать можно из:
1. Сделать ТиИ.
2. Ручной вариант с чисткой в скуле.
Для ручного варианта заходим в файл "1Cv7.DDS", который лежит в каталоге базы 1с7.
Открываем на просмотр, я в тотале жму ф3. Ищу текст: Это название документа в конфигураторе.
Далее смотрю какое у него имя в моем случае было: Name DH17245.
Теперь иду в скуль 2000 нахожу таблицу с таким именем. По таблице ПКМ открыть таблицу (Open table) -> Вернуть все строки (Return all rows).
Там ищем запись по вашему документу. Мне удалось его легко найти документ был один в нужном периоде. Нашли запись запомнили его IDDOC, у меня было "KLMN".
Теперь ищу таблицу которая вывалилась в ошибке на картинке "RA17286". Аналогично открываю таблицу и нахожу запись с "KLMN".
Удалил запись ПКМ по строке нажал Delete -> Yes.
Осталось поправить код в конфигураторе, там был косяк с планом счетов. И спокойно провел документ.