- Data Not Loading in Tabs: pcProjectsEditChange closes inactive queries; ensure qryProjectMaterials.Open or qryProjectTasks.Open when switching tabs.
- Save Button Not Enabling: Set in AfterInsert events; ensure dataset state changes (dsInsert/Edit) trigger it.
- Copy Component Fails: qryCopyComponent may error on parameters (e.g., ComponentID invalid). Solution: Check ExecSQL result and new_id.
- Move Up/Down Not Working: MoveComponent/MoveProjectMaterial/MoveTask locate by id; fails if BOF/EOF. Solution: Refresh dataset post-move.
- Scheduling Errors: spScheduleProject.ExecProc throws if v_project_id invalid. Solution: Verify parameters; handle exceptions with MessageDlg.
- Grid Not Refreshing: qryComponents.AfterScroll refreshes materials if !cbFilterMaterials.Checked. Solution: Call RefreshMaterials manually.
- Notes Not Showing: cbShowNotes toggles viwMaterialsnote visibility. Solution: Set column.Visible in change handler.
- Deletion Confirmation Skipped: miComponentsDelete etc. check IsEmpty; add custom confirmations if needed.
- Total Calculations Wrong: qryUpdateTotal calls update_project function; ensure project_id param is set.
- Template Filter Issues: cbTemplatesPropertiesChange sets template_id param; reopen qryProjectHeader after change.
Troubleshooting
< 1 min read