/**
  * Read values by (partial) primary key
  * 
  * @param string $a_table
  * @param array $a_primary
  */
 public static function preloadByPrimary($a_table, array $a_primary)
 {
     global $ilDB;
     $where = self::buildPartialPrimaryWhere($a_primary);
     if (!$where) {
         return false;
     }
     self::$preloaded = array();
     foreach (array_keys(self::getTablesMap()) as $table) {
         $sql = "SELECT * FROM " . $a_table . "_" . $table . " WHERE " . $where;
         $set = $ilDB->query($sql);
         while ($row = $ilDB->fetchAssoc($set)) {
             self::$preloaded[$table][] = $row;
         }
     }
     return true;
 }