view OrthancServer/Resources/Samples/Lua/AutoroutingConditional.lua @ 5669:f690568f0325

Fix C-Find queries not returning computed tags in very specific use-cases
author Alain Mazy <am@orthanc.team>
date Fri, 05 Jul 2024 19:18:23 +0200
parents d25f4c0fa160
children
line wrap: on
line source

function OnStoredInstance(instanceId, tags, metadata, origin)
   -- The "origin" is only available since Orthanc 0.9.4
   PrintRecursive(origin)

   -- Extract the value of the "PatientName" DICOM tag
   local patientName = string.lower(tags['PatientName'])

   if string.find(patientName, 'david') ~= nil then
      -- Only send patients whose name contains "David"
      Delete(SendToModality(instanceId, 'sample'))

   else
      -- Delete the patients that are not called "David"
      Delete(instanceId)
   end
end