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: Zusatzfelder "Einkaufspreis" und "Gewinn"

    parrotsnature

    • Mitglied
    • Beiträge: 154
    • Geschlecht:
    Zusatzfelder "Einkaufspreis" und "Gewinn"
    am: 07. Juni 2021, 13:58:58
    Hallo zusammen,

    ich bin gerade dabei, unseren Onlineshop neu aufzubauen. Gerne würde ich an den Stammdaten der Artikel zwei neue Felder anlegen:

    - Einkaufspreis
    - Gewinn

    Der Gewinn soll auf Basis des ursprünglichen Verkaufspreises und des Einkaufspreises automatisch errechnet und eingetragen werden. Das mit dem Hinzufügen der Zusatzfelder ist soweit ja kein Problem, das wird ja an anderer Stelle hier im Forum bereits ausführlich beschrieben. Nur wir kann ich nun den Gewinn automatisch errechnen lassen? An welcher Stelle muss ich welchen Code einfügen? Für etwas Hilfe wäre ich wirklich sehr dankbar.

    Viele Grüße,
    Bodo

    Linkback: https://www.modified-shop.org/forum/index.php?topic=41899.0

    parrotsnature

    • Mitglied
    • Beiträge: 154
    • Geschlecht:
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #1 am: 07. Juni 2021, 15:44:29
    Also ich habe nun insgesamt 3 neue Felder eingefügt:

    - Lagerplatz (products_storageplace)
    - Einkaufspreis (products_purchprice)
    - Gewinn (products_profit)

    Beim Anlegen dieser Felder bin ich exakt nach dieser Anleitung gegangen, was ja eigentlich nicht schwer ist. Doch leider habe ich anschließend weder in den drei neuen Felder etwas speichern können, noch konnte ich danach noch überhaupt etwas am Artikel ändern. Die Produktbeschreibung bspw. wurde nicht mehr geändert.

    Ich hatte nun Schritt für Schritt alles rückgängig gemacht und doch eher zufällig festgestellt, dass die Anleitung bzgl. der Datei

    admin/includes/classes/categories.php

    nicht mehr ganz aktuell zu sein scheint, denn der Code

    Code: PHP  [Auswählen]
    define('ADD_PRODUCTS_FIELDS','products_manufacturers_model,products_author,products_isbn');

    darf wohl inzwischen nicht mehr in dieser Datei eingetragen werden, sondern muss vielmehr in der Datei

    admin/includes/add_db_fields.php

    eingebunden werden, in meinem Fall habe ich also Folgendes in den Bereich

    //ADD_PRODUCTS_FIELDS

    eingetragen:
    Code: PHP  [Auswählen]
    $add_products_fields[] = 'products_storageplace';
    $add_products_fields[] = 'products_purchprice';
    $add_products_fields[] = 'products_profit';
    Nachdem ich das nun hochgeladen hatte, wurde alles gespeichert, wie es soll.

    Nun habe ich also nur noch das "Problem" mit der automatischen Ausgabe des Gewinns ("Artikelpreis netto" - "Einkaufspreis" = "Gewinn")

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Wenn mir da noch jemand helfen könnte, dann wäre das wirklich prima. Idealerweise wird der Gewinn natürlich so angezeigt wie auch der Artikelpreis netto, also nur als reiner Text, nicht als Eingabefeld. So wie ich das sehe, muss ja "lediglich" dieser Code in der new_product.php  ersetzt werden:

    <?php echo xtc_draw_input_field('products_profit'$pInfo->products_profit'style="width: 155px"'); ?>
    Aber was muss da rein? Das Problem beginnt für mich schon mal damit, dass ich keinen Schimmer habe, wie das Artikelpreis-Netto-Feld eigentlich heißt.

    Q

    • Fördermitglied
    • Beiträge: 1.478
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #2 am: 07. Juni 2021, 21:15:10
    Nabend!

    ich bin gerade dabei, unseren Onlineshop neu aufzubauen.

    Wieso nutzt du dann die Anleitung für Shopversion 1.06 und nicht die für 2.x? Wie du schon erkannt hast, ist die die du verwendest nicht ganz aktuell.

    Auch verstehe ich nicht, wieso in der DB ein eigenes Feld für den Gewinn anlegen willst. Du hast EK und VK jeweils netto in der DB liegen und brauchst diese beim Abrufen nur zu verrechnen. Als Anzeige würde ich dann auch kein Eingabefeld nehmen, sondern einfach nur Ausgeben (siehe auch deine Markierung beim Nettopreis).

    parrotsnature

    • Mitglied
    • Beiträge: 154
    • Geschlecht:
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #3 am: 07. Juni 2021, 21:23:37
    Zitat
    Wieso nutzt du dann die Anleitung für Shopversion 1.06 und nicht die für 2.x? Wie du schon erkannt hast, ist die die du verwendest nicht ganz aktuell.

    Ich habe ehrlich gesagt nicht gesehen, dass diese Anleitung für die Version 1.06 war. Ist mir nicht aufgefallen. Aber grundsätzlich hat es ja am Ende funktioniert.

    Zitat
    Auch verstehe ich nicht, wieso in der DB ein eigenes Feld für den Gewinn anlegen willst. Du hast EK und VK jeweils netto in der DB liegen und brauchst diese beim Abrufen nur zu verrechnen. Als Anzeige würde ich dann auch kein Eingabefeld nehmen, sondern einfach nur Ausgeben (siehe auch deine Markierung beim Nettopreis).

    Naja, was soll ich sagen. Manchmal kommt die Erkenntnis halt erst hinterher. Letztlich ist es ja auch egal, wenn das Eingabefeld "Gewinn" nun angelegt. Dann bleibt es halt am Ende ungenutzt. Grundlegend war mir das ja hinterher auch selbst klar geworden, dass ich mir das hätte sparen können. Drum auch der Teil mit dem "... also nur als reiner Text, nicht als Eingabefeld".

    Da ich ja nun nicht recht weiß, wie das "Artikelpreis"-Feld heißt, fällt es mir jetzt schwer, wie der PHP-Code aussehen muss, der den Gewinn errechnet, zumal ich, was solchen PHP Code angeht, nicht so ganz auf der Höhe bin.

    parrotsnature

    • Mitglied
    • Beiträge: 154
    • Geschlecht:
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #4 am: 07. Juni 2021, 22:23:51
    Nach viel Sucherei über Google habe ich nun endlich etwas gefunden, das mir ein wenig weitergeholfen hat, was die Subtraktion mittels PHP angeht. Mit viel Spielerei bin ich nun endlich am Ziel angekommen, indem ich den folgenden Code eingefügt habe:

    <tr>
    <td><span class="main"><?php echo TEXT_PRODUCTS_PROFIT?></span></td>
    <td><span class="main">


    <?php
       $subtraktion 
    $pInfo->products_price $pInfo->products_purchprice
    ?>

             
    <?php echo $subtraktion?>
             
    </span></td>
    </tr>

    Habe es mehrfach getestet und er rechnet jedes Mal korrekt den Nettobetrag aus. Also genau das, was ich wollte. Und das ganze wird dann auch nur als Text ausgegeben, ganz ohne Eingabefeld, womit ich das in der DB dann gleich wieder löschen kann.

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    parrotsnature

    • Mitglied
    • Beiträge: 154
    • Geschlecht:
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #5 am: 11. Juli 2021, 20:13:49
    Hallo zusammen,

    ich habe es nun in unserem Shop so gelöst, dass der UVP als Artikelpreis (brutto) eingetragen wird. Gast/Stammkunde  (identischer Preis) bekommen dann den eigentlichen Preis, den wir unseren Kunden geben, der dann in den meisten Fällen 10% unter UVP liegt oder auch darunter.

    Nun habe ich ja ein neues Feld Einkaufspreis eingefügt, in dem ich den Netto-EK eintrage. Auf dessen Basis wird mir dann der Netto-Gewinn angezeigt. Jetzt habe ich aber gerade festgestellt, dass dieser Netto-Gewinn ja auf dem Artikelpreis (brutto) basiert und damit also eigentlich gar nicht stimmt, denn korrekterweise sollte nun also der Preis vom Stammkunde gezogen werden. Jetzt ist aber mein Problem, dass ich bisher trotz intensiver Bemühungen nicht herausfinden konnte, wie dieses Feld benannt ist. Ich habe mir die Datei group_prices.php schon angeschaut, da ich vermute, dass es wohl dort steht, kann da aber nichts finden, das es sein könnte. Kann mir da ggf. jemand von Euch behilflich sein? Wäre wirklich prima.

    Viele Grüße,
    Bodo

    Q

    • Fördermitglied
    • Beiträge: 1.478
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #6 am: 11. Juli 2021, 23:10:45
    Schau mal in die Tabellen personal_offers_by_customers_status_x
    (X ist eine Zahl).

    parrotsnature

    • Mitglied
    • Beiträge: 154
    • Geschlecht:
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #7 am: 11. Juli 2021, 23:54:45
    Hallo oneQ. Danke für die Info. Nur wie bekomme ich nun den Preis des jeweiligen Artikels via PHP ausgelesen? Lediglich den Namen der Tabelle anzugeben reicht ja leider nicht aus.

    parrotsnature

    • Mitglied
    • Beiträge: 154
    • Geschlecht:
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #8 am: 12. Juli 2021, 22:57:33
    Also ich habe mir nun einige Stunden die Zeit genommen, das ganze zu verstehen und auf eigene Faust hinzubekommen. Leider reicht meinte PHP-Kenntnis aber nicht so weit, um das allein hinzubekommen. Ich bekomme es leider nicht hin, dass mir anstelle des "Artikelpreis (brutto)" der Preis vom "Gast" oder "Neuer Kunde" (bzw. in unserem Fall "Stammkunde") gezogen wird, von dem dann der EK subtrahiert wird. Kann mir hier nicht ggf. doch jemand eine Hilfestellung geben? Das wäre wirklich prima.

    Grüße, Bodo

    Timm

    • Fördermitglied
    • Beiträge: 6.318
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #9 am: 12. Juli 2021, 23:34:47
    Moin

    Such im Forum mal nach "debug". Wenn du das in der entsprechenden Datei einträgst, dann werden dir alle zur Verfügung stehenden Variablen mit Werten angezeigt. Dann solltest du anhand der Werte die richtige Variable herausbekommen.

    Gruss Timm

    parrotsnature

    • Mitglied
    • Beiträge: 154
    • Geschlecht:
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #10 am: 13. Juli 2021, 07:53:23
    Hi Timm,

    danke für den Tipp mit dem Debugging. Leider finde ich dazu im Forum nicht wirklich etwas brauchbares. Ich bin unter anderem auf diesen Post gestoßen: Smarty debug mit Firebug

    Nur leider wird hier von einer Datei /includes/classes/Smarty_2.6.26/debug.tpl geschrieben, die es bei mir jedoch nicht gibt. Den Ordner "Smarty_2.6.26" gibt es schon gar nicht. Leider komme ich so nicht weiter. Ich habe schon Firebug für Chrome installiert, damit komme ich aber genauso wenig weiter.

    Gruß,
    Bodo

    fiveBytes

    • Mitglied
    • Beiträge: 113
    • Geschlecht:
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #11 am: 13. Juli 2021, 10:05:52
    Einfach das Wort "debug" als Smarty in das Template eintragen, von dem Du die Variablen benötigst:
    Code: PHP  [Auswählen]
    {debug}

    Es öffnet sich dann ein Extrafenster, mit den zur verfügung stehenden Variablen.

    Für den Fall, dass Du es in einem Liveshop benötigst und nich gleich der "ganzen Welt" die Variablen zeigen möchstest, nimmst Du diesen Code:
    Code: PHP  [Auswählen]
    {if $smarty.server.REMOTE_ADDR == 'DEINE-IP'}{debug}{/if}

    Timm

    • Fördermitglied
    • Beiträge: 6.318
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #12 am: 13. Juli 2021, 10:25:13
    Moin

    Er benötigt es in admin/categories.php.... Kann man das auch in PHP Dateien eintragen? Im Admin gibt es ja keine html Dateien.

    Das hatte ich nicht bedacht.

    Gruss Timm

    parrotsnature

    • Mitglied
    • Beiträge: 154
    • Geschlecht:
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #13 am: 13. Juli 2021, 10:28:10
    Wo genau muss ich das einbinden, also in welche Datei?

    Es soll ja im Admin-Bereich an den Artikelstammdaten angezeigt werden, nicht im Frontend, also nicht für den Kunden einsehbar. Daher macht das mit dem "Template" nicht viel Sinn. Wenn ich es nun aber in der

    admin\includes\modules\new_product.php

    eintrage, wird die Seite nicht mehr vollständig angezeigt.

    fiveBytes

    • Mitglied
    • Beiträge: 113
    • Geschlecht:
    Re: Zusatzfelder "Einkaufspreis" und "Gewinn"
    Antwort #14 am: 13. Juli 2021, 11:26:00
    Smartys gibts nur in den Templates, das gilt natürlich auch für das "debug"-Smarty.

    Variablen einer php-Datei ausgeben zu lassen funktioniert z.B. über ein einfaches "echo". Aber hier sind ja eh alle Varibalen direkt im Code erkennbar?! Allerdings sollten im Idealfall keine Anpassungen/Änderungen in der "admin\includes\modules\new_product.php" gemacht werden, denn dies kann zu Problemen bei zukünftigen Updates führen. Daher besser eine entsprechende php-Datein in "admin\includes\extra\modules\new_product" ablegen, dann bleiben die Anpassungen/Änderungen auch updatesicher.
    Marktplatz - Eine große Auswahl an neuen und hilfreichen Modulen sowie modernen Templates für die modified eCommerce Shopsoftware
    6 Antworten
    4645 Aufrufe
    12. März 2018, 14:32:49 von andy.kegel
    10 Antworten
    10833 Aufrufe
    06. Juli 2011, 15:49:42 von Tomcraft
    3 Antworten
    5118 Aufrufe
    13. Mai 2011, 09:00:31 von Tomcraft
               
    anything