Fatal Error beim Aufruf eines Artikels

MyOOS hat einen Fehler, oder tut nicht das, was Ihr erwartet? Derartige "Unanehmlichkeiten" bitte hier.
r23
Beiträge: 2625
Registriert: 18.09.2008, 05:56
Wohnort: Hagen
Kontaktdaten:

Beitrag von r23 »

Hallo,

unter
Shop Admin => Konfiguration => Lager hier
Bestandsprüfung = true

Schaltest du die Lagerverwaltung für den Shop ein. Hierbei wird dann bei jedem Verkauf die Bestellmenge von der
Lagermenge abgezogen. Sollte der Mindestlagerbestand (products_reorder_level) unterschrietten werden, erzeugt der Shop
eine Vorschlagliste für die Nachbestellung. Sollte die Lagermenge 0 oder netagiv werden, schlatet der Shop das Produkt
auf *nicht auf lager* und deaktiviert damit die Produkte im Shop.

Bei aktivierter Bestandsprüfung hast du auf der Produkterfassungs Seite das Feld

Mindestlagerbestand:

Wenn das Datenfeld im SQL-BEFEHL leer ist - muss / sollte die Datenbank den Defaultwert '5' verwenden.

[mysql] `products_reorder_level` int(11) NOT NULL DEFAULT '5',
[/mysql]

und dies funktioneiert nach deiner Meldung nicht.
ein warum kann ich leider nicht sagen. Dafür fehlen einfach zuviele Informationen.

cu

ralf
r23
Beiträge: 2625
Registriert: 18.09.2008, 05:56
Wohnort: Hagen
Kontaktdaten:

Beitrag von r23 »

Hallo,

[quote='päde',index.php?page=Thread&postID=1430#post1430]
Der Fehler ist also beim Fehlen des Übergabewertes 0 für products_reorder_level zu suchen.
[/quote]

in der MyOOS Version 2.1 habe ich dies so gelöst, dass das Script prüft, ob ein Wert übergeben wird, falls nicht verwendet das Skript den
hinterlegten Wert... falls dieser nicht gültig ist einen festen Wert

Hier der Diff
http://svn.berlios.de/viewvc/oos/trunk/ ... 437&r2=439

die Änderungen ist nur in der Datei
~/shop/admin/includes/produts.php
http://svn.berlios.de/viewvc/oos/trunk/ ... p?view=log

Revision 439

mit leichten Anpassungen läuft dies auch in 1.6.x

cu

ralf
päde
Beiträge: 30
Registriert: 24.09.2008, 15:11
Kontaktdaten:

Beitrag von päde »

Hallo Ralf

Langsam aber sicher bin ich am verzweifeln.... ;(

Ich habe nun den Wert des products_reorder_level "hart" auf 0 gesetzt. Nun kommt bereits der nächste fehlende Wert dieses Eintrages....

Code: Alles auswählen

(2009-10-07 17:20:39) mysql error: [1366: Incorrect integer value: '' for column 'products_discount1_qty' at row 1] in EXECUTE("INSERT INTO products (products_quantity, products_reorder_level, products_model, products_ean, products_image, products_subimage1, products_subimage2, products_subimage3, products_subimage4, products_subimage5, products_subimage6, products_price, products_base_price, products_product_quantity, products_base_quantity, products_base_unit, products_date_available, products_weight, products_status, products_tax_class_id, manufacturers_id, products_price_list, products_discount_allowed, products_quantity_order_min, products_quantity_order_units, products_discount1, products_discount1_qty, products_discount2, products_discount2_qty, products_discount3, products_discount3_qty, products_discount4, products_discount4_qty, products_sort_order, products_date_added) values ('1', '0', '', '', '', '', '', '', '', '', '', '10.2230483271', '1', '1', '1', '', null, '1', '3', '3', '6', '0', '0.00', '1', '1', '0', '', '0', '', '0', '', '0', '', '', now())")


Komisch finde ich einfach nach wie vor, dass er im products_description nicht den nächst höheren Wert für products_id nimmt, sondern den Wert 0. Meines Erachtens fängt damit das Problem an.

Ich habe auch schon den ganzen Adminbereich auf die alte laufende Version (1.6.3) zurück gesetzt. Leider mit dem selben Ergebnis. Das zeigt mir also auf, dass es nicht an einer Datei im Verzeichnis \shop\admin liegen kann. Und soviel ich verstehe, werden für den Neueintrag eines Produktes nur Dateien aus diesem Ordner verwendet, oder?

Wo könnte demzufolge das Problem sein? Wurde etwas in der Datenbank zwischen Version 1.6.3 und 1.6.16 geändert? Ich habe nämlich einfach die komplette DB importiert....

Vielen Dank für deinen unermüdlichen Einsatz.

Gruss
Päde
r23
Beiträge: 2625
Registriert: 18.09.2008, 05:56
Wohnort: Hagen
Kontaktdaten:

Beitrag von r23 »

[quote='päde',index.php?page=Thread&postID=1439#post1439]

Langsam aber sicher bin ich am verzweifeln.... ;(

[/quote]

Ich habe XAMPP 1.7.2
http://www.apachefriends.org/de/xampp-windows.html

und es ausprobiert... hier funktioniert es ...


[quote='päde',index.php?page=Thread&postID=1439#post1439]

Code: Alles auswählen

(2009-10-07 17:20:39) mysql error: [1366: Incorrect integer value: '' for column 'products_discount1_qty' at row 1] in EXECUTE("INSERT INTO products (products_quantity, products_reorder_level, products_model, products_ean, products_image, products_subimage1, products_subimage2, products_subimage3, products_subimage4, products_subimage5, products_subimage6, products_price, products_base_price, products_product_quantity, products_base_quantity, products_base_unit, products_date_available, products_weight, products_status, products_tax_class_id, manufacturers_id, products_price_list, products_discount_allowed, products_quantity_order_min, products_quantity_order_units, products_discount1, products_discount1_qty, products_discount2, products_discount2_qty, products_discount3, products_discount3_qty, products_discount4, products_discount4_qty, products_sort_order, products_date_added) values ('1', '0', '', '', '', '', '', '', '', '', '', '10.2230483271', '1', '1', '1', '', null, '1', '3', '3', '6', '0', '0.00', '1', '1', '0', '', '0', '', '0', '', '0', '', '', now())")

[/quote]

Evlt ist deine MySQL Version zu buglastig, dass diese einfache Deafult Werte nicht einfügt.

[quote='päde',index.php?page=Thread&postID=1439#post1439]
Komisch finde ich einfach nach wie vor, dass er im products_description nicht den nächst höheren Wert für products_id nimmt, sondern den Wert 0. Meines Erachtens fängt damit das Problem an.
[/quote]

Warum sollte sich bei Produkt Beschreibung in einer anderen Sprache die ID ändern?

das Produkt hat eine eindeutige ID
Zu dieser Produkt ID gibt es Produkt Beschreibungen in unterschiedlichen Sprachen. Hier ändert sich *keine* Produkt ID... diese sollte selbstverständlich nicht 0 (Zahl null sein)

[quote='päde',index.php?page=Thread&postID=1439#post1439]
Ich habe auch schon den ganzen Adminbereich auf die alte laufende Version (1.6.3) zurück gesetzt.
[/quote]

Die Version 1.6. ist eine Stabile Version! Es werden keine neuen Funktionen eingebaut! Wird ein Fehler gefunden wird dieser Beseitigt.
Zwischen 1.6.5 und 1.6.6 wurden die Grafiken im Shop von png auf gif umgestellt, weil der Internet Explorer Probleme mit transparenten pngs hatte,
und wir *weniger* verkauften.
zwischen 1.6.7 und 1.6.16 wurde die Datenbank auf die mySQL Version 5.x umgestellt.

Leider mit dem selben Ergebnis. Das zeigt mir also auf, dass es nicht an einer Datei im Verzeichnis \shop\admin liegen kann. Und soviel ich verstehe, werden für den Neueintrag eines Produktes nur Dateien aus diesem Ordner verwendet, oder?

[quote='päde',index.php?page=Thread&postID=1439#post1439]
Wo könnte demzufolge das Problem sein? Wurde etwas in der Datenbank zwischen Version 1.6.3 und 1.6.16 geändert? Ich habe nämlich einfach die komplette DB importiert....
[/quote]

Mit der Veröffentlich der Version 1.7.x bin ich nicht davon ausgegangen, dass ich mich 3 Jahre später noch mit 1.6.x beschäftigen muss.
erst bei der Versin 2.1 kann ich deratige Fragen beantworten - bzw. kann sich der Anwender darüber informieren.

Anwender, die die Version 1.6. verwenden stellen wir die aktuelle Version 1.6.x zur Verfügung. Nach meiner Meinung sind Änderungen an der Datenbank nicht notwenidg.

D.h. wir lernen durch dieses Update Verweigerung dazu und regaieren selbstverständlich darauf... damit dies zukünftig für den Anwender leichter wird.
Vom Konzept her waren Updates alle 2-3 Monate nötig gewesen....

cu

ralf
päde
Beiträge: 30
Registriert: 24.09.2008, 15:11
Kontaktdaten:

Beitrag von päde »

Moin Moin
Warum sollte sich bei Produkt Beschreibung in einer anderen Sprache die ID ändern?

das Produkt hat eine eindeutige ID
Zu dieser Produkt ID gibt es Produkt Beschreibungen in unterschiedlichen Sprachen. Hier ändert sich *keine* Produkt ID... diese sollte selbstverständlich nicht 0 (Zahl null sein)
Ich glaube, dass ich mich falsch ausgedrückt habe....
Es ist so, dass wenn ich versuche einen Artikel neu aufzunehmen, dass er dann im Table products_description für jede Sprache einen neuen Eintrag macht, jedoch bei products_id jeweils die Zahl 0 nimmt, obwohl schon mehr als 800 Produkte enthalten sind. Meiner Meinung nach sollte doch products_id eine fortlaufende Nummer nehmen (also bei 800 Artikel, sollte er dann anstatt 0 die Zahl 801 für die products_id nehmen)... und dies macht er in der alten laufenden Umgebung auch....

Aber der Ansatz, dass die aktuell verwendete MySQL-Version zu fehlerhaft ist, scheint mir plausibel und ich werde dies auch noch testen.

Gruss und Danke
Päde
r23
Beiträge: 2625
Registriert: 18.09.2008, 05:56
Wohnort: Hagen
Kontaktdaten:

Beitrag von r23 »

Hallo,

die product_id wird mit

Code: Alles auswählen

$products_id = oosDBPrepareInput($_GET['pID]);
in dem Skript angenommen.

Hier aus meiner Umgebung die funktiosnfähige products.php

Diese Datei
http://www.oos-shop.de/service/oos16x/products.txt

einfach als PHP -Datei in den Admin kopieren. (alte Datei selbstversändlich sichern)

Die MyOOS Version 2.1 ist hammer geil ;) Nagut die Gestaltung noch nicht :(
und läuft hier zum Leid der Sponsoren bereits
http://www.myoos.de/

cu

ralf
Antworten