Právě je 25 dub 2024 17:03

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 4 ] 
Autor Zpráva
 Předmět příspěvku: PrestaShop - Sleva (specific price) není v ceně bez DPH
PříspěvekNapsal: 08 led 2013 02:06 

Registrován:
26 zář 2010 13:38
Příspěvky:
23
Ahoj všem e-shopovým kutilům. Prestashop 1.4.3 .

Tak jsem zjistil, že pokud zadám slevu třeba 50Kč (zadáváno s DPH) na nějaké zboží za 121Kč s DPH (100Kč bez DPH), promítne se mi v záložce "ceny" správně sleva do cen:
s DPH 71Kč
bez DPH 58,7Kč

Problém však nastává při objednávce a následné fakturaci. Zjistil jsem, že cena s DPH se přenáší správně (tedy 71Kč), avšak cena bez DPH je přenášena podle původní ceny produktu (tedy 100Kč) bez vlivu úpravy v záložce "ceny" - specific price.

Stejný problém je vidět i v administraci. Objednávka je celá správně, avšak u zboží, kde byla sleva dělána pomocí úpravy v záložce "ceny", je cena bez DPH špatně (uvedena původní cena zboží 100Kč). Díval jsem se do databáze, mám to potvrzené, tam je to zaneseno špatně v order_detail i v orders. Takže ve faktuře se mi pak zobrazuje cena bez DPH.
Samozřejmě by bylo vcelku jednoduché upravit výpočet v generování PDF s fakturou (faktury jsou to nejdůležitěší), ale rád bych odhalil jádro pudla. Nějak nemůžu přijít na to, kde opravu provést. Zkoumám v adresáři "classes" různé soubory, ale ne a ne přijít na to, kde bezpečně přiřadit stržení slevy (samozřejmě upravené dle DPH) i u ceny bez DPH.

Řešil jste to už někdo? Poradíte?

Předem díky. Honza


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Sleva (specific price) není v ceně bez DPH
PříspěvekNapsal: 08 led 2013 03:13 

Registrován:
26 zář 2010 13:38
Příspěvky:
23
Tak se v tom pořád šťourám a zatím jsem pro pořádek upravit to generování faktury.
Ale napadá mě tato úprava v souboru classes/orders.php:
Tento kód:
Kód:
      if ($row['reduction_amount'])
      {
         if ($this->_taxCalculationMethod == PS_TAX_EXC)
            $row['product_price'] = $row['product_price'] - $row['reduction_amount'] / (1 + $row['tax_rate'] / 100);
         else
            $row['product_price_wt'] = Tools::ps_round($row['product_price_wt'] - $row['reduction_amount'], 2);
      }


Nahradit tímto:
Kód:
      if ($row['reduction_amount'])
      {
         if ($this->_taxCalculationMethod == PS_TAX_EXC)
            $row['product_price'] = $row['product_price'] - $row['reduction_amount'] / (1 + $row['tax_rate'] / 100);
         else
            $row['product_price_wt'] = Tools::ps_round($row['product_price_wt'] - $row['reduction_amount'], 2);
            $row['product_price'] = $row['product_price'] - $row['reduction_amount'] / (1 + $row['tax_rate'] / 100);
      }


Ovšem pak by bylo nutné jistě upravit i toto:
Kód:
   public function setProductPrices(&$row)
   {
      if ($this->_taxCalculationMethod == PS_TAX_EXC)
         $row['product_price'] = Tools::ps_round($row['product_price'], 2);
      else
         $row['product_price_wt'] = Tools::ps_round($row['product_price'] * (1 + $row['tax_rate'] / 100), 2);

Protože jinak bez úpravy poslední části kódu bych dvakrát přepočítával cenu s daní.

Trošku jsem se do toho zamotal, ráno moudřejší večera, tak radši už nic dělat nebudu.
Každopádně by mě zajímalo, co vyznačuje podmínka
Kód:
if ($this->_taxCalculationMethod == PS_TAX_EXC

Je to zřejmě nastavení způsobu výpočtu cen s/bez DPH, ale nějak nevidím návaznost např. na admin.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Sleva (specific price) není v ceně bez DPH
PříspěvekNapsal: 08 led 2013 03:28 

Registrován:
26 zář 2010 13:38
Příspěvky:
23
Už jsem to našel v souboru config/defines.inc.php:

Kód:
define('PS_TAX_EXC', 1);
define('PS_TAX_INC', 0);


Takže jak se zdá, možná by stačilo změnit, ale co vše to ovlivní a co to vlastně znamená??? Exclude/include? Víte někdo?
Když jsem to ozkoušel, zdá se, že to značí, zda v e-shopu budou jako základ zobrazovány a brány ceny bez DPH a ceny s DPH budou dopočítávány.

Fakt už mažu spát,...

A předem díky za nápady.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Sleva (specific price) není v ceně bez DPH
PříspěvekNapsal: 21 bře 2013 15:04 

Registrován:
02 kvě 2012 07:11
Příspěvky:
5
Tak jak jsi nakonec zobrazování ceny ve faktuře vyřešil? Narazil jsem na stejný problém. Díky předem.


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 4 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 1 návštěvník


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
FTP Uploader
Staňte se naším zákazníkem!
Hledáme kolegy
PrestaShop partneři

Seznam všech partnerů

PrestaShop Hosting
Návody pro C4

© 2009-2024 ČESKÝ WEBHOSTING s.r.o. Kontaktní e-mail: forum@c4.cz
Diskuzní fórum využívá technologie: phpBB, phpBB-SEO.com, phpBB.cz