Use a DICOMFindMove node to query a remote SCP for patients, studies, series, and images, and to move the results of a query to an application entity such as a DICOMInput node.
The DICOMFindMove node is a Service Class User (SCU) for the Query and Retrieve service classes. The node has two closely related capabilities. The first capability is to query a remote Service Class Provider (SCP) for patients, studies, series, and images by using a DICOM C-FIND command. The search criteria are specified in an XML message that is propagated to the input terminal of the node. The result of the query is propagated to the output terminal of the node. The second capability of the DICOMFindMove node is to move the results of a query to an application entity by using a DICOM C-MOVE command. The destination of a move command can be a DICOMInput node that is configured in IBM® Integration Bus, a DICOM Picture Archiving Communications System (PACS), or any other DICOM SCP.
The DICOMFindMove node is contained in the Healthcare drawer of the message flow node palette, and is represented in the IBM Integration Toolkit by the following icon:
An example of how to use the DICOMFindMove node is shown in the Healthcare: Web service to DICOM built-in pattern in the Healthcare category in the Patterns Explorer view.
The query and move capabilities are combined in one node because they are closely related in DICOM. A move command is logically a find command followed by a copy of the results to a nominated destination. When the move operations complete, a results message is propagated to the output terminal of the DICOMFindMove node. The results message includes details of the success or failure of the move command. The results message contains a count of completed transfers, warnings, failures, error information, and a status field. If the status field contains any value other than zero, the move operation did not complete successfully.
The DICOM standard defines two types of query that are known as roots. These roots, patient and study, are used by the DICOMFindMove node to identify and retrieve data.
For each root and level combination, the DICOMFindMove node defines the supported search attributes and a minimum set of attributes that the SCP should return. For information about the supported attributes, see Patient query root and Study query root.
The returned attributes are propagated by the node in the results messages from the output terminal. A query can return many results but these results are propagated as a single results message from the DICOMFindMove node. Vendors can support additional attributes to use as search criteria in the XML query message. The DICOMFindMove node allows these additional attributes to be configured in the XML query message, but they are not documented by the node (because they are vendor-specific). The DICOM standard requires that all the search attributes that are provided are also returned in responses. For information about the schema for the query and response messages, see, DICOM message schema.
<DICOM:FindMove xmins:DICOM="http://com.ibm.healthcare/DICOM">
<QueryRoot>STUDY</QueryRoot>
<QueryLevel>STUDY</Querylevel>
<MoveDestination>BROKERAE</MoveDestination>
<OperationPriority>NORMAL</OperationPriority>
<Match>
<Attribute Tag="PatientName">FEROVIX</Attribute>
<Attribute Tag="AccessionNumber">1210490</Attribute>
</Match>
<Return>
</Return>
</DICOM:FindMove>
The following is an example of a results
message returned to the DICOMFindMove node. For details
of the DICOM tags, see: DICOM Tags.<DICOM:Results xmins:DICOM="http://com.ibm.healthcare/DICOM">
<DICOM>
<Attribute Tag="00080005"VR="CS">ISO_IR 100</Attribute>
<Attribute Tag="00080016"VR="UI">1.2.840.10008.5.1.4.1.1.2</Attribute>
<Attribute Tag="00080018"VR="UI">1.3.12.2.1107.5.1.4.54203.30000004093016410718700003864</Attribute>
<Attribute Tag="00080052"VR="CS">IMAGE</Attribute>
<Attribute Tag="00080054"VR="AE">PACS</Attribute>
<Attribute Tag="00080056"VR="CS">ONLINE</Attribute>
<Attribute Tag="0020000D"VR="UI">1.3.12.2.1107.5.1.4.54203.30000004093013443132800000021</Attribute>
<Attribute Tag="0020000E"VR="UI">1.3.12.2.1107.5.1.4.54203.30000004093016410718700003676</Attribute>
<Attribute Tag="00200013"VR="IS">188</Attribute>
<Attribute Tag="00880130"VR="SH"/>
<Attribute Tag="00880140"VR="UI"/>
<MoveResults>
<Completed>1</Completed>
<Failed>0</Failed>
<Warnings>0</Warnings>
<Status>0</Status>
<ErrorID>0</ErrorID>
<ErrorComment/>
</MoveResults>
</DICOM>
</DICOM:Results>
Condition | Description | Type | Example | Recommendations |
---|---|---|---|---|
Start query retrieve | A DICOM query
is being prepared for sending to a remote application entity. Note: A DICOM query command is known
in DICOM as a C-FIND
command.
|
Information BIP12068 | Starting DICOM C-FIND operation (BROKERAE, REMOTEAE1, hostname:11112) | No action is required |
End query retrieve | The DICOM query (C-FIND command) completed and any results are ready for processing. The result messages are converted into XML and then propagated to the containing message flow. | Information BIP12068 | Finished DICOM C-FIND operation (BROKERAE, REMOTEAE1, hostname:11112) | No action is required |
Query retrieve failed | The DICOM query failed (C-FIND command). An error is produced by the DICOMFindMove node. | Error BIP12070 | Failed DICOM C-FIND operation (BROKERAE, REMOTEAE1, hostname:11112) | Check network connectivity between the integration node and the remote SCP. Check that the query message is correct according to the study root and level. Check that the query message contains the requisite key fields for the specified query root and level. Check that the application entity names and port numbers exactly match with the remote SCP. Check that the remote SCP is online and ready to accept connections and data transfers. Check the exception details for more information about the error. |
Start move | A DICOM image
is being copied to a destination application entity. Note: This operation
is known in DICOM as
a C-MOVE command.
|
Information BIP12068 | Starting DICOM C-Move operation(BROKERAE,
REMOTEAE1, REMOTEAE2, 1, 5) where: 1 is the index of the current DICOM image. 5 is the total number of DICOM images to be moved. |
No action is required |
End move | A DICOM C-MOVE command completed
successfully. Note: If the destination of the C-MOVE is an integration node, this activity log entry does not guarantee that the DICOM images were processed.
|
Information BIP12068 | Finished DICOM C-Move operation(BROKERAE,
REMOTEAE1, REMOTEAE2, 1, 5) where: 1 is the index of the current DICOM image. 5 is the total number of DICOM images to be moved. |
No action is required |
Move failed | A DICOM move (C-MOVE command) failed. An error is produced by the DICOMFindMove node. | Error BIP12070 | Warnings or failures reported from DICOM C-MOVE operation (BROKERAE,REMOTEAE1,REMOTEAE2,hostname:11112) | Check network connectivity between the integration node and the remote SCP. Check that the move destination is valid and configured on the remote SCP. Check that the data that is being moved can be accepted by the move destination SCP. Check that the query message is correct according to the study root and level. Check that the query message contains the required key fields for the specified query root and level. Check that the application entity names and port numbers exactly match with the remote SCP. Check that the remote SCP is online and ready to accept connections and data transfers. Check the exception details for more information about the error. |
When you have added an instance of a DICOMFindMove node into a message flow, you can configure it.
All mandatory properties for which you must enter a value (properties that do not have a default value defined) are marked with an asterisk.
Terminal | Description |
---|---|
In | The input terminal that accepts a message for processing by the node. |
Out | The output terminal to which a results message is routed if a query is successful. |
No match | The output terminal to which a results message is routed if a query is successful but no results are returned. The message that is propagated from this terminal is a regular results message but with no DICOM results elements contained in it. |
The following tables describe the node properties. The column headed M indicates whether the property is mandatory (marked with an asterisk if you must enter a value when no default is defined); the column headed C indicates whether the property is configurable (you can change the value when you add the message flow to the BAR file to deploy it).
Property | M | C | Default | Description |
---|---|---|---|---|
Node name | Yes | No | DICOMFindMove | The name of the node. |
Short description | No | No | A brief description of the node. | |
Long description | No | No | Text that describes the purpose of the node in the message flow. |
Property | M | C | Default | Description |
---|---|---|---|---|
Connection details | Yes | Yes | localhost:2222 | The host name and port for the application entity SCP to which the node connects. |
Application entity title (AET) | Yes | Yes | BROKERAE | The name for this DICOM SCU endpoint. A text string of up to 16 characters that allows application entities to be identified when they connect. |
Remote application entity title (AET) | Yes | Yes | REMOTEAE | The name of the DICOM SCP endpoint to which the node connects and sends queries. |
Property | M | C | Default | Description |
---|---|---|---|---|
Cancel after this many responses | No | Yes | 99 | The node stops receiving results after this many response messages have been received. This setting prevents large queries from monopolizing the SCP. |
Connection timeout (seconds) | Yes | Yes | 60 | The length of time that the node waits for a connection to be established with the SCP. |
Offer only implicit VR little endian transfer syntax | No | Yes | Not selected | Specifies whether the node should connect to the SCP by using the DICOM default of implicit VR little endian encoding. |
Operation priority | Yes | Yes | NORMAL | The priority for the transfer of the image to the SCP. It is not mandatory that the receiving application acts on this priority. |