Eddie,
Your batch job is OK however until the delivery schedule with new schedule line proposals has been transmitted they can be changed by MRP as they are not yet firm.
From my experience the OMIN settings affect the MRP type firming settings (P1, P2, ...) not the SA related firm settings. Here the binding on MRP key is determining what MRP can change or can not change.
See here the extract out of the help function on the OMIN setting.
Firm Only Schedule Lines Transmitted to Vendor by Purchasing
If you set this indicator, the system only firms the schedule lines which have been transmitted to the vendor by the purchasing department.
Use
This function is used if you use a planning time fence in the planning run. If you use firming type 1 ("Automatic firming and order proposals are displaced"), the system automatically firms existing schedule lines when they move into the planning time fence.
Use this indicator if you only want the system to firm schedule lines that have already been checked and passed on to the vendor per message transfer. If, for example, the quantity of a schedule line was changed but the changed quantity has not yet been passed on to the vendor, then the old quantity that has already been passed on to the vendor is firmed as soon as this schedule line moves into the planning time fence.