docs: public final BaseTable makeTable(Record record)
      {
          BaseTable table = this.doMakeTable(record);
          
          if (DBConstants.TRUE.equalsIgnoreCase(this.getProperty(DBConstants.BASE_TABLE_ONLY)))
          	return this.returnBaseTable(table);
          int iRawDBType = (record.getDatabaseType() & DBConstants.TABLE_TYPE_MASK);
          if ((iRawDBType == DBConstants.LOCAL)
                  || (iRawDBType == DBConstants.REMOTE) || (iRawDBType == DBConstants.TABLE))
              if ((this.getMasterSlave() & RecordOwner.SLAVE) == RecordOwner.SLAVE) // Do this at the server only
          {
              if ((record.getDatabaseType() & DBConstants.LOCALIZABLE) == DBConstants.LOCALIZABLE)
              {
                  m_databaseLocale = this.makeDBLocale(record, m_databaseLocale); // Check the local database to make sure it is correct
                  if (m_databaseLocale != this)
                      table = this.makeResourceTable(record, table, m_databaseLocale, false);   // Add the locale capability if it exists
              }
              if (m_databaseBase != null)
                  if ((record.getDatabaseType() & DBConstants.HIERARCHICAL) == DBConstants.HIERARCHICAL)
                      table = this.makeResourceTable(record, table, m_databaseBase, true);   // Add the base database if it exists
          }
          return table;
      }