There is a FAQ note on OSS : 185530 - Performance: Customer developments in SD, did you read it, this note suggest to use VBFA to read deliveries from sales orders.
Correct: SELECT FROM vbfa WHERE VBELV = ... and VBTYP_N = 'J'
SELECT FROM lips WHERE vbeln = vbfa-vbeln AND posnr = vbfa-posnn
And usually A correct JOIN give better performance than poor FOR ALL ENTRIES...
Regards,
Raymond