VirtueMart - Rechnung, Lieferschein und Quittung Addon

Diese Erweiterung wird nicht mehr gepflegt. Schauen Sie sich stattdessen die Phoca Cart Erweiterung an - eine E-Commerce Lösung für das Joomla! CMS. (Siehe: Phoca Cart Demo)

VirtueMart Rechnung, Lieferschein und Quittung Addon  (VM IDnR Addon)

Das VM IDnR Addon ist ein "Paket" von Komponenten, Plugins und kleinen Hacks, das das Erstellen von PDF Rechnung, PDF Lieferschein und PDF Quittung und den E-Mail versandt dieser Dokumente an Kunden ermöglicht (Die E-Mail Funktion ist "ein kleines Dankeschön" für Nutzer die regelmäßig im Phoca Forum aktiv sind, die regelmäßig Phoca Erweiterungen übersetzen, oder die das Phoca Projekt mit einer Spende unterstützt haben - mehr Informationen wie Sie helfen können und die E-Mail Funktion erhalten, bekommen sie hier: info[at]phoca[dot]cz).

Features:

  • Erstellen der Lieferung (Teillieferung möglich)
  • Erstellen der PDF Rechnung, des PDF Lieferscheins oder Quittung
  • Versenden von PDF Rechnung, Lieferschein oder Quittung per E-Mail an Kunden (Phoca PDF VirtueMart Email plugin)
  • Anzeigen von PDF Rechnung, Lieferschein oder Quittung im Frontend in der Account Maintenance (VirtueMart Hack wird benötigt)
  • Erstellen der Lieferung, PDF der Rechnung, Lieferschein oder Quittung, Versundung per E-Mail - alles automatisch nach Verändern des Bestellstattus (Phoca PDF VirtueMart Email Plugin, VirtueMart Hack wird benötigt)
  • Veränderung der PDF Ausgabe in den Einstellungen (Veränderung des Kopfbereiches, der Höhe des Fußbereiches, der Schrift, usw.)
  • Veränderung der PDF Ausgabe durch Hilfe von CSS Styles in den Einstellungen
  • Veränderung der PDF Ausgabe durch einfaches Anpassen der PDF Templates (mit Hilfe von HTML oder CSS)
  • Veränderung der E-Mail Ausgabe (Email Template) in den Einstellungen (Phoca PDF VirtueMart Email Plugin)
  • Setzen eines Standardwerts für das Erstellen von Rechnung, Lieferschein oder Quittung in den Einstellungen (Phoca PDF VirtueMart Email Plugin)
  • Produktattribute werden im PDF Document angezeigt
  • Zusätzliche Informationen wie: Konto Nr., Mehrwertsteuer, usw. können in den Einstellungen hinzugefügt werden (z.B. im Kopf- oder Fußbereich)

 

VirtueMart Invoice

 

Voraussetzungen:

  • Joomla! 1.5 (getestet mit 1.5.21)
  • VirtueMart (getestet mit 1.1.5)

 

Sehen Sie sich das  Phoca Suoraan Template Demo an (Joomla! Template und VirtueMart Theme)

Installation

1. Installieren Sie die Phoca PDF Komponente (1.0.8 oder spätere Version, Phoca PDF Komponente Download) in Joomla! Erweiterungen. Zum Testen ist es hilfreich, wenn Sie auf Ihrer Seite in der Lage sind, PDF Dokumente zu erzeugen (z.B. mit Hilfe des Phoca PDF Content Plugin).

2. Installieren Sie Phoca PDF VirtueMart Plugin (oder Phoca PDF VirtueMart Email Plugin) in Joomla! Erweiterungen. Schalten Sie dieses Plugin in Joomla! Plugins ein (Phoca PDF VirtueMart Plugin Download Seite).

3. Installieren Sie Phoca Install - VirtueMart Komponente (Phoca Install - VirtueMart component download) in Joomla! Erweiterungen. Überprüfen Sie "Ignorieren der SQL Abfrage" für den Fall, auf Ihrer Seite ist eine ältere Version des VM IDnR Addons installiert. (um nicht Daten zu verlieren). Bevor Sie Dateien und Daten mit Hilfe dieser Komponente installieren, muß VirtuMart bereits auf Ihrer Seite installiert sein.

(4). Falls Sie das Phoca PDF VirtueMart Email Plugin benutzen, installieren Sie die Phoca Email Komponente (Diese Komponente muß installiert sein, bevor Sie folgende Veränderungen machen - Phoca Email component download).

Basismodifikationen:

1. Auslieferung/Delivery Tab in den Details einer Bestellung anzeigen

Verändern Sie folgende Zeile:

administrator/components/com_virtuemart/html/order.order_print.php

 

VON (ca. Zeile 191):

$tab->endTab();
$tab->endPane();

 

ZU:

$tab->endTab();
// Delivery
$lang =& JFactory::getLanguage();
$lang->load('plg_phocapdf_virtuemart', JPATH_ADMINISTRATOR, null, true);
$tab->startTab( JText::_('PLG_PHOCAPDF_VM_DELIVERY_TAB_LBL'), "delivery_pane" );
require_once(CLASSPATH.'ps_order_delivery.php');
$tab->endTab();
// End Delivery
$tab->endPane();

 

Das Basis Addon ist jetzt installiert. Gehen Sie zur "Bestellliste" in Ihrem VirtueMart und klicken Sie auf eine Bestellung (um sie zu Bearbeiten). Der "Auslieferung"/"Delivery" Tab wird jetzt in den Details einer Bestellung angezeigt.

Delivery tab in detail of order in VirtueMart

 

Wenn Sie auf den "Neue Auslieferung"/"New delivery" Button klicken, sind Sie in der Lage eine neue Auslieferung zu erstellen.

New delivery in VirtueMart

 

Sie können eine Rechnung oder Quittung erstellen. Der Lieferschein wird automatisch erstellt. Nach dem Abspeichern der Auslieferung sind Sie in der Lage Rechnung oder Quittung und Lieferschein als PDF zusehen.

Display Invoice, Delivery Note or Receipt as PDF document

 

Falls Sie das Phoca PDF VirtueMart Email Plugin benutzen, können Sie E-Mails an Ihre Kunden verschicken.

Sending PDF to customers in VirtueMart

 

Erweiterte Modifikationen (Phoca PDF VirtueMart Plugin)

1. Rechnung, Lieferschein oder Quittung im Frontend unter "Account Maintenance" anzeigen

Verändern Sie folgende Zeile:

administrator/components/com_virtuemart/classes/ps_order.php

 

VON (ca. Zeile 23)

class vm_ps_order {

 

ZU:

jimport('joomla.filesystem.file');
if (JFile::exists(JPATH_ROOT.DS.'plugins'.DS.'phocapdf'.DS.'virtuemart'.DS.'virtuemarthelper.php')) {
require_once(JPATH_ROOT.DS.'plugins'.DS.'phocapdf'.DS.'virtuemart'.DS.'virtuemarthelper.php');
} else {
return JError::raiseError('Include Error', 'Plugin: Phoca PDF VirtueMart Helper class not found');
}
class vm_ps_order {

 

VON (ca. Zeile 729):

$listObj->addCell( $tmp_cell );

 

ZU:

$listObj->addCell( $tmp_cell );
$delivery = PhocaPDFVirtueMartHelper::renderPDFIconAccount($sess, URL, $db->f("order_id"));
$listObj->addCell($delivery);

 

Danach werden Ihre Kunden in der "Account Maintenance" Ansicht PDF-Icons für Rechnung, Lieferschein oder Quittung (falls erstellt) sehen.

VirtueMart account maintenance - displaying PDF Invoice, Delivery Note or Receipt

 

2. Den Tab Fehler im Detailfenster einer Bestellung reparieren (Wenn Sie auf z.B. auf "Neue Auslieferung"/"New Delivery" im Auslieferung/Delivery Tab klicken, wird die Seite umgeleitet, der Delivery Tab aber nicht angezeig - stattdessen wird der erste Tab wieder angezeigt). Die Seite sollte zurück zum Delivery Tab umgeleitet werden

Verändern Sie folgende Dateie:

administrator/components/com_virtuemart/classes/htmlTools.class.php

 

VON (ca. Zeile 407):

function endPane() {
echo "</div>";

 

ZU:

function endPane() {
echo "</div>";
$d = JRequest::get('request');
if(isset($d['delivery_pane']) && $d['delivery_pane'] == 1) {
$activeTab = 2;
} else {
$activeTab = 0;
}

 

VON: (ca. Zeile 421):

activeTab: 0,

 

ZU:

activeTab: {$activeTab},

 

1. Auslieferung erstellen. Erstellen von PDF der Rechnung, Lieferschein oder Quittung. Per E-Mail versenden der Rechnung, des Lieferscheins oder der Quittung automatisch nach Veränderung des Bestellstatus.

Z.B. wenn Sie den Bestellstatus von "unbearbeitet"/"pending" zu "bestätigt"/"confirmed" verändern, wird die Auslieferung erzeugt, die PDF Dokumente werden erzeugt (Rechnung, Lieferschein oder Quittung) und per E-Mail an den Kunden verschickt.

Modifizieren Sie:

administrator/components/com_virtuemart/classes/ps_order.php,

 

Falls Sie nicht einen früheren Hack verwenden, sollten Sie folgenden Code einfügen:

 

VON (ca. Zeile 23)

class vm_ps_order {

 

ZU:

jimport('joomla.filesystem.file');
if (JFile::exists(JPATH_ROOT.DS.'plugins'.DS.'phocapdf'.DS.'virtuemart'.DS.'virtuemarthelper.php')) {
require_once(JPATH_ROOT.DS.'plugins'.DS.'phocapdf'.DS.'virtuemart'.DS.'virtuemarthelper.php');
} else {
return JError::raiseError('Include Error', 'Plugin: Phoca PDF VirtueMart Helper class not found');
}
class vm_ps_order {

 

Und dann:

 

VON (ca. Zeile 281):

if( !empty($notify_customer) ) {
$this->notify_customer( $d );
}

 

ZU:

$PhocaSend = 0;
if( $curr_order_status=="P" && $d["order_status"]=="C" && $notify_customer == 1) {

PhocaPDFVirtueMartHelper::createDeliveryAndPDFandSendEmail($vmLogger, $VM_LANG, CLASSPATH);
$PhocaSend = 1;
}
if( !empty($notify_customer) ) {
if ($PhocaSend != 1) {
$this->notify_customer( $d );
}
}

 

VirtueMart - update order status and send email with PDF

 

PDF Templates werden in HTML und CSS erstellt und können deshalb in den Phoca PDF VirtueMart (Email) Plugin Einstellungen, oder direkt in den Template Dateien verändert werden. Diese sind im folgenden Ordner zufinden:

plugins/phocapdf/virtuemart/ (im Wurzelverzeichnis (root) Ihrer Joomla! Seite)

  • tmpl.deliverynote.php
  • tmpl.invoice.php
  • tmpl.receipt.php

 

Sie können die Standardeinstellungen für das Erstellen einer Auslieferung setzen:

  • Ob eine Quittung oder eine Rechnung erstellt wird
  • Due days
  • Delay interest

 

Beispiel einer gestylte Rechnung (CSS Attribute und Kopfzeile wurden in den Phoca PDF VirtueMart Plugin Einstellungen verändert - keine Veränderung des PDF Templates):
VirtueMart - styled invoice without editing PDF template
TCPDF Fehler: "Einige Daten wurden bereits ausgegeben, es kann keine PDF Datei gesendet werden"/"Some data has already been output, can't send PDF file"

PDF Dokumente benötigen Kopfzeilen/Document Header ohne jeden Fehler. Manchmal kann es aber passieren, dass Fehler vor der Kopfzeile/Document Header auftreten. Dann kann das PDF nicht im Browser angezeigt werden. In diesem Falle überprüfen Sie Ihre Joomla! und VirtueMart Installation auf PHP Fehlerausgaben.

Meistens ist der Grund eine falsche Kodierung der Dateien - z.B. Srachdateien. Überprüfen Sie, ob die von Ihnen verwendeten Sprachdateien als UFT-8 ohne BOM kodiert abgespeichert wurden. Sie können hierfür z.B. den Texteditor Notepad++ verwenden. Öffnen Sie die Sprachdatei (z.B. administrator/components/com_virtuemart/languages/common/english.php) in Notepad++, Klicken Sie auf "Kodieren"/"Encoding" und wählen Sie "UTF-8 ohne BOM kodieren"/"Encoding in UFT-8 without BOM". Speichern Sie die Datei. Überprüfen Sie die anderen modifizierten Dateien.
Übersetzung:
Alle Sprachdateien folgen den Joomla! Übersetzungsregeln und können hier gefunden werden:
  • Phoca PDF VirtueMart plugin (Phoca PDF VirtueMart Email plugin) - en-GB.plg_phocapdf_virtuemart.ini
  • Phoca PDF component - en-GB.com_phocapdf.ini
  • Phoca Email component - en-GB.com_phocaemail.ini

Sprachdateien können in andere Sprachen übersetzt und dann auf Ihrer Joomla! Seite mit Ihrer Sprache verwendet werden. Lesen Sie dazu diesen Artikel: Wie werden Übersetzungen für Joomla! Erweiterungen erstellt

Phoca Install VirtueMart component ist eine spezielle Datei, die nur für die Installation benötigt wird (für Entwickler oder Administratoren gemacht), deshalb enthält sie keine Übersetzungen (diese Datei ist nur au englisch erhältlich).