docs: public boolean setMainKey(boolean bDisplayOption, Boolean boolSetModified, boolean bSetIfModified)
      {
          super.setMainKey(bDisplayOption, boolSetModified, bSetIfModified);
          boolean bNonNulls = false;  // Default to yes, all keys are null.
          if (Boolean.TRUE.equals(boolSetModified))
          {   // Only restore the key value when setting the starting or ending key, not when adding a record.
              KeyArea keyArea = this.getOwner().getKeyArea(-1);
              m_buffer.resetPosition();
              keyArea.reverseKeyBuffer(m_buffer, DBConstants.FILE_KEY_AREA);
              for (int i = 0; i < keyArea.getKeyFields(); i++)
              {
                  keyArea.getField(i).setModified(false);
                  if ((i <= m_iLastModifiedToSet)
                      || (m_iLastModifiedToSet == -1))
                  {
                      keyArea.getField(i).setModified(true);
                      if (!keyArea.getField(i).isNull())
                          bNonNulls = true;   // Non null.
                  }
              }
          }
          return bNonNulls;
      }