Перейти к содержанию

Пересчет статуса товаров в сч.кл.

Служба-ремонтник для одного-единственного показателя: «Количество в заказах» в статусах товара. Это число отвечает на вопрос «сколько единиц уже обещано клиентам» — сумма неотгруженных остатков по открытым заказам. Его ведёт сама система: каждый раз, когда заказ создают, правят, отгружают или закрывают, показатель пересчитывается на лету.

Где искать: Модули → Счета клиентам → Обслуживание → Пересчет статуса товаров в сч.кл.

Но «на лету» означает «через документ». Если данные попали в базу мимо документов — импортом, интеграцией, прямым вмешательством в базу, — показатель расходится с фактом. Эта служба собирает его заново с нуля.

Не путайте с резервом. Резерв — это товар, отложенный под конкретный заказ с галочкой «Зарезервировано», он уменьшает доступный остаток. Количество в заказах считает все открытые заказы, независимо от резерва, и на доступность не влияет — это план отгрузок, а не бронь.

Разбор на примере

Окно службы — само пояснение и две кнопки; параметров нет:

Окно службы

Что происходит после нажатия «Выполнить»:

  1. показатель «Количество в заказах» обнуляется по всем позициям и складам фирмы;
  2. система проходит все открытые заказы клиентов и по каждой строке добавляет неотгруженный остаток (заказано минус отгружено) на склад этой строки;
  3. закрытые заказы в подсчёт не входят — закрытие документа освобождает его план так же, как и отгрузка.

То есть после прогона число равно тому, что фактически написано в документах. Если до запуска оно было другим — это и есть то расхождение, ради которого служба существует.

Склад берётся в таком порядке: склад строки → склад из шапки заказа. Если не заполнено ни там, ни там, количество идёт отдельной строкой статуса с пустым складом — в отчёте о статусе товара она подписана «Нет склада»: ни один настоящий склад не получает чужого количества, а итог по товару верный. Не попадает в показатель строка, товара которой нет в справочнике (например, код поставщика без карточки) или не было, когда заказ последний раз сохраняли.

Параметры

Параметров нет, служба обрабатывает всю фирму целиком. Кнопки:

Кнопка Что делает
Выполнить Разовый пересчёт прямо сейчас
По расписанию Ставит пересчёт на расписание

Ставить на расписание есть смысл только там, где данные регулярно приезжают извне (интеграции с маркетплейсами, импорт). В обычной работе показатель ведёт система, и ежедневный пересчёт ничего не изменит.

Частые ситуации

«Количество в заказах» не совпадает с документами. Это и есть повод запустить службу. После прогона число будет ровно таким, как в открытых заказах.

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

Товар из заказа не виден на его складе. Проверьте склад: если в строке заказа склад не указан и в шапке документа тоже пусто, количество ложится в строку «Нет склада», а не на склад. Заполните склад в заказе — при сохранении показатель переедет сам. Если же товара нет ни на складе, ни в «Нет склада», проверьте, есть ли в справочнике карточка с этим кодом: строка без карточки не учитывается ни при сохранении, ни при пересчёте. Карточку завели уже после сохранения заказа — сохраните заказ ещё раз: что строка без карточки, отмечает именно сохранение, и служба эту отметку не снимает.

Отказ про реестр, общий с другой компанией. Если статусы товаров или счета клиентам ваша компания берёт в общее пользование у другой, служба откажет и назовёт реестр: показатель пересчитывает только компания, которой реестр принадлежит.

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