Freitextfeld (s_article_attributes) in den Dokumenten Rechnung und Lieferschein

Hi

ich versuche verzeifelt meinen Lieferschein und meine Rechnung mit dem Freitextfeld (angelegt unter s_article_attributes)  „warehouse_location - Einfacher Text - Text“  zu versehen. 
Dazu habe ich zwei neue Blöcke angelegt aber er macht nichts, er nimmt sich das Label weil ichs reingeschrieben hab aber die Daten nimmt er sich nicht. Was mach ich falsch? 

{block name="document_index_table_head_pos"}

{s name="DocumentIndexHeadPosition"}{/s}

{/block}   
        
{block name="document_index_table_head_warehouse_location"}

Lagerplatz    

{/block} 

{foreach from=$positions item=position key=number}
{block name="document_index_table_each"}


{block name="document_index_table_pos"}

{$number+1}

{/block}

{block name="document_index_table_head_warehouse_location"}

{$position.warehouse_location}
 
 {/block} 

ist es möglich dieses Freitextfeld, bzw die Daten die bei der Bestellung ausgelöst werden, auch auf den Dokumenten (Rechnung und Lieferschein) alphabetisch aufsteigend zu sortieren (a-z).
Dazu habe ich leider nichts in der Doku gefunden. 

Danke :-)

Versuche mal warehouseLocation. Denke das ist ein Problem was durch Snake_Case->CamelCase entsteht. Das Model nutzt auf jeden Fall CamelCase.

Hi ich habe alles versucht sogar das Feld umzubenennen ohne Bindestrich. Leider funktioniert das nicht :frowning: Ich habe auch versucht das Feld attr1 zu nehmen das funktioniert aber in unserem Livesystem kommen die Freitexfelder über eine Schnittstelle also muss es genau dieses Attribut „warehouse_location“ sein. Selbst der Text mit Freitextfeld Text „warehouselocation“ hat nicht funktioniert. 

Was könnte ich noch probieren? Gibt es denn wenn es funktionieren sollte eine Weg wie man nach dieser Spalte das sortiert von a-z.

Hast du denn mal geschaut, ob du nicht vielleicht eine andere Variable brauchst, weil es vielleicht weiter verschachtelt ist? Lass dir doch mal per {$position|print_r} einfach das ganze Array ausgeben.

 

Hi er gibt diese Daten anscheind nicht weiter. :( 

3 Array ( [id] => 211 [orderID] => 59 [ordernumber] => 20003 [articleID] => 0 [articleordernumber] => SHIPPINGDISCOUNT [price] => -2 [quantity] => 1 [name] => Warenkorbrabatt [status] => 0 [shipped] => 0 [shippedgroup] => 0 [releasedate] => 0000-00-00 [modus] => 4 [esdarticle] => 0 [taxID] => 0 [tax_rate] => 19 [config] => [articleTaxID] => [attr1] => [attr2] => [attr3] => [attr4] => [attr5] => [attr6] => [attr7] => [attr8] => [attr9] => [attr10] => [attr11] => [attr12] => [attr13] => [attr14] => [attr15] => [attr16] => [attr17] => [attr18] => [attr19] => [attr20] => [attributes] => Array ( [id] => 11 [detailID] => 211 [attribute1] => [attribute2] => [attribute3] => [attribute4] => [attribute5] => [attribute6] => ) [tax] => 19 [netto] => -1.6806722689076 [amount_netto] => -1.68 [amount] => -2 ) 1 SHIPPINGDISCOUWarenkorbrabatt 1 19 % -2,00 € -2,00 €
4 Array ( [quantity] => 1 [netto] => 3.2773109243697 [tax] => 19 [price] => 3.9 [amount] => 3.9 [modus] => 1 [amount_netto] => 3.2773109243697 [articleordernumber] => [name] => Versandkosten ) 1

 

Hab jetzt das attr4 genommen und das umgeschrieben das es Lagerplatz heißt und das befüllt. Jetzt weiß ich nur nicht wie ich das so machen kann das er die spalte sortiert von a-z. 

z.B.

A3-09-04

A2-10-01

A3-07-01

Hier sollen die A2 vor den A3 stehen und diese dann auch sortiert werden. Bis jetzt habe ich in der Doku sowas noch nicht gesehen.

Hallo,

soweit ich weiß, werden im position - Array keine eigenen Artikel - Freitextfelder mit übergeben (außer attr1 - attr20 von Shopware selbst) - alternativ mal über {$position.meta.attributes.core->get(“Feldname”)} probieren. Wenn man im position - Array die eigenen Artikel - Freitextfelder braucht, müsste man dazu beispielsweise einen after - Hook auf Shopware_Components_Document und dessen Funktion assignValues machen und das position - Array entsprechend um das eigene Artikel - Freitextfeld erweitern. Danach könnte man auf das eigene Artikel - Freitextfeld im Dokument zugreifen.

Sortieren kann man es ja einfach, indem man die Werte in ein Array aufteilt und dieses dann sortiert - das könnte man dann auch über PHP vor der Zuweisung ans Dokument machen.

Grüße

Sebastian

@sschreier schrieb:

Hallo,

soweit ich weiß, werden im position - Array keine eigenen Artikel - Freitextfelder mit übergeben (außer attr1 - attr20 von Shopware selbst) - alternativ mal über {$position.meta.attributes.core->get(„Feldname“)} probieren. Wenn man im position - Array die eigenen Artikel - Freitextfelder braucht, müsste man dazu beispielsweise einen after - Hook auf Shopware_Components_Document und dessen Funktion assignValues machen und das position - Array entsprechend um das eigene Artikel - Freitextfeld erweitern. Danach könnte man auf das eigene Artikel - Freitextfeld im Dokument zugreifen.

Sortieren kann man es ja einfach, indem man die Werte in ein Array aufteilt und dieses dann sortiert - das könnte man dann auch über PHP vor der Zuweisung ans Dokument machen.

Grüße

Sebastian

 

Hi,
bezüglich des sortierens, muss ich das dann trotzdem in ein Plugin schreiben? Kann man das nicht ohne Plugin in ein Array aufteilen? Wenn ja, hast du da zufällig eine Idee wie ich das machen könnte, ich habe nämlich noch nie ein Plugin erstellt, wenns ohne ginge wäre es toll. 

Danke für eure Hilfe, 

Melissa 

Hallo,

naja ein Smarty - Plugin bräuchtest du wahrscheinlich mindestens für die Sortierung, wenn du diese nicht über ein Plugin vor der Übergabe an die View machen willst. Es ist ja keine „normale“ Sortierung, die du da brauchst, wie nur nach Zahlen oder nur nach Buchstaben etc. Und du brauchst ja schon alleine ein Plugin, um die eigenen Artikel - Freitextfelder im position - Array überhaupt verfügbar zu machen.

Grüße

Sebastian

1 „Gefällt mir“