Необходимо в запросе выбрать те поступления, которые формируют текщий остаток FIFO на складе, иными словами - формирование остатка обеспечивается приходными и расходными документами, к примеру имеем такие движения:
1: +10
2: +8
3: -6
4: +2
5: -10
-------
Остаток: 4, в запрос должны попасть приходы 4 и 2, т.к. имено они обеспечивают наличие текущего остатка.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший