Ausserdem ist das Ganze relativ langsam wenn man 1 Mio Stück eines Produktes kauft.
Halte dir nicht einzelne Stück, sondern den Kauf als solches. Dabei hältst du jeweils den aktuellen Bestand pro Kauf, also das war grad noch übrig ist.
Davon kannst du dann vom ältesten bis zum neusten sortiert so lange was wegnehmen, bis die angegebene Stückzahl erreicht ist.