Bom, mas pode melhorar
A leitura do scan é ótima, mas acho que o relatório poderia vir com as quantidades agrupadas. Se eu bipo 5 vezes o mesmo código, o relatório poderia vir o código com a quantidade 5. Acho que deveria ter essa opção. No mais está ótimo.