Offen Übernahme der Versandart aus modified-Shop

mls123

Aktives Mitglied
31. Oktober 2012
50
1
Hallo Leute!

Wir verwenden einen modified- Shop in Verwendung mit der JTL-Wawi.

Bei der Übernahme von Aufträgen aus dem Shop werden die Versandkosten stets als Auftragsposition "Versandkosten:" übernommen. (Automatisch erstellte Versandart "Versandkosten:" wird ebenfalls erzeugt.)

Hier wäre es natürlich wünschenswert, wenn die entsprechenden Versandarten aus dem Shop auch übernommen werden würden.

Bisher sah die GetBestellungPos.php so aus:


Code:
<?php/**
 * jtlwawi_connector/dbeS/GetBestellungPos.php
 * Synchronisationsscript
 * 
 * Es gelten die Nutzungs- und Lizenzhinweise unter http://www.jtl-software.de/jtlwawi.php
 * 
 * @author JTL-Software <thomas@jtl-software.de>
 * @copyright 2006, JTL-Software
 * @link http://jtl-software.de/jtlwawi.php
 * @version v1.07 / 06.06.07
*/


require_once("syncinclude.php");


$return=3;
if (auth())
{
    $return=5;
    if (intval($_POST['KeyBestellung']))
    {
        //glob einstellungen
        $cur_query = eS_execute_query("select versandMwst,tax_zone_id from eazysales_einstellungen");
        $einstellungen = mysql_fetch_object($cur_query);
        $allowTax = 1;
        
        $return = 0;        
        //hole orderposes
        $cur_query = eS_execute_query("select * from orders_products where orders_id=".intval($_POST['KeyBestellung'])." order by orders_products_id");
        while ($BestellungPos = mysql_fetch_object($cur_query))
        {
            $allowTax = $BestellungPos->allow_tax;
            if ($BestellungPos->allow_tax==0) //bruttopreis daraus machen
            {
                $BestellungPos->products_price*=((100+$BestellungPos->products_tax)/100);
            }


            //hole etl aufpreise
            $aufpreis=0;
            $aufpreise_query = eS_execute_query("select options_values_price,price_prefix from orders_products_attributes where orders_id=".$BestellungPos->orders_id." and orders_products_id=".$BestellungPos->orders_products_id." and options_values_price!=0");
            while ($aufpreis_arr = mysql_fetch_row($aufpreise_query))
            {
                $aufp=0;
                $aufp=$aufpreis_arr[0];
                if (($aufpreis_arr[1])=="-")
                    $aufp*=-1;
                $aufpreis+=($aufp*(100+$BestellungPos->products_tax))/100;                
            }
            
            //mappe bestellpos
            $kBestellPos = setMappingBestellPos($BestellungPos->orders_products_id);
            echo(CSVkonform($kBestellPos).';');
            echo(CSVkonform(intval($_POST['KeyBestellung'])).';');
            echo(CSVkonform(getEsArtikel($BestellungPos->products_id)).';');
            echo(CSVkonform($BestellungPos->products_name).';');
            echo(CSVkonform($BestellungPos->products_price-$aufpreis).';');
            echo(CSVkonform($BestellungPos->products_tax).';');
            echo(CSVkonform($BestellungPos->products_quantity).';');
            echo("\n");
        }
        
        //letzte Positionen wie Versand, Mindermengenzuschlag, Rabatt, Kupon etc.
        $cur_query = eS_execute_query("select * from orders_total where (class=\"ot_shipping\" OR class=\"ot_cod_fee\" OR class=\"ot_coupon\" OR class=\"ot_discount\" OR class=\"ot_orderdiscount\" OR class=\"ot_gv\" OR class=\"ot_loworderfee\" OR class=\"ot_ps_fee\" OR class=\"ot_payment\") and orders_id=".intval($_POST['KeyBestellung'])." order by sort_order");
        while ($total_pos = mysql_fetch_object($cur_query))
        {
            if ($total_pos->class=="ot_shipping" || $total_pos->value!=0)
            {
                //mappe bestellpos
                $kBestellPos = setMappingBestellPos(0);
    
                $steuersatz = 0;
                switch ($total_pos->class)
                {
                    case 'ot_shipping':
                        //hole versand mwst aus einstellungen 
                        if (!$allowTax)
                        {
                            $total_pos->value*=((100+$einstellungen->versandMwst)/100);
                        }
                        $steuersatz = $einstellungen->versandMwst;
                        break;
                    case 'ot_cod_fee':
                        $tax_query = eS_execute_query("select configuration_value from configuration where configuration_key=\"MODULE_ORDER_TOTAL_COD_FEE_TAX_CLASS\"");
                        $tax_class = mysql_fetch_object($tax_query);
                        $steuersatz = get_tax($tax_class->configuration_value);
                        if (!$allowTax)
                        {
                            $total_pos->value*=((100+$steuersatz)/100);
                        }
                        break;
                    case 'ot_coupon':
                        $tax_query = eS_execute_query("select configuration_value from configuration where configuration_key=\"MODULE_ORDER_TOTAL_COUPON_TAX_CLASS\"");
                        $tax_class = mysql_fetch_object($tax_query);
                        $steuersatz = get_tax($tax_class->configuration_value);
                        $total_pos->value*=-1;
                        if (!$allowTax)
                        {
                            $total_pos->value*=((100+$steuersatz)/100);
                        }
                        break;
                    case 'ot_gv':
                        $tax_query = eS_execute_query("select configuration_value from configuration where configuration_key=\"MODULE_ORDER_TOTAL_GV_TAX_CLASS\"");
                        $tax_class = mysql_fetch_object($tax_query);
                        $steuersatz = get_tax($tax_class->configuration_value);
                        $total_pos->value*=-1;
                        if (!$allowTax)
                        {
                            $total_pos->value*=((100+$steuersatz)/100);
                        }
                        break;
                    case 'ot_loworderfee':
                        $tax_query = eS_execute_query("select configuration_value from configuration where configuration_key=\"MODULE_ORDER_TOTAL_LOWORDERFEE_TAX_CLASS\"");
                        $tax_class = mysql_fetch_object($tax_query);
                        $steuersatz = get_tax($tax_class->configuration_value);
                        if (!$allowTax)
                        {
                            $total_pos->value*=((100+$steuersatz)/100);
                        }
                        break;                
                    case 'ot_ps_fee':
                        $tax_query = eS_execute_query("select configuration_value from configuration where configuration_key=\"MODULE_ORDER_TOTAL_PS_FEE_TAX_CLASS\"");
                        $tax_class = mysql_fetch_object($tax_query);
                        $steuersatz = get_tax($tax_class->configuration_value);
                        if (!$allowTax)
                        {
                            $total_pos->value*=((100+$steuersatz)/100);
                        }
                        break;
                    case 'ot_discount':
                        $total_pos->value*=-1;
                        $steuersatz = $einstellungen->versandMwst;
                        break;
                    case 'ot_orderdiscount':
                        $total_pos->value*=-1;
                        $steuersatz = $einstellungen->versandMwst;
                        break;
                    case 'ot_payment':
                        $total_pos->value*=-1;
                        $steuersatz = $einstellungen->versandMwst;
                        break;                        
                }
                echo(CSVkonform($kBestellPos).';');
                echo(CSVkonform(intval($_POST['KeyBestellung'])).';');
                echo(CSVkonform("0").';');
                echo(CSVkonform(unhtmlentities($total_pos->title)).';');
                echo(CSVkonform(unhtmlentities($total_pos->value)).';');
                echo(CSVkonform($steuersatz).';');
                echo(CSVkonform("1").';');
                echo("\n");
            }
        }
    }
}
mysql_close();
echo($return);
logge($return);
?>

diese wurde dann wie folgt geändert (hauptsächlich ab Zeile 82):

Code:
<?php/**
 * jtlwawi_connector/dbeS/GetBestellungPos.php
 * Synchronisationsscript
 * 
 * Es gelten die Nutzungs- und Lizenzhinweise unter http://www.jtl-software.de/jtlwawi.php
 * 
 * @author JTL-Software <thomas@jtl-software.de>
 * @copyright 2006, JTL-Software
 * @link http://jtl-software.de/jtlwawi.php
 * @version v1.07 / 06.06.07
*/


require_once("syncinclude.php");


$return=3;
if (auth())
{
	$return=5;
	if (intval($_POST['KeyBestellung']))
	{
		//glob einstellungen
		$cur_query = eS_execute_query("select versandMwst,tax_zone_id from eazysales_einstellungen");
		$einstellungen = mysql_fetch_object($cur_query);
		$allowTax = 1;
		
		$return = 0;		
		//hole orderposes
		$cur_query = eS_execute_query("select * from orders_products where orders_id=".intval($_POST['KeyBestellung'])." order by orders_products_id");
		while ($BestellungPos = mysql_fetch_object($cur_query))
		{
			$allowTax = $BestellungPos->allow_tax;
			if ($BestellungPos->allow_tax==0) //bruttopreis daraus machen
			{
				$BestellungPos->products_price*=((100+$BestellungPos->products_tax)/100);
			}


			//hole etl aufpreise
			$aufpreis=0;
			$aufpreise_query = eS_execute_query("select options_values_price,price_prefix from orders_products_attributes where orders_id=".$BestellungPos->orders_id." and orders_products_id=".$BestellungPos->orders_products_id." and options_values_price!=0");
			while ($aufpreis_arr = mysql_fetch_row($aufpreise_query))
			{
				$aufp=0;
				$aufp=$aufpreis_arr[0];
				if (($aufpreis_arr[1])=="-")
					$aufp*=-1;
				$aufpreis+=($aufp*(100+$BestellungPos->products_tax))/100;				
			}
			
			//mappe bestellpos
			$kBestellPos = setMappingBestellPos($BestellungPos->orders_products_id);
			echo(CSVkonform($kBestellPos).';');
			echo(CSVkonform(intval($_POST['KeyBestellung'])).';');
			echo(CSVkonform(getEsArtikel($BestellungPos->products_id)).';');
			echo(CSVkonform($BestellungPos->products_name).';');
			echo(CSVkonform($BestellungPos->products_price-$aufpreis).';');
			echo(CSVkonform($BestellungPos->products_tax).';');
			echo(CSVkonform($BestellungPos->products_quantity).';');
			echo("\n");
		}
		
		//letzte Positionen wie Versand, Mindermengenzuschlag, Rabatt, Kupon etc.
		$cur_query = eS_execute_query("select * from orders_total where (class=\"ot_shipping\" OR class=\"ot_cod_fee\" OR class=\"ot_coupon\" OR class=\"ot_discount\" OR class=\"ot_orderdiscount\" OR class=\"ot_gv\" OR class=\"ot_loworderfee\" OR class=\"ot_ps_fee\" OR class=\"ot_payment\") and orders_id=".intval($_POST['KeyBestellung'])." order by sort_order");
		while ($total_pos = mysql_fetch_object($cur_query))
		{
			if ($total_pos->class=="ot_shipping" || $total_pos->value!=0)
			{
				//mappe bestellpos
				$kBestellPos = setMappingBestellPos(0);
	
				$steuersatz = 0;
				switch ($total_pos->class)
				{
					case 'ot_shipping':
						//hole versand mwst aus einstellungen 
						if (!$allowTax)
						{
							$total_pos->value*=((100+$einstellungen->versandMwst)/100);
						}
						$steuersatz = $einstellungen->versandMwst;
						
						$sql = "SELECT shipping_class FROM orders WHERE orders_id=".intval($_POST['KeyBestellung']);
						$query = eS_execute_query($sql);
						$row = mysql_fetch_object($query);
						$shipping_info = "unkown";
						if ($row->shipping_class == 'table_table')
						{
							$shipping_info = 'Deutsche Post';
						}
						elseif ($row->shipping_class == 'table2_table2')
						{
							$shipping_info = 'Hermes Paket';
						}
						elseif ($row->shipping_class == 'table3_table3')
						{
							$shipping_info = 'DHL Paket';
						}
						$total_pos->title = $shipping_info;
						
						break;
					case 'ot_cod_fee':
						$tax_query = eS_execute_query("select configuration_value from configuration where configuration_key=\"MODULE_ORDER_TOTAL_COD_FEE_TAX_CLASS\"");
						$tax_class = mysql_fetch_object($tax_query);
						$steuersatz = get_tax($tax_class->configuration_value);
						if (!$allowTax)
						{
							$total_pos->value*=((100+$steuersatz)/100);
						}
						break;
					case 'ot_coupon':
						$tax_query = eS_execute_query("select configuration_value from configuration where configuration_key=\"MODULE_ORDER_TOTAL_COUPON_TAX_CLASS\"");
						$tax_class = mysql_fetch_object($tax_query);
						$steuersatz = get_tax($tax_class->configuration_value);
						$total_pos->value*=-1;
						if (!$allowTax)
						{
							$total_pos->value*=((100+$steuersatz)/100);
						}
						break;
					case 'ot_gv':
						$tax_query = eS_execute_query("select configuration_value from configuration where configuration_key=\"MODULE_ORDER_TOTAL_GV_TAX_CLASS\"");
						$tax_class = mysql_fetch_object($tax_query);
						$steuersatz = get_tax($tax_class->configuration_value);
						$total_pos->value*=-1;
						if (!$allowTax)
						{
							$total_pos->value*=((100+$steuersatz)/100);
						}
						break;
					case 'ot_loworderfee':
						$tax_query = eS_execute_query("select configuration_value from configuration where configuration_key=\"MODULE_ORDER_TOTAL_LOWORDERFEE_TAX_CLASS\"");
						$tax_class = mysql_fetch_object($tax_query);
						$steuersatz = get_tax($tax_class->configuration_value);
						if (!$allowTax)
						{
							$total_pos->value*=((100+$steuersatz)/100);
						}
						break;				
					case 'ot_ps_fee':
						$tax_query = eS_execute_query("select configuration_value from configuration where configuration_key=\"MODULE_ORDER_TOTAL_PS_FEE_TAX_CLASS\"");
						$tax_class = mysql_fetch_object($tax_query);
						$steuersatz = get_tax($tax_class->configuration_value);
						if (!$allowTax)
						{
							$total_pos->value*=((100+$steuersatz)/100);
						}
						break;
					case 'ot_discount':
						$total_pos->value*=-1;
						$steuersatz = $einstellungen->versandMwst;
						break;
					case 'ot_orderdiscount':
						$total_pos->value*=-1;
						$steuersatz = $einstellungen->versandMwst;
						break;
					case 'ot_payment':
						$total_pos->value*=-1;
						$steuersatz = $einstellungen->versandMwst;
						break;						
				}
				echo(CSVkonform($kBestellPos).';');
				echo(CSVkonform(intval($_POST['KeyBestellung'])).';');
				echo(CSVkonform("0").';');
				echo(CSVkonform(unhtmlentities($total_pos->title)).';');
				echo(CSVkonform(unhtmlentities($total_pos->value)).';');
				echo(CSVkonform($steuersatz).';');
				echo(CSVkonform("1").';');
				echo("\n");
			}
		}
	}
}
mysql_close();
echo($return);
logge($return);
?>

Nun wird zwar bei der Auswahl des Moduls table auch "Deutsche Post" als Versandposition in der JTL-Wawi übernommen, jedoch wird a) keine "automatisch erstellte Versandart" angelegt und auch b) in der JTL "Deutsche Post" nicht als Versandart in der Übersicht angezeigt. - Dieses Feld ist leer.

In der JTL selbst heißt die Versandart auch "Deutsche Post AG", aber auch mit dieser Bezeichnung in der GetBestellungPos.php erfolgt nichts anderes als oben beschrieben (Versandposition auf Rechnung wird korrekt benannt, aber es erfolgt keine Zuweisung der Versandart).

Weiß jemand, wie man dies lösen kann?
 

Baltazar80

Gut bekanntes Mitglied
18. Januar 2014
279
17
AW: Übernahme der Versandart aus modified-Shop

Ist zwar schon länger her, aber ich wollte mal fragen, ob du das gelöst hast?

Ich stehe gerade an einem ähnlichen Problem.
Die Versandarten werden in JTW Wawi nicht erkannt und das erschwert ziemlich die Arbeit, da ich mehrere Versandarten habe, ich muss dann jeden einzeln anklicken um zu sehen welche Versandart ausgewählt wurde.

Ich hoffe du oder irgend jemand kann mir da weiterelfen.
 
Ähnliche Themen
Titel Forum Antworten Datum
Fehlermeldung beim Einlesen der Buchungen in JTL Fibu JTL-Wawi 2.0 2
Neu Wird irgendwo in der Datenbank geloggt welcher WMS-Mobile Benutzer mit dem MDE-Gerät einen Auftrag, bzw. Pickliste gepickt hat? User helfen Usern - Fragen zu JTL-Wawi 1
Neu Gibt es in der WaWi-Datenbank einen Zeitstempel, der anzeigt wann ein Kunde sich in einem bestimmten Shop registriert hat? User helfen Usern - Fragen zu JTL-Wawi 3
Neu Amazon.com - kein Abgleich der Bestände Wawi 1.11.9 Amazon-Anbindung - Fehler und Bugs 0
Name der Versandarten wird im Auftrag sporadisch nicht mehr angezeigt (2.0.3) JTL-Wawi 2.0 2
Neu Wawi 1.11. Amazon Rechnungen (extern) in der Kundenansicht verschwunden ?! User helfen Usern - Fragen zu JTL-Wawi 2
Neu Der wahrscheinlich östlichste JTL Servicepartner: Standortvorteil, faire Preise und vieles mehr Dienstleistung, Jobs und Ähnliches 16
Neu Eigener Export - Kunden individuelle Preise + verfügbarer Bestand + VK netto der Kundengruppe User helfen Usern - Fragen zu JTL-Wawi 6
Neu Rechnungen zeigen Paypal Text an, obwohl er in der Vorlage nicht ausgewählt ist JTL-Wawi 2.0 3
Updatezwang beim öffnen der WAWI JTL-Wawi 1.6 13
Neu Produktionsaufträge tauchen nicht in der Workbench auf JTL-Plan&Produce - Fehler und Bugs 2
Neu Ist es ohne Probleme möglich Cloudflare in der Free Version mit JTL zu nutzen? Allgemeine Fragen zu JTL-Shop 7
Neu Paypal 2.2.1; Fehler "Der Zahlungsanbieter hat eine Anmeldung gefordert" Plugins für JTL-Shop 0
Neu Sortierung der Variationswerte funktioniert nicht mehr Shopify-Connector 5
Neu Wert aus „Eigenes Feld“ eines Artikels im Lieferschein unter der Artikelbezeichnung anzeigen Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Rabatte aus dem JTL-Shop werden in der Wawi nur als Netto-Preis übernommen, Rabatt % gehen verloren Onlineshop-Anbindung 0
Freie Felder in der Artikelliste anzeigen JTL-Wawi 2.0 3
ändern von Servernamen nach Neuinstallation von SQL und Verbindung mit neuem Server in der Wawi JTL-Wawi 2.0 2
Neu Erstellung der Sitemap bei WaWi Abgleich funktioniert nicht Allgemeine Fragen zu JTL-Shop 0
Neu Unterschiedliche Abnahmeintervalle von Variationskombinationen in der Warenkorbmatrix Templates für JTL-Shop 0
Neu Betrag auf der Rechnung nach Rechnungskorrektur User helfen Usern - Fragen zu JTL-Wawi 1
Neu PDF Anhänge in der Bestellbestätigung anhängen missglückt JTL-Shop - Fehler und Bugs 1
Neu Anzahl der URLs in der Sitemap ändern Allgemeine Fragen zu JTL-Shop 3
Neu Ab welcher JTL Wawi Version ist der OnPremise REST API Endpoint POST /v2/returns oder POST /v1/returns für Create Return verfügbar? Schnittstellen Import / Export 0
Neu ⚠️📦 ACHTUNG: Abkündigung der DHL-Schnittstelle zum 15.06.2026 News, Events und Umfragen 0
Neu Telemetrie-Datenerfassung in JTL-Shop 5.7.0: Bitte um Klarstellung der DSGVO-relevanten Aspekte Allgemeine Fragen zu JTL-Shop 5
Frage zur Speicherung der Produktbilder JTL-Wawi 1.11 1
Neu Der Inhalt / Text ist verschwunden – ist das ein Fehler JTL-Shop - Fehler und Bugs 0
Plattformabgleich Shop löschen - Wo ist das in der MySQL DB? JTL-Wawi 2.0 4
Anzeige der Variantenartikel JTL-Wawi 1.11 0
Neu Workflows speichern z.B. Rechnungen nicht mehr seid der 2.01 User helfen Usern - Fragen zu JTL-Wawi 1
Neu Ein Artikel in der Kategorie Allgemeine Fragen zu JTL-Shop 5
Neu Widerrufsbutton: Jeder, der den Button betätigt, kann das Widerrufsformular ausfüllen und absenden - auch ohne Bestellung? Allgemeine Fragen zu JTL-Shop 94
Neu Komma aus Produktbezeichnung soll als Bindestrich in der URL sein Allgemeine Fragen zu JTL-Shop 1
Retouren - Bearbeitung der Adressdaten JTL-Wawi 2.0 4
Update auf Shop 5.5.0 von 5.4.1 ist der Shop nicht mehr erreichbar Upgrade JTL-Shop4 auf JTL-Shop5 4
Neu Lieferadresse in PayPal-Transaktion weicht von der in der Wawi ab Plugins für JTL-Shop 0
Häufiges Aufhängen - vermutlich Probleme mit der Datenbank JTL-Wawi 2.0 13
Neu Wichtige Info: Abkündigung der DHL-Schnittstelle zum 31.05.2026 News, Events und Umfragen 0
Neu Fehler beim Update der Datenbank von 1.11.7 auf 2.0.1 JTL-Wawi - Fehler und Bugs 7
2.0.0: Aufruf der Plattform - Logbücher führt zu Crash der Wawi JTL-Wawi 2.0 0
Neu Falsche Berechnung der Kassen im Kundencenter - Multikasse noch aktiv Smalltalk 0
Probleme bei der Verbindung zur Datenbank JTL-Wawi 2.0 12
Neu Platz der Sidebar nutzen JTL-Shop - Ideen, Lob und Kritik 0
Neu Versandart nach Volumengewicht und Lieferland Allgemeine Fragen zu JTL-Shop 2
Fehlermeldungen bei Einrichtung DHL 4.0 "Objektverweis" und "Konfiguration Versandart" JTL-Wawi 1.11 2
Neu Custom Checkout - Conversion optimiert mit Speicherung von Standard-Versandart und Zahlungsart am Kunden JTL-Shop - Ideen, Lob und Kritik 1
Versandart Standartpaketversand mit Express JTL-Wawi 1.10 2
Neu Versandart von Shopify zu JTL Wawi & Sendungsnummern von Wawi zu Shopify!? Shopify-Connector 0

Ähnliche Themen