cong2013 Posted December 9, 2013 Share Posted December 9, 2013 (edited) Hallo, Unser Shop (PS 1.5.6.0) ist in Deutsch aufgesetzt. Nun werden alle PDF-Rechnungen in deutsch gedruckt, auch wenn der Kunde in den USA beheimatet ist. Ist das normal? Im Detail: Die Rechnung die per Mail an den Kunden verschickt wird ist in der Sprache des Kunden (jene die er im Shop gewählt hat) - soweit korrekt. Eigentlich müsste ich für den Zoll in den USA aber eine Rechnung in Englisch mitgeben (mwst=VAT etc..), bloss werden die immer in der Sprache des BO gedruckt. Was mache ich hier falsch? Edited December 9, 2013 by cong2013 (see edit history) Link to comment Share on other sites More sharing options...
tuk66 Posted December 9, 2013 Share Posted December 9, 2013 Im Detail: Die Rechnung die per Mail an den Kunden verschickt wird ist in der Sprache des Kunden (jene die er im Shop gewählt hat) - soweit korrekt. ..... bloss werden die immer in der Sprache des BO gedruckt..... Das ist, wie PrestaShop funktioniert. Rechnungs Sprache Rechnung hängt von der aktuellen Sprache verwendet. Die M4 PDF Extensions Modul können Sie unabhängig voneinander wählen Sie die Sprache jeder Rechnung, zum Beispiel. That is how PrestaShop works. Invoice language invoice depends on the current language used. The M4 PDF Extensions module allows you to independently choose the language of every invoice, for example. Link to comment Share on other sites More sharing options...
Taiowas Posted December 9, 2013 Share Posted December 9, 2013 Hi, I have the same Problem. My Shop is in Sweden and my BO is German. I need the invoice multilingual. German and Swedish. But i have no idear how it works. Can you help me? Reagards Olly Link to comment Share on other sites More sharing options...
cong2013 Posted December 9, 2013 Author Share Posted December 9, 2013 That is how PrestaShop works. Invoice language invoice depends on the current language used. The M4 PDF Extensions module allows you to independently choose the language of every invoice, for example. Hi M4, I have a second problem with the pdf-invoices see: http://www.prestashop.com/forums/topic/264642-remove-tax-excl-tax-incl-from-invoice/?do=findComment&comment=1486671 Is this solved in your extension too? Link to comment Share on other sites More sharing options...
tuk66 Posted December 9, 2013 Share Posted December 9, 2013 Hi, I have the same Problem. My Shop is in Sweden and my BO is German. I need the invoice multilingual. German and Swedish. But i have no idear how it works. Can you help me? Reagards Olly Customer's language is saved to the order but there is no "switch" to choose another language than the saved one or actuall one used in BO. The invoice is printed in the actual employee's language. That is why the M4 PDF Extensions module has the "switch" feature to choose other language (even disabled one). See lang.jpg. cong2013: Yes, automatically. Look at two different examples: http://www.presta-addons.com/pdf/Invoice - with single integrated label.pdf http://www.presta-addons.com/pdf/Invoice - outside the EU.pdf Link to comment Share on other sites More sharing options...
eleazar Posted December 9, 2013 Share Posted December 9, 2013 Wenn tuk66 zweisprachig antwortet, ist das schon ok. Aber ansonsten gilt im Forum die Regel, sich der jeweiligen Landessprache zu bedienen. Und die ist bei uns nun mal Deutsch. Also haltet euch doch bitte daran, ja? Aber zurück zum Thema: Es handelt sich hier einfach um einen Bug in Prestasho, denn eigentlich sollte die Rechnung auch in der Kundensprache ausgegeben werden. Speziell dazu gibt es im Verzeichnis pdf ein Unterverzeichnis namens translations. Wird dort eine Übersetzung abgelegt (z.B. en.php, fr.php), dann sollte eigentlich diese jeweils zum Zuge kommen. Aufgrund eines Fehlers im AdminPdfController passiert das aber nicht. Solange der Bug nicht behoben wird, lässt sich mit dem folgenden kleinen Override, das im englischen Forum gepostet wurde die korrekte Sprache erzwingen: http://www.prestashop.com/forums/index.php?app=core&module=attach§ion=attach&attach_id=78278. Diese Datei bitte in das Verzeichnis Override einspielen und zum Aktivieren einmalig die Datei /cache/class_index.php löschen. Und dann fehlt nur die Übersetzung, die ihr für euer Template unter Lokalisierung --> Übersetzungen --> Übersetzungen PDF-Dateien --> <DeinTemplate> mit Klick auf die englische Flagge ggf. auch selbst vornehmen könnt. Dann klappt es auch mit der Rechnung. 2 Link to comment Share on other sites More sharing options...
cong2013 Posted December 9, 2013 Author Share Posted December 9, 2013 Solange der Bug nicht behoben wird, lässt sich mit dem folgenden kleinen Override, das im englischen Forum gepostet wurde die korrekte Sprache erzwingen: http://www.prestashop.com/forums/index.php?app=core&module=attach§ion=attach&attach_id=78278. Funktioniert perfekt (+like) Besten Dank!! Link to comment Share on other sites More sharing options...
cong2013 Posted December 9, 2013 Author Share Posted December 9, 2013 (edited) cong2013: Yes, automatically. Look at two different examples: http://www.presta-addons.com/pdf/Invoice - with single integrated label.pdf http://www.presta-addons.com/pdf/Invoice - outside the EU.pdf Looks fine, 99€ are better than investing several nights of coding and producing all bugs that you have already resolved.... Will talk to my boss tomorrow One last question: Is this behaviour _really_ triggered by the PS_country>display_tax_label of the delivery address of the customer ? Maybe we could discuss this in this thread in english: http://www.prestashop.com/forums/topic/264642-remove-tax-excl-tax-incl-from-invoice/?view=findpost&p=1487229 Edited December 9, 2013 by cong2013 (see edit history) Link to comment Share on other sites More sharing options...
Taiowas Posted December 9, 2013 Share Posted December 9, 2013 Hallo eleazar, Sorry das ich mich der englischen Sprache bedient habe kommt nicht wieder vor. Dieser override funktioniert bei mir nicht oder ich mache irgendwas falsch. Ich habe die Datei in meinen override ordner geladen. Danach habe ich die /cache/class_index.php gelöscht. Dann habe ich eine test bestellung auf meiner Schwedischen Seite gemacht. Nun zum spanenden teil die Rechnung wird in Deutsch ausgegeben. Wie bekomme ich es hin das die Rechnung auf Schwedisch ausgegeben wird? Unter Lokalisierung / Übersetzung / Übersetzung PDF Dateien / Mein Templet ist die Übersetzung ist vorhanden. Meine PS version ist 1.5.6.1 Hoffe du kannst mir helfen weil das ist mal echt Zeitaufwendig die Rechnung jedesmal aufs neu zu übersetzen wenn sie generiert ist. Link to comment Share on other sites More sharing options...
eleazar Posted December 9, 2013 Share Posted December 9, 2013 (edited) Hallo Olly, hast du mal überprüft, ob die sv.php und die de.php im Ordner /themes/<DeinTemplate>/pdf/lang die gleichen Translation_IDs bei den einzelnen Items haben? Edited December 9, 2013 by eleazar (see edit history) Link to comment Share on other sites More sharing options...
Taiowas Posted December 9, 2013 Share Posted December 9, 2013 Hallo eleazar, Ich habe drei php dateien in dem ordner sv.php, de.php und en.php. Unter Lokalisierung Sprache haben alle drei Sprachen verschiedene Id´s. Wo kann ich die translation Id nachschauen? Link to comment Share on other sites More sharing options...
eleazar Posted December 9, 2013 Share Posted December 9, 2013 Öffne einfach mit einem Editor wie bspw. der Freeware notepad++ die de.php und die sv.php und vergleiche mal die IDs, also z.B. Englisch - Deutsch: $_LANGPDF['PDF104d9898c04874d0fbac36e125fa1369'] = 'Discount'; $_LANGPDF['PDF104d9898c04874d0fbac36e125fa1369'] = 'Rabatt'; Diese Zahlen-Buchstabenkombinationen müssen identisch sein. Link to comment Share on other sites More sharing options...
Taiowas Posted December 9, 2013 Share Posted December 9, 2013 Ich habe mal alle drei geöffnet und nach geschaut Alles was dort ist ist gleich. Mal nur ein beispiel: $_LANGPDF['PDF065ab3a28ca4f16f55f103adc7d0226f'] = 'Leverans';$_LANGPDF['PDF065ab3a28ca4f16f55f103adc7d0226f'] = 'Delivery';$_LANGPDF['PDF065ab3a28ca4f16f55f103adc7d0226f'] = 'Lieferung'; Hast du vielleicht noch eine Idee worann es liegen könnte? Link to comment Share on other sites More sharing options...
tuk66 Posted December 10, 2013 Share Posted December 10, 2013 Looks fine, 99€ are better than investing several nights of coding and producing all bugs that you have already resolved.... Will talk to my boss tomorrow One last question: Is this behaviour _really_ triggered by the PS_country>display_tax_label of the delivery address of the customer ? Maybe we could discuss this in this thread in english: http://www.prestashop.com/forums/topic/264642-remove-tax-excl-tax-incl-from-invoice/?view=findpost&p=1487229 Ich werde in diesem englischen Thread zu beantworten. I will answer in that English thread. Link to comment Share on other sites More sharing options...
Guest D_Frost Posted December 21, 2013 Share Posted December 21, 2013 Hallo, sorry für den Doppelpost, aber ich denke hier passt meine Frage besser: Wenn ich im BO (welches ich auf Englisch betreibe) eine Zahlung eintrage, kann ich nur aus den englischen Begriffen (Bank Wire etc) auswählen, welche dann auch so auf meine (ansonsten deutschsprachige) Rechnung ausgegeben wird. Kann man das irgendwie ändern? Wenn ich im BO die Profilsprache auf Deutsch ändere funktioniert es (allerdings dann nur mit den deutschen Begriffen und nicht mit den englischen). Da ich meinen Shop aber zweisprachig betreibe, ist das leider keine Lösung auf Dauer. Vielen Dank für euere Hilfe. Link to comment Share on other sites More sharing options...
eleazar Posted December 22, 2013 Share Posted December 22, 2013 Versteh ich das richtig? Du meinst nur die Angabe der Zahlungsart, oder generell die Sprache der Rechnung? Link to comment Share on other sites More sharing options...
Guest D_Frost Posted December 23, 2013 Share Posted December 23, 2013 Nur die Ausgabe der Zahlungsart. Es erscheint immer "Bank Wire" anstatt "Banküberweisung". Egal ob ich den Status auf "Zahlung eingegangen" ändere oder eine Zahlung eingebe. Link to comment Share on other sites More sharing options...
eleazar Posted December 23, 2013 Share Posted December 23, 2013 Ja natürlich, weil PrestaShop die Variable {$payment->payment_method} zur Laufzeit mit der Zahlungsart in der Sprache des Verkäufers füllt. Das angehängte Override, das ein User in englischen Forum vor ein paar Monaten gepostet hat, verhindert dies, indem vor der Generierung der PDF-Rechnung Ausdrücke in der Sprache des Back Office in die Sprache des Kunden umgewandelt werden. Hättest du als erstes mal in unseren Tipps und Tutorials nachgesehen, dann wärest du hier bereits fündig geworden: http://www.prestashop.com/forums/topic/232417-automatic-language-detection/?view=findpost&p=1182792 Spiel bitte die folgende Datei in das Verzeichnis /override/controllers/admin ein: http://www.prestashop.com/forums/index.php?app=core&module=attach§ion=attach&attach_id=78278 So sollte es funktionieren - allerdings nur, wenn du einen weiteren Tipp befolgst: http://www.prestashop.com/forums/index.php?/topic/248950-tipp-mein-override-wird-nach-dem-kopieren-in-das-verzeichnis-nicht-genutzt/ Link to comment Share on other sites More sharing options...
Guest D_Frost Posted December 23, 2013 Share Posted December 23, 2013 (edited) Vielen Dank für den Tipp eleazar, allerdings hat dies keine Veränderungen zur Folge. Ich erhalte immernoch die Ausgabe "Bank Wire". Ja, ich habe die class_index.php gelöscht . Hast du evtl eine Idee was da nicht stimmen könnte? Vielen Dank. Edited December 23, 2013 by D_Frost (see edit history) Link to comment Share on other sites More sharing options...
eleazar Posted December 23, 2013 Share Posted December 23, 2013 Seltsam, welche Prestashop-Version hast du denn? Und hast du auch deinen Smarty-Cache gelöscht? Link to comment Share on other sites More sharing options...
Guest D_Frost Posted December 23, 2013 Share Posted December 23, 2013 Smarty habe ich gelöscht, leider ebenfalls keine Auswirkung. Ich benutze PS 1.5.5. Link to comment Share on other sites More sharing options...
rstr02826 Posted February 22, 2015 Share Posted February 22, 2015 Hallo, ist ja eigentlich schon ein recht altes Thema. Weiss denn jemand ob dieser Workaround aus dem englischen Forum auch noch bei der PS 1.6.0.11 anwendbar ist? Oder ist der Bug mittlerweile in PS beseitigt worden? Wenn ja wo kann man das einstellen? Habe dazu zumindest nichts gefunden. Da wir mehrere Niederlassungen in verschiedenen Ländern haben würde ich gerne die PDF exakt auf die Sprache des Bestellers ausgeben. Vielleicht hat ja jemand das Thema auch in PS 1.6.0.11? Eine Info dazu wäre nett. Danke Link to comment Share on other sites More sharing options...
eleazar Posted February 23, 2015 Share Posted February 23, 2015 Workaround ist noch anwendbar, auch in 1.6.0.11. PrestaShop selbst wird aktuell nichts ändern, wie mir vorhin mitgeteilt wurde. Perspektivisch ist ein zusätzlicher Button auf dem Schirm - Realsierungsdatum und Version offen: https://github.com/PrestaShop/PrestaShop/pull/2515#issuecomment-75505191 Link to comment Share on other sites More sharing options...
rstr02826 Posted February 24, 2015 Share Posted February 24, 2015 (edited) Hallo eleazar, musste festtellen dass es bei mir leider auch nicht klappt in der Ps 1.6.0.11 habe auch schon die Codes verglichen innerhalb der beiden language datein. Auch smarty ist gelöscht worden... Noch irgendein Tip was da los sein kann? Habe hier leider mit 3 sprachen zu tun. Sowohl mitarbeiter als auch Kunden. Wäre sehr hilfreich. Edited February 24, 2015 by rstr02826 (see edit history) Link to comment Share on other sites More sharing options...
eleazar Posted February 25, 2015 Share Posted February 25, 2015 Verstehe ich leider nicht. Aber egal, du kannst auch Folgendes machen: Öffne die Datei /classes/pdf/HTMLTemplate.php Als vorletzte Funktion findest du ziemlich am Ende der Datei die protected function getTemplate($template_name) Füge vor die Zeile return $template; die folgenden beiden Zeilen ein: if ( $this->order ) Context::getContext()->language = new Language($this->order->id_lang); Wichtig: Diese Methode ändert nur die Sprache der invoice.tpl und invoice.tax-tab.tpl, nicht jedoch den Rechnungskopf (header.tpl) und auch nicht den Fußbereich (footer.tpl), ist aber ansonsten brauchbar. Link to comment Share on other sites More sharing options...
rstr02826 Posted February 25, 2015 Share Posted February 25, 2015 Hallo eleazar, ich habe mir heute mal das Changelog der 1.6.0.13 bzw. 1.6.0.12 durchgelesen. Wenn ich das nicht falsch interpretiere, dann haben die was zu diesem Thema hier gefixt. Das hört sich doch ganz gut an zu dem Thema. [-] FO : Fix bug #PSCSX-4211 wrong invoice by country. Das müsste man mal genau prüfen da das eigentlich ein BO Problem ist Link to comment Share on other sites More sharing options...
eleazar Posted February 26, 2015 Share Posted February 26, 2015 Bei diesem Bugfix geht es nicht um die Funktion, die wir hier diskutieren. Nochmal in aller Deutlichkeit, was mir Julien Martin vom Prestashop-Team mitgeteilt hat: "Some people want the invoices with the customer's language, but some others with the current backoffice's user language ... The only solution is to add a button on the backoffice: one to get the invoice with the customer's language and another with the merchant language. We're not working on it right now but it is on the pipe." Link to comment Share on other sites More sharing options...
buechi Posted December 22, 2016 Share Posted December 22, 2016 Gibt es hier eine neue Info bzgl. Rechungsausgabe in Kundensprache? Link to comment Share on other sites More sharing options...
nsteinbach Posted September 5, 2019 Share Posted September 5, 2019 Gibt es für 1.7 hier schon eine Lösung? Ich habe dasselbe Problem, dass für Bestellungen auf der englischen Seite deutsche Rechnungs- und Lieferschein-PDFs erstellt werden. Der override aus dem Thread scheint hier nichts zu tun - obwohl ich die Datei /var/cache/dev/class_index.php gelöscht habe. Die hier vorgeschlagenen Änderungen im PHP-Code der Datei /classes/pdf/HTMLTemplate.php führen auch nur zu einer exception, d.h. die PDF-Datei wird gar nicht erstellt, statt dessen kommt die Fehlermeldung "Parse error: syntax error, unexpected '' (T_STRING)" für die zweite Zeile. Interessanterweise sind die Artikelnamen auf den Rechungs-PDFs dann auch in englisch, d.h. das wurde von der im Frontend genutzten Sprache übernommen, aber der Rest leider nicht. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now