Jump to content

[gelöst] Adressfeld auf Rechnung und Lieferschein anpassen


Recommended Posts

Hallo an Alle

 

Ich bin neu und finde die PRESTA SHOP Lösung soweit sehr gut.

 

Nun würde ich gerne beim Lieferschein und bei der Rechnung das Adressfeld anpassen.

 

Wenn ich jetzt, so wie es jetzt ist einen lieferschein oder einen rechnung generiere, sehen diese so wie im angefügten Bild aus.

 

post-919129-0-36719500-1424123067_thumb.jpg

 

Das Adressfeld erscheint im Fester der Versandtasche und man sollte ja nur den Namen und die Anschrift sehen können.

Beispiel:
 

Rolando Lombardi
Flawilerstrasse 22
9604 Lütisburg

 

und nicht mit "Rechnung- & Leferadresse" oberhalb des Namen des Kunden und auch nicht die Telefonnummer.

 

diese Punkte können wo anderst stehen.

 

Freue mich auf jede Antwort und Anleitung, damit ich es anpassen kann.

 

Besten dank und gute Nacht.

 

Herzliche Grüsse

Rolando

 

Edited by Birel34 (see edit history)
Link to comment
Share on other sites

Hallo elezar

 

Besten Dank für die rasche Antwort.

Leider kann ich dem Link nicht folgen, bekomme foölgende Meldung:

 

Sorry, you don't have permission for that!

Your reputation submission could not be saved because not all of the necessary information was provided.


Need Help?

 

 

Ich bedanke mich im Voraus für die Antwort.

 

Herliche Grüsse

Rolando

Link to comment
Share on other sites

Hallo eleazar

 

Besten Dank für die schnelle Antwort.

 

Habe Deine Anleitungen gefunden. Danke.

 

Gemäss Anleitung: Bestell-Nr. statt Buchstabensalat habe ich folgendes gemacht:

 

- Bin auf die Suche nach dem File Order.php.

- Habe ich gefunden im Verzeichnis override/classes/order, nicht wie beschrieben override/order.

- Muss dazu sagen, dass ich die Presta Shop Version 1.6.0.11 verwende.

- Habe die Datei geöffnet, das folgenden Inhalt hat:

 

 

<?php

 

class Order extends OrderCore

{

 

 

                /*

                * module: modrefchange

                * date: 2015-02-16 22:05:28

                * version: 1.5.3

                */

                public function add($autodate = true, $null_values = true)

                {

                               $cart = new Cart($this->id_cart);

                               Hook::exec('actionBeforeAddOrder', array('order'=>$this,'cart'=>$cart));

 

                               if (ObjectModel::add($autodate, $null_values))

                                               return SpecificPrice::deleteByIdCart($this->id_cart);

                               return false;

                }

               

 

                /*

                * module: modrefchange

                * date: 2015-02-16 22:05:28

                * version: 1.5.3

                */

                public static function setLastInvoiceNumber($order_invoice_id, $id_shop)

                {

                               if (!$order_invoice_id)

                                               return false;

 

                               $number = Configuration::get('PS_INVOICE_START_NUMBER', null, null, $id_shop);

                               // If invoice start number has been set, you clean the value of this configuration

                               if ($number)

                                               Configuration::updateValue('PS_INVOICE_START_NUMBER', false, false, null, $id_shop);

                                              

                               $order_invoice = new OrderInvoice($order_invoice_id);

                               $order = new Order($order_invoice->id_order);

                               $cart = new Cart($order->id_cart);

                              

                               if($ref = Hook::exec('actionBeforeAddOrderInvoice', array('order_invoice'=>$order_invoice,'order'=>$order,'cart'=>$cart)))

                                               $number = $ref;

 

                               $sql = 'UPDATE `'._DB_PREFIX_.'order_invoice` SET number =';

 

                               if ($number)

                                               $sql .= (int)$number;

                               else

                                               $sql .= '(SELECT new_number FROM (SELECT (MAX(`number`) + 1) AS new_number

                                               FROM `'._DB_PREFIX_.'order_invoice`) AS result)';

 

                               $sql .=' WHERE `id_order_invoice` = '.(int)$order_invoice_id;

 

                               return Db::getInstance()->execute($sql);

                }

               

 

                /*

                * module: modrefchange

                * date: 2015-02-16 22:05:28

                * version: 1.5.3

                */

                public function setDeliveryNumber($order_invoice_id, $id_shop)

                {

                               if (!$order_invoice_id)

                                               return false;

 

                               $number = Configuration::get('PS_DELIVERY_NUMBER', null, null, $id_shop);

                               // If invoice start number has been set, you clean the value of this configuration

                               if ($number)

                                               Configuration::updateValue('PS_DELIVERY_NUMBER', false, false, null, $id_shop);

                                              

                               $order_invoice = new OrderInvoice($order_invoice_id);

                               $order = new Order($order_invoice->id_order);

                               $cart = new Cart($order->id_cart);

                              

                               if($ref = Hook::exec('actionBeforeAddDeliveryNumber', array('order'=>$order,'cart'=>$cart,'number'=>$number)))

                                               $number = $ref;

 

                               $sql = 'UPDATE `'._DB_PREFIX_.'order_invoice` SET delivery_number =';

 

                               if ($number)

                                               $sql .= (int)$number;

                               else

                                               $sql .= '(SELECT new_number FROM (SELECT (MAX(`delivery_number`) + 1) AS new_number

                                               FROM `'._DB_PREFIX_.'order_invoice`) AS result)';

 

                               $sql .=' WHERE `id_order_invoice` = '.(int)$order_invoice_id;

 

                               return Db::getInstance()->execute($sql);

                }

}

 

 

Habe dies gemäss Anleitung komplett überschrieben:

 

 

<?php

/* override für classes/order/Order.php

*

*/

class Order extends OrderCore{

/* Erzeugung einer Bestell-Nr. im 1.4.x-Look (Bestell-Nr. mit vorangestellten 0)

// Dank an Jan Drda <[email protected]>

*/

public static function generateReference()

{

/* Starte REFERENCE AS ORDER NUMBER FILLED WITH 0 TILL 9 CHARS [varchar(9)] */

// Lese- und Schreibzugriff für Tabelle für alle User sperren,

// damit auf keinen Fall einen doppelte Bestell-Nr. geneireirt werden kann

Db::getInstance()->Execute('LOCK TABLES `ps_order` WRITE');

// Finde letzte Bestell-Nr. ...

$custom_last_order_id = Db::getInstance()->getValue('SELECT MAX(id_order) AS last_order_id FROM `ps_orders`');

// Fülle links mit 0 auf falls erforderlich

return str_pad(($custom_last_order_id + 1), 9, "0", STR_PAD_LEFT);

/* Ende REFERENCE AS ORDER NUMBER FILLED WITH 0 TILL 9 CHARS [varchar(9)] */

/* start REFERENCE AS LETTERS - ORIGINAL */

// Buchstabenfolgen statt Nummern erzeugen wie ab Version 1.5x üblich

//return strtoupper(Tools::passwdGen(9, 'NO_NUMERIC'));

/* end REFERENCE AS LETTERS - ORIGINAL */

}

}

 

 


und Abgespeichert.

 

Haben nun den Shop geöffnet und einen Bestellung getätigt und erhalte immer noch folgende Bestellnummer: JFQOAQYTZ

 

Was ist da falsch?

 

Besten Dank im Voraus für deine Antwort.

 

Herzliche Grüsse

Rolando

Link to comment
Share on other sites

Hallo eleazar

 

Besten Dank.

Ja, ich hatte mal das Modul modrefchange installiert und es funktionierte nicht und habe es dann deinstalliert.

Jetzt hast Du mir natürlich noch was in den Kopf gesetzt mit dem leeren des Caches.

Nun habe ich es erneut installiert, den Cache geleert und es geht.

 

Eventuell kannst Du mir noch eine Frage dazu beantworten, es besteht ja die Möglichkeit mit den Zeichen %Y die Jahreszahl vorzusetzten.

Nun habe ich es Versucht und habe es folgendermassen in der Zeile eingegeben:

(%Y) - %Y - '%Y' - % Y - %Y-

Es erschien dann immer %Y2015....

Also die Symbole vor der Jahreszahl.

Wie muss man es eingebn, damit die Symbole nicht erscheinen?

 

Wäre noch toll wenn du das auch wüstest.

 

Herzlichen Dank.

Rolando

Link to comment
Share on other sites

Hallo eleazar

 

Besten Dank für die angepassten Rechnungs und Lieferschein Formulare.

Habe es so gemacht wie Du beschriben hast in diesem Link:

 

https://www.prestashop.com/forums/topic/234802-tipps-und-tutorials-aktuelle-sammlung-von-wichtigen-topics/?do=findComment&comment=1285023

 

Perfekt, hab noch mein Logo angepasst und jetzt sieht es super aus.

 

Herzlichen Dank.

 

Vielleicht kann ich Dier auch mal einen Stein in den Garten werfen, würde mich freuen.

 

Herzliche Grüss

Rolando

Link to comment
Share on other sites

Hallo,

 

also eleazar hat mit seinem Tutorial zu den Formularen tolle Arbeit geleistet. Ich habe mittlerwile dank seiner Arbeit als Grundlage ein LS und RG Formular dass aussieht wie aus einem professionellen Fakturierungsprogramm. Damit bin ich sehr zufrieden. Aber das konnten wir mit den Fakturaprogrammen ja auch schon vor 20 Jahren machen.

 

Was das Thema mit modrefchange angeht.

Spar dir die Energie dieses Thema mit den Jahres oder gar Monatsvariablen in der Nummer zu lösen.

Eleazar hat das ja schon recht klar beschrieben.

Das Modul als solches funktioniert auch in 1.6.0.11 recht gut. Aber mit Variablen zu arbeiten kannst du ohne grössere Eingriffe in die Programmteile nicht realisieren.

Das kann das Modul einfach nicht und wird es auch nicht können.

 

Da kann man nur hoffen, dass sich die Entwickler irgendwann was vernünftiges einfallen lassen, das dann in die Basis intergriert wird.

Wer sich das mit dem Buchstabensalat in PS einfallen hat lassen ist entweder ein Programmierfreak der nicht weiss wie die Welt draussen aussieht, oder lebt in einer Welt wo solch ein Zeug üblich ist.

 

Ich habe die Tage eine solche Rechnung bekommen, also PS Formular out of the Box...Ich habe mich gefragt was das für ein deutsches Unternehmen ist, dass noch nicht einmal eine ordentliche Rechnung ausgeben kann. Das schlimmste dabei ist, dass sich da keiner darüber Gedanken macht was das für eine Aussenwirkung hat. 

 

Also Dank sei eleazar dass wir armen Unwissenden wenigstens ein ordentliches Formular mit PS hinbekommen haben.

Link to comment
Share on other sites

Hallo,

 

auch bei diesem thread bitte die Forenregeln beachten und wenn das  Problem gelöst ist, den thread aus Gründen der Fairness bitte ebenfalls als gelöst markieren, indem du beim ersten Post auf 'Edit', dann auf 'Use Full Editorklickst und Überschrift editieren und dann das [gelöst] vor den Topic-Titel einkopierst.

 

Grüsse

Whiley

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...