Categorie├źn
Magento PHP

Magento factuurdatum toevoegen aan PDF

Bij Pronamic krijgen we regelmatig de vraag om de factuurdatum toe te voegen aan de Magento factuur PDF. Volgens de belastingdienst moet de factuurdatum immers verplicht op de factuur staan. Op internet zijn gelukkig genoeg pagina’s te vinden waarop wordt uitgelegd hoe je dit voor elkaar kunt krijgen.

Als je de factuurdatum achter het factuurnummer wilt plaatsen in de PDF kun je daarvoor de volgende code gebruiken.

$page->drawText(Mage::helper('sales')->__('Invoice Date') . ': ' . Mage::helper('core')->formatDate($invoice->getCreatedAt(), 'full', false), 285, 780, 'UTF-8');

Deze regel kun je toevoegen aan het bestand ‘app/code/local/Mage/Sales/Model/Order/Pdf’ onder de regel:

$page->drawText(Mage::helper('sales')->__('Invoice # ') . $invoice->getIncrementId(), 35, 780, 'UTF-8');

De datum kan in verschillende formaten worden weergegeven in de PDF. Hier voor wordt gebruik gemaakt van de ‘formatDate’ functie. Binnen de 2e parameter kun je opgeven in welk formaat de datum weergegeven moet worden. Je kunt hiervoor kiezen uit de volgende PHP class constanten uit de Mage_Core_Model_Locale class:

  • Mage_Core_Model_Locale::FORMAT_TYPE_FULL = ‘full’
  • Mage_Core_Model_Locale::FORMAT_TYPE_LONG = ‘long’
  • Mage_Core_Model_Locale::FORMAT_TYPE_MEDIUM = ‘medium’
  • Mage_Core_Model_Locale::FORMAT_TYPE_SHORT = ‘short’

Als je werkt met de Nederlandse Magento dan kun je de volgende output verwachten:

  • ‘full’ = maandag 31 januari 2011
  • ‘long’ = 31 januari 2011
  • ‘medium’ = 31 jan. 2011
  • ‘short’ = 31-01-11

Met de 3e parameter kun je overigens opgeven of je de tijd ook wilt weergeven. Als je hier false opgeeft zal de tijd niet worden weergeven, bij true wel.

3 reacties op “Magento factuurdatum toevoegen aan PDF”

Beste Remco en Donald,

Ik zie dat Donald de vraag stelde hoe je de factuurdatum moet toevoegen in versie 1.7.0.2.
Hier werk ik zelf ook mee, maar krijg het niet voor elkaar met de code uit dit blog bericht.

Hieronder zie je een stukje code van het factuurnummer:

$this->insertDocumentNumber(
$page, ‘Factuurnummer: ‘ . $invoice->getIncrementId()
//Mage::helper(‘sales’)->__(‘Invoice # ‘) . $invoice->getIncrementId()
);

Dit wijkt iets af van de code uit het blog bericht.

Hopelijk kan 1 van jullie me verder helpen.

Alvast bedankt,

Leon

Hallo Remco,

Ik wil graag een veldje toevoegen waarin het email adres van de klant staat.
Nu moet ik steeds naar de bestelling aanklikken en het email adres daar zoeken.
Ik wil het graag automatisch in de kop van de factuur onder het adres zien.
En eigenlijk ook het telefoonnummer.
Zodoende heb ik aan een beeld genoeg om alle gegevens in de CRM in te brengen.

Ben bereid daarvoor software aan te schaffen. de gewone PDF facturen voldoen niet.

groetjes

Hans Meijer
NATURAL GLO COSMETICS

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *