diff --git a/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php b/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php
index ce1fc51f2eecf5b8f52282a2e691842721c6f28b..8ae9081bb09ee8868db054cd5469ad839ec0253e 100644
--- a/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php
+++ b/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php
@@ -2506,13 +2506,16 @@ trait SolrMarcFincTrait
      */
     public function getNumberOfPages()
     {
-        if ($data = $this->getMarcRecord()->getField('300')->getSubfield('a')->getData())
-        {
-            // Grab first occurance of a number
-            preg_match('/([1-9]\d*)/', $data, $matches);
-            if ($page = $matches[0])
+        if ($m300 = $this->getMarcRecord()->getField('300')) {
+            if ($m300a = $m300->getSubfield('a'))
             {
-                return (int)$page;
+                $data = $m300a->getData();
+                // Grab first occurance of a number
+                preg_match('/([1-9]\d*)/', $data, $matches);
+                if ($page = $matches[0])
+                {
+                    return (int)$page;
+                }
             }
         }
         return null;