При работе в розничной торговле, особенно в дилерских центрах сотовых операторов, часто возникает специфическая задача: необходимо вести учет SIM-карт, предназначенных для бесплатной замены клиентам. Такие карты поступают от оператора без оплаты (по нулевой стоимости) и передаются абонентам бесплатно. Однако при попытке провести стандартный документ Поступление товаров система 1С:Розница выдает ошибку проверки заполнения, требуя указать положительные значения цены и суммы.
Проанализируем причины такого поведения программы и разберем практические способы решения этой проблемы без нарушения логики складского и управленческого учета.
Выясним причину, по которой конфигурация блокирует проведение документа:
ПоступлениеТоваров в процедуре ОбработкаПроверкиЗаполнения программно зашит жесткий контроль: значения в реквизитах табличной части Цена и Сумма обязательно должны быть строго больше нуля.Если цель заключается исключительно в отражении остатка на складе магазина без возникновения задолженности перед контрагентом, рассмотрим самый простой типовой вариант — использование документа ОприходованиеТоваров.
Разберем процесс по шагам:
0 (в отличие от поступления от поставщика, данный документ допускает нулевую стоимость).ТоварыНаСкладах.Если для организации принципиально важно видеть официальный документ поставщика с привязкой к конкретному контрагенту и договору, лучшим техническим решением будет использование механизма расширений платформы «1С:Предприятие 8.3». Этот подход позволяет не снимать конфигурацию с поддержки.
Посмотрим на пример логики переопределения:
ПоступлениеТоваров.ОбработкаПроверкиЗаполнения с директивой &Вместо или &После.Пример программного кода для очистки списка проверяемых реквизитов:
&После("ОбработкаПроверкиЗаполнения")
Процедура Расш1_ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
// Если в документе присутствует признак некоммерческой поставки
// удаляем обязательность контроля цены и суммы
Для Каждого СтрТЧ Из Товары Цикл
Если СтрТЧ.Номенклатура.ВидНоменклатуры.Наименование = "SIM-карты (замена)" Тогда
ПроверяемыеРеквизиты.Удалить(ПроверяемыеРеквизиты.Найти("Товары.Цена"));
ПроверяемыеРеквизиты.Удалить(ПроверяемыеРеквизиты.Найти("Товары.Сумма"));
Прервать;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
В результате документ будет успешно проводиться с нулевыми суммами, формируя корректные движения только по количеству.
Рассмотрим вариант разделения финансового и складского учета, заложенный в функционал системы:
ПриходныйОрдерНаТовары. В этом документе фиксируется исключительно физическое количество единиц номенклатуры, а стоимостные показатели отсутствуют вовсе.Важный нюанс: Ордерная схема в Рознице предполагает последующее оформление финансовой накладной. Если финансовый документ не проводить, эти позиции будут числиться как неотфактурованные поставки, что потребует контроля в отчетах по расхождениям.
Для базовых версий конфигурации, где нельзя применить механизм расширений, а ордерная схема усложняет ежедневный учет небольшого магазина, разберем обходной путь:
Поступление товаров с минимальной ценой 0,01 руб. (1 копейка).Списание задолженности по результатам инвентаризации взаиморасчетов.После оприходования карт необходимо правильно настроить процесс их передачи абонентам:
СписаниеТоваров. Рекомендуется создать отдельную статью аналитики хозяйственной операции — «Технологическая замена SIM-карт».