Brodis tenho um sistema que cadastar cliente e fornecedores na mesma tabela mais no sistema eu tenho a view fornecedores que mostra so os fornecedore e cliente que mostra so o cliente, o meu problema é o seguinte, quando carrega o index ele mostra certo os registro para cada view, mas quando digito uma letra na pesquisa ele retorna fornecedor e cliente (resumindo mostra todos os registro)
O campo tipo grava F= fornecedor e CF Cliente/fornecedor então na view de fornecedor so deve mostrar no grid o registro que tem F no tipo;
Meu model fornecedor:
public function search()
{
// Warning: Please modify the following code to remove attributes that
// should not be searched.
$criteria=new CDbCriteria;
if($this->pesquisar == ''){
$criteria->compare('id',$this->id);
$criteria->compare('nome',$this->nome,true);
$criteria->compare('tipo',"F",true);
$criteria->compare('tipocadastro',$this->tipocadastro,true);
$criteria->compare('cpfcnpj',$this->cpfcnpj,true);
$criteria->compare('telefone1',$this->telefone1,true);
$criteria->compare('telefone2',$this->telefone2,true);
$criteria->compare('site',$this->site,true);
$criteria->compare('endereco',$this->endereco,true);
$criteria->compare('numero',$this->numero,true);
$criteria->compare('complemento',$this->complemento,true);
$criteria->compare('bairro',$this->bairro,true);
$criteria->compare('cep',$this->cep,true);
$criteria->compare('cidade',$this->cidade,true);
$criteria->compare('estado',$this->estado,true);
$criteria->compare('observacoes',$this->observacoes,true);
$criteria->compare('situacao',$this->situacao);
$criteria->compare('datacadastro',$this->datacadastro,true);
$criteria->compare('email',$this->email,true);
$criteria->compare('contato',$this->contato,true);
$criteria->compare('celular',$this->celular,true);
$criteria->compare('fax',$this->fax,true);
$criteria->compare('departamento',$this->departamento,true);
}else{
$criteria->compare('id',$this->pesquisar,true,'OR');
$criteria->compare('nome',$this->pesquisar,true,'OR');
$criteria->compare('tipo',"F",true,'OR');
$criteria->compare('tipocadastro',$this->pesquisar,true,'OR');
$criteria->compare('cpfcnpj',$this->pesquisar,true,'OR');
$criteria->compare('telefone1',$this->pesquisar,true,'OR');
$criteria->compare('telefone2',$this->pesquisar,true,'OR');
$criteria->compare('site',$this->pesquisar,true,'OR');
$criteria->compare('endereco',$this->pesquisar,true,'OR');
$criteria->compare('numero',$this->pesquisar,true,'OR');
$criteria->compare('complemento',$this->pesquisar,true,'OR');
$criteria->compare('bairro',$this->pesquisar,true,'OR');
$criteria->compare('cep',$this->pesquisar,true,'OR');
$criteria->compare('cidade',$this->pesquisar,true,'OR');
$criteria->compare('estado',$this->pesquisar,true,'OR');
$criteria->compare('observacoes',$this->pesquisar,true,'OR');
$criteria->compare('situacao',$this->pesquisar,true,'OR');
$criteria->compare('datacadastro',$this->pesquisar,true,'OR');
$criteria->compare('email',$this->pesquisar,true,'OR');
$criteria->compare('contato',$this->pesquisar,true,'OR');
$criteria->compare('celular',$this->pesquisar,true,'OR');
$criteria->compare('fax',$this->pesquisar,true,'OR');
$criteria->compare('departamento',$this->pesquisar,true,'OR');
}
return new CActiveDataProvider(get_class($this), array(
'criteria'=>$criteria,
'pagination'=>array(
'pageSize'=>Yii::app()->params['PageSize'],
),
));
}
Controler fornecedor:
public function actionIndex()
{
$model=new Fornecedor('search');
$model->pesquisar = $_GET['pesquisar'];
$model->unsetAttributes(); // clear any default values
if(isset($_GET['Fornecedor']))
$model->attributes=$_GET['Fornecedor'];
$this->render('index',array(
'model'=>$model,
));
}
ja tentei de tudo alguem poderia me ajudar
Valew desde já