diff --git a/include/class_templateHandling.inc b/include/class_templateHandling.inc
index 1ccf38406a0e87ee8567d0c0391d082408c22144..6da06c3723f712f8778127a1dec9e7bf3e2086b2 100644
--- a/include/class_templateHandling.inc
+++ b/include/class_templateHandling.inc
@@ -246,6 +246,13 @@ class templateHandling
       $ldap->cd($config->current['BASE']);
       /* Return the first found unique value */
       foreach ($generator as $value) {
+        if (class_available('archivedObject')) {
+          $filter = archivedObject::buildUniqueSearchFilter($unique, $value);
+          $ldap->search($filter, ['dn']);
+          if ($ldap->count() > 0) {
+            continue;
+          }
+        }
         $filter = '('.ldap_escape_f($unique).'='.ldap_escape_f($value).')';
         $ldap->search($filter, ['dn']);
         if ($ldap->count() == 0) {