Skip to main content
Frage

Hilfe bei Smarty Anpassung / Bestellungen - Schleife erstellen

  • January 12, 2023
  • 3 Antworten
  • 78 Ansichten

kakacommerce
Forum|alt.badge.img+2

Hi, ich möchte an unser Fulfillment die bestellte Ware übermitteln. Allerdings wird über mein Code bisher nur die erste Position ausgegeben. Wie kann ich hier alle vorhandenen Bestellpositionen integrieren?

{foreach} ist mir geläufig. Leider bekomme ich aber immer keine Werte raus bei meinen Versuchen.

 

Feldname;Nummer;Lieferant_Nummer;Position_Artikel_Artikel_Nummer;Position_Menge;Erwartete_Ankunftszeit;Freifeld_1
{$myArray|@count};
{$beleg->belegnr};
{"SELECT lieferantennummer FROM adresse where name =
'{$beleg->name}' "|assignsql assign="vendordata"}
{$vendordata[0]->lieferantennummer};
{"SELECT a.nummer from bestellung_position bp inner join artikel a on a.id=bp.artikel where bp.bestellung =
'{$beleg->id}'"|assignsql assign="articledata"}
{$articledata[0]->nummer};
{"SELECT menge FROM bestellung_position where bestellung =
'{$beleg->id}' "|assignsql assign="articledata"}
{$articledata[0]->menge|intval};
{$beleg->bestaetigteslieferdatum|date_format:"%d%m%Y"};
{$beleg->freitext};

 

3 Antworten

Marcel T
Forum|alt.badge.img+5
  • Genie
  • 665 Antworten
  • January 12, 2023

Moin @kakacommerce ,

im Normalfall hätte ich die unseren Code geschickt, aber wir bekommen seit dem Update auf die 23.0.0 gar keine Positionen mehr angezeigt. Sobald das Thema geklärt ist (Ticket ist in Bearbeitung) schreibe ich dir.

 


kakacommerce
Forum|alt.badge.img+2
  • Autor
  • Brainy
  • 76 Antworten
  • April 16, 2024

Hi Marcel,

 

kannst du deinen Code senden? Das wäre großartig. Bin seitdem letzten Post noch nicht weiter gekommen.


Marcel Tuschen
Xentraleer
Forum|alt.badge.img+5
  • Xentraleer
  • 25 Antworten
  • April 17, 2024

Moin @kakacommerce ,

wir haben seinerzeit mit folgendem Smarty gearbeitet.
Eine Gewährleistung kann ich dafür aber nicht übernehmen.
Bei uns hat es aber funktioniert.

<Bestellung_In>
  <Bestellung>
    <Bestellnummer>{$beleg->belegnr}</Bestellnummer>
    <Anliefertag>{$beleg->gewuenschteslieferdatum}</Anliefertag>
    <Typ>Bestellung</Typ>
{if $beleg->abweichendelieferadresse!= "0"}
    <LieferantName1>{$beleg->liefername|escape:"html"}</LieferantName1>
    <LieferantName2>{$beleg->lieferadresszusatz|escape:"html"}</LieferantName2>
    <LieferanStrasse>{$beleg->lieferstrasse|escape:"html"}</LieferanStrasse>
    <LieferantPLZ>{$beleg->lieferplz}</LieferantPLZ>
    <LieferantOrt>{$beleg->lieferort|escape:"html"}</LieferantOrt>
    <LieferandLand>{$beleg->lieferland}</LieferandLand>
{else}
    <LieferantName1>{$beleg->name|escape:"html"}</LieferantName1>
    <LieferantName2>{$beleg->adresszusatz|escape:"html"}</LieferantName2>
    <LieferanStrasse>{$beleg->strasse|escape:"html"}</LieferanStrasse>
    <LieferantPLZ>{$beleg->plz}</LieferantPLZ>
    <LieferantOrt>{$beleg->ort|escape:"html"}</LieferantOrt>
    <LieferandLand>{$beleg->land}</LieferandLand>
{/if}
  </Bestellung>
  <Zusatztexte>
    <Freitext>{$beleg->freitext|strip_tags|escape:"html"}</Freitext>
  </Zusatztexte>
  <Bestellpositionen>
{assign var=count value=0}
{foreach from=$beleg->positionen key=keyrow item=position}
{if $position->articledata->nummer == "995002" ||  $position->articledata->nummer == "970001" || $position->articledata->nummer == "990001"}
{continue}
{/if}
{assign var=count value=$count+1}
    <Bestellposition>
      <Positionsnummer>{$count}</Positionsnummer>
      <Artikelnummer>{$position->articledata->nummer}</Artikelnummer>
      <Menge>{$position->menge}</Menge>
    </Bestellposition>
{/foreach}
  </Bestellpositionen>
</Bestellung_In>

Dabei wurden verschiedenen Artikel (Versandkosten, Verpackungskosten - “995002”) ausgeschlossen.