I think the problem is that the PartPlant table isn’t populated with the first record until you save. I think you will have to do it in a data directive watching for new PartPlant records.
That is probably true, but I think there is another issue. I tried it on update(Part Detail) and the bpm triggers but doesn’t affect the backflush checkbox. But when I try modifying the site form then it checks the backflush. Both trigger it but only by changing the site form does it stick.
I made an In Transaction Data Directive on the PartPlant table that changes the Backflush flag to true for the added row. As long as the users know it doesn’t do it until the new part is saved, it works for us.