Trying to modify JobHead after Quick Job Entry

I’m trying to create a BPM to set LockQty to true when the Quick Job Entry is marked as Engineered. I’ve tried several things already, but you can see the most recent below. I added this as a BPM for QuickJobEntry.GeneratedJob.Post. The first info message fires, but not the second. The job gets created, but the LockQty never gets set.

find first ttQuickJob where ttQuickJob.RowMod = 'U' or ttQuickJob.RowMod = 'A' .

/* If this Quick Job is Engineered, set JobHead.LockQty to true */
if ttQuickJob.EnableEngineered then do :
	find first JobHead where JobHead.JobNum = ttQuickJob.JobNum and JobHead.Company = cur-comp no-lock no-error .
	{lib\PublishInfoMsg.i &InfoMsg = "'Update JobHead ' + JobHead.JobNum + '.'" } .
	assign JobHead.LockQty = true.
	{lib\PublishInfoMsg.i &InfoMsg = "'JobHead LockQty(' + STRING(JobHead.LockQty) + ').'" } .
end .

Have you run a trace of the lock checkbox are there any BOs that fire there? Also if you are using a find first you should really use an if available as well.

Or better yet if you add no-lock to your JobHead query you’re not going to be able to update. Remove that and it will probably work.