Записи UPS, обработка которых завершилась неудачей, могут быть автоматически перепланированы. Если достигнуто
максимальное количество попыток перепланирования или если автоматическое перепланирование не настроено вовсе, то
повторные попытки обработки неудачных записей UPS больше не выполняются, и их статус устанавливается в CANCELED.
В этих двух случаях, если требуется активно предпринять соответствующие действия над такими неудачными записями UPS, можно настроить эту функцию, которая создаёт новые записи UPS, ссылающиеся на предыдущие неудачные записи обработки UPS (которые больше не повторно обрабатываются).
SOP Instance UID (0008,0018) желаемого UPS Template Workitem из ответа search UPS template workitem
и используйте это значение в обязательном поле UPS processor Create UPS on Cancel из преднастроенного списка
UPS Processing Rule и нажмите Save.В целях тестирования этой функции ниже описан очень простой вариант использования с неудачной обработкой записей UPS применительно к функции Export received DICOM instances. Настройте всё, кроме назначения инструмента storescp.
Если для этой преднастроенной UPS Processing Rule DICOM_EXPORT не настроено автоматическое перепланирование или
если достигнуто максимальное количество попыток перепланирования, то при неудаче обработки записи UPS будет создана
новая запись UPS со статусом SCHEDULED.
Сохраните исследования в архив с помощью инструмента storescu.
storescu -c <AET>@<archive-host>:<dicom-port> /path-to-study.dcm
Проверьте на странице Navigation -> вкладке UWL созданные записи UPS. Проверьте UID SOP-экземпляров в
Input Information Sequence созданных записей UPS.
Procedure Step State записи UPS (изменение с SCHEDULED на CANCELED).Replaced Procedure Step Sequence.


2020-09-02 16:42:01,560 INFO [org.dcm4chee.arc.ups.impl.UPSServiceEJB] (EE-ManagedExecutorService-default-Thread-143) DCM4CHEE<-STORESCU(2): Create UPS[pk=309167, uid=2.25.231406933419414761065920802553045330855, state=SCHEDULED]
...................
2020-09-02 16:43:08,975 INFO [org.dcm4chee.arc.ups.impl.UPSServiceEJB] (EE-ManagedExecutorService-default-Thread-151) DCM4CHEE: Update UPS[pk=309167, uid=2.25.231406933419414761065920802553045330855, state=IN PROGRESS]
...................
2020-09-02 16:43:09,049 INFO [org.dcm4che3.net.Connection] (EE-ManagedExecutorService-default-Thread-151) Initiate connection from /0.0.0.0:0 to localhost:11115
2020-09-02 16:43:09,050 WARN [org.dcm4chee.arc.ups.process.AbstractUPSProcessor] (EE-ManagedExecutorService-default-Thread-151) Failed to process UPS[uid=2.25.231406933419414761065920802553045330855]:
: org.dcm4chee.arc.ups.process.UPSProcessorException: org.dcm4che3.net.service.DicomServiceException: java.net.ConnectException: Connection refused
at deployment.dcm4chee-arc-ear-5.22.5-psql.ear//org.dcm4chee.arc.ups.process.AbstractUPSProcessor.process(AbstractUPSProcessor.java:142)
at deployment.dcm4chee-arc-ear-5.22.5-psql.ear//org.dcm4chee.arc.ups.process.impl.UPSProcessingScheduler$ProcessWorkitems.processMatching(UPSProcessingScheduler.java:207)
at deployment.dcm4chee-arc-ear-5.22.5-psql.ear//org.dcm4chee.arc.ups.process.impl.UPSProcessingScheduler$ProcessWorkitems.run(UPSProcessingScheduler.java:172)
at org.jboss.as.ee@19.0.0.Final//org.jboss.as.ee.concurrent.ControlPointUtils$ControlledRunnable.run(ControlPointUtils.java:105)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at org.glassfish.javax.enterprise.concurrent//org.glassfish.enterprise.concurrent.internal.ManagedFutureTask.run(ManagedFutureTask.java:117)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:830)
at org.glassfish.javax.enterprise.concurrent//org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl$ManagedThread.run(ManagedThreadFactoryImpl.java:227)
Caused by: org.dcm4che3.net.service.DicomServiceException: java.net.ConnectException: Connection refused
at deployment.dcm4chee-arc-ear-5.22.5-psql.ear//org.dcm4chee.arc.store.scu.impl.CStoreSCUImpl.openAssociation(CStoreSCUImpl.java:103)
at deployment.dcm4chee-arc-ear-5.22.5-psql.ear//org.dcm4chee.arc.store.scu.impl.CStoreSCUImpl.openMultipleAssocations(CStoreSCUImpl.java:190)
at deployment.dcm4chee-arc-ear-5.22.5-psql.ear//org.dcm4chee.arc.store.scu.impl.CStoreSCUImpl.newRetrieveTaskSTORE(CStoreSCUImpl.java:176)
at deployment.dcm4chee-arc-ear-5.22.5-psql.ear//org.dcm4chee.arc.store.scu.impl.CStoreSCUImpl$Proxy$_$$_WeldClientProxy.newRetrieveTaskSTORE(Unknown Source)
at deployment.dcm4chee-arc-ear-5.22.5-psql.ear//org.dcm4chee.arc.ups.storescu.UPSStoreSCU.processA(UPSStoreSCU.java:88)
at deployment.dcm4chee-arc-ear-5.22.5-psql.ear//org.dcm4chee.arc.ups.process.AbstractUPSProcessor.process(AbstractUPSProcessor.java:140)
... 10 more
Caused by: java.net.ConnectException: Connection refused
at java.base/sun.nio.ch.Net.connect0(Native Method)
at java.base/sun.nio.ch.Net.connect(Net.java:493)
at java.base/sun.nio.ch.Net.connect(Net.java:482)
at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:339)
at java.base/java.net.Socket.connect(Socket.java:603)
at org.dcm4che.net@5.22.5//org.dcm4che3.net.Connection.connect(Connection.java:1047)
at org.dcm4che.net@5.22.5//org.dcm4che3.net.ApplicationEntity.connect(ApplicationEntity.java:629)
at org.dcm4che.net@5.22.5//org.dcm4che3.net.ApplicationEntity.connect(ApplicationEntity.java:677)
at deployment.dcm4chee-arc-ear-5.22.5-psql.ear//org.dcm4chee.arc.store.scu.impl.CStoreSCUImpl.openAssociation(CStoreSCUImpl.java:90)
... 15 more
...................
2020-09-02 16:43:09,081 INFO [org.dcm4chee.arc.ups.impl.UPSServiceEJB] (EE-ManagedExecutorService-default-Thread-151) DCM4CHEE: Update UPS[pk=309167, uid=2.25.231406933419414761065920802553045330855, state=CANCELED]
...................
2020-09-02 16:43:09,060 INFO [org.dcm4chee.arc.ups.impl.UPSServiceEJB] (EE-ManagedExecutorService-default-Thread-151) DCM4CHEE: Create UPS[pk=309168, uid=2.25.162456303411205275260854693124956179625, state=SCHEDULED]
...................