public function assemble()
    {
        $fields  = $this->getPart(Kwf_Db_Table_Select::COLUMNS);
        $primary  = $this->_table->getTableName();
        $schema  = $this->_table->getSchemaName();


        if (count($this->_parts[self::UNION]) == 0) {

            // If no fields are specified we assume all fields from primary table
            if (!count($fields)) {
                $this->from($primary, self::SQL_WILDCARD, $schema);
                $fields = $this->getPart(Kwf_Db_Table_Select::COLUMNS);
            }

            $from = $this->getPart(Kwf_Db_Table_Select::FROM);

            if ($this->_integrityCheck !== false) {
                foreach ($fields as $columnEntry) {
                    list($table, $column) = $columnEntry;

                    // Check each column to ensure it only references the primary table
                    if ($column) {
                        if (!isset($from[$table]) || $from[$table]['tableName'] != $primary) {
                            throw new Kwf_Exception('Select query cannot join with another table');
                        }
                    }
                }
            }
        }

        return parent::assemble();
    }
public function assemble()
    {
        $fields  = $this->getPart(Kwf_Db_Table_Select::COLUMNS);
        $primary  = $this->_table->getTableName();
        $schema  = $this->_table->getSchemaName();


        if (count($this->_parts[self::UNION]) == 0) {

            // If no fields are specified we assume all fields from primary table
            if (!count($fields)) {
                $this->from($primary, self::SQL_WILDCARD, $schema);
                $fields = $this->getPart(Kwf_Db_Table_Select::COLUMNS);
            }

            $from = $this->getPart(Kwf_Db_Table_Select::FROM);

            if ($this->_integrityCheck !== false) {
                foreach ($fields as $columnEntry) {
                    list($table, $column) = $columnEntry;

                    // Check each column to ensure it only references the primary table
                    if ($column) {
                        if (!isset($from[$table]) || $from[$table]['tableName'] != $primary) {
                            throw new Kwf_Exception('Select query cannot join with another table');
                        }
                    }
                }
            }
        }

        return parent::assemble();
    }
public function assemble ( ) { $ fields = $ this -> getPart ( Kwf_Db_Table_Select :: COLUMNS ) ; $ primary = $ this -> _table -> getTableName ( ) ; $ schema = $ this -> _table -> getSchemaName ( ) ; if ( count ( $ this -> _parts [ self :: UNION ] ) == 0 ) { // If no fields are specified we assume all fields from primary table if ( ! count ( $ fields ) ) { $ this -> from ( $ primary , self :: SQL_WILDCARD , $ schema ) ; $ fields = $ this -> getPart ( Kwf_Db_Table_Select :: COLUMNS ) ; } $ from = $ this -> getPart ( Kwf_Db_Table_Select :: FROM ) ; if ( $ this -> _integrityCheck !== false ) { foreach ( $ fields as $ columnEntry ) { list ( $ table , $ column ) = $ columnEntry ; // Check each column to ensure it only references the primary table if ( $ column ) { if ( ! isset ( $ from [ $ table ] ) || $ from [ $ table ] [ 'tableName' ] != $ primary ) { throw new Kwf_Exception ( 'Select query cannot join with another table' ) ; } } } } } return parent :: assemble ( ) ; }
Performs a validation on the select query before passing back to the parent class.
Ensures that only columns from the primary Kwf_Db_Table are returned in the result.

@return string|null This object as a SELECT string (or null if a string cannot be produced)
Performs a validation on the select query before passing back to the parent class . Ensures that only columns from the primary Kwf_Db_Table are returned in the result .