1) Are you using restricted stock status? Can you use that to mark the batch as restricted?
2) Another option is to create your own batch characteristic with say two values. UR and OB. Set up a general sales batch determination strategy that only allows batches with a value of UR to be assigned to the sales order.
3) Another possible option would depend on what you plan to do with these obsolete batches. You could use the QA07 program to block batches that are within 30 days of the SLED, or 60 days of the sled. Or whatever you want.
4) You could also copy the QA07 program and if you use the batch characteristic option I suggested above in #2, you could modify the program to automatically mark batches within 30 days of SLED by having the characteristic updated from UR to OB.
5) Another option is to set the inspection interval the same as the shelf life. Then post the stock into QI with an inspection lot. Hold the stock in QI until you decide what to do with it, then post it accordingly.
6) Another option is to post the stock to a special storage location like 0900 that would be configured to not be available to the sales orders for selection.
Craig