Новая программа - новые ошибки. Дело даже не в самой ошибке, а в ее комментарии. Увидев это сообщение не каждый программист, не говоря уже о пользователе, сразу разберется в чем дело, а тем более найдет решение вопроса.
КЛАССИФИКАЦИЯ ОШИБКИ
При отмене проведения документа Реализация товара (возможно и других документах) у пользователя в Комплексной автоматизации 2 (возможно и в других конфигурациях) всплывает сообщение об ошибке. Текст ошибки дословно:
Запись не верна! Период не может быть пустым! (Регистр накопления: Плановые оплаты клиентов; номер строки: 58)
Такое же сообщение может всплывать со сслыками на другие регистры, например, Плановые оплаты поставщикам. Подмечено, что на конфигурациях с управляемыми формами с интерфейсом Такси ошибки стали встречается чаще, чем на конфигурациях с обычными формами. Практика тестирования новых решений на пользователях, видимо, до сих пор активно используется в выпускаемых решениях 1С Предприятие.
Из сообщения, которое видит пользователь можно сделать только выводы что:
- есть ошибка
- ошибка в регистре накопления
- что-то связано с оплатой клиента
- номер строки 58
КАК МЫ ИСКАЛИ И ИСПРАВЛЯЛИ ОШИБКУ
Понятно, что ошибка есть, но из сообщения об ошибке трудно понять что именно не так. Информация об ошибке сугубо техническая, без указания что не так с данными. Поэтому методом проб и ошибок нами было найдено решение данной проблемы.
Что мы делали, но не помогло
1. Поскольку речь идет об "оплатах клиента", то первое о чем мы подумали, что уже известная обработка "Заполнение регистров взаиморасчетов" исправит все косяки программы. О том как и для чего используют эту обработку читайте в нашем материале "Ошибка При записи при проведении документов". Это нам не помогло. Отменить проведение документа Реализация товара не получалось.
2. Провели тестирование и исправление базы данных через конфигуратор. В профилактических целях эта операция, конечно, не лишняя. К тому же никогда не знаешь на каком именно свете сейчас находится база данных. Так что мы выполнили и это, но тестирование также нам не помогло.
3. Пробовали менять Планы оплаты, указанные в Заказе покупателя на вкладке Основное. В целом предпринимали множество действий по поиску ошибки, формировали отчеты по задолженности клиента, редактировали Заказ покупателя, по которому проведена Расходная накладная. Ничего не срабатывало. Документ Реализация товаров не снимался с проведения.
ИСКАТЬ ОШИБКУ НУЖНО В РЕГИСТРЕ
Очевидно, что да, подумаете вы, потому что ругается на строку в регистре. Но не все так очевидно и просто, как кажется. Почему? Потому что в регистре строка, на которую ругается программа заполнена так же как остальные строки программы. Причина, в нашем случае, оказалась в Дате документа Заказ Покупателя. Так получилось, что по кредитному договору была подвязана оплата датой раньше, чем был выписан заказ. Мы изменили дату Заказ покупателя и ошибка исчезла. Скорее всего бухгалтер непавильно указал в платежном поручении ссылку на заказ или была изменена дата платежки, или ссылка на заказ в платежку была подвязана значительно позже проведения банковской выписки. Ситуаций может быть множество. В принципе, по бизнес-логике предоплата, которая возникла в нашем случае, по кредитному договору допустимая ситуация. Но 1С эту ситуацию реагирует ошибкой. Не обязательно что у вас будет ситуация точь в точь, но где искать ошибку мы вам рассказали.