process-dcl.md — Process Status Dialog¶
File: process.dcl
Version: v3.60
Category: Dialog Definitions
Size: 5.5 KB (167 lines)
Note
Operation Progress Tracking
Display progress during long-running operations including batch processing, drawing generation, and database operations with time estimates and cancel capability.
Functional Purpose¶
Process Status - Shows operation progress for time-consuming tasks providing user feedback, estimated completion time, and ability to cancel if needed.
Key Functions:
Progress bar (visual percentage complete)
Status text (current operation)
Time estimates (elapsed, remaining, total)
Item counter (processed / total)
Cancel button (abort operation)
Error summary (issues during processing)
Typical Workflow¶
1. User initiates batch operation:
"Generate drawings for 100 panels"
2. process-dcl opens automatically
3. Display shows:
??????????????????????????????????????
? Generating Panel Drawings ?
? ?
? Progress: ????????????????? 45% ?
? ?
? Panel P-045 of 100 ?
? Current: Creating elevation view ?
? ?
? Elapsed: 2:15 ?
? Remaining: ~2:45 ?
? Total: ~5:00 ?
? ?
? [Cancel] ?
??????????????????????????????????????
4. User can:
• Watch progress
• See current panel being processed
• Cancel if needed (urgent change)
5. When complete:
"? Complete! 100 panels generated in 4:58"
Control Semantics¶
Title:
proc_title- Operation name:“Generating Drawings”
“Batch Processing Panels”
“Exporting to PDF”
“Database Update”
Progress Bar:
proc_bar- Visual progress indicator:0-100% (filled portion)
Color: Blue (processing), Green (complete), Red (error)
Status Display:
proc_status- Current activity text:“Panel P-045: Creating elevation”
“Panel P-045: Adding dimensions”
“Panel P-045: Generating PDF”
proc_item- Item counter:“45 of 100” (current / total)
“Processing item 45”
Time Display:
proc_elapsed- Time elapsed (MM:SS)proc_remain- Estimated time remaining (~MM:SS)proc_total- Estimated total time (~MM:SS)
Actions:
proc_cancel- Cancel button (abort operation)proc_pause- Pause button (if supported)
Progress Calculation¶
Time Estimation¶
Algorithm:
Items completed: 45
Total items: 100
Elapsed time: 2:15 (135 seconds)
Average time per item:
135 sec / 45 items = 3 sec/item
Remaining items: 100 - 45 = 55
Estimated remaining:
55 items × 3 sec/item = 165 sec = 2:45
Total estimate:
135 + 165 = 300 sec = 5:00
Updates continuously as processing proceeds
Operation Types¶
Drawing Generation¶
Operation: Generate 100 panel drawings
Steps per panel:
1. Validate configuration (0.5 sec)
2. Create elevation view (1.0 sec)
3. Create sections (1.5 sec)
4. Add dimensions (0.5 sec)
5. Add notes (0.5 sec)
6. Save DWG file (0.5 sec)
7. Plot to PDF (1.0 sec)
Total: ~5.5 sec/panel
100 panels × 5.5 sec = 550 sec = 9:10 total
Batch Update¶
Operation: Renumber panels P-101 to P-201
Steps per panel:
1. Read panel data (0.1 sec)
2. Update panel number (0.1 sec)
3. Update drawing title (0.1 sec)
4. Update references (0.2 sec)
5. Save panel data (0.1 sec)
Total: ~0.6 sec/panel
100 panels × 0.6 sec = 60 sec = 1:00 total
Fast operation!
Export Operation¶
Operation: Export all panels to CSV
Steps per panel:
1. Read panel configuration (0.2 sec)
2. Calculate quantities (0.5 sec)
3. Format data (0.1 sec)
4. Write to CSV (0.1 sec)
Total: ~0.9 sec/panel
100 panels × 0.9 sec = 90 sec = 1:30 total
Cancel Handling¶
Graceful Cancellation¶
User clicks [Cancel]:
1. Dialog displays: "Cancelling..."
2. Current operation completes (don't leave partial)
3. Cleanup operations (close files, etc.)
4. Summary displayed:
"Cancelled after 45 of 100 panels
45 complete, 55 not processed
Elapsed: 2:15"
5. User can:
• Review completed panels
• Resume later (if supported)
• Start over
Error Handling¶
Error During Processing¶
Processing panel P-067:
? ERROR: Missing reinforcement data
Options:
1. Skip panel (continue with remaining)
2. Fix and retry (pause, fix, resume)
3. Cancel operation
User selects: Skip
Process continues:
Panel P-067: ?? Skipped (error)
Panel P-068: ? Complete
...
Final summary:
100 panels processed
Success: 98
Errors: 1 (P-067)
Warnings: 3
Review error log: [View]
Integration¶
Called By:
Batch operations (automatic)
Long-running tasks (>5 seconds)
Background processes
Updates:
Real-time progress (every item)
Time estimates (every 10 items)
Status text (every step)
Returns:
Success count
Error list
Warnings
Total time
Best Practices¶
For Operations:
? Show process dialog if >5 seconds
? Update progress frequently (responsive feel)
? Allow cancel (user control)
? Accurate time estimates (user planning)
For Users:
? Let long operations complete (don’t cancel unless necessary)
? Review error summary (fix issues)
? Note time estimates (plan work)
Performance:
? Batch operations save time (vs manual)
? 100 panels in 10 minutes (vs 25 hours manual!)
Documentation Metadata¶
Enhancement Status: ? COMPREHENSIVE - ENHANCED [42/42]
End of Document