Показать сообщение отдельно
Старый 23.01.2014, 09:42   #2  
Peter Savintsev is offline
Peter Savintsev
Участник
 
246 / 124 (5) +++++
Регистрация: 14.12.2001
Это давняя баго-фича стандартного функционала. При разноске расхода система проверяет только текущее наличие. При этом никаких проверок на дату не делается, даже если товар был оприходован более поздней датой, чем проводимый расход, система спокойно даст его разнести.

В свое время я делал на одном проекте модификацию, которая контролировала бы наличие номенклатуры именно на дату расхода. Ax 3.0 под рукой уже давно нет, но вроде бы правился метод \Classes\InventUpd_Physical\updateNow. В нем как раз есть проверка текущего наличия номенклатуры (при этом используется класс InventOnHand). Нужно ее дополнить проверкой наличия на дату расхода. Не помню, как назывался в трешке класс, который позволял получить наличие на дату, в 2009-й это класс InventSumDate и его потомки.

Но сразу хочу предупредить. Эта модификация может очень сильно снизить производительность разноски расходов, т.к. операция получения наличия на дату выполняется значительно медленнее операции получения текущего количества. Возможно, это стоит делать только для отдельных номенклатур, для которых это критично.

Последний раз редактировалось Peter Savintsev; 23.01.2014 в 09:44.