Hallo zusammen
Ich möchte, wenn bei einem Ergänzenden Attribut auf dem Produkt der Haken gesetzt ist, soll es den Selbstkostenpreis * 0.82 rechnen und das Ergebnis in dem Ergänzenden Attribut anzeigen.
Ich danke euch für eure Hilfe
Hallo zusammen
Ich möchte, wenn bei einem Ergänzenden Attribut auf dem Produkt der Haken gesetzt ist, soll es den Selbstkostenpreis * 0.82 rechnen und das Ergebnis in dem Ergänzenden Attribut anzeigen.
Ich danke euch für eure Hilfe
Hallo,
nur mit einem „Ergänzende Attribute“ (EA) wird das nicht funktionieren.
Da braucht man imho 2 davon.
Das 1. „EA“ definierst Du als Typ „boolean“ und das 2. „EA“ als „berechnetes Feld“ mit der entsprechenden DB-Abfrage auf das 1. „EA“ und den Preis aus der DB (llx_product_pmp) mit anschließender Rechnung.
Hallo DG-rilling
Vielen Dank für deine Antwort.
Das ich 2 EAs benötige war mir schon klar, leider komme ich mit dem Syntax für die DB-Abfrage nicht zurecht.
Könntest du mir helfen?
Wie muss ich die Abfrage genau im berechneten Feld eingeben damit er mir die Rechnung erstellt?
Das Boolean Feld heisst „Punkte“
Die Funktion müsste wie folgt sein: Wenn Punkte gesetzt dann rechne und zeige an „Selbstkostenpreis * 0.82“.
Vielen Dank
Hallo,
ja die Syntax ist tricky.
Musste damals auch ne Weile probieren bis das Ergebnis (fast) passte.
Der Typ des Feldes ist sinnvollerweise „Preis (Feld mit angehängtem Währungszeichen)“.
Das berechnete Feld sieht so aus:
(($result = $db->query('select pe.internal as punkte, p.pmp as pmp from llx_product_extrafields pe
LEFT JOIN llx_product p ON pe.fk_object = p.rowid WHERE pe.fk_object = '.$object->id.' AND pe.internal = 1')) && ($row = $db->fetch_object($result))) ? round($row->pmp*0.82,2) : ''
Ein Problem besteht allerdings noch (das konnte ich leider bisher nicht lösen )
Der Wert für das berechnete Feld wird nach dem Ändern des Steuerfeldes „punkte“ nicht sofort aktualisiert, sondern erst beim erneuten Laden des Produktes.
Hallo DG-rilling
Wenn ich die Funktion hinzufüge und dann auf dem Produkt etwas anpasse kommt immer folgender Wert: Attribut Active Points hat einen falschen Wert.
Das Attribut mit dem Berechnungsfeld heisst „Active Points“