Fejl: Kan ikke udskrive PDF-faktura

Ved forsøg på at udskrive en PDF-faktura oplever du enten blank skærm eller får fejlen:
Declaration of Zend_Pdf_FileParserDataSource_File::__construct() must be compatible with Zend_Pdf_FileParserDataSource::__construct() in lib/Zend/Pdf/FileParserDataSource/File.php on line 41.

Fejlen opstår typisk i forbindelse med opgradering af den PHP version der kører på serveren, når versionen er 5.4.4 eller nyere. Det sker grundet et inkompatibilitets problem mellem Zend Frameworket, som Magento anvender og de ældre PHP verisoner.

Løsning er at tilpasse Zend Frameworket i Magento således:

  • Åbn filen lib/Zend/Pdf/FileParserDataSource.php og find følgende linje (omkring linje 78):
    abstract public function __construct();
  • Ændre linjen til følgende:
    abstract public function __construct($filePath);
  • Gem filen og ryd Magento's cache.

Certificeret Magento udvikler og CTO i Improving, der arbejder med e-handelsløsninger I Magento -

Kommentarer til denne artikel

Connie Nielsen
Mandag, juni 29, 2015 - 10:56
Hvor findes den fil du skriver om er det i magent database?
Morten Jakobsen
Mandag, juni 29, 2015 - 11:43
Hej Connie,

Filen ligger i din Magento installation, som er placeret på dit webhotel. Du skal logge på webhotellet med en FTP-klient og ændre i filen.

Hvis ikke du er bekendt med denne tilgang, vil jeg anbefale dig til at sætte en udvikler på opgaven.

Held og lykke med det :-)