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:

  1. Progress bar (visual percentage complete)

  2. Status text (current operation)

  3. Time estimates (elapsed, remaining, total)

  4. Item counter (processed / total)

  5. Cancel button (abort operation)

  6. 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