# DAL OrderRepository Association Arrays leer

**URL:** <https://forum.shopware.com/t/dal-orderrepository-association-arrays-leer/86299>\
**Category:** Programmierung\
**Created:** [18. März 2021 um 17:50 UTC](https://forum.shopware.com/t/dal-orderrepository-association-arrays-leer/86299 "2021-03-18T17:50:53Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![RafaelKr](https://avatars.discourse-cdn.com/v4/letter/r/4af34b/32.png) [@RafaelKr](https://forum.shopware.com/u/RafaelKr)\
**Post date:** [18. März 2021 um 17:50 UTC](https://forum.shopware.com/t/dal-orderrepository-association-arrays-leer/86299/1 "2021-03-18T17:50:53Z")

</div>

Ich versuche gerade in einem Plugin meine Bestellungen abzufragen. Gerne hätte ich hierzu auch Associations. Im Falle der `billingAddress` funktioniert es ohne Probleme, bei `deliveries` bekomme ich jedoch eine `OrderDeliveryCollection` mit einem leeren `elements` Array zurück.  
Selbes gilt für für `lineItems` und `addresses`.

```
$this->orderRepository
    ->search(
        (new Criteria())
            ->addAssociations([
                'billingAddress.country',
                'billingAddress.salutation',
                'deliveries.shippingOrderAddress',
                'deliveries.shippingMethod',
            ]),
        $context
    )
    ->getEntities();

```

Ich habe bei meiner Recherche auch folgenden Beitrag gefunden in dem es ähnlich gemacht wird.

> [@Orders nach transaction - und delivery - state filtern über DAL](https://forum.shopware.com/t/orders-nach-transaction-und-delivery-state-filtern-uber-dal/71944/2):
>
> Hallo @webjohn‍, du kannst einfach im EqualsFilter die Associations voranstellen und kannst dann jedes Feld der Assoziations-Entity auswählen: $criteria = new Criteria(); $criteria-\>addFilter( new EqualsFilter('currency\_factor', 1) ); $criteria-\>addAssociation('deliveries'); $criteria-\>addAssociation('transactions'); $criteria-\>addFilter(new EqualsFilter('transactions.stateId', $orderTransactionStateId)); $orders = $this-\>orderRepository-\>search( $criteria, Context::createDefaultCo…

Aber auch wenn ich nur `deliveries` statt ‚deliveries.shippingOrderAddress‘ verwende klappt es nicht.  
Kann mir hier jemand weiterhelfen?

Shopware-Version: 6.3.5.2  
Edit: Stimmt gar nicht, bin noch auf 6.3.5.1

---

<div class="post-metadata">

**Author:** ![RafaelKr](https://avatars.discourse-cdn.com/v4/letter/r/4af34b/32.png) [@RafaelKr](https://forum.shopware.com/u/RafaelKr)\
**Post date:** [22. März 2021 um 13:28 UTC](https://forum.shopware.com/t/dal-orderrepository-association-arrays-leer/86299/2 "2021-03-22T13:28:03Z")

</div>

Es funktioniert jetzt plötzlich. Warum weiß ich nicht.

Edit: Ich frage die Order kurz nach `OrderEvents::ORDER_WRITTEN_EVENT` ab. Möglicherweise gibt es beim Erstellen einer Order manchmal eine Race Condition bei der dann noch nicht alle Associations geschrieben sind. Ich werde es weiter beobachten.
