Yii2: ActiveQuery "con" no funciona

Circunstancias

Tengo tres modelos / tablas de db relacionados con 1: n cada uno: unorder tiene múltiplescommissions y una comisión tiene múltiplescommission_positions. Por lo tanto, la posición_comisión tiene un campo FK que contiene un ID de comisión. La comisión en sí tiene un campo FK que contiene la identificación de un pedido.

Orden> Comisión> Posiciones de la Comisión

Problema

Lo que tengo que hacer ahora es seleccionar todas las posiciones de comisión que tengan un cierto valor en el modelo de orden relacionado. La solución obvia es usar el Query-Object de CommissionPosition que extendí con un alcance con nombre. El alcance nombrado se ve así:

class CommissionPositionQuery extends ActiveQuery
{
   /**
     * Named scope to filter positions of a certain alpha order id
     * @param integer $id the alpha order id
     * @return \common\models\query\CommissionPositionQuery
     */
    public function alphaOrderId($id)
    {
        //TODO: with not working
        $this->with(['commission.order']);
        $this->andWhere(['alpha_order_id'=>$id]);
        return $this;
    }
}

La relacióncommission se define en el Modelo de la Comisión y funciona. La segunda relacionorder se define en el modelo de comisión y funciona también. El campo filtradoalpha_order_id está en la tabla de pedidos. Ahora ejecuto la consulta así:

$filteredPositions = CommissionPosition::find()->alphaOrderId(17)->all();

El alcance se llama con éxito y se usa la parte where, pero cuando verifico el SQL generado no veo ninguna declaración de unión aunque uso elwith-método para decirle a yii que busque la relación juntos. La respuesta es 'columna desconocida alpha_order_id', lo cual tiene sentido ya que no hay una unión a las tablas relacionadas. Este es el SQL generado:

SELECT * FROM `commission_position` WHERE (`alpha_order_id`=17)

¿Qué me estoy perdiendo? ¿Es esto un error de Yii2?

Respuestas a la pregunta(2)

Su respuesta a la pregunta