Jump to content
xt:Commerce Community Forum

Händische Bestelleingabe + Lavervewaltung


Hottinger

Bestelleingabe im Admin + funktionierender Lagerverwaltung (geht bisher nicht!)  

2 members have voted

  1. 1. Bestelleingabe im Admin + funktionierender Lagerverwaltung (geht bisher nicht!)

    • ... endlich, das will ich auch!
    • ... das Feature braucht niemand.
      0


Recommended Posts

Hallo,

SORRY - im Titel sollte natürlich LAGERVERWALTUNG stehen.

ja, in XTC 3.x lassen sich Bestellungen auch vom Admin eintragen. Leider werden so "gekaufte" Produkte NICHT von der Lagerverwaltung berücksichtigt (also nicht abgezogen - bzw. bei Änderung ergänzt).

Hier im Forum habe ich eine Lösung eines Users gefunden:

// Artikel bearbeiten Anfang:

if ($_GET['action'] == "product_edit") {

//NEU products_id und products_quantity herausbekommen, anhand der orders_products_id [[email protected]]

$remo_query = xtc_db_query("select products_id, products_quantity from ".TABLE_ORDERS_PRODUCTS." where orders_products_id = '".xtc_db_input($_POST['opID'])."'");

$remo = xtc_db_fetch_array($remo_query);

//END

...

xtc_db_perform(TABLE_ORDERS_PRODUCTS, $sql_data_array, 'update', 'orders_products_id = \''.xtc_db_input($_POST['opID']).'\'');

//NEU Differenz bilden, (1+ -1 = 0)

$differenz = $_POST['products_quantity'] - $remo['products_quantity'];

//Wenn produktanzahl nachtraeglich erh?ht, wird es von der Lagerverwaltung abgezogen [[email protected]]

xtc_db_query("update ".TABLE_PRODUCTS." set products_quantity = products_quantity - ".$differenz.", products_ordered = products_ordered + ".$differenz." where products_id = '".$_POST['products_id']."'");

//END

...

// Artikel einf?gen Anfang

if ($_GET['action'] == "product_ins") {

...

xtc_db_perform(TABLE_ORDERS_PRODUCTS, $sql_data_array);

//NEU Wenn produkt per Hand einf?gt, wird es von der Lagerverwaltung abgezogen [[email protected]]

xtc_db_query("update ".TABLE_PRODUCTS." set products_quantity = products_quantity - ".$_POST['products_quantity'].", products_ordered = products_ordered + ".$_POST['products_quantity']." where products_id = '".$_POST['products_id']."'");

//END

...

// L?schen eines Artikels aus der Bestellung Anfang:

if ($_GET['action'] == "product_delete") {

//NEU products_id und products_quantity herausbekommen, anhand der orders_products_id [[email protected]]

$remo_query = xtc_db_query("select products_id, products_quantity from ".TABLE_ORDERS_PRODUCTS." where orders_products_id = '".xtc_db_input($_POST['opID'])."'");

$remo = xtc_db_fetch_array($remo_query);

//END

xtc_db_query("delete from ".TABLE_ORDERS_PRODUCTS_ATTRIBUTES." where orders_products_id = '".xtc_db_input($_POST['opID'])."'");

xtc_db_query("delete from ".TABLE_ORDERS_PRODUCTS." where orders_id = '".xtc_db_input($_POST['oID'])."' and orders_products_id = '".xtc_db_input($_POST['opID'])."'");

//NEU Wenn produkt per Hand einf?gt, wird es von der Lagerverwaltung abgezogen [[email protected]]

xtc_db_query("update ".TABLE_PRODUCTS." set products_quantity = products_quantity + ".$remo['products_quantity'].", products_ordered = products_ordered - ".$remo['products_quantity']." where products_id = '".$remo['products_id']."'");

//END

LEIDER meldet die eingenstrickte Programmierung einen MySQL-Syntax-Fehler - sobald man beim Eintragen der Bestellung wieder einen Artikel löscht:

1064 - You have an error in your SQL syntax; check the manual that

> corresponds to your MySQL server version for the right syntax to use near

> ' products_ordered = products_ordered - where products_id = ''' at line 1

>

> update products set products_quantity = products_quantity + ,

> products_ordered = products_ordered - where products_id = ''

>

> [XT SQL Error]

Nun 2 Fragen:

1. Leider hab ich keine Ahnung vom Programmieren: Kann mir vielleicht jemand helfen und den Syntax-Error aufspüren - vielleicht läuft das eigengestrickte Skript ja doch mit einer Verbesserung. WÄRE SUPER!!!

2. An das XTC-Team: Wenn die Einbindung von händischer Bestelleingabe und funktionierender Lagerverwaltung so einfach ist wie oben beschrieben (das Script funktioniert soweit bis auf den oben gemeldeten Fehler einwandrfrei), könnt ihr die paar Zeilen dann vielleicht in das SP 2.2 einbauen!? Ich denke damit ist vielen vielen Usern geholfen!

PS: Fast jeder meiner Kunden, denen ich einen Shop einrichte, vermisst genau dieses Feature (Lagerverwaltung bei eigens eingestellten Bestellungen).

Danke im Voraus für alle Antworten!

Und bitte XTC-Team: Wenn es nicht noch wesentlich aufwendigere Anpassung braucht, dann baut doch wirklich die Zeilen ein! Wäre phantastisch! Und doch auch für XTC ein Gewinn bzw. neues Feature - ohne große Mühe. Danke!

Link to comment
Share on other sites

  • 1 year later...

Hallo,

ich würde das gerne bei mir einbauen,

weiss aber nicht, ob ich das vorhandene löschen soll,

wäre schön, wenn jemand mir den veränderten code schicken könnte,

ist es korrekt, dass der code in die orders.edit.php eingetragen werden muss,

wäre für eure hilfe echt dankbar, wir haben viele bestellungen,

die über den adminbereich eingetragen werden,

dadurch stimmt der lagerbestand nie,

besten dank im voraus.

Robert

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...