edi_queue_oca
Integrate EDI exchange workflows with queue jobs so records are processed asynchronously using configurable routing and retry rules.
Key Features
- edi.exchange.record: Exchange generate, send, receive, and process actions are transparently executed via queue jobs that inherit the exchange type’s channel, priority, and identity settings to prevent duplicate jobs.
- edi.exchange.record: Smart button shows the number of related queue jobs and opens a filtered list with cleaned context so EDI users can review background tasks.
- edi.exchange.record: Generate-and-send chaining schedules the generation job and, on completion, immediately enqueues a maximum-priority send job.
- edi.exchange.type: Additional fields let each exchange type define the queue job channel and priority that should handle its records.
- queue.job.channel: Dedicated edi and edi_exchange channels segregate EDI work from other queue traffic for better routing.
- queue.job.function: Preconfigured job functions bind exchange record and backend methods to the EDI exchange channel for consistent scheduling.
- queue.job: EDI user group receives read access to queue jobs so they can monitor processing without broader permissions.
- edi.backend: Backend logic treats IOError and OSError as retryable and leverages RetryableJobError to automatically reschedule transient failures.