In-Transaction directives will fire for every record updated - if you update 1 record 5 different times or 5 different records one time each, the In-Tran directive will fire a total of 5 times.
The Standard directive will fire only once regardless of how many records in that table were updated. For the Standard directive, the Temp Table (ttJobMtl in this case based on your example) will contain a number of records based on the update processing that occurred on that table during the execution of the Business Method called.
If we look at the simple case of a single existing record updated during a method call, the Temp Table will contain two records - the original record with RowMod = empty string and the latest version of the updated record with RowMod = “U”. In the case where a single record was updated multiple times, there would still be only two records - the original version of the record prior to any updates being made and the final version of the record after all the updates were made.
In the case of 5 different records being updated during a single method execution, the Temp Table will contain 5 record pairs (total of 10 records) with each record being updated having an original version record and a final version record.
In the case of records added or deleted during a method call, the Temp Table holds the appropriate record. For Added records, there will be one Record with the final version of the record and a RowMod = “A”. For Deleted records, there will be one Record with the original version of the record and a RowMod = “D”.
For a record that is added and ultimately deleted during the scope of a method call, the Temp Table will not contain anything for that record.