These are the form/screen changes:
- New Labor Grades form (SedonaSetup > Labor Grades):

- This is a standard setup form. All wage rate values must be greater than or equal to 0.
- There is a Prevailing Wage checkbox on each labor grade.
- If this checkbox is selected, the labor grade is included in the technician Prevailing Wage Labor Grade dropdown and job-specific prevailing wage rate form.
- If this checkbox is cleared, the labor grade is included in the technician Non-Prevailing Wage Labor Grade dropdown.
- During migration, an ‘Unspecified’ labor grade is created that holds all existing job prevailing wage rates. ‘Unspecified’ can be made inactive once users add real labor grades.
- Prevailing Wage form:
- We removed this form.
- Existing prevailing wage records are migrated to corresponding labor grades:
- Prevailing wage description becomes the labor grade description.
- Prevailing wage rate becomes the labor grade direct wage rate.
- Labor grade indirect wage rate is also set to prevailing wage rate (there is no direct/indirect distinction as existed before).
- The labor grade prevailing wage checkbox defaults to selected.
- Users can reassign technicians to appropriate labor grades.
- Users can make old labor grades inactive or delete them if no longer needed.
- Technician Edit form (SedonaSetup > Technicians):

- On the Installation tab, there are two new labor grade dropdowns:
- Non-Prevailing Wage Labor Grade: this used when a job is not marked as prevailing wage.
- Prevailing Wage Labor Grade: this used when a job is marked as prevailing wage.
- Which one is used depends on the job’s prevailing wage checkbox status (selected or cleared).
- Migration:
- Prevailing wage labor grade is set to ‘Unspecified’ for all existing technicians:
- Ensures that prevailing wage functionality continues on existing jobs.
- A job’s prevailing wage rate is stored under ‘Unspecified’ labor grade
- Technicians must also have ‘Unspecified’ for clocked time to use a job’s prevailing wage.
- Non-prevailing wage labor grade: Set to ‘N/A’ for all existing technicians.
- This preserves existing pay rates functionality.
- Prevailing wage labor grade is set to ‘Unspecified’ for all existing technicians:
- Edit Labor Tasks form:

- New field: Labor Type: Direct or Indirect. Once time is clocked against a labor task, the labor type cannot be changed.
- New Field: Override Wage Rate: Empty or greater than or equal to 0.
- If set (including 0.00), this overrides the technician’s labor grade rates or pay rates.
- Migration: All existing labor tasks set to ‘direct’ type with empty override wage rate.
- Job Work Order Entry form:

- Users can change this even after job is in progress.
- Uses whatever setting is in effect when technician time is recorded.
- New Job-Specific Prevailing Wage Rates form:

- Users access this using the button next to the Prevailing Wage checkbox on the Work Order Entry form.
- This shows current direct/indirect wage rates for reference (read-only).
- This also shows all active labor grades with prevailing wage rates defaulted to direct wage rates.
- Users can add rows for new labor grades added after initial setup.
- Users can delete rows for labor grades that are no longer needed.
- If a technician’s prevailing wage labor grade lacks a prevailing wage rate on the job, the system uses the labor grade’s direct wage rate.
- Migration: The existing prevailing wage rate is moved from the job header to ‘Unspecified’ labor grade.
- Job Costing form:

- The Detail View button shows the Job Labor Tasks in detail view. The labor grades shown depend on job’s prevailing wage status:
- Prevailing wage job: Shows the prevailing wage labor grades.
- Non-prevailing wage job: Shows the non-prevailing wage labor grades.
- This has a switch for Summary or Detail:
- Detail view: Shows all labor grades for each task separately.

- Summary view: Rolls up all labor grades into actual units/costs.

- Detail view: Shows all labor grades for each task separately.
- A new button in the Actual column/Other row shows the breakdown of other costs by expense type.

- Job - Time Sheet form:
- This is the hierarchy for the Pay Rate:
- Does the labor task have an override wage rate?
- Yes: Then use the override wage rate.
- No: Go to step b.
- Is the job marked as prevailing wage?
- Yes: Go to step c (Prevailing Wage Path)
- No: Go to step f (Non-Prevailing Wage Path)
Prevailing Wage Path
- Does the technician have a prevailing wage labor grade?
- Yes: Go to step d.
- No: Use the technicians regular pay rate.
- Is the labor task marked as 'direct'?
- Yes: Go to step e.
- No: Use the technicians prevailing wage labor grade’s indirect wage rate.
- Does the job have a prevailing wage assigned to the technician's labor grade?
- Yes: Use the job’s prevailing wage rate.
- No: Use the technicians prevailing wage labor grade's direct wage rate.
Non-Prevailing Wage Path
- Does the technician have a non-prevailing wage labor grade?
- Yes: Go to step g.
- No: Use the technician’s regular pay rate.
- Is the labor task marked as 'direct'?
- Yes: Use the technicians non-prevailing wage labor grade's direct wage rate.
- No: Use the technicians non-prevailing wage labor grade's indirect wage rate.
- If a user manually changes a defaulted rate, there is a confirmation warning.

