Errormeldungen bulky_goods

Ich erhalte folgende Errormeldungen:
An exception occurred while executing ‚SELECT d.id as key, d.id, d.name, d.description, d.calculation, d.status_link, b.* FROM s_premium_dispatch d INNER JOIN (SELECT ‚1‘ as instock,‚1‘ as stockmin,‚1‘ as laststock,‚0.050‘ as weight,‚1‘ as count_article,‚0‘ as shippingfree,‚16‘ as amount,‚14.86‘ as amount_net,‚16.00‘ as amount_display,‚8.000‘ as length,‚4.000‘ as height,‚4.000‘ as width,‘’ as userID,‚0‘ as has_topseller,‚‘ as has_comment,‚0‘ as has_esd,‚7.7‘ as max_tax,‚0‘ as basketStateId,‚26‘ as countryID,‚18‘ as paymentID,‚1‘ as customergroupID,‚1‘ as multishopID,‚e715e89b6bffb8278d7fe4a6577a0280‘ as sessionID) b ON 1=1 INNER JOIN s_premium_dispatch_countries dc ON d.id = dc.dispatchID AND dc.countryID=b.countryID INNER JOIN s_premium_dispatch_paymentmeans dp ON d.id = dp.dispatchID AND dp.paymentID=b.paymentID LEFT JOIN s_premium_holidays h ON h.date = CURDATE() LEFT JOIN s_premium_dispatch_holidays dh ON d.id=dh.dispatchID AND h.id=dh.holidayID LEFT JOIN (SELECT dc.dispatchID FROM s_order_basket b INNER JOIN s_articles_categories_ro ac ON ac.articleID = b.articleID INNER JOIN s_premium_dispatch_categories dc ON dc.categoryID = ac.categoryID WHERE (b.modus = 0) AND (b.sessionID = ?) GROUP BY dc.dispatchID) dk ON dk.dispatchID=d.id LEFT JOIN s_user u ON u.id=b.userID AND u.active=1 LEFT JOIN s_user_addresses ub ON ub.user_id = u.id AND ub.id = ? LEFT JOIN s_user_addresses us ON us.user_id = u.id AND us.id = ? WHERE (d.active = 1) AND ((
(bind_time_from IS NULL AND bind_time_to IS NULL)
OR
(IFNULL(bind_time_from,0) <= IFNULL(bind_time_to,86400) AND TIME_TO_SEC(DATE_FORMAT(NOW(),„%H:%i:00“)) BETWEEN IFNULL(bind_time_from,0) AND IFNULL(bind_time_to,86400))
OR
(bind_time_from > bind_time_to AND TIME_TO_SEC(DATE_FORMAT(NOW(),„%H:%i:00“)) NOT BETWEEN bind_time_to AND bind_time_from)
)) AND ((
(bind_weekday_from IS NULL AND bind_weekday_to IS NULL)
OR
(IFNULL(bind_weekday_from,1) <= IFNULL(bind_weekday_to,7) AND WEEKDAY(NOW())+1 BETWEEN IFNULL(bind_weekday_from,1) AND IFNULL(bind_weekday_to,7))
OR
(bind_weekday_from > bind_weekday_to AND WEEKDAY(NOW())+1 NOT BETWEEN bind_weekday_to AND bind_weekday_from)
)) AND ((bind_weight_from IS NULL OR bind_weight_from <= b.weight)) AND ((bind_weight_to IS NULL OR bind_weight_to >= b.weight)) AND ((bind_price_from IS NULL OR bind_price_from <= b.amount)) AND ((bind_price_to IS NULL OR bind_price_to >= b.amount)) AND ((bind_instock=0 OR bind_instock IS NULL OR (bind_instock=1 AND b.instock) OR (bind_instock=2 AND b.stockmin))) AND ((bind_laststock=0 OR (bind_laststock=1 AND b.laststock))) AND ((bind_shippingfree!=1 OR NOT b.shippingfree)) AND (dh.holidayID IS NULL) AND ((d.multishopID IS NULL OR d.multishopID=b.multishopID)) AND ((d.customergroupID IS NULL OR d.customergroupID=b.customergroupID)) AND (dk.dispatchID IS NULL) AND (d.type IN (0)) AND ((d.id != 9 OR (has_bulky_goods))) GROUP BY d.id ORDER BY d.position, d.name ASC’ with params („e715e89b6bffb8278d7fe4a6577a0280“, 0, 0):

SQLSTATE(42S22): Column not found: 1054 Unknown column ‚has_bulky_goods‘ in ‚where clause‘

Hi,

… da fehlt eine Spalte in einer Tabelle - evtl. wurde ein Plugin nicht sauber deinstalliert ?
Da hilft evtl. nur ein Backup Restore.

Viele Grüße

Du musst das Freitextfeld „has_bulky_goods“ erst anlegen.

Dann die Sperrgutartikel auch in der Datenbank markieren.

Die aktuelle Fehlermeldung:

An exception occurred while executing 'SELECT d.id as `key`, d.id, d.name, d.description, d.calculation, d.status_link, b.* FROM s_premium_dispatch d INNER JOIN (SELECT '1' as `instock`,'0' as `stockmin`,'0' as `laststock`,'1.100' as `weight`,'1' as `count_article`,'0' as `shippingfree`,'41' as `amount`,'38.07' as `amount_net`,'41.00' as `amount_display`,'170.000' as `length`,'30.000' as `height`,'50.000' as `width`,'' as `userID`,'0' as `has_topseller`,'' as `has_comment`,'0' as `has_esd`,'7.7' as `max_tax`,'0' as `basketStateId`,'26' as `countryID`,'18' as `paymentID`,'1' as `customergroupID`,'1' as `multishopID`,'96fd5d1b10d15e6697d665d75bddf0e8' as `sessionID`) b ON 1=1 INNER JOIN s_premium_dispatch_countries dc ON d.id = dc.dispatchID AND dc.countryID=b.countryID INNER JOIN s_premium_dispatch_paymentmeans dp ON d.id = dp.dispatchID AND dp.paymentID=b.paymentID LEFT JOIN s_premium_holidays h ON h.date = CURDATE() LEFT JOIN s_premium_dispatch_holidays dh ON d.id=dh.dispatchID AND h.id=dh.holidayID LEFT JOIN (SELECT dc.dispatchID FROM s_order_basket b INNER JOIN s_articles_categories_ro ac ON ac.articleID = b.articleID INNER JOIN s_premium_dispatch_categories dc ON dc.categoryID = ac.categoryID WHERE (b.modus = 0) AND (b.sessionID = ?) GROUP BY dc.dispatchID) dk ON dk.dispatchID=d.id LEFT JOIN s_user u ON  u.id=b.userID AND u.active=1 LEFT JOIN s_user_addresses ub ON ub.user_id = u.id AND ub.id = ? LEFT JOIN s_user_addresses us ON us.user_id = u.id AND us.id = ? WHERE (d.active = 1) AND ((
                (bind_time_from IS NULL AND bind_time_to IS NULL)
                OR
                (IFNULL(bind_time_from,0) <= IFNULL(bind_time_to,86400) AND TIME_TO_SEC(DATE_FORMAT(NOW(),"%H:%i:00")) BETWEEN IFNULL(bind_time_from,0) AND IFNULL(bind_time_to,86400))
                OR
                (bind_time_from > bind_time_to AND TIME_TO_SEC(DATE_FORMAT(NOW(),"%H:%i:00")) NOT BETWEEN bind_time_to AND bind_time_from)
            )) AND ((
                (bind_weekday_from IS NULL AND bind_weekday_to IS NULL)
                OR
                (IFNULL(bind_weekday_from,1) <= IFNULL(bind_weekday_to,7) AND WEEKDAY(NOW())+1 BETWEEN IFNULL(bind_weekday_from,1) AND IFNULL(bind_weekday_to,7))
                OR
                (bind_weekday_from > bind_weekday_to AND WEEKDAY(NOW())+1 NOT BETWEEN bind_weekday_to AND bind_weekday_from)
            )) AND ((bind_weight_from IS NULL OR bind_weight_from <= b.weight)) AND ((bind_weight_to IS NULL OR bind_weight_to >= b.weight)) AND ((bind_price_from IS NULL OR bind_price_from <= b.amount)) AND ((bind_price_to IS NULL OR bind_price_to >= b.amount)) AND ((bind_instock=0 OR bind_instock IS NULL OR (bind_instock=1 AND b.instock) OR (bind_instock=2 AND b.stockmin))) AND ((bind_laststock=0 OR (bind_laststock=1 AND b.laststock))) AND ((bind_shippingfree!=1 OR NOT b.shippingfree)) AND (dh.holidayID IS NULL) AND ((d.multishopID IS NULL OR d.multishopID=b.multishopID)) AND ((d.customergroupID IS NULL OR d.customergroupID=b.customergroupID)) AND (dk.dispatchID IS NULL) AND (d.type IN (0)) AND ((d.id != 9 OR (has_bulky_goods))) GROUP BY d.id ORDER BY d.position, d.name ASC' with params ("96fd5d1b10d15e6697d665d75bddf0e8", 0, 0):

SQLSTATE(42S22): Column not found: 1054 Unknown column 'has_bulky_goods' in 'where clause'

Hier die Screenshots:



Freitextfeld_Sperrgut

Gemäss dieser Anleitung bis und mit Schritt 9:

Dann scheinst du einen Fehler in den Schritten 1-4 zu haben.

Habe ich eigentlich so angelegt:

Ich sehe auch keinen Fehler.

Blockzitat
An exception occurred while executing ‚SELECT d.id as key, d.id, d.name, d.description, d.calculation, d.status_link, b.* FROM s_premium_dispatch d INNER JOIN (SELECT ‚1‘ as instock,‚1‘ as stockmin,‚1‘ as laststock,‚0.050‘ as weight,‚1‘ as count_article,‚0‘ as shippingfree,‚16‘ as amount,‚14.86‘ as amount_net,‚16.00‘ as amount_display,‚8.000‘ as length,‚4.000‘ as height,‚4.000‘ as width,‘’ as userID,‚0‘ as has_topseller,‚‘ as has_comment,‚0‘ as has_esd

In deiner Fehlermeldung müsste dei Variable direkt hinter „has_esd“ stehen. Hast du den Cache und auch die Shopware Konfiguration gelöscht?
Hier stehen genau die Variablen aus der erweiterten SQL Abfrage, wobei deine Erweiterung ‚has_bulky_goods‘ an derStelle fehlt.

Ich habe den Verstandkosten „has_bulky_goods“ wieder entfernt. Ansonsten kann man man derzeit nicht bestellen. Was soll ich tun, um das Problem zu lösen? Der Eintrag im Versandkosten-Modul habe ich laut der Anleitung gemacht.

Abgesehen davon, dass es so im Normalfall funktioniert, könntest du auch die Gewichte der Sperrgutartikel z.B. auf 33,333 manuell anheben, damit andere Versandkosten berechnet werden. Dann brauchts du die Extravariable nicht.

Geht nicht, da ein Versandkostenfreibetrag existiert, den ich für Sperrgutartikel nicht möchte.