Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Lieferstatus anpassen bei Menge X im Lagerbestand

    karsta.de

    • Experte
    • Beiträge: 3.157
    Re: Lieferstatus anpassen bei Menge X im Lagerbestand
    Antwort #15 am: 08. Januar 2024, 17:22:00
    Das Script hat Wirkung, wenn der Artikel gekauft wird und der Bestand sich dadurch verringert.
    Es handelt sich dabei genau um die Erweiterung von noRiddle aus dem oben erwähnten Beitrag Lieferzeit erhöhen wenn nicht verfügbar.
    Das Script wurde nur anders benannt.

    BG Karsta
    Managed Server

    floppy25

    • Neu im Forum
    • Beiträge: 26
    Re: Lieferstatus anpassen bei Menge X im Lagerbestand
    Antwort #16 am: 08. Januar 2024, 17:31:20
    Also kopiere ich nur den Inhalt :
    Code: PHP  [Auswählen]
    <?php
    /*************************************************************
    * file: pr_set_shipping_time.php
    * path: /includes/extra/checkout/checkout_process_products/
    * use: set shipping time depending on stock
    *
    * Vorschlag von noRiddle 05-2020
    *************************************************************/


    //config
    $which_stock_limit = 1; //ab welchem Bestand Lieferzeit erhöhen ?
    $which_shipping_time_id = 2; //welche Lieferzeit-ID soll gesetzt werden wenn obiger Bestand erreicht ist ?

    if(STOCK_LIMITED == 'true') {
        if($stock_left <= $which_stock_limit) {
            xtc_db_query("UPDATE ".TABLE_PRODUCTS."
                             SET products_shipping_time = "
    .$which_shipping_time_id."
                           WHERE products_id = "
    .(int)xtc_get_prid($order->products[$i]['id']));
        }
    }
    ?>

    in die Datei lieferlagerbestand.php ?

    karsta.de

    • Experte
    • Beiträge: 3.157
    Re: Lieferstatus anpassen bei Menge X im Lagerbestand
    Antwort #17 am: 08. Januar 2024, 18:02:05
    Kannst du machen, aber schau vorher welche ID der Lieferstatus hat, der gesetzt werden soll.

    BG Karsta

    Q

    • Fördermitglied
    • Beiträge: 1.537
    Re: Lieferstatus anpassen bei Menge X im Lagerbestand
    Antwort #18 am: 08. Januar 2024, 22:46:10
    Also kopiere ich nur den Inhalt :
    ...
    in die Datei lieferlagerbestand.php ?
    Und du solltest den Code dann auch entsprechend anpassen. Wenn Du ihn 1:1 übernimmst, wird wieder bei Bestand = 1 die Lieferzeit geändert!
    Code: PHP  [Auswählen]
    $which_stock_limit = 0; //ab welchem Bestand Lieferzeit erhöhen ?
    wäre so eine Idee.....

    Q

    • Fördermitglied
    • Beiträge: 1.537
    Re: Lieferstatus anpassen bei Menge X im Lagerbestand
    Antwort #19 am: 08. Januar 2024, 23:00:56
    Habe aus der <=1  schon eine <=0 gemacht, jedoch ohne Auswirkungen.
    Wie Karsta schon geschrieben hat, wirkt sich die Änderung auf zukünftige "Fälle" aus. Die alten sind in der DB jetzt mit den anderen Lieferstatus eingetragen.

    Wenn Du direkt an der Datenbank arbeiten kannst (z.B. mit phpmyadmin):
    Angenommen die normale Lieferzeit hat die ID = 1, dann sollte folgendes alle Produkte mit dem Bestand > 0 wieder auf den Lieferstatus bringen:
    Code: SQL  [Auswählen]
    UPDATE products
    SET products_shippingtime = 1
    WHERE products_quantity > 0;
    Willst Du nur die mit Bestand = 1 ändern, am Ende das >0 durch =1 ersetzen und falls die ID für die Lieferzeit bei Verfügbarkeit eine andere ist diese bei
    Code: SQL  [Auswählen]
    products_shippingtime =
    ändern.

    Wichtig! Vorher ein Backup von der Datenbank machen! Falls doch was schief gehen sollte.

    floppy25

    • Neu im Forum
    • Beiträge: 26
    Re: Lieferstatus anpassen bei Menge X im Lagerbestand
    Antwort #20 am: 09. Januar 2024, 17:06:02
    So da bin ich wieder.

    An der Datenbank was machen, ist ausserhalb meines könnens.

    Die php Datei sieht jetzt so aus, richtig?

    Code: PHP  [Auswählen]
    if($stock_left = 0) {
        xtc_db_query("UPDATE ".TABLE_PRODUCTS." SET products_shippingtime = '2' products_id = '".xtc_get_prid($order->products[$i]['id'])."'");
    }
    <?php
    /*************************************************************
    * file: pr_set_shipping_time.php
    * path: /includes/extra/checkout/checkout_process_products/
    * use: set shipping time depending on stock
    *
    * Vorschlag von noRiddle 05-2020
    *************************************************************/


    //config
    $which_stock_limit >= 1; //ab welchem Bestand Lieferzeit erhöhen ?
    $which_shipping_time_id = 1; //welche Lieferzeit-ID soll gesetzt werden wenn obiger Bestand erreicht ist ?

    if(STOCK_LIMITED == 'true') {
        if($stock_left <= $which_stock_limit) {
            xtc_db_query("UPDATE ".TABLE_PRODUCTS."
                             SET products_shipping_time = "
    .$which_shipping_time_id."
                           WHERE products_id = "
    .(int)xtc_get_prid($order->products[$i]['id']));
        }
    }
    ?>

    Bei Bestand gleich Null - Lieferzeit ID 2 - nicht lieferbar.
    Bei Bestand größer gleich 1 -Lieferzeit  ID 1 - lieferbar.

    Wenn ich nun einen neuen Artikel anlege, sollte es doch greifen, oder?
    Denn es ändert sich leider nichts.

    Hat aber nichts damit zu tun, da die Datei ja unter Checkout......   liegt. Oder mus ich artikelanzahl 2 einstellen, 1x selber kaufen - Macht ja keinen Sinn.

    Ich hoffe ich nerve nicht zu sehr mit dem Thema, nur Leider kann ich dadurch meine ganze Retourenware nicht verkaufen.

    Oder doch erst Update auf 3.0 und dann weiter suchen!

    Q

    • Fördermitglied
    • Beiträge: 1.537
    Re: Lieferstatus anpassen bei Menge X im Lagerbestand
    Antwort #21 am: 09. Januar 2024, 19:18:38
    :panic: oh weh. Bitte nicht. Du würfest da gerade einiges durcheinander. Die ersten Zeilen sind außerhalb vom PHP-Tag und würden vermutlich für komische Anzeigen sorgen und kein update durchführen. Der untere Code soll vermutlich die Anzeige wieder "zurücksetzen", was es theoretisch tun würde, wenn jemand einen Artikel mit Bestand >= 1 bestellt. Da die "Problemartikel" aber als "nicht Lieferbar" angezeigt werden, wird das wohl nicht passieren.

    Mein Vorschlag:
    Code: PHP  [Auswählen]
    <?php
    /*************************************************************
    * file: pr_set_shipping_time.php
    * path: /includes/extra/checkout/checkout_process_products/
    * use: set shipping time depending on stock
    *
    * Vorschlag von noRiddle 05-2020
    *************************************************************/


    //config
    $which_stock_limit = 0; //ab welchem Bestand Lieferzeit erhöhen ?
    $which_shipping_time_id = 2; //welche Lieferzeit-ID soll gesetzt werden wenn obiger Bestand erreicht ist ?

    if(STOCK_LIMITED == 'true') {
        if($stock_left <= $which_stock_limit) {
            xtc_db_query("UPDATE ".TABLE_PRODUCTS."
                             SET products_shipping_time = "
    .$which_shipping_time_id."
                           WHERE products_id = "
    .(int)xtc_get_prid($order->products[$i]['id']));
        }
    }
    ?>

    Wie verarbeitest Du die Retouren im Shop? Vielleicht kann man dort ansetzen um Lieferstatus bei einer Retoure wieder auf 1 zu setzen.

    Q

    • Fördermitglied
    • Beiträge: 1.537
    Re: Lieferstatus anpassen bei Menge X im Lagerbestand
    Antwort #22 am: 09. Januar 2024, 20:06:54
    Jetzt gibts noch einen Nachschlag.....  . Aber Vorsicht! Ich bin heute sehr verwirrt, also vorher DB Backup!!!!

    Folgende Datei auspacken und in ~/DEIN_ADMIN/includes/extra/modules/orders/orders_action/ kopieren und dann im Shop

    DEINE_SHOP_ADRESSE/DEIN_ADMIN/orders.php?action=custom&subaction=reset_shipping

    aufrufen. Dabei bitte die groß geschriebenen Teile entsprechend deines Shops ändern.

    Das ist jetzt etwas quick&dirty, weil weder ein Button zum Aufrufen noch eine Rückmeldung erscheint. Nach dem Aufruf sollten aber alle Artikel mit Bestand >0 wieder die shippingtime-ID = 1 haben

    floppy25

    • Neu im Forum
    • Beiträge: 26
    Re: Lieferstatus anpassen bei Menge X im Lagerbestand
    Antwort #23 am: 10. Januar 2024, 09:38:33
    Guten morgen und danke dafür.

    Ich probiere es heute im Laufe des Tages und berichte dann.

    floppy25

    • Neu im Forum
    • Beiträge: 26
    Re: Lieferstatus anpassen bei Menge X im Lagerbestand
    Antwort #24 am: 10. Januar 2024, 16:27:31
    Habe alles nach Anleitung gemacht.
    Leider kein Erfolg.
    Artikel mit Bestand=1 sind nicht lieferbar.

    Wenn nötig habe ich auch kein Problem damit, wenn sich ein Supporter das mal mit mir anschaut. Natürlich mit Aufwandentschädigung. Ist vielleicht auch einfacher wenn man die Konfigurationen Live sieht als nur durch meine Beschreibungen.
    Trade Republic - Provisionsfrei Aktien handeln
    5 Antworten
    3625 Aufrufe
    22. November 2010, 12:25:33 von michaeld
    44 Antworten
    31921 Aufrufe
    18. Januar 2017, 14:27:18 von maidofkent
               
    anything