Hi,
There is no use even if you are maintaining the vendor field mandatory inside condition type in PO, since the PO vendor will be copied automatically inside the freight condition type. So the option suggested by Ashok is the best option for you.
As suggested by Ashok, you can make the vendor in GR as 2 (Entry Always Possible), so that the actual freight vendor can be mentioned at the time of GR.
Alternatively, you can create an access sequence for the freight condition type with plant as the condition table. Maintain the condition record for the condition type with zero value. But inside the condition record details, maintain a dummy vendor for which the accounting / purchasing data is not maintained. In this case, the system will always suggest the freight condition in the PO with zero price and the dummy vendor. If the user enter a value for the freight condition, the system wont allow to post the MIRO for the freight condition, since the accounting data is not maintained for the vendor.
Hope its helpful.
Regards,
AKPT