Sustainability & Risk/ Health & Safety / Management Reports

Incidents Count report

With this report, you can generate a bar graph report that shows a count of incidents (on the Y axis) according to various criteria, including by type, by type over time, by site, by property, or by building (on the X axis). You can further filter this data by date range, injury category, affected employee, and other criteria.

To run the Incident Count report:

  1. In the filter, complete the Group By option to determine if you want to report on incidents by:
  1. Incident count data is often more meaningful when analyzed in terms of the number of employees or size of the building. For example, if two buildings have roughly the same number of incidents but one building houses double the number of employees, you may want to check as to why the building with fewer employees has so many incidents. To break down your data by building size or number of employees:
  1. Complete any additional criteria by which you want to filter and click Show.
  2. In the bottom pane, the system presents a bar graph of the incident count per your selected Group By option (building, property, incident type, etc).
  1. You can click on any bar in the report to access a pop-up window listing the specific incidents contributing to the bar's data.
  2. From this list of incidents, you can click on a particular incident to access its details, including resolution, witnesses, resulting required training, and resulting work restrictions. You can also generate the OSHA Accident Report (Form 301) from the incident details.
  3. To see a list of all incidents (not just those contributing to a specific bar in the chart), choose the All Details button in the report's upper right corner. From here, you can click on an incident to see its particular details and generate the OSHA Accident Report (Form 301) report.

Parent and Child Incidents

This report does not intend to convey the total count of incidents across all locations and categories as much as it intends to show the number of incidents that affected any given location, organizational unit, etc. The report does not double-count parent and child incidents within the same grouping. However, the report does count the same incident once for each group if multiple incident records with the same parent_incident_id are split between the different chart groups. This is as designed; if the report were to exclude child incidents in all cases and an incident did affect multiple people in multiple buildings simultaneously, querying incidents at any one of the buildings might not show the expected results. For example, if an incident affected buildings A, B, and C, with the 'parent' incident record associated with building A, you might filter show to only buildings B and C and not see record of the event's effects on those buildings.

When you click a chart bar to see detailed records, you may observe cases where there is a Grouped Incident Code with no matching Incident Codes. This would indicate that the incident spans multiple chart groups and therefore may affect the count displayed in more than one bar, even though the counts stem from a single incident.

Calculations

The following explains how the headcount and area values are calculated for some of the “Group by” options.

Since there is typically a small number of incidents and big numbers for the areas, the report normalizes the value by multiplying by 0.001.

Incidents Count Group by Building:

- Area: use value of bl.area_gross_int for the division
- Headcount:
SELECT count(em.em_id) FROM em where em.bl_id = ehs_incidents.bl_id
if is not zero, else:
SELECT bl.count_em FROM bl WHERE bl.bl_id = ehs_incidents.bl_id
if bl.count_em is also zero AND count of incidents >=1, then return 1 as the final result for the building; but if number of incidents = 0 then the result is 0

Incidents Count Group by Property:

- Area: use value of property.area_bl_gross_int for the division.
- Headcount:
SELECT count(em.em_id) FROM em WHERE em.bl_id = bl.bl_id AND bl.pr_id = ehs_incidents.pr_id
if is not zero, else:
SELECT SUM(bl.count_em) FROM bl WHERE bl.pr_id =
ehs_incidents.pr_id
Same comments as above regarding 0 or 1 as final result for the grouping (normalized) value.

Incidents Count Group by Site:

- Area: use value of site.area_gros_int for the division.
- Headcount:
SELECT count(em.em_id) FROM em, bl WHERE em.bl_id = bl.bl_id AND bl.site_id = ehs_incidents.site_id
if is not zero, else:
SELECT SUM(bl.count_em) FROM bl WHERE bl.site_id = ehs_incidents.site_id
Same comments as above regarding 0 or 1 as final result for the grouping (normalized) value.

Other Notes

If a user queries incidents by property, then selects to normalize by headcount, and if both values are non-zero, the system uses:

total number of incidents both for employees and non-employees together associated with the property & its buildings/
total number of employees, (that is, headcount for all buildings on that property)