Seite 1 von 2
Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 28.04.2014, 11:19
von HolgerFriese
mein kunde wünscht sich dass zusätzlich zum artikelnamen und der artikelbeschreibung auch ein (oder mehrere) einträge die als produktattribut(e) hinterlegt sind auf der rechnung erscheinen. kann ich diese einträge in der datei rechung_pdf.phtml anzeigen lassen? oder ist das komplizierter als ich jetzt denke - sprich änderungen in mehreren core dateien nötig?
gruss hf
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 29.04.2014, 10:28
von maennchen1.de
Hallo!
Die Produktattribute kannst du in der rechnung_pdf.phtml mittels der im
Tutorial angegebenen Funktion einfügen.
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 12.09.2016, 09:21
von intka
Hallo,
wir möchten ein Produktattribut auf der Rechnung auslesen, um eine zusätzliche Lagernummer vergeben zu können. Diese soll dann auf der Rechnung mit ausgegeben werden, damit der Artikel im Lager schnell gefunden werden kann.
Leider gelingt es mir nur mit "$attributeInfo = $this->callMod('wpsg_mod_produktattribute', 'getAttributeLabel', array(4));" den Namen des Attributes anzuzeigen. Den Wert erhalte ich mit "<?php echo $this->callMod('wpsg_mod_produktattribute', 'getAttributeValue', array($this->view['data']['id'], 4)); ?>" leider nicht. Funktioniert wohl nur im Produkttemplate.
Hat jemand einen Tipp wie ich den Wert in der rechnung_pdf.phtml aufrufen kann? Der Hinweis auf die im Tutorial angegebene Funktion hat mich leider nicht weitergebracht.
Viele Grüße
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 12.09.2016, 10:19
von maennchen1.de
An welcher Stelle in der rechnung_pdf.phtml hast du den Code eingefügt?
Hast du getestet, ob die Variable $this->view['data']['id'] an dieser Stelle existiert/gefüllt ist?
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 13.09.2016, 11:31
von intka
Hallo,
ich bin einen Schritt weiter. Ich habe jetzt in die rechnung_pdf.phtml eingefügt:
Code: Alles auswählen
/**
* Attribute ?
*/
{
$pdf->SetFont('Arial', '', 8);
$produkt_text_cell_width = 75;
$attributeInfo2 = $this->callMod('wpsg_mod_produktattribute', 'getAttributeValue', array($p['id'], 4));
$height += $pdf->wpsg_MultiCell($prod_left + 25, $prod_top + $height + $offset - 0.5, 5, wpsg_translate(__('Lagernummer: #1#', 'wpsg'), $attributeInfo2), 0, 'L', 0, $produkt_text_cell_width);
}
Nun wird die Lagernummer bei Artikeln ohne Variante wie gewünscht auf der Rechnung ausgegeben. Leider schaffe ich es nicht, dass die Lagernummer auch bei Artikeln mit Varianten auf der Rechnung ausgegeben wird.
Der Unterschied für Artikel mit und ohne Variante ist für mich diesbezüglich leider nicht ersichtlich. Habt Ihr eine Idee?
Kurze Anmerkung: Wir vergeben auch bei Artikeln mit Varianten nur eine Lagernummer, da diese sich in der Regel immer im gleichen Regal befinden und dies ausreichend ist.
Viele Grüße
Admin: Formatierungsfunktionen des Forums bitte nutzen! (Habe ich jetzt übernommen.)
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 13.09.2016, 14:50
von maennchen1.de
Es gibt aus unserer Sicht keinen Unterschied zwischen Produkten mit und ohne Varianten, wenn du eine Produktvariable verwenden möchtest.
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 13.09.2016, 18:54
von intka
Hm, Du schreibst "Produktvariable"...
Also ich möchte, kurz gesagt, ein Produktattribut auf der Rechnung anzeigen. In diesem Fall eine Lagernummer. Diese wird dem Produkt zugewiesen.
Hier die Konfig der Produktattribute:
In der Produktverwaltung sieht das dann so aus:
Auf der Rechnung wird das Produktattribut (hier Lagernummer) auch richtig ausgegeben (nachdem ich die rechnung_pdf.phtml wie beschrieben ergänzt habe):
Soweit - so gut.
Jetzt haben wir aber auch Produkte mit Varianten. Beispiel:
Hier ist das Problem. Auf der Rechnung wird dann das Produktattribut (Value) nicht mehr ausgegeben:
Wenn ich bei diesem Produkt die Varianten lösche, wird auch bei diesem Produkt das Produktattribut (Lagernummer) wieder auf der Rechnung ausgegeben, aber natürlich werden die Varianten benötigt.
Ich frage mich also, was die Produkte mit und ohne Variante in diesem Zusammenhang unterscheidet und wo ich da ansetzen kann?
PS: Sorry, dass ich die Formatierung beim vorigen Beitrag vergessen hatte.
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 14.09.2016, 08:44
von maennchen1.de
Entschuldigung. Ich meinte natürlich Produktattribute!
Da in deinem Screenshot 2 unterschiedliche Produkte genannt sind:
Bist du sicher, dass mit der Bestellung des Produktes mit Variante bereits eine Lagernummer hinterlegt wurde? Die Rechnung zeigt ja immer nur das an, was zum Bestellzeitpunkt im Produkt hinterlegt wurde.
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 14.09.2016, 10:31
von intka
Ja, ich habe es aber eben nochmal getestet. Ist auf jeden Fall eingetragen.
Ich kann die Lagernummer auch auf dem Produkttemplate (zu Testzwecken) ausgeben:
Steht im diesem Beispiel über dem Preis.
Leider bekomme ich das Attribut nur nicht auf der Rechnung ausgegeben. Wie gesagt, betrifft nur die Produkte mit Varianten. Sonst geht es.
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 14.09.2016, 10:40
von intka
Ich habe eben mal zur Sicherheit noch bei dem ersten Produkt (Grabegabel), bei dem die Lagernummer (wie oben zu sehen) angezeigt wurde, eine Testvariante angegeben. Jetzt wird das Attribut (Lagernummer) auch hier nicht mehr angezeigt:
Es hängt also im jedem Fall mit den Varianten zusammen...
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 15.09.2016, 11:07
von daschmi
Hi,
verwende mal statt:
Code: Alles auswählen
<?php echo $this->callMod('wpsg_mod_produktattribute', 'getAttributeValue', array($this->view['data']['id'], 1)); ?>
folgende Funktion:
Code: Alles auswählen
<?php echo $this->callMod('wpsg_mod_produktattribute', 'getAttributeValue', array($this->getProduktId($this->view['data']['id']), 1)); ?>
Hintergrund:
Bei Variantenprodukten ist die ID ein Schlüssel aus der ProdutkID und der getroffenen Auswahl. Das Produktartikelmodul hat aber mit den Varianten nichts zu tun und benötigt nur die reine ProduktID, die du mit "getProduktId" erhälst.
In der nächsten Version wird das Produktartikelmodul auch mit den Variantenschlüssel klar kommen, so dass du die ID nicht mehr selber auflösen musst.
Grüße
Daschmi
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 16.09.2016, 09:14
von intka
Hi Daschmi,
wo genau soll ich die Funktion einfügen? In der rechnung_pdf.phtml kann ich das ja in dieser Form nicht machen. Die Anpassung ist hier aber zur Erstellung des PDF nötig (also zur Ausgabe des Attributes auf der Rechnung).
Deshalb dachte ich, ich muss dazu die von mir verwendete Funktion in der rechnung_pdf.phtml anpassen:
Code: Alles auswählen
/**
* Attribute ?
*/
{
$pdf->SetFont('Arial', '', 8);
$produkt_text_cell_width = 75;
$attributeInfo2 = $this->callMod('wpsg_mod_produktattribute', 'getAttributeValue', array($p['id'], 4));
$height += $pdf->wpsg_MultiCell($prod_left + 25, $prod_top + $height + $offset - 0.5, 5, wpsg_translate(__('Lagernummer: #1#', 'wpsg'), $attributeInfo2), 0, 'L', 0, $produkt_text_cell_width);
}
Damit kann ich derzeit zumindest die Produktattribute bei Produkten ohne Variante ausgeben.
Oder habe ich da einen Denkfehler?
Viele Grüße
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 16.09.2016, 10:33
von maennchen1.de
Ich denke es war so gemeint, dass du statt
das verwendest:
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 16.09.2016, 11:00
von intka
Funktioniert. DANKE EUCH!!!
Also, falls mal jemand Produktattribute auf der Rechnung ausgeben will:
Code: Alles auswählen
$attributeInfo = $this->callMod('wpsg_mod_produktattribute', 'getAttributeValue', array($this->getProduktId($p['id']), 4));
$height += $pdf->wpsg_MultiCell($prod_left + 25, $prod_top + $height + $offset - 0.5, 5, wpsg_translate(__('Attribut: #1#', 'wpsg'), $attributeInfo), 0, 'L', 0, $produkt_text_cell_width);
Die Attribute-ID und die Formatierung ist natürlich ggfs. anzupassen.
Re: Produktattribute auf Rechung und Lieferschein anzeigen
Verfasst: 16.09.2016, 16:18
von ThoGoe
Hallo!
Eine andere Möglichkeit wäre:
Code: Alles auswählen
$attributeInfo = $this->callMod('wpsg_mod_produktattribute', 'getProductAttributeByProductId', array($this->getProduktId($p['id'])));
foreach ($attributeInfo as $pa)
{
$pa_text = $pa['name'].': '.$pa['value'];
$height += $pdf->wpsg_MultiCell($prod_left + 10, $prod_top + $height + $offset - 0.5, 5, $pa_text, 0, 'L', 0, $produkt_text_cell_width);
}
Liebe Grüße