# HG changeset patch # User Alain Mazy # Date 1783006394 -7200 # Node ID 5b8ee3b407b1504919b4d47546a6d68ee3b8c077 # Parent 0e6a65731bbc553cb66c14c3fe096ee75b9f7db7 Multitenant plugin: don't filter against SpecificCharacterSet diff -r 0e6a65731bbc -r 5b8ee3b407b1 OrthancServer/Plugins/Samples/MultitenantDicom/FindRequestHandler.cpp --- a/OrthancServer/Plugins/Samples/MultitenantDicom/FindRequestHandler.cpp Thu Jul 02 17:20:47 2026 +0200 +++ b/OrthancServer/Plugins/Samples/MultitenantDicom/FindRequestHandler.cpp Thu Jul 02 17:33:14 2026 +0200 @@ -27,6 +27,7 @@ #include "../../../../OrthancFramework/Sources/DicomParsing/FromDcmtkBridge.h" #include "../../../../OrthancFramework/Sources/OrthancException.h" +#include "../../../../OrthancFramework/Sources/Logging.h" #include "../Common/OrthancPluginCppWrapper.h" @@ -50,6 +51,11 @@ { std::string s; + if (*it == Orthanc::DICOM_TAG_SPECIFIC_CHARACTER_SET) + { + continue; // skip it since we don't want it to be a filter criteria + } + if (input.LookupStringValue(s, *it, false) && !s.empty()) { @@ -72,6 +78,8 @@ request["Level"] = EnumerationToString(PluginToolbox::ParseQueryRetrieveLevel(level)); request["Query"] = query; + // LOG(INFO) << request.toStyledString(); + Json::Value response; if (!OrthancPlugins::RestApiPost(response, "/tools/find", request, false) || response.type() != Json::arrayValue) @@ -79,6 +87,8 @@ throw Orthanc::OrthancException(Orthanc::ErrorCode_NetworkProtocol, "Invalid DICOM C-FIND request"); } + // LOG(INFO) << response.toStyledString(); + for (Json::Value::ArrayIndex i = 0; i < response.size(); i++) { if (response[i].type() != Json::objectValue ||