В конфигурациях Бухгалтерии предприятия 3.0.58...3.0.59.56 ПРОФ, если включен учет подразделениям (функциональная опция ВестиУчетПоПодразделениям) и не отключен контроль остатков (администрирование -> проведение документов) при проведении документа Требование-накладная (возможно и других, не проверял) появляется ошибка:
Некорректно заполнена колонка "Количество" в строке 1 списка "Материалы". Указанное количество превышает остаток. Остаток: 0; Не хватает: N.
При этом документы поступления в порядке, ОСВ и другие отчеты показывают наличие требуемого количества материала на выбранном складе.
Сообщение на v8@1c.ru о данной ошибке отправлено.
Анализ кода в общем модуле УчетТоваров в запросе остатков у Функции ПолучитьОстаткиТоваров показывает лишнее условие по Подразделению:
Текст = Текст + "
|ВЫБРАТЬ
| Остатки.Счет КАК СчетУчета,
| Остатки.Подразделение КАК Подразделение,
| Остатки.Субконто1 КАК Номенклатура,
| ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) КАК ДокументОприходованияДата,
| &ПустаяПартия КАК ДокументОприходования,
| &ПустойСклад КАК Склад,
| Остатки.Организация КАК Организация,
| СУММА(ЕСТЬNULL(Остатки.КоличествоОстатокДт, 0)) КАК КоличествоПоСкладу,
| СУММА(ЕСТЬNULL(Остатки.КоличествоОстатокДт, 0)) КАК Количество,
| СУММА(ЕСТЬNULL(Остатки.СуммаОстатокДт, 0)) КАК Стоимость,
| СУММА(ЕСТЬNULL(Остатки.СуммаНУОстатокДт, 0)) КАК СтоимостьНУ,
| СУММА(ЕСТЬNULL(Остатки.СуммаПРОстатокДт, 0)) КАК СтоимостьПР,
| СУММА(ЕСТЬNULL(Остатки.СуммаВРОстатокДт, 0)) КАК СтоимостьВР
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.Остатки(
| &МоментВремени,
| Счет В (&СчетаУчетаН),
| &ВидыСубконтоН,
| &УсловиеПоПодразделению
| И Субконто1 В (&МассивНоменклатуры)
| И Организация = &Организация) КАК Остатки
|
|СГРУППИРОВАТЬ ПО
| Остатки.Счет,
| Остатки.Подразделение,
| Остатки.Субконто1,
| Остатки.Организация";
Если БухгалтерскийУчетПереопределяемый.ВестиУчетПоПодразделениям() Тогда
Текст = СтрЗаменить(Текст, "&УсловиеПоПодразделению", "Подразделение = &Подразделение");
Иначе
Текст = СтрЗаменить(Текст, "&УсловиеПоПодразделению", "ИСТИНА");
КонецЕсли;
На выходе получаем, например такое:
ИЗ
РегистрБухгалтерии.Хозрасчетный.Остатки(
&МоментВремени,
Счет В (&СчетаУчетаНПС),
&ВидыСубконтоНПС,
Подразделение = &Подразделение
И Субконто1 В (&МассивНоменклатуры)
И Субконто3 В (&МассивСкладов)
И Организация = &Организация) КАК Остатки
На счетах учета материалов и товаров в БП Проф не ведется учет по подразделениям (в КОРП ведется), и результат такого запроса всегда пустой (проверялось на платформах 8.3.10.2650 и 8.3.11.3034, на файловых базах).
Решение - исключить условие Подразделение = &Подразделение в условиях к регистру бухгалтерии.
В прилагаемом расширении с помощью конструкции &Вместо("Типовая") ... ПродолжитьВызов() (подробнее о расширении модулей http://v8.1c.ru/o7/201603module/index.htm) сначала выполняется типовой код функции ПолучитьОстаткиТоваров, и если на выходе пустая таблица значений запускается практически такой же код, но измененный - чтобы исключить условие Подразделение = &Подразделение если на счетах учета учет по подразделениям не ведется.
Расширение писалось для обхода проблемы с документом Требование-накладная и для него работает. Перед использованием прошу проверить подходит ли расширение вам и не повлияет ли оно на другие важные для вас документы.
Расширение нужно подключить через Администрирование -> Печатные формы, обработки, отчеты -> Расширения или Все функции -> Стандартные -> Управление расширениями конфигурации, сняв галочку безопасный режим.