Bestellbestätigung sORDER: Wie Netto-Summe aller Artikel ohne Versandkosten ausgeben?

Hallo, ich bin shopware-Anfänger!

Bei $sAmount (brutto) und $sAmountNet (netto) sind leider die Versandkosten mit drin. Es scheint keine vordefinierte Variable für den Fall Netto-Summe aller Artikel ohne Versandkosten zu geben.

Gescheiterten Versuche mit Smarty das Problem zu lösen (gibt beides nichts aus):

  1. {$sAmountNet}-{$sShippingCosts} :
  2. {math equation=„x-y“ x=$sAmountNet y=$sShippingCosts format="%.2f"}

Vielleicht von Bedeutung:

{$sTaxRates.19.00} gibt auch nichts aus. {$sAmountNet} und {$sShippingCosts} für sich jeweils allein jedoch schon.

Wie würdet Ihr vorgehen?

Mal mit {$sAmountNet - $sShippingCosts} probiert ?

Ja, hab ich. Da wird leider der Komma-Anteil abgeschnitten. Daher mein Versuch unter Punkt 2 (aber da wird gar nix ausgegeben).

PS: Punkt 1 hatte ich mich vertippt Undecided

{$sAmountNetNumeric - $sShippingCosts|replace:" EUR":""|replace:",":"."}

Hoffe du arbeitest nur mit Euro - ansonsten müsstest du aus dem Replace irgendwie ein explode machen :wink:

Super! Ich danke Dir!

Bei Deiner Lösung werden nicht zwei Nachkommastellen angezeigt. Sah gerade 17,1 Euro als Zwischensumme. Kann man bei Deiner Smarty Syntax-Variante auch einen Formatstring angeben oder muss ich Deinen Lösungsansatz so abwandeln:

{math equation=„x - y“ x=$sAmountNetNumeric y=$sShippingCosts|replace:" EUR":""|replace:",":"." format="%.2f"} {$sCurrency}

Kannst es so versuchen {($sAmountNetNumeric - $sShippingCosts|replace:" EUR":""|replace:",":".")|currency}

Wenn das nich geht kannst du es mit dem math-Konstrukt probieren, Formatierungen hatte ich mir selbst auch noch nicht wirklich angeschaut.

Funktioniert hier irgendwie nicht. Shopware 5.2.24

$sAmountNetNumeric und $sShippingCosts sind leere Strings.

Hab mir die finish.tpl aus /themes/Frontend/Bare/frontend/checkout nach /themes/Frontend/Unser_Theme/frontend/checkout kopiert und verändert.

Hab mir testweise mal {$sAmountNetNumeric} und {$sShippingCosts} ausgeben lassen:

{block name='frontend_checkout_finish_items'}
	
		...
		
			Netto: {$sAmountNetNumeric}
			Versand: {$sShippingCosts}
			Gesamt: {$sAmountNetNumeric - $sShippingCosts|replace:" €":""|replace:",":"."}
		
	
{/block}

Cache geleert, Testbestellung gemacht, Summe 33,95 €, Versand 4,90 €. Aber im HTML vom Browser ist nur das zu sehen:

	Netto:
	Versand:
	Gesamt: 0

Hab auch mal testweise $sOrder.sAmountNetNumeric probiert. Aber gleiches Ergebnis.

Was ist da das Problem?

und oben in der *.tpl Datei steht auch

 

{extends file="parent:frontend/...

?

@BestShopPossible schrieb:

und oben in der *.tpl Datei steht auch

 

{extends file="parent:frontend/…

?

Guter Punkt. Nein, stand nicht. Sondern 

{extends file="frontend/index/index.tpl"}

Hab ich eben mal geändert in

{extends file="parent:frontend/checkout/finish.tpl"}

Shop Cache geleert, Testbestellung, aber leider genau das gleiche: sAmountNetNumeric und sShippingCosts sind leer.

Hier mal die ganze Datei. Der relevante Teil ist ganz unten. Die … sind identisch mit /themes/Frontend/Bare/checkout/finish.tpl. Musste ich aber rausnehmen, weil die Nachricht sonst zu lang gewesen wäre:

{* extends file="frontend/index/index.tpl" *}
{extends file="parent:frontend/checkout/finish.tpl"}

{* Hide sidebar left *}
...

{* Hide breadcrumb *}
...

{* Hide shop navigation *}
...

{* Step box *}
...

{* Hide top bar *}
...

{* Footer *}
...

{* Back to the shop button *}
...

{* Main content *}
{block name="frontend_index_content"}
    

        {* Finish teaser message *}
        {block name='frontend_checkout_finish_teaser'}
            ...
        {/block}

        {block name='frontend_checkout_finish_information_wrapper'}
            ...
        {/block}

        {block name='frontend_checkout_finish_items'}
            
                
                    

                        {* Table header *}
                        {block name='frontend_checkout_finish_table_header'}
                            {include file="frontend/checkout/finish_header.tpl"}
                        {/block}

                        {* Article items *}
                        {foreach $sBasket.content as $key => $sBasketItem}
                            {block name='frontend_checkout_finish_item'}
                                {include file='frontend/checkout/finish_item.tpl' isLast=$sBasketItem@last}
                            {/block}
                        {/foreach}

                        {* Table footer *}
                        {block name='frontend_checkout_finish_table_footer'}
                            {include file="frontend/checkout/finish_footer.tpl"}
                        {/block}
                    
                
				
				
					Netto: {$sAmountNetNumeric}
					Versand: {$sShippingCosts}
					Gesamt: {$sAmountNetNumeric - $sShippingCosts|replace:" €":""|replace:",":"."}
				
            
        {/block}
    
{/block}

 

@mario-108bits‍

Die Frage drehte sich eigentlich nicht um eine Shopseite, sondern um die Email-Vorlage „Bestellbestätigung“.
Dort findest du die beschriebenen Variablen und kannst die entsprechend nutzen.

In deinem Fall handelt es sich vermutlich um die Bestellabschlussseite, hier würde ich einfach mal versuchen z.B. mit dem Profiler die verfügbaren Variablen auszugeben.
Zumindest {$sAmountNet} müsste es hier geben, vielleicht mal mit folgendem Code probieren:

{assign var=NettoBetrag value=" "|explode:{$sAmountNet}}

{$NettoBetrag[0]}

In NettoBetrag stünde dann an Position 1 z.B. der Wert ohne Währung.

1 „Gefällt mir“

Hallo PStadtfeld,

danke für den Hinweis. Ich ging davon aus, dass es sich hier um die Shopseite handelt.

{$sAmountNet} funktioniert:

	Netto: {$sAmountNet}

Ausgabe im Browser:

Netto: 33.43

Da ich aber die Nettosumme des Warenkorbs ohne Versandkosten brauche, habe ich eben noch mal ein bisschen gesucht und in Frontend/Bare/frontend/checkout/cart_footer.tpl gesehen, dass dort der Warenkorbwert per {$sBasket.Amount|…} ausgegeben wird. Und das - bzw. {$sBasket.AmountNet} funktioniert auch in finish.tpl.

	Summe: {$sBasket.AmountNet|replace:",":"."}

Ausgabe im Browser:

Summe: 28.53

 

Hallo,
ich habe genau das gleich Problem:
ich benötige in der Bestellbestätigung sORDER die Netto-Summe ohne Versandkosten. Oben erwähnt gibt es folgenden Vorschlag:

{($sAmountNetNumeric - $sShippingCosts|replace:" EUR":""|replace:",":".")|currency}

Das funktioniert in meinem momentanen Test aus - schaut aber nicht so optimal aus, weil es z.B. nur für Euros geht. Gibt es auch noch eine allgemein besser passende Möglichkeit?