# \[GELÖST\] Warenkorbartikel-Abfrage um eigenes Feld erweitern?

**URL:** <https://forum.shopware.com/t/gelost-warenkorbartikel-abfrage-um-eigenes-feld-erweitern/36482>\
**Category:** Programmierung\
**Created:** [2. Mai 2016 um 06:26 UTC](https://forum.shopware.com/t/gelost-warenkorbartikel-abfrage-um-eigenes-feld-erweitern/36482 "2016-05-02T06:26:11Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![sschreier](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sschreier/32/23296_2.png) [@sschreier](https://forum.shopware.com/u/sschreier)\
**Post date:** [2. Mai 2016 um 06:26 UTC](https://forum.shopware.com/t/gelost-warenkorbartikel-abfrage-um-eigenes-feld-erweitern/36482/1 "2016-05-02T06:26:11Z")

</div>

Hallo liebe Shopware - Gemeinde,

ich würde gerne die Warenkorb-Abfrage um ein eigenes Feld erweitern. Mein Ansatz ist: in der Datei sBasket.php gibt es ja die Funktion loadBasketArticles(), die die Abfrage bereitstellt. Ich würde nun mit dem Event **Shopware\_Modules\_Basket\_GetBasket\_FilterSQL** die Abfrage um mein eigenes Feld erweitern.

Den Return des Events würde ich mir über $result = $args-\>getReturn(); holen, den Return setzen wieder über $args-\>setReturn($result); . Nur komme ich derzeit beim Erweitern der SQL-Abfrage nicht weiter. Mit addSelect ([http://community.shopware.com/Schuhgrößen-Erweiterung\_detail\_1052.html](http://community.shopware.com/Schuhgr%C3%B6%C3%9Fen-Erweiterung_detail_1052.html)) funktioniert es leider nicht:

```
$result->addSelect(array(
     'attributes.swagCustomerPreferencesSize',
     'attributes.swagCustomerPreferencesColor'
));

```

Hat jemand einen Tipp, wie ich die SQL-Abfrage erweitern könnte?

Beste Grüße

Sebastian

---

<div class="post-metadata">

**Author:** ![steinsoftware](https://avatars.discourse-cdn.com/v4/letter/s/b487fb/32.png) [@steinsoftware](https://forum.shopware.com/u/steinsoftware)\
**Post date:** [2. Mai 2016 um 07:03 UTC](https://forum.shopware.com/t/gelost-warenkorbartikel-abfrage-um-eigenes-feld-erweitern/36482/2 "2016-05-02T07:03:52Z")

</div>

Na aber das ist doch kein Query-Objekt sonder plain sql.

Da müsste man eher sowas machen:

```
//get the sql-statement
$sql = $args->getReturn();

//create a new snippet at point ob_attr6 containing the point and the added attribute 
$newSql = 'ob_attr6, s_order_basket_attributes.swagCustomerPreferencesSize, s_order_basket_attributes.swagCustomerPreferencesColor';

//replace the text in the sql-statement with the newly created one
$sql = str_replace('ob_attr6', $newSql, $sql);

//set the sql-statement
$args->setReturn($sql);

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![sschreier](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sschreier/32/23296_2.png) [@sschreier](https://forum.shopware.com/u/sschreier)\
**Post date:** [2. Mai 2016 um 07:31 UTC](https://forum.shopware.com/t/gelost-warenkorbartikel-abfrage-um-eigenes-feld-erweitern/36482/3 "2016-05-02T07:31:40Z")

</div>

> [@steinsoftware schrieb:](https://forum.shopware.com/profile/17116/steinsoftware "steinsoftware")
> 
> Na aber das ist doch kein Query-Objekt sonder plain sql.
> 
> Da müsste man eher sowas machen:
> 
> //get the sql-statement  
> $sql = $args-\>getReturn();
> 
> //create a new snippet at point ob\_attr6 containing the point and the added attribute  
> $newSql = ‚ob\_attr6, s\_order\_basket\_attributes.swagCustomerPreferencesSize, s\_order\_basket\_attributes.swagCustomerPreferencesColor‘;
> 
> //replace the text in the sql-statement with the newly created one  
> $sql = str\_replace(‚ob\_attr6‘, $newSql, $sql);
> 
> //set the sql-statement  
> $args-\>setReturn($sql);

Hallo steinsoftware,

das fällt dann wohl unter die Kategorie: „einfach zu kompliziert gedacht“ ![Grin](http://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/grin.png "Grin"). Ich danke dir, funktioniert wie gewünscht ![Halo](http://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/halo.png "Halo").

Beste Grüße

Sebastian

---

<div class="post-metadata">

**Author:** ![kafke](https://avatars.discourse-cdn.com/v4/letter/k/74df32/32.png) [@kafke](https://forum.shopware.com/u/kafke)\
**Post date:** [5. Mai 2016 um 16:09 UTC](https://forum.shopware.com/t/gelost-warenkorbartikel-abfrage-um-eigenes-feld-erweitern/36482/4 "2016-05-05T16:09:46Z")

</div>

Moin Sebastian,

ich versuche gerade, ebenfalls wie du, eigene Felder der Tabelle **s\_order\_basket\_attributes** im Warenkorb anzuzeigen. Kannst du mir einen Tipp geben, wie ich den Event **Shopware\_Modules\_Basket\_GetBasket\_FilterSQL** erweitern kann?

Danke und beste GRüße

Kafke

---

<div class="post-metadata">

**Author:** ![sschreier](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sschreier/32/23296_2.png) [@sschreier](https://forum.shopware.com/u/sschreier)\
**Post date:** [5. Mai 2016 um 16:17 UTC](https://forum.shopware.com/t/gelost-warenkorbartikel-abfrage-um-eigenes-feld-erweitern/36482/5 "2016-05-05T16:17:16Z")

</div>

> [@kafke schrieb:](https://forum.shopware.com/profile/23441/kafke "kafke")
> 
> Mon Sebastian,
> 
> ich versuche gerade, ebenfalls wie du, eigene Felder der Tabelle **s\_order\_basket\_attributes** im Warenkorb anzuzeigen. Kannst du mir einen Tipp geben, wie ich den Event **Shopware\_Modules\_Basket\_GetBasket\_FilterSQL** erweitern kann?
> 
> Danke und beste GRüße
> 
> Kafke

Hallo,

die komplette Lösung hat doch aber steinsoftware geschrieben?

Beste Grüße

Sebastian

---

<div class="post-metadata">

**Author:** ![kafke](https://avatars.discourse-cdn.com/v4/letter/k/74df32/32.png) [@kafke](https://forum.shopware.com/u/kafke)\
**Post date:** [5. Mai 2016 um 18:29 UTC](https://forum.shopware.com/t/gelost-warenkorbartikel-abfrage-um-eigenes-feld-erweitern/36482/6 "2016-05-05T18:29:51Z")

</div>

Hi Sebastian,

mir ist nicht ganz klar **wie** ich mich an den Event **Shopware\_Modules\_Basket\_GetBasket\_FilterSQL** ranhänge.

Ich hab’s mit der folgenden Code-Zeile probiert.&nbsp;

```
$this->subscribeEvent('Shopware_Modules_Basket_GetBasket_FilterSQL', 'onGetBasket');

```

Die Methode onGetBasket ()&nbsp; wird aber nicht ausgeführt.

Ich würd mich freuen, wenn du mir einen Tipp geben kannst.

Viele Grüße,

Kafke

---

<div class="post-metadata">

**Author:** ![sschreier](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sschreier/32/23296_2.png) [@sschreier](https://forum.shopware.com/u/sschreier)\
**Post date:** [5. Mai 2016 um 18:31 UTC](https://forum.shopware.com/t/gelost-warenkorbartikel-abfrage-um-eigenes-feld-erweitern/36482/7 "2016-05-05T18:31:33Z")

</div>

> [@kafke schrieb:](https://forum.shopware.com/profile/23441/kafke "kafke")
> 
> Hi Sebastian,
> 
> mir ist nicht ganz klar **wie** ich mich an den Event **Shopware\_Modules\_Basket\_GetBasket\_FilterSQL** ranhänge.
> 
> Ich hab’s mit der folgenden Code-Zeile probiert.&nbsp;
> 
> $this-\>subscribeEvent(‚Shopware\_Modules\_Basket\_GetBasket\_FilterSQL‘, ‚onGetBasket‘);
> 
> Die Methode onGetBasket ()&nbsp; wird aber nicht ausgeführt.
> 
> Ich würd mich freuen, wenn du mir einen Tipp geben kannst.
> 
> Viele Grüße,
> 
> Kafke

Hallo,

genauso ist es aber richtig und funktioniert (bei mir) auch tadellos.

Beste Grüße

Sebastian

---

<div class="post-metadata">

**Author:** ![kafke](https://avatars.discourse-cdn.com/v4/letter/k/74df32/32.png) [@kafke](https://forum.shopware.com/u/kafke)\
**Post date:** [5. Mai 2016 um 19:02 UTC](https://forum.shopware.com/t/gelost-warenkorbartikel-abfrage-um-eigenes-feld-erweitern/36482/8 "2016-05-05T19:02:26Z")

</div>

Hallo Sebastian,

ich hatte das falsche Plugin neu installiert. Deshalb hab ich kein Erfolg gesehen… Ist mir jetzt irgendwie n bisschen Peinlich 😕

Dank deiner Bestätigung hab ich aufgehört den Fehler in meinem Code zu suchen…

Viele Grüße,

Kafke

&nbsp;
