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
277
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
Neu Amazon Abgleich - seit heute 26.11.26 keine Übernahme der Bestellungen mehr Amazon-Anbindung - Fehler und Bugs 14
Neu Amazon Abgleich - seit 14 Uhr keine Übernahme der Bestellungen Amazon-Anbindung - Fehler und Bugs 56
Neu Keine automatische Übernahme von Änderungen in JTL trotz Abgleich? Onlineshop-Anbindung 3
Neu Fehlerhafte Adress-Übernahme durch NinePoint (Mirakl → JTL) – wer ist noch betroffen? JTL-Wawi - Fehler und Bugs 3
Seit dem Update auf JTL Wawi 1.11.4 funktioniert der Workflow "Datei Schreiben" nicht JTL-Wawi 1.11 1
Neu Wie lässt sich der Lieferstatus von Aufträgen per SQL abfragen? User helfen Usern - Fragen zu JTL-Wawi 4
Neu eBay Angebotsimport : Fehler bei der Kommunikation mit dem eA-Server eBay-Anbindung - Fehler und Bugs 0
Seit der Umstellung zu 1.11.4 meldet Googl Search Händlereinträge >Feld "name" fehlt (in „brand“) JTL-Wawi 1.11 4
Neu Probleme mit dem erstellen eines Profils in der Datenbankverwaltung JTL-Wawi - Fehler und Bugs 1
Neu Bestellungen werden nicht mehr übertragen: Der Shop hat nicht alle Zahlungen gesendet. WooCommerce-Connector 0
Panik in der Firma JTL-Wawi 1.11 15
Neu DPD: YourInternalID 28: (1) Strasse - Postleitzahl - Ort kann nicht zugeordnet werden. Evtl. liegt ein Schreibfehler in der Adresse vor. JTL-ShippingLabels - Fehler und Bugs 0
Neu Wie verbanne ich Fremdsprachen-Anfragen aus der JTL-Search? Allgemeine Fragen zu JTL-Shop 0
Neu JTL_DirectQuery - SQL Abfrage Anzahl der Pakete auf Versandliste (DPD) User helfen Usern - Fragen zu JTL-Wawi 3
Neu Dauer der Datenbankaktualisierung? Installation / Updates von JTL-Shop 2
Neu Exporte: $Artikel->Versandkosten ist nicht der günstigste Tarif? Allgemeine Fragen zu JTL-Shop 3
Neu Artikel werden nach Löschung in Shopify nicht neu aus der WaWi übertragen Shopify-Connector 2
Störung der Domain Infrastruktur JTL-Software Störungsmeldungen 0
Neu Standard Anzahl der gezeigten Artikel in Artikelübersicht Betrieb / Pflege von JTL-Shop 8
Neu Info zur Änderung im Zahlungsabgleich (FinTS) - Abschaltung der Umsatzabruf-Methode SWIFT (MT940) Arbeitsabläufe in JTL-Wawi 18
Neu JTL-Shop: Veraltete URLs & Weiterleitungen in der Sitemap – wie lösen? Allgemeine Fragen zu JTL-Shop 0
Neu Seit Update auf 1.11.4 läuft der CSV Abgleich ins Endlose! JTL-Ameise - Fehler und Bugs 6
Workflow zum abrufen der Upload-Datei aus dem Shop-Auftrag JTL-Wawi 1.11 0
Neu Zeilen in der Verkaufsübersicht farblich markieren Eigene Übersichten in der JTL-Wawi 0
Neu 0,1% an der Kasse erstellte Kunden nicht synchronisiert mit JTL Wawi Allgemeine Fragen zu JTL-POS 0
Kein e-Mail Versand aus der Wawi - Fehlermeldung JTL-Wawi 1.11 18
Neu Änderung der Spezialseite "Versandinformationen" zeigt sich nicht im Frontend Betrieb / Pflege von JTL-Shop 2
Neu Umrechnung von Verkaufsmengen in der Auftragserfassung Arbeitsabläufe in JTL-Wawi 1
Neu JTL Connector - Shopware 5 / 6: keine Erstübertragung der Daten Shopware-Connector 2
Lagerbestände mit der Ameise korrigieren JTL-Wawi 1.6 3
Neu Ärger mit CountX: Verzögerung bei der Bearbeitung von VCS-Daten in WAWI führt zu unvollständigen Steuerdaten User helfen Usern - Fragen zu JTL-Wawi 0
Neu Nicht schließende Mouse-Over-Swatches in der Zweispalten-Darstellung JTL-Shop - Fehler und Bugs 0
Neu Unterstützung bei JTL FFN Retouren – Fehler in der API-Übertragung von Returnless Starten mit JTL: Projektabwicklung & Migration 0
Liste exportieren mit Kategorien und Anzahl der Artikel in der jeweiligen Kategorie JTL Ameise - Eigene Exporte 3
Neu Probleme bei der Umstellung von Varkombi auf Konfigurationsartikel User helfen Usern - Fragen zu JTL-Wawi 0
Neu Utopische Lieferzeiten mit der Post User helfen Usern - Fragen zu JTL-Wawi 1
Neu Kassensysteme der Zukunft – wie gut sind aktuelle Lösungen auf kommende Anforderungen vorbereitet? Starten mit JTL: Projektabwicklung & Migration 1
Neu Downgrade von 3 JTL-Shop-Lizenzen auf 1 – Frage zur Umstellung der Domains User helfen Usern - Fragen zu JTL-Wawi 1
Neu Problem beim Start der manuellen eBay-Synchronisierung User helfen Usern - Fragen zu JTL-Wawi 0
Neu Kartenzahlung mit Zettle / Wo finde ich einen Transaktionscode in der Datenbank? Allgemeine Fragen zu JTL-POS 0
Keine automatische Picklistenerstellung mehr außer in der Enterprise Version JTL-Wawi 1.11 7
Neu Lieferanten in der Artikelübersicht User helfen Usern - Fragen zu JTL-Wawi 2
Umlagerung zu Amazon-FBA plötzlich nicht mehr möglich: Zugewiesende Amazon-SKU weg: "Es befinden sich Artikel ohne Amazon-SKU in der Umlagerung." JTL-Wawi 1.9 7
Neu Downloadmodul: Keine Daten in der Wawi Plugins für JTL-Shop 1
Ich möchte den Bestand der Verpackungskartons im System verwalten und nachverfolgen JTL-Wawi 1.10 2
Neu JTL Shop Brevo Plugin meldet keine Abmeldungen an JTL Shop + Kontakte landen nicht in der Willkommenssequenz Plugins für JTL-Shop 0
Neu Nova Template 5.6.0 - Sortierung Merkmal in der Navigationsbox Templates für JTL-Shop 1
Verkauf - Fehler beim Laden der Daten JTL-Wawi 1.11 6
Was ist mit der Wawi 1.11.0? JTL-Wawi 1.11 20
Neu DATEV Rechnungsdatenservice 2.0 Fehlermeldung bei der Übertragung Schnittstellen Import / Export 5

Ähnliche Themen