I have been grappling with disappearing serial numbers for months, and I just discovered a major culprit: virtual parts in assemblies.
In short, if an assembly contains 5 virtual parts, the serial number will advance by 5 every time the assembly is checked in. I'm not talking about the first time the assembly is checked in, or when it is first added to the vault - every time I check it out then check it back in, it eats 5 serial numbers.
I have tested this with several assemblies which contain virtual parts, and it is consistent; if the assembly contains 3 virtual parts, checking it in advances the serial number generator by 3 numbers. If it contains 12 virtual parts, checking it in advances the serial number generator by 12 numbers. Every. Time.
Has anybody else experienced this strange, unexpected behavior?