Вы толком не описали задачу. Какова область применения, для чего это всё собственно, какие продукты учитывать: все или удовлетворяющие какому-то критерию?
По вашему вопросу ответ может быть следующий:
X++:
= 0;
= ; //получается с помощью RetrieveMultiple
foreach( in )
+= . ;