CreditOne Roster Validation (Snowflake/Avaya Edition)
ASP.NET Core Razor Pages application that validates uploaded roster spreadsheets before operational processing and downstream reporting use.
Overview
Users upload a roster .xlsx file, then the application executes an ordered validation pipeline covering worksheet structure, required columns, ID uniqueness, ID length rules, and active employee checks against Snowflake-backed EngageHR and CXONE/Avaya records.
Business Purpose
Catch roster defects before submission, reduce downstream processing failures, and provide immediate on-screen rule-level feedback with offending IDs grouped per check.
Technology Stack
Business Impact
Without this validation layer, bad roster files reach operations, creating data integrity issues, rework cycles, and delays across workforce reporting and scheduling workflows.
Current User Flow
The interface provides a single upload workflow with a roster file chooser and a Check File action. Results return immediately as success, error, and warning states, with collapsible ID-level detail for each failed rule.
Audit Logging
Every check attempt is stored with Windows-authenticated username, uploaded filename, and serialized validation outcomes to support traceability and troubleshooting.
Validation Coverage
- Worksheet checks: requires a ROSTER worksheet and no pre-existing workbook errors.
- Schema checks: enforces all 34 required columns before dependent validations continue.
- Identity checks: enforces uniqueness across Domain ID, Agent_ID, and C1B_ID columns.
- Format checks: enforces Domain ID, Agent_ID, and C1B_ID length constraints.
- Reference checks: validates Domain IDs against EngageHR and CXONE/Avaya sources and flags active employees missing from roster.