Cannot query remote AE's
I get the following error when I try to query remote AE's. find() failed: error = Invalid Dataset Type: group = 0 element = 120 I've tried it with Efilm 1.9.4 and a Konica workstation. Both get the same response. I can send and recieve from the workstations but I can only send from PACSONE. Ping works on both ends.
Are you sure the remote AE supports C-FIND as a SCP?
The error means the remote has sent the Message ID Responded To tag where a DataSet Type tag is expected, thus the protocol error.
You can add the following line to the beginning of the function recvCmdResponse() at line 1084 of the script dicom.php to dump the content of the C-FIND-RSP returned by this remote AE:
pacsone_dump($data);
You can either post the output of the above dump here, or send it to: mailto:pacsone@pacsone.net
The error means the remote has sent the Message ID Responded To tag where a DataSet Type tag is expected, thus the protocol error.
You can add the following line to the beginning of the function recvCmdResponse() at line 1084 of the script dicom.php to dump the content of the C-FIND-RSP returned by this remote AE:
pacsone_dump($data);
You can either post the output of the above dump here, or send it to: mailto:pacsone@pacsone.net
Here's the dump.
pacsone_dump($data); 0 0 0 0 4 0 0 0 60 0 0 0 0 0 2 0
1c 0 0 0 31 2e 32 2e 38 34 30 2e 31 30 30 30
38 2e 35 2e 31 2e 34 2e 31 2e 32 2e 31 2e 31 0
0 0 0 1 2 0 0 0 20 80 0 0 10 1 2 0
0 0 1 0 0 0 20 1 2 0 0 0 1 0 0 0
0 7 2 0 0 0 0 0 0 0 0 8 2 0 0 0
1 1 0 0 0 9 2 0 0 0 0 0
find() failed: error = Invalid Dataset Type: group = 0 element = 120
Thanks,
pacsone_dump($data); 0 0 0 0 4 0 0 0 60 0 0 0 0 0 2 0
1c 0 0 0 31 2e 32 2e 38 34 30 2e 31 30 30 30
38 2e 35 2e 31 2e 34 2e 31 2e 32 2e 31 2e 31 0
0 0 0 1 2 0 0 0 20 80 0 0 10 1 2 0
0 0 1 0 0 0 20 1 2 0 0 0 1 0 0 0
0 7 2 0 0 0 0 0 0 0 0 8 2 0 0 0
1 1 0 0 0 9 2 0 0 0 0 0
find() failed: error = Invalid Dataset Type: group = 0 element = 120
Thanks,
The first dump was from querying to EFILM. This is from Konica.
pacsone_dump($data); 0 0 0 0 4 0 0 0 60 0 0 0 0 0 2 0
1c 0 0 0 31 2e 32 2e 38 34 30 2e 31 30 30 30
38 2e 35 2e 31 2e 34 2e 31 2e 32 2e 31 2e 31 0
0 0 0 1 2 0 0 0 20 80 0 0 10 1 2 0
0 0 1 0 0 0 20 1 2 0 0 0 1 0 0 0
0 7 2 0 0 0 0 0 0 0 0 8 2 0 0 0
1 1 0 0 0 9 2 0 0 0 0 0
find() failed: error = Invalid Dataset Type: group = 0 element = 120
pacsone_dump($data); 0 0 0 0 4 0 0 0 60 0 0 0 0 0 2 0
1c 0 0 0 31 2e 32 2e 38 34 30 2e 31 30 30 30
38 2e 35 2e 31 2e 34 2e 31 2e 32 2e 31 2e 31 0
0 0 0 1 2 0 0 0 20 80 0 0 10 1 2 0
0 0 1 0 0 0 20 1 2 0 0 0 1 0 0 0
0 7 2 0 0 0 0 0 0 0 0 8 2 0 0 0
1 1 0 0 0 9 2 0 0 0 0 0
find() failed: error = Invalid Dataset Type: group = 0 element = 120
According to this dumped data, this remote C-FIND SCP was inserting two tags that should not be present in a C-FIND-RSP:
Message ID (0000,0110)
Priority (0000,0700)
Both of them shall be present in a C-FIND-RQ but not in a C-FIND-RSP, according to Page 34 in Part 4 of the Dicom 3.0 Protocol Standard specifications. So you should bring this issue up with the vendor of the remote AE as they're not conforming to the standard.
It's actually not surprising that eFilm clients can query eFilm workstations, even though they're not conforming to the standard. We can also make PacsOne to be tolerant of the above non-conforming tags, but that would make the standardization efforts meaningless.
Message ID (0000,0110)
Priority (0000,0700)
Both of them shall be present in a C-FIND-RQ but not in a C-FIND-RSP, according to Page 34 in Part 4 of the Dicom 3.0 Protocol Standard specifications. So you should bring this issue up with the vendor of the remote AE as they're not conforming to the standard.
It's actually not surprising that eFilm clients can query eFilm workstations, even though they're not conforming to the standard. We can also make PacsOne to be tolerant of the above non-conforming tags, but that would make the standardization efforts meaningless.