Это должно быть ->innerJoin('p.richiestepreventivo as r ON p.id=r.idPrivato ')
ОБНОВЛЕНИЕ: try
$qr = Doctrine_Query::create()
->select('*')
->from('privati p')
->innerJoin('p.richiestepreventivo r ON p.id=r.idPrivato ')
->where('r.idImpresa=' . $idI);
У меня есть некоторый рабочий код, который делает почти то же самое, и нет as
в этом.И, на всякий случай, проверьте ваши сгенерированные классы моделей, DQL чувствителен к регистру.Из вашего YAML ясно, что они должны быть строчными, но, возможно, кто-то их переименовал.