Apparemment il est obligatoire de faire apparaître le montant Total HT sur les factures (même pour les particuliers). Aillant choisi d’afficher mes prix en TTC sur le site, le total HT n’apparaissait ni dans checkout_confirmation.php ni dans la facture ni dans account_history_info.php. Une astuce existe déjà sur le forum mais l’adition du total HT avec la TVA n’est pas toujours égale au total TTC. Pour parer à ce problème j’ai soustrait la TVA au total TTC. Les modifications sont très simples et restent compatibles avec la contribution TVA intracommunautaire et les modules de paiement (penser à laisser tout de même le total TTC en dernier dans l’ordre d’affichages des modules dans l’admin).
Si vous souhaitez également faire de même voici la procédure à suivre :
Editer le fichier : includes/classes/order.php
Rechercher :
CODE |
if (DISPLAY_PRICE_WITH_TAX == 'true') { $this->info['total'] = $this->info['subtotal'] + $this->info['shipping_cost']; } else { $this->info['total'] = $this->info['subtotal'] + $this->info['tax'] + $this->info['shipping_cost']; } |
CODE |
if (DISPLAY_PRICE_WITH_TAX == 'true') { $this->info['total'] = $this->info['subtotal'] + $this->info['shipping_cost']; } else { $this->info['total'] = $this->info['subtotal'] + $this->info['tax'] + $this->info['shipping_cost']; } $this->info['totalHT'] = $this->info['total'] - $this->info['tax']; |
CODE |
<?php /* $Id: ot_total.php,v 1.7 2003/02/13 00:12:04 hpdl Exp $ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2003 osCommerce Released under the GNU General Public License */ class ot_total_ht { var $title, $output; function ot_total_ht() { $this->code = 'ot_total_ht'; $this->title = MODULE_ORDER_TOTAL_HT_TOTAL_TITLE; $this->description = MODULE_ORDER_TOTAL_HT_TOTAL_DESCRIPTION; $this->enabled = ((MODULE_ORDER_TOTAL_HT_TOTAL_STATUS == 'true') ? true : false); $this->sort_order = MODULE_ORDER_TOTAL_HT_TOTAL_SORT_ORDER; $this->output = array(); } function process() { global $order, $currencies; $this->output[] = array('title' => $this->title . ':', 'text' => '<b>' . $currencies->format($order->info['totalHT'], true, $order->info['currency'], $order->info['currency_value']) . '</b>', 'value' => $order->info['totalHT']); } function check() { if (!isset($this->_check)) { $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_ORDER_TOTAL_HT_TOTAL_STATUS'"); $this->_check = tep_db_num_rows($check_query); } return $this->_check; } function keys() { return array('MODULE_ORDER_TOTAL_HT_TOTAL_STATUS', 'MODULE_ORDER_TOTAL_HT_TOTAL_SORT_ORDER'); } function install() { tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Affichage du total', 'MODULE_ORDER_TOTAL_HT_TOTAL_STATUS', 'true', 'Voulez-vous montrer le total de la commande HT ?', '6', '1','tep_cfg_select_option(array(\'true\', \'false\'), ', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Ordre de tri', 'MODULE_ORDER_TOTAL_HT_TOTAL_SORT_ORDER', '4', 'Ordre de tri pour l\'affichage (Le plus petit nombre est montré en premier).', '6', '2', now())"); } function remove() { tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')"); } } ?> |
CODE |
<?php /* $Id: ot_total.php,v 1.1 2002/04/03 23:09:49 hpdl Exp $ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2002 osCommerce Released under the GNU General Public License Translated by Gunt - Contact : webmaster@webdesigner.com.fr */ define('MODULE_ORDER_TOTAL_HT_TOTAL_TITLE', 'Total HT'); define('MODULE_ORDER_TOTAL_HT_TOTAL_DESCRIPTION', 'Total HT Commande'); ?> |
Bonjour,
pardonne moi mon ignorance , mais....commetn fait-on ensuite pour installer ce module dans l'admin ! j'ai bô fouiller, je trouve pas .....
Merci ++++
Salut,
Après avoir placé le fichier ot_total_ht.php dans includes/modules/order_total/
tu ouvre l'admin de ton site et dans Modules > Total commande tu doit avoir "Total HT" il et ne te reste plus alors qu'à le sélectionner, l'installer, le mettre sur True et lui dire dans quel ordre tu souhaite le voir s'afficher ...
Voila
Très sympa ton code et félicitation pour l'"astuce" !
Mais pourquoi ne pas faire directement une contribution ?
Petit bemol, pour ceux qui ont des commandes sur leur site ?
Je suppose que ça n'affiche pas le total HT dans l'historique client ni dans l'administration ? Vu que c'est enregistrer dans la base de donnée ?
Cordialement
Bonjour et merci pour cette astuce que je viens de mettre en place, suite à la demande de ma comptable...
Sans compter que pour mes stats de vente, je vais gagner du temps à avoir le montant total HT déjà tout calculé !
Mais voilà : j'utilise les prix TTC sur mon site ET je facture les frais de port au forfait, ce qui implique que je ne facture pas de TVA sur les frais de transport...
J'ai donc modifié les lignes suivantes :
Dans le fichier includes/classes/order.php :
REMPLACER :
Bonsoir Marine77,
Salut à tous
facturant le frais de port TTC (Chronopost) j'ai fait la meme modif que marine, sans l'avoir vue...
On obtient ainsi le montant HT des produits commandés (ce qui nous importe le plus), puis viennent se rajouter les autres modules.
Sinon, j'avais le montant des produits HT+montant HT des frais de port comme montant Total HT, ce qui n'était pas très compréhensible pour le client.
Ce qui donne par exemple:
super tuto
Par contre à la compta, ils me demande de bien vouloir mettre le Total Hors Taxes dans la facture.
Ce tuto affiche cela mais lors du passage de la commande et ne modifie pas l'affichage du invoice.php généré dans l'admin.
J'ai regardé un peu le code qui gère ca dans le invoice.php et je pige rien pour l'instant lol
Quelqu'un aurais un idée s'il vous plait ?
Je ne trouve pas les bons fichiers
Bonjour à tous !
Voilà j'utilise le module total HT. L'affichage dans checkout_confirmation marche super mais lorsque je confirme ma commande, il m'affiche l'erreur suivante :
Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-8\www\includes\languages\french\modules\order_total\ot_total_ht.php:3) in c:\program files\easyphp1-8\www\includes\functions\general.php on line 29
Qqun a-t-il déjà rencontré ce problème ?
Pour info le module total HT desinstallé, checkout_process fonctionne parfaitement.
Merci par avance si qqun à une piste !!!
non il me semble que c'est le N° de ligne où le début de page est initié (output started)
= "output started dans fichier.php à la ligne 3"
pour le problème regarde ce qui se dit dans la faq au sujet de "headers allready sent". C'est souvent un problème de fichier mal fermé, voir mal transmis.
Super l'astuce!!!
Mais est-ce que vous avez remarqué des problèmes avec certaines contributions?
Je suis en train d'installer "http://www.oscommerce.com/community/contributions,1435/category,all/search,Order+Editor" (pour modifier presque tous les aspects des factures) et j'avais de nombreux problèmes liés au sous-total HT et à MZMT (module de livraison multizone et multi table). Ces problèmes sont en partie dû au fait qu'il y a des incompatibilités avec les différents taux de TVA :
- Pb de calcul du total TTC
- Pb du calcul du montant de la TVA sur les frais d'expédition
- Pb avec le javascript qui rafraichit automatiquement le calcul de la facture
Et bien tous ces problèmes sont résolus par le concepteur de la contribution (djmonkey1)
Vous trouverez donc tous les screenshots de configuration ainsi que les solutions dans le http://forums.oscommerce.com/index.php?s=&showtopic=54032&view=findpost&p=881704 (page54 à 56)
Attention : suivez bien tous les posts et si vous ne comprenez pas l'anglais, n'hésitez pas à me contacter!!!
Après avoir testé "Order Update Tool", je sais qu'il y avait aussi des bugs mais je ne me souviens plus desquels...
Bonjour à tous.
J'ai bien installé cette contrib..Mais je rencontre le soucis suivant, mon décompte TVA et HT sur mes factures ne fonctionnent que depuis que j'ai apporté ces modifications.
Pour les factures plus anciennes, je n'ai que le décompte TTC + les frais de ports et la colonne "taxes" est à 0.0%.
Merci pour votre aide
Bénédict
Bonjour à tous,
D'abord merci M&M's pour cette contribution. Je l'ai installée, elle fonctionne bien.
Cependant, toujours pour répondre à la législation (imprimer les totaux HT sur les factures), j'ai le problème suivant: sur mon site j'ai à la fois du matériel à 19,6% et de l'alimentaire à 5,5% de TVA. Donc, comme pour le module TVA, il serait nécessaire d'avoir une ligne de total HT par taux de TVA. Je suis débutant en php et j'appelle à l'aide pour résoudre ce problème.
Merci d'avance.
à la suite d'un post récent, je fais un up sur ce post pour savoir si c'est une contribution (téléchargée sur OsC.com) ou un bout de code
merci
Bonjour,
Non il ne s'agit pas d'une contribution au sens des autres contributions mais de quelques pages de code en haut de ce post.
http://www.oscommerce-fr.info/forum/index.php?s=&showtopic=28134&view=findpost&p=145984
Cordialement
Pour ceux qui ont besoin d'afficher une ligne "Total TVA" = TVA du produit + TVA sur frais de livraison, il y a une nouvelle contrib qui vient de sortir : http://www.oscommerce.com/community/contributions,4848
Je viens d'installer les modifications mais mes frais d'expédition sont passés à 0 ??
J'ai suivie le pas à pas et mis l'ordre dans Modules Total Commande par Marine77 mais le pbl persiste ??
Quelqu'un a une idée ?
Merci d'avance
Salut,
Je viens d'utiliser le code proposé mais ca ne marche pas.J'ai fais une commande bidon et dans la fature rien ne change, j'ai toujours mon prix HT egal au TTC
(les prix sont rentré en ttc sur le site). dans la liste des module Jai total HT en bas mais il y etais deja avant en true. J'ai oublié un truc?
Merci.
J'ai également un problème avec la contrib (que j'ai trouvée sur les http://www.oscommerce.com/community/contributions,4177/category,6/search,ot_total_ht). Comme marine, je cherche à ne montrer que le total HT des produits commandés.. Or, voilà ce que j'ai avec un produit qui coûte 25e TTC donc 20,903e HT :
Voilà comment est organisé mon order total :
Je précise que j'ai également rajouté la modif de marine dans order.php, mais avec ou sans, je tombe toujours sur le même problème !
Le total HT = total des produits + expédition HT. Comment est-ce possible ?
Any idea ?
Si vous installez la dernière version de order editor (très pratique soit dit en passant), vous devez penser à y fair eune petite modif pour qu ele total HT soit recalculé si vous modifiez la commande.
admin/order_editor/order.php
appliquer la même modif que dans includes/classes/order.php
D'ailleurs, pour ceux qui n'ont pas de tva sur les frais de port, il faut mettre
J'ai fait un module qui permet d'obtenir un résultat parfait sans toucher au script :
Total Amount Excl. Tax (VAT) : http://addons.oscommerce.com/info/9568
J'ai pu faire cohabiter le module "total_ht" avec "Order Editor" afin que le calcul de $order->info[total_ht] soit juste lors d'une édition de commande.
J'ai posté la réponse sur le site officiel : http://forums.oscommerce.com/topic/54032-new-complete-order-editing-tool/?p=1756574
En espérant que ça aide ceux qui souhaitent utiliser l'affichage HT pour leur facturation.
Propulsé par Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)