I would recommend using Time & Expense Entry for those situations. That screen gives you complete control over everything. The only downside would be that you could not make changes once the labor is posted.
Correct. I was assuming that there were already labor against the job and you were just looking to adjust it. Changing the time against a job is easier in T&E Entry.
And Epicor has restricted labor time records to Time Entry. Specifically, Erp.LaborDtl.
At the database, Erp.LaborHed contains a payroll entry. Erp.LaborDtl contains labor entries and are related to a payroll entry by a foreign key (technically, foreign-key-ish). There aren’t any exceptions, only workarounds.
Job Adjustment and backflushed labor both post records to LaborDtl. You can find all of your job adjustments via BAQ recorded on Erp.LaborDtl. The LaborHedSeq recorded by either source defaults to 0, which unfortunately prevents maintaining those records. Job adjustments (and backflush) don’t avoid posting a Time Entry, they only look like they do because the workaround they use to do so isn’t maintainable in the Time Entry UI.
My solution for this issue was to create a data directive on the labor dtl table.
When the callContextClient.Processid = “JobAdjustmentEntryForm”. then I can supply the clockinminute/time using the context variables. This injects the values we want in in-transaction