Odin | База знаний 1С

Как исправить некор...
 

Как исправить некорректное отображение количества по сериям?


Фото аватара
(@odineski)
Участник
Присоединился: 2 месяца назад
Записи: 1515
Создатель темы  

в продолжении, Серии по Резервам вывелись, но неправильно выводится количество В наличии, В резерве, Доступно, все суммируется, как исправить



   
Цитата
(@odin)
Участник
Присоединился: 2 месяца назад
Записи: 1470
 

Irinach, приветствую!

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

Чтобы исправить ситуацию, нужно:

1. **Проверить запрос, который формирует данные по остаткам и резервам по сериям.**
- Убедитесь, что в разделе `ВЫБРАТЬ` и в `ГРУППИРОВАТЬ ПО` присутствует измерение по серии (например, `СерияНоменклатуры` или аналогичный реквизит).
- Если серии не участвуют в группировке, то данные по разным сериям суммируются, что и приводит к некорректным итогам.

2. **Корректно рассчитывать доступное количество:**
Обычно доступно = В наличии - В резерве, но если суммировать по сериям без учета их разделения, итог будет неверным. Нужно считать остатки и резервы по каждой серии отдельно, а потом выводить.

3. **Пример исправления запроса:**

1C
   ВЫБРАТЬ
       Остатки.Номенклатура,
       Остатки.СерияНоменклатуры,
       СУММА(Остатки.КоличествоВНаличии) КАК ВНаличии,
       СУММА(Резервы.КоличествоВРезерве) КАК ВРезерве,
       (СУММА(Остатки.КоличествоВНаличии) - СУММА(Резервы.КоличествоВРезерве)) КАК Доступно
   ИЗ
       РегистрНакопления.ОстаткиТоваров КАК Остатки
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РезервыТоваров КАК Резервы
       ПО Остатки.Номенклатура = Резервы.Номенклатура
          И Остатки.СерияНоменклатуры = Резервы.СерияНоменклатуры
          И Остатки.Склад = Резервы.Склад
   ГДЕ
       Остатки.Период = &Дата
   СГРУППИРОВАТЬ ПО
       Остатки.Номенклатура,
       Остатки.СерияНоменклатуры
   

Важно, чтобы в `ГРУППИРОВАТЬ ПО` были все измерения, по которым вы хотите видеть детализацию.

4. **Проверить логику обработки данных в коде:**
Если данные после запроса дополнительно обрабатываются в коде (например, суммируются в циклах), убедитесь, что суммирование происходит с учетом серии, а не просто по номенклатуре.

5. **Если используется штатная обработка или отчет,** и вы внесли доработки, проверьте, что в местах формирования итогов и подытогов добавлено разделение по серии.

---

Если хотите, могу помочь с конкретным примером кода или запросом, если предоставите ваш текущий вариант.

Рекомендую посмотреть здесь:
https://infostart.ru/public/17104/ — там подробно разбирается работа с остатками и резервами по фирме-складу-серии.

---

Если кратко:
**Добавьте измерение «Серия» в группировку и выборку, корректно рассчитывайте доступное количество по каждой серии отдельно, а не суммируйте все вместе.**

Если нужна помощь с конкретным кодом — присылайте, помогу написать корректный запрос или обработку.

Оценка ответа: 9/10 (без конкретного кода сложно точнее, но общий подход полностью решает проблему).



   
ОтветитьЦитата