protected function addRetrieveByPK_MultiPK(&$script)
    {
        $table = $this->getTable();
        $script .= "
    /**
     * Retrieve object using using composite pkey values.";
        foreach ($table->getPrimaryKey() as $col) {
            $clo = strtolower($col->getName());
            $cptype = $col->getPhpType();
            $script .= "
     * @param   $cptype $" . $clo;
        }
        $script .= "
     * @param      PropelPDO \$con
     * @return " . $this->getObjectClassname() . "
     */
    public static function " . $this->getRetrieveMethodName() . "(";

        $php = array();
        foreach ($table->getPrimaryKey() as $col) {
            $clo = strtolower($col->getName());
            $php[] = '$' . $clo;
        } /* foreach */

        $script .= implode(', ', $php);

        $script .= ", PropelPDO \$con = null) {
        \$_instancePoolKey = " . $this->getInstancePoolKeySnippet($php) . ";";
        $script .= "
         if (null !== (\$obj = " . $this->getPeerClassname() . "::getInstanceFromPool(\$_instancePoolKey))) {
             return \$obj;
        }

        if (\$con === null) {
            \$con = Propel::getConnection(" . $this->getPeerClassname() . "::DATABASE_NAME, Propel::CONNECTION_READ);
        }
        \$criteria = new Criteria(" . $this->getPeerClassname() . "::DATABASE_NAME);";
        foreach ($table->getPrimaryKey() as $col) {
            $clo = strtolower($col->getName());
            $script .= "
        \$criteria->add(" . $this->getColumnConstant($col) . ", $" . $clo . ");";
        }
        $script .= "
        \$v = " . $this->getPeerClassname() . "::doSelect(\$criteria, \$con);

        return !empty(\$v) ? \$v[0] : null;
    }";
    }
protected function addRetrieveByPK_MultiPK(&$script)
    {
        $table = $this->getTable();
        $script .= "
    /**
     * Retrieve object using using composite pkey values.";
        foreach ($table->getPrimaryKey() as $col) {
            $clo = strtolower($col->getName());
            $cptype = $col->getPhpType();
            $script .= "
     * @param   $cptype $" . $clo;
        }
        $script .= "
     * @param      PropelPDO \$con
     * @return " . $this->getObjectClassname() . "
     */
    public static function " . $this->getRetrieveMethodName() . "(";

        $php = array();
        foreach ($table->getPrimaryKey() as $col) {
            $clo = strtolower($col->getName());
            $php[] = '$' . $clo;
        } /* foreach */

        $script .= implode(', ', $php);

        $script .= ", PropelPDO \$con = null) {
        \$_instancePoolKey = " . $this->getInstancePoolKeySnippet($php) . ";";
        $script .= "
         if (null !== (\$obj = " . $this->getPeerClassname() . "::getInstanceFromPool(\$_instancePoolKey))) {
             return \$obj;
        }

        if (\$con === null) {
            \$con = Propel::getConnection(" . $this->getPeerClassname() . "::DATABASE_NAME, Propel::CONNECTION_READ);
        }
        \$criteria = new Criteria(" . $this->getPeerClassname() . "::DATABASE_NAME);";
        foreach ($table->getPrimaryKey() as $col) {
            $clo = strtolower($col->getName());
            $script .= "
        \$criteria->add(" . $this->getColumnConstant($col) . ", $" . $clo . ");";
        }
        $script .= "
        \$v = " . $this->getPeerClassname() . "::doSelect(\$criteria, \$con);

        return !empty(\$v) ? \$v[0] : null;
    }";
    }
protected function addRetrieveByPK_MultiPK ( & $ script ) { $ table = $ this -> getTable ( ) ; $ script .= "
    /**
     * Retrieve object using using composite pkey values." ; foreach ( $ table -> getPrimaryKey ( ) as $ col ) { $ clo = strtolower ( $ col -> getName ( ) ) ; $ cptype = $ col -> getPhpType ( ) ; $ script .= "
     * @param   $cptype $" . $ clo ; } $ script .= "
     * @param      PropelPDO \$con
     * @return " . $ this -> getObjectClassname ( ) . "
     */
    public static function " . $ this -> getRetrieveMethodName ( ) . "(" ; $ php = array ( ) ; foreach ( $ table -> getPrimaryKey ( ) as $ col ) { $ clo = strtolower ( $ col -> getName ( ) ) ; $ php [ ] = '$' . $ clo ; } /* foreach */ $ script .= implode ( ', ' , $ php ) ; $ script .= ", PropelPDO \$con = null) {
        \$_instancePoolKey = " . $ this -> getInstancePoolKeySnippet ( $ php ) . ";" ; $ script .= "
         if (null !== (\$obj = " . $ this -> getPeerClassname ( ) . "::getInstanceFromPool(\$_instancePoolKey))) {
             return \$obj;
        }

        if (\$con === null) {
            \$con = Propel::getConnection(" . $ this -> getPeerClassname ( ) . "::DATABASE_NAME, Propel::CONNECTION_READ);
        }
        \$criteria = new Criteria(" . $ this -> getPeerClassname ( ) . "::DATABASE_NAME);" ; foreach ( $ table -> getPrimaryKey ( ) as $ col ) { $ clo = strtolower ( $ col -> getName ( ) ) ; $ script .= "
        \$criteria->add(" . $ this -> getColumnConstant ( $ col ) . ", $" . $ clo . ");" ; } $ script .= "
        \$v = " . $ this -> getPeerClassname ( ) . "::doSelect(\$criteria, \$con);

        return !empty(\$v) ? \$v[0] : null;
    }" ; }
Adds the retrieveByPK method for tables with multi-column primary key.

@param string &$script The script will be modified in this method.
Adds the retrieveByPK method for tables with multi - column primary key .