FIFO logic error

I have 1600 products in the same batch but in different warehouses. When I create a pick list of 800 items, the software does not follow the batch order (the correct order should be to pick all from batch 1 before moving to batch 2). How can I fix this error?