Use this table to calculate an ERUF value for all or part of a transaction. Typical parts of a critical transaction that are checked by using this table include:
Resource Usage Item | Calculation | Est. ERUF |
|---|---|---|
Entry to small function (<200 lines) | Add 1 | |
Entry to medium function (<500 lines) | Add 2 | |
Entry to complex function (<900 lines) | Add 3 | |
Entry to very complex function (>900 lines) | Add 4 | |
Does not use OPTIONS(*NOMESSAGES). For entry and exit logic only. | Add 0.25 | |
Does not use OPTIONS(*DEFERWRITE). For any code using screen panels. | Add 0.25 | |
Display panel presented on remote device. | Add 1 | |
Exit logic only. If any external built-ins are used, add one only shutdown value of | Add 0.25 | |
Open off shared files already opened by another higher level function. | Divide total by 4 and add the result | |
Close off shared files that are still open in another higher level function. Usually only applies to exit logic. | Divide total by 8 and add the result | |
Open of files that are not already open | Divide total by 2 and add the result | |
Close of files not opened by higher caller Usually only applies to exit logic. | Divide total by 4 and add the result | |
CALLs to other functions. Add the total ERUFs of all called functions. | Add all ERUFs | |
Database I/Os performed | Divide total by 10 and add the result | |
Group 1 RDML commands / built-ins executed (count loops repetitively) | Divide total by 100 and add the result | |
Group 2 RDML commands / built-ins executed (count loops repetitively) | Divide total by 50 and add the result | |
Group 3 RDML commands / built-ins executed (count loops repetitively) | Divide total by 20 and add the result | |
Group 4 RDML commands / built-ins executed (count loops repetitively) | Divide total by 10 and add the result | |
Total ERUF value | n/a | |
For *HEAVYUSAGE re-entry, subtract file opens | n/a | |
For re-execution of code that has to open files the first time that it is executed, subtract file opens | n/a |