There are several other interesting things in your query. For example, notice that the whole link via PurchId is not needed, because PurchId is fixed to _purchId. You could replace the link with a range and then have a link just a single table.
But not having any meaningful relation between journal headers and lines is very suspicious - for example, do you really want to get lines that don't belong to journals filtered by _packingSlipRange? The right related from VendPackingSlipTrans to VendPackingSlipJour is via VendPackingSlipJour field.