結合されたクエリがあります:
$query = $this
->getEm()
->getRepository("MovementHeader")
->createQueryBuilder('d')
->leftJoin('MovementDetail', 'stockmovementdetail', 'WITH', 'stockmovementdetail.movementId = d.id')
「movementdetail」に到達する方法は?
結合されたクエリがあります:
$query = $this
->getEm()
->getRepository("MovementHeader")
->createQueryBuilder('d')
->leftJoin('MovementDetail', 'stockmovementdetail', 'WITH', 'stockmovementdetail.movementId = d.id')
「movementdetail」に到達する方法は?
あなたの質問は非常に漠然としているので、私は一般的に答えるつもりです。より具体的な情報が必要な場合は、より具体的な情報を提供してください。
移動ヘッダーに MovementDetail エンティティにリンクされたフィールドがあると仮定します (これを MovementDetail と呼びましょう)。次のことができます。
$query = $this
->getEm()
->getRepository("MovementHeader")
->createQueryBuilder('mh')
->select('mh','md')
->innerJoin('mh.movementDetail','md')
->where(/* Now in the where cause,
you can select what ever
you want from mh or md*/)
->setParameters(array(/* ... */))
を使用できる場所の例を次に示します。
->where('mh.id = :id') //Could used when you want to retrieve a specific header
->where('md.field IN (:list)') // Where you want to retrive all the mh
// (and their md) that contains the fields
このような複数の条件を実行することもできます
->where('mh.field = :value AND md.otherField = :value2')
次に、それに応じてパラメーターを設定する必要があります。
結果を取得したら、通常のゲッターとセッターを使用してフィールドにアクセスできます。