Artikelabgleich

buecherbillig_de

Aktives Mitglied
12. Januar 2007
16
0
Hallo,

habe folgendes Problem. WEnn ich 1 Artikel im Webshop und Wawi habe, und etwas an dem Artikel ändere im Shop, werden die Änderungen im Wawi nicht übernommen, sogar werden die Einstellungen im Wawi nach Shop übernommen. D. h. es geht nur in einer Richting (wenn Artikel im Shop und Wawi schon vorhanden ist)

Nächste Frage. Wenn ich von einem Artikel nur 1 Stk habe (Restposten, nicht nachzuordern) kommt ein Kunde und bestellt diesen Artikel, im Shop ist die Menge auf 0 und Artikel wird nicht angezeigt, im Wawi ist aber der Bestand immer noch 1. Nach dem Abgleich wird der Bestand von Wawi nach Shop übernommen (im Shop wird jetzt die Menge wieder 1). Wenn die Bestellung übernommen wird ( bzw. übernamme einen automatischen Auftrag erzeugt wird) wird diesen Artikel reserviert und Lagerbestand im Wawi wird 0 (im Shop ist aber die Menge 1) Jetzt muss ich ableich starten damit die Menge im Shop auch genullt wird. Verstehe ich das richtig?

Das ist für mich ein großes Problem, da ich viele Restposten je 1 Stk habe
und so können mehrere verkauft werden aber ich kann dann die nicht liefern weil ich eben nur 1 davon habe.

Nächstes, Artikel (mit Menge 1) nach dem Kauf im Shop (Menge 0) wird automatisch inaktiv, bei dem Shopabgleich Menge 0 aber aktiv (Artikel sichtbar im Shop und für Kunde ärgerlich da er es nicht bestellen kann).
Wie kann ich das vermeiden? In dem ich Artikel auf inaktiv setzte (Wawi) oder " im Shop nicht sichtbar" aktivieren (im Wawi)? Bei dem Ableich passiert das automatisch und ich weis nicht welche Artikel auf 0 sind und mehreren Artikeln ist es schwirig alle manuell abzuändern.

Ich habe OSCommerz und Wawi 0993

Danke für die Rückmeldung

Gruß

V. Mironjuk
ww.buecherbillig.de
 

buecherbillig_de

Aktives Mitglied
12. Januar 2007
16
0
Hallo,

danke für die Rückmeldung, hat mir aber nicht weiter geholfen. Kurz gesagt, den Abgleich wird nur in eine Richtung durchgehen. Z.b. wenn Anzahl vom Artikel im Shopadmin sich ändert dann wird es nicht von Wawi übernommen. Nach mehrmalligem ausprobieren habe ich festgestellt: wenn 1 Artikel in Wawi Bestand 0 hat und nach dem Abgleich hat der zwar auch im Shop Bestand 0 aber bleibt für den Kunden sichtbar. Ich muss in Wawi "im Webshop nicht anzeigen" anklicken damit der Artikel im Shop nicht sichtbar wird. Muss ich bei jeder Auftragserfassung immer aufpassen welchen Artikel Bestand 0 hat? Ist doch bei hunderten von Bestellungen einfach unmöglich.

Gibt es eine Möglichkeit dieses Manuelle anklicken Wawi "im Webshop nicht anzeigen" zu übergehen? Bei dem Bestand 0 muss Artikel im Shop nicht sichbar sein!

Gruß

Vladimir
 

buecherbillig_de

Aktives Mitglied
12. Januar 2007
16
0
Hallo Thomas,

kannst Du mir erklären?

im Connector an derselben Stelle, dbeS/Artikel.php nach Zeile 155
folgende SQL Queries einsetzen

Code:
eS_execute_query("Update products set products_status = '0' where products_quantity<=0 and products_id=".$products_id);

Auf der Zeile 155 habe ich auskommentierte Funktion insertPreiseinsertPreise

Soll ich auf der Stelle

Code:
if (intval($_POST["action"]) == 3 && intval($_POST['KeyArtikel']))
	{
		$products_id = getFremdArtikel(intval($_POST['KeyArtikel']));
		if ($products_id>0)
			eS_execute_query("update products set products_status=0 where products_id=".$products_id);
		$return = 0;
	}

"Update" abändern oder?

Vladimir
 

Thomas Lisson

Administrator
Mitarbeiter
24. März 2006
15.574
299
Köln
Hallo Vladimir,

benutzst Du die neuste Veriosn vom Connector?
Die Zeilenangaben jetzt beziehen sich auf den neusten Connector.
Folgendenn Codeabschnitt (b Zeile 138)

Code:
	if ($products_id>0)
		{
			//setze Kundengruppenerlaubnis für alle gruppen
			//Attribute.php bearbeitet Ausnahmen der Kundengruppenerlaubnis
			setzeKundengruppenerlaubnis("", $products_id);
			
			//VPE
			$products_vpe_id=0;
			//gibt es schon so einen products_vpe?
			$cur_query = eS_execute_query("select products_vpe_id from products_vpe where language_id=".$einstellungen->languages_id." and  products_vpe_name=\"".$artikel->cEinheit."\"");
			$products_vpe_id_arr = mysql_fetch_row($cur_query);
			if ($products_vpe_id_arr[0]>0)
			{
				$products_vpe_id=$products_vpe_id_arr[0];
			}
			else 
			{
				//füge neuen Shippingstatus ein
				$cur_query = eS_execute_query("select max(products_vpe_id) from products_vpe");
				$max_shipping_products_vpe_arr = mysql_fetch_row($cur_query);
				$products_vpe_id = $max_shipping_products_vpe_arr[0]+1;
				eS_execute_query("insert into products_vpe (products_vpe_id, language_id, products_vpe_name) values ($products_vpe_id, $einstellungen->languages_id, \"$artikel->cEinheit\")");
			}
			eS_execute_query("update products set products_vpe=".$products_vpe_id." where products_id=".$products_id);
		}

in folgenden umwandeln:

Code:
				if ($products_id>0)
		{
			//setze Artikel auf inaktiv, wenn Lager <=0
			eS_execute_query("Update products set products_status = '0' where products_quantity<=0 and products_id=".$products_id);
			
			//setze Kundengruppenerlaubnis für alle gruppen
			//Attribute.php bearbeitet Ausnahmen der Kundengruppenerlaubnis
			setzeKundengruppenerlaubnis("", $products_id);
			
			//VPE
			$products_vpe_id=0;
			//gibt es schon so einen products_vpe?
			$cur_query = eS_execute_query("select products_vpe_id from products_vpe where language_id=".$einstellungen->languages_id." and  products_vpe_name=\"".$artikel->cEinheit."\"");
			$products_vpe_id_arr = mysql_fetch_row($cur_query);
			if ($products_vpe_id_arr[0]>0)
			{
				$products_vpe_id=$products_vpe_id_arr[0];
			}
			else 
			{
				//füge neuen Shippingstatus ein
				$cur_query = eS_execute_query("select max(products_vpe_id) from products_vpe");
				$max_shipping_products_vpe_arr = mysql_fetch_row($cur_query);
				$products_vpe_id = $max_shipping_products_vpe_arr[0]+1;
				eS_execute_query("insert into products_vpe (products_vpe_id, language_id, products_vpe_name) values ($products_vpe_id, $einstellungen->languages_id, \"$artikel->cEinheit\")");
			}
			eS_execute_query("update products set products_vpe=".$products_vpe_id." where products_id=".$products_id);
		}