В общем, после обсуждения с заказчиком, выяснилось что заказы надо выбирать с датой поставки в нужном периоде (SalesLine.ConfirmedDlv)
Кроме того, значения аналитик у инвойса или отгрузки не влияет на результаты отчета: если строка заказа имеет количество 100 и CostCenter 1 а инвойс: количество 40 и CostCenter 2 то в результате из этой строки все равно 60 единиц открыты для CostCenter 1, с каким бы CostCenter не были разнесены инвойсы и отгрузки.
Но всплыла другая проблема, необходимо высчитывать все в валюте компании, так как строки заказа могут быть в разных валютах. Короче, пришлось еще прикрутить конверцию