diff --git a/nomen-est-omen/generating-course-data.lisp b/nomen-est-omen/generating-course-data.lisp
index adf2b1f5eef78edf355ba4ecfaa1d1b5117dc920..87d3de22d3cb4e3b87681bf51c02a3a7ed09d911 100644
--- a/nomen-est-omen/generating-course-data.lisp
+++ b/nomen-est-omen/generating-course-data.lisp
@@ -29,9 +29,11 @@
          (record (make-hash-table :test #'equal)))
     
     (dolist (key '(first second third fourth))
-      (let ((record-part (or (funcall key record-parts) "")))
-        (setf (gethash (getf config (intern (symbol-name key) "KEYWORD")) record)
-              record-part)))
+      (let ((record-part (or (funcall key record-parts) ""))
+            (config-value (getf config (intern (symbol-name key) "KEYWORD"))))
+        (when value
+          (setf (gethash config-value record)
+                record-part))))
     (setf record (ensure-matriculation-number-is-integer record))
     (setf record (complete-record record))))