Steps
1. Locate the Traffic Lights Configuration File
The traffic light module is embedded in Risksheet pages via JavaScript:
.polarion/pages/widgets/nextedy-automotive-safety/resources/risksheet-traffic-lights.js
Open this file in your Polarion SVN working copy or through the Polarion UI (Administration → Pages → Widgets).
Edit the preFields array to define which columns must be complete for initial risk assessment:
// Default AIAG-VDA FMEA fields
const preFields = ['sev', 'occ', 'det'];
// ISO 26262 HARA alternative
const preFields = ['haraS', 'haraE', 'haraC', 'asil'];
The Pre traffic light turns green when all failure modes have values in every field listed. Yellow indicates partial completion, red means no rows are complete.
AIAG-VDA FMEA uses sev, occ, det for Severity, Occurrence, Detection. ISO 26262 HARA uses haraS, haraE, haraC, asil. Match your field set to your active methodology.
3. Configure Post-Mitigation Field Set
Edit the postFields array to define which columns must be complete for residual risk assessment:
// Default: revised ratings after controls
const postFields = ['occNew', 'detNew'];
// Alternative: track control effectiveness
const postFields = ['controlEffectiveness', 'residualRisk'];
The Post traffic light monitors re-assessment completion after risk controls are implemented.
Choose between string match mode (for enum fields) or numeric threshold mode (for calculated fields):
String Match Mode (Action Priority)
const highRiskConfig = {
column: 'AP', // Action Priority field
criteria: 'H', // High-priority enum value
mode: 'string'
};
Numeric Threshold Mode (RPN)
const highRiskConfig = {
column: 'RPN', // Risk Priority Number
criteria: 100, // Threshold value
mode: 'numeric'
};
The High traffic light shows red if ANY failure modes meet the criteria (AP=‘H’ or RPN>100), green if none remain.
String match mode is case-sensitive. Use 'H' not 'h' for Action Priority. Check your enumeration definition in .polarion/tracker/fields/failureMode-actionPriority-enum.xml for exact values.
5. Configure Tooltip Help Text
Customize the help tooltip to match your FMEA standard:
const tooltipText = {
pre: "Pre-mitigation assessment complete (Severity, Occurrence, Detection)",
post: "Post-mitigation re-assessment complete (Revised Occurrence, Detection)",
high: "High-priority risks remaining (Action Priority = H)"
};
For ISO 26262:
const tooltipText = {
pre: "HARA complete (Severity, Exposure, Controllability, ASIL)",
post: "Residual risk assessed after safety goals",
high: "Unacceptable ASIL levels remaining (QM target not achieved)"
};
6. Verify Traffic Light Behavior
Open any FMEA Risksheet document and observe the traffic lights in the top-right corner:
Expected behavior:
- Pre light: Green when all 7 failure modes have sev+occ+det values, yellow when 4/7 complete, red when 0/7
- Post light: Green when all have occNew+detNew, yellow for partial, red for none
- High light: Red showing “3 remaining” if 3 failure modes have AP=‘H’, green “None” when all mitigated
- Counts update live as you edit cells—no save or refresh needed
Edit a failure mode row to clear a required field (e.g., delete Severity value). The Pre light should immediately turn yellow or red depending on remaining completion. Restore the value to see the count increment back.
7. Override Default Item Grouping (Optional)
By default, traffic lights group by systemItemId (for linked items) or ID (for standalone rows). Override for custom row structures:
const groupByField = 'failureModeId'; // Custom unique identifier
This prevents double-counting when FMEA rows have multiple sub-rows (causes, effects, controls).
Common Issues
If lights don’t update after edits, check browser console for JavaScript errors. The module listens to Wijmo CollectionView events. If you’ve modified the Risksheet grid initialization, ensure collectionChanged and sourceCollectionChanged events still fire.
Traffic lights operate on Risksheet column IDs, not display names. If you renamed a column header but kept the same column ID, use the ID in preFields/postFields arrays. Check risksheet.json for the correct id value.
Numeric threshold mode triggers on >= comparison. If your RPN formula outputs strings instead of numbers, switch to string match mode or fix the formula to return parseInt(value).
See Also