4.7 KiB
Statistics Export Script - Fix Summary
What I Found
I analyzed your Statistics export script and found multiple critical issues preventing proper export for several tabs. I've created:
EXPORT_ISSUES_ANALYSIS.md- Detailed technical analysis of all issuesexport_script_CORRECTED.py- Fixed version of your script
Quick Summary of Issues
✅ Working Tabs (8/13)
- Scanner Details (tab 1)
- Sorter Summary (tab 2)
- Sorter Details (tab 3) - has minor typo but works
- Lane Details (tab 4)
- Hourly Induct (tab 5)
- Hourly Scanner (tab 6)
- Hourly Sorter Summary (tab 7)
- Hourly Sorter Details (tab 8)
❌ Broken Tabs (5/13)
-
Induct Details (tab 0) - CRITICAL
- Query doesn't include single/double carrier fields
- Script tries to access non-existent fields
- FIX: Simplified to only export Total fields (carrier breakdown removed)
-
Hourly Lane (tab 9) - MODERATE
- Wrong field names for filtered results
- FIX: Updated to use correct field names
-
Lane Total Full (tab 10) - CRITICAL
- Script had Dumper Cycles logic instead of Total Full logic
- Completely wrong data structure
- FIX: Rewrote entire section with correct fields
-
Jam by Area (tab 11) - MINOR
- Case sensitivity issue:
Total_Jamshould beTotal_jam - FIX: Changed to lowercase
- Case sensitivity issue:
-
Dumper cycles (tab 12) - NEEDS VERIFICATION
- Wrong number of lanes (3 vs 8)
- Wrong lane names (ULGL vs ULC)
- FIX: Updated to ULC1-8, but needs testing
How to Apply the Fix
Option 1: Replace Entire Script (Recommended)
Copy the contents of export_script_CORRECTED.py and replace your current export script.
Option 2: Manual Fixes
If you prefer to fix the original script manually, apply these changes:
Fix 1: Induct Details (Tab 0) - Remove Carrier Fields
Replace lines 15-40 with simplified version that only exports Total fields (see corrected script).
Fix 2: Sorter Details (Tab 3) - Fix Typo
Line ~155 (in else block):
# WRONG:
data.append([..., result['sorted_count'], result['sorted_count'], ...])
# CORRECT:
data.append([..., result['sorted_count'], result['assigned_count'], ...])
Fix 3: Hourly Lane (Tab 9) - Fix Field Names
Replace the filtered results section (lines ~264-280) to use the same field structure as unfiltered data.
Fix 4: Lane Total Full (Tab 10) - Complete Rewrite
Replace lines ~285-310 with:
headers = ["Lane", "Total (#/% /pph)", "DestFull (#/% /pph)"]
# Access: result['Lane'], result['Total_count'], result['DestFull_count']
Fix 5: Jam by Area (Tab 11) - Fix Case
Change result['Total_Jam'] to result['Total_jam'] (lowercase 'j')
Fix 6: Dumper Cycles (Tab 12) - Update Lane Names
Change from ULGL1/2/3 to ULC1-8 (8 lanes total)
Important Notes
Induct Details - Missing Carrier Data
The Statistics/Induct Details query does not return single/double carrier data. To restore this functionality:
Option A: Update the query to include carrier fields (use TestQ/query.sql as template)
Option B: Keep the simplified version (recommended for now)
Dumper Cycles - Needs Verification
The Dumper Cycles fix is based on the view configuration, but the actual query field names need verification:
- Check if fields are
ulc1,ulc2, etc. orCycles of ULC1,Cycles of ULC2, etc. - Test the export and adjust if needed
Data Sources Not in Statistics Folder
- Jam Area: Uses query
Jam_Area/Jam(different project folder) - Dumper Cycles: Uses queries
Dumper/Dumper Lane Count/Percent/Rate(different project folder)
Testing Checklist
After applying the fix, test each tab:
- Tab 0: Induct Details (simplified - no carrier breakdown)
- Tab 1: Scanner Details (should work)
- Tab 2: Sorter Summary (should work)
- Tab 3: Sorter Details (typo fixed)
- Tab 4: Lane Details (should work)
- Tab 5: Hourly Induct (should work)
- Tab 6: Hourly Scanner (should work)
- Tab 7: Hourly Sorter Summary (should work)
- Tab 8: Hourly Sorter Details (should work)
- Tab 9: Hourly Lane (field names fixed)
- Tab 10: Lane Total Full (completely rewritten)
- Tab 11: Jam by Area (case fixed)
- Tab 12: Dumper Cycles (needs verification)
Next Steps
- Review the corrected script (
export_script_CORRECTED.py) - Apply the fix (replace your current script)
- Test each tab's export functionality
- If Dumper Cycles fails, check the actual query field names and adjust
- If you need carrier breakdown in Induct Details, update the query first
Need Help?
- See
EXPORT_ISSUES_ANALYSIS.mdfor detailed technical analysis - Check the inline comments in
export_script_CORRECTED.pyfor specific changes - Test with Count mode first, then Percentage and Rate modes