Verifica se a consulta está com a relação, imaginando que você usa yii2 podemos fazer o search para gridview desta maneira
// em seu model
public function search()
{
$query = MyModel::find()->joinWith(['minhaprimeirarelacao'=>function($q){
$q->where(['minhaprimeirarelacao.user_id'=>(int)$this->id);
},
'minhaprimeirarelacao.meusegundonivel'
]);
$dataProvider = new ActiveDataProvider([
'query' => $query,
]);
return $dataProvider;
}
// controller
public function actionIndex()
{
$dataProvider= MyModel::search();
return $this->render('index',[
'dataProvider'=>$dataProvider
]);
}
No meu modelSearch o $this ñ vem oq eu preciso para montar a relação, as chaves vem nulas.Fiquei perdido tb oq seria o ‘minhaprimeirarelação’ ela é o que já existe no relation, ou seja, a relação com Macroprocesso, já que estamos falando de Pocessos, ou seria Area q é a relação existente em Macroprocesso?
Oq eu preciso é: Na index (view) de Processo, quero a relação que existe em Macroprocesso com Area. basicamente preciso dessa query (join)
Retificando minha query
SELECT DISTINCT M.MACROPROCESSO, A.SIGLA
FROM SGR_PROCESSO P
INNER JOIN SGR_MACROPROCESSO M ON M.ID = P.MACROPROCESSO_ID
INNER JOIN AUT_SETORES A ON A.ID = M.AREA_ID;
Para que a grid de Processo, consiga enxergar Area.
6999
para poder entender melhor segue uma imagem em anexo. Vale lembrar que preciso dessa relação na view referente a Processo.
Finalmente consegui resolver esse troço tosco. Aproveitei a ideia do @AndroideLP + a DOC do Yii + uma galera do GRUPO Yii Framework Brasil no google, para conseguir acertar a query gerada. Segue a resolução que consegui.