Important Notice
While using ChatGPT, don't copy-paste exact content. Read carefully and make necessary changes.
1. Introduction
This document defines the standard checklist and compliance guidelines that must be followed during the development of all forms/screens within the SioniqAI system. The intent of this checklist is to ensure consistency, accuracy, maintainability, and functional completeness across all transactional and non-transactional forms. These guidelines are mandatory and apply to both new development and enhancements.
Date: 12-01-2026
2. Developer Checklist & Compliance Guidelines
1. Data Dependency Handling
-
Dependency Identification: Identify if the current
module, form, or screen depends on data from another screen.
-
Testing Approach:
-
If the dependent screen/feature exists and is functional,
manually configure required data through the UI.
-
If the dependent feature is not yet developed or partially
available, simulate using backend test data (DB insert/update).
-
Temporary Backend Usage Rules:
- Create backend mock/test data in a controlled manner.
- Ensure data matches expected production scenarios.
- Clean up temporary data after testing if required.
-
Dependency Blockers:
- Immediately notify the reporting manager.
-
Provide detailed information including module name, expected
input, missing data, errors, and reproduction steps.
-
Escalation Etiquette:
- Do not keep dependency issues pending silently.
- Do not wait for integration to report blockers.
2. Mandatory Test Data Entry
-
Create a minimum of 10 diverse test entries after development
completion.
- Ensure entries cover multiple real-world scenarios.
3. Form Completion & Time Compliance
- Complete development within the designated timeline.
-
Ensure all functional and business requirements are satisfied before
marking as completed.
4. Validation Checks
- Empty/null validations
- Required field validations
- Data type and length validations
-
Validations must work at both Angular (Frontend) and API (Backend).
5. Entry Mode Identification
-
Clearly identify whether the form is System Entry, User Entry, or
Both.
- Obtain explicit clarification from the manager.
-
If both modes are supported, test using system-generated and
user-entered data.
6. SAAS Model Compatibility
- Ensure Angular and API code are multi-tenant ready.
- Avoid hard-coded values.
7. ClientID Handling (Critical)
- ClientID is mandatory wherever applicable.
- Validate ClientID-based filtering in APIs.
- Prevent cross-client data leakage.
8. UI Design Compliance
-
Ensure proper layout, field grouping, label consistency,
localization, tab index, and readability.
9. Approval Workflow
- Raise approval request if configured.
10. Notification Support
- Raise notification if configured.
11. Tax Handling
- Apply tax if enabled.
12. Additional Charges Handling
- Apply additional charges if enabled.
13. Account Pre-Post
- Provide ledger preview before posting (if accounts enabled).
14. Account Post
- Post final ledger after approval if configured.
15. Receipt/Document Numbering
- Apply number series configuration, frequency, and scope.
16. Invoice/Document Template Mapping
- Assign and load template during Print/Preview.
17. Custom Control Support
-
Support client-specific extended attributes or custom popups if
required.
18. Preview Support
- Provide print/document preview before printing.
19. Extended DB
-
Support shortcut keys and extended DB operations where applicable.
20. Enter Key Navigation
- Implement fast entry/tab flow for speed input screens.
21. Control States
-
Mandatory/Optional/Visible/Hidden states based on transaction
control registry.
22. Currency & UOM - Rounding & Precision
- Apply location-based currency.
- Ensure rounding and display precision consistency.
- Apply UOM precision and rounding rules.
-
Restrict weight and amount input based on configured precision.
23. Cancellation Handling
- Check permissions and apply cancel logic.
24. Reprint Handling
- Check permission before reprint.
25. Report Dataset (DTO)
- Build DTO for reporting and queries.
26. Print Dataset (DTO)
- Build DTO for printing engine/templates.
27. Validation & Error Message Standardization
-
All messages must be localized using resource-based translation.
- No hardcoded messages in frontend.
28. Route Reuse Strategy
-
Implement route reuse (data: { reuse: true }) to prevent screen
reload and data loss.
29. Key Settings Verification
- Ensure screen behavior aligns with configured key settings.
30. Data Persistence Verification
- Verify correct table-level persistence.
31. Audit Table Verification
- Confirm audit entries are generated correctly.
32. Error Monitoring
- No browser console errors.
- No entries in admExceptionLog table.
33. Loop Optimization
- Avoid unnecessary or repeated loops.
34. Debug Cleanup
- Remove breakpoints and console.log statements.
35. Transaction Date Handling
- Use Business Date from local storage.
- Format using application-configured date pipe.
36. Shared Code Refactoring
- Move reusable code to shared components/utilities.
37. Code Cleanup
- Remove unnecessary declarations and imports.
38. XML Comments
- Update XML comments as per coding standards.
39. Code Organization Using Regions
-
Group lifecycle events, control events, functions, constants, and
imports using regions.
//#region Life Cycle Events
// ngOnInit, ngAfterViewInit, ngOnDestroy
//#endregion
//#region Control Events
// Dropdown, Textbox, Button events
//#endregion
- If the dependent screen/feature exists and is functional, manually configure required data through the UI.
- If the dependent feature is not yet developed or partially available, simulate using backend test data (DB insert/update).
- Create backend mock/test data in a controlled manner.
- Ensure data matches expected production scenarios.
- Clean up temporary data after testing if required.
- Immediately notify the reporting manager.
- Provide detailed information including module name, expected input, missing data, errors, and reproduction steps.
- Do not keep dependency issues pending silently.
- Do not wait for integration to report blockers.