docs: public ClassInfoModel readClassInfo(PropertyOwner recordOwner, String className)
      {
          String strParamRecord = null;
          String strParamScreenType = null;
          String strParamMenu = null;
          String strParamHelp = null;
          
          if (className == null)
          {
              strParamRecord = recordOwner.getProperty(DBParams.RECORD);      // Display record
              className = recordOwner.getProperty(DBParams.SCREEN);      // Display screen
              strParamScreenType = recordOwner.getProperty(DBParams.COMMAND);     // Display record
              strParamMenu = recordOwner.getProperty(DBParams.MENU);      // Display record
              strParamHelp = recordOwner.getProperty(DBParams.HELP);      // Display record
          }
          
          if (className == null)
              className = DBConstants.BLANK;
          if ((className.length() == 0) || (className.equals("Screen")) || (className.equals("GridScreen")))
          {
              if (strParamRecord != null) if (strParamRecord.length() > 0)
                  className = strParamRecord;  // Use desc of record class if standard screen
          }
          
          try {
              this.setKeyArea(DBConstants.PRIMARY_KEY);
              if (className.lastIndexOf('.') != -1)
                  className = className.substring(className.lastIndexOf('.') + 1);
              this.getField(ClassInfo.CLASS_NAME).setString(className);
              boolean bSuccess = false;
              this.setKeyArea(ClassInfo.CLASS_NAME_KEY);
              if (className.length() > 0)
                  bSuccess = this.seek("=");
              if (!bSuccess)
              {   // Not found, use standard screen maintenance screen
                  if ((strParamMenu != null) && (strParamMenu.length() > 0))
                      this.getField(ClassInfo.CLASS_NAME).setString("MenuScreen");
                  else if ((strParamRecord != null) && (strParamRecord.length() > 0))
                  {
                      if ((strParamScreenType != null) && (strParamScreenType.length() > 0) && (strParamScreenType.equalsIgnoreCase(ThinMenuConstants.FORM)))
                          this.getField(ClassInfo.CLASS_NAME).setString("Screen");
                      else
                          this.getField(ClassInfo.CLASS_NAME).setString("GridScreen");
                  }
                  else
                      this.getField(ClassInfo.CLASS_NAME).setString(strParamHelp);
                  if (!bSuccess)
                          bSuccess = this.seek("=");
              }
          } catch (DBException e) {
              e.printStackTrace();
              return null;
          }
          return this;
      }