Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
wylicz kwotę netto z kwoty brutto
Autor Wiadomość
programista Offline
itbeta.pl fan
**

Liczba postów: 265
Dołączył: Mar 2012
Reputacja: 14
Post: #1
wylicz kwotę netto z kwoty brutto
bardzo łatwo jest wyliczyć kwotę brutto mając kwotę netto i podatek, co jednak, gdy jesteśmy w odwrotnej sytuacji, a mianowicie posiadamy wyliczoną kwotę brutto i podatek?

Sprawa wydawać by się mogła trywialna, wystarczy odwrócić wzór. Ale, nie zapomnijmy, że wyliczając pierwotnie kwotę brutto, zaokrąglamy ją do drugiego miejsca po przecinku. I tu zaczyna się problem Smile

Oto moje rozwiązanie w PHP:

Kod PHP:
/**
 * Calculate net price from gross and tax
 *
 * @author programista.it
 * @url http://programista.it/2012/06/05/wylicz-kwote-netto-z-kwoty-brutto/
 *
 * @var double The gross price
 * @var double The tax
 *
 * @return double|false The net price|false if not exists
 */
function gross2net($gross$tax) {
  
// prepare variables
  
if($tax 1$tax 1;
  if(
$tax 0$tax 0;
  
$gross round($gross2);
  
$tax round($tax2);
  
// calculate range to check
  
$min_net round($gross / ($tax 0.01), 2);
  
$max_nex round($gross / ($tax 0.01), 2);
  
// check in range
  
for($net $min_net$net <= $max_nex$net += 0.01) {
    
$check round($net $net $tax2);
    if(
$check == $gross) {
      return 
$net// found net price
    
}
  }
  return 
false// not found net price

08.07.2012 00:18
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Fartuch Offline
Użytkownik

Liczba postów: 13
Dołączył: Sep 2012
Reputacja: 0
Post: #2
RE: wylicz kwotę netto z kwoty brutto
Ze swojej strony dodam o jeszcze jednej kwestii (ważnej dl awielu osób prowadzących sklepy internetowe).

Są dwie metody liczenia kwoty brutto (roznice wynikają oczywiscie z zaokrągleń)
1. netto * vat * ilosc
2. netto * ilosc * vat

Sklepy detaliczne stosują pierwszą zasadę - dlatego 10 piw po 1,99 (brutto) - (sorki za przykład ale piątek wieczorem jest) kosztuje w sklepie 19,9

natomiast w metodzie gdzie podstawą jest niejako cena netto (1,62) zapłacimy 19,93

Wartootym pamiętać - obie metody są poprawne księgowo ale czasem wprowadzają sporo zamieszania.

Polecam profesjonalny program sklepu internetowego oraz strony internetowe zawierające sporo porad dotyczących biznesowego wykorzystania stron w sieci Internet.
07.09.2012 18:50
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
programista Offline
itbeta.pl fan
**

Liczba postów: 265
Dołączył: Mar 2012
Reputacja: 14
Post: #3
RE: wylicz kwotę netto z kwoty brutto
bardzo ciekawy fakt, uwzględnię go i rozszerzę kod Smile

ogólnie z tymi zaokrągleniami są same problemy ;d
08.09.2012 12:09
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Fartuch Offline
Użytkownik

Liczba postów: 13
Dołączył: Sep 2012
Reputacja: 0
Post: #4
RE: wylicz kwotę netto z kwoty brutto
Dodałbym jeszcze informację, że klasyczne round z php źle zaokrągla (po amerykańsku).

Rozwiązaniem jest własna funkcja
pl_round($value, $precision){
return round($value+0.0000000000001, $precision)
}

Inaczej gdy na końcu jest 5 np. 4.725 da 4,72 (dla 2 miejsc po przecinku). Więc nie będzie to poprawne według polskiej księgwowości.

Polecam profesjonalny program sklepu internetowego oraz strony internetowe zawierające sporo porad dotyczących biznesowego wykorzystania stron w sieci Internet.
10.09.2012 08:55
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
programista Offline
itbeta.pl fan
**

Liczba postów: 265
Dołączył: Mar 2012
Reputacja: 14
Post: #5
RE: wylicz kwotę netto z kwoty brutto
round(4.725, 2) daje mi 4.73 czyli jak mniemam poprawną wartość

http://php.net/manual/en/function.round.php
10.09.2012 18:56
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Fartuch Offline
Użytkownik

Liczba postów: 13
Dołączył: Sep 2012
Reputacja: 0
Post: #6
RE: wylicz kwotę netto z kwoty brutto
Zdaje się że round działa inaczej na linux inaczej na win (na win jest po polsku - jesli polski system)

Wiem że są z tym problemy - może skopałem przykład z pamięci pisany.

Polecam profesjonalny program sklepu internetowego oraz strony internetowe zawierające sporo porad dotyczących biznesowego wykorzystania stron w sieci Internet.
11.09.2012 09:41
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Comandeer Offline
Starszy użytkownik
*

Liczba postów: 95
Dołączył: Aug 2012
Reputacja: 7
Post: #7
RE: wylicz kwotę netto z kwoty brutto
od 5.3 zaokrągla domyślnie w górę:
Kod:
float round ( float $val [, int $precision = 0 [, int $mode = PHP_ROUND_HALF_UP ]] )
więc raczej nie jest to wina systemu, a wersji PHP

Moje tutoriale
11.09.2012 11:46
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
programista Offline
itbeta.pl fan
**

Liczba postów: 265
Dołączył: Mar 2012
Reputacja: 14
Post: #8
RE: wylicz kwotę netto z kwoty brutto
dokładnie tak Smile dlatego zamieściłem linka do manuala, tam jest dokładnie opisane co i jak Wink
11.09.2012 18:32
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
kamil77 Offline
Użytkownik

Liczba postów: 3
Dołączył: Nov 2013
Reputacja: 0
Post: #9
RE: wylicz kwotę netto z kwoty brutto
Instrukcja warunkowa i możemy użyć funkcji Ceil () , Floor () - sposobów jest wiele.

Sprawdź projektowanie wnętrz Radom i odśwież swój dom lub mieszkanie.
05.11.2013 13:20
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Użytkownicy przeglądający ten wątek: 1 gości
Odpowiedz 


Skocz do:







| Programowanie | PHP | C/C++ | Java | Delphi i Pascal | Bazy Danych | Webmastering | itBeta.pl | Sprzęt oraz administracja serwerami | Certyfikaty SSL | Gotowe skrypty | Luźne tematy na temat web hostingu | Oferty | Domeny internetowe | Własna strona www | Zaprezentuj swoją stronę | Zarabianie i reklama w sieci | Inne | Forum itBeta.pl | Komputery i software | Luźne rozmowy | Kosz | Grafika | Pozycjonowanie | Download | Opinie | Web hosting | Wasze prace | Giełda | Pytania oraz prośby | Praca, pomoc w prowadzeniu serwisów | Strony WWW | Marketing & reklama | Inne | Skrypty, programy, grafika | Game Hosting | Oferty | Opinie o firmach game hostingowych | Serwery gier | Zadaj pytanie przedstawicielowi | Dział techniczny | Dział dla Firm | Zaplecze - m.in CRM, Billing | Aplikacje serwerowe | Biuro | Aplikacje web'owe | Obsługa i zarządzanie klientami | Narzędzia | Kalendarze | Chat | Webmail | VOIP | Zarządzanie projektami | Video konferencje | Portal | Analityka | Blogi | Katalogi | CMS | Sklepy internetowe | Forum | Galerie | Narzędzia dla stron | Narzędzia ogólne | Skrypty WIKI | Platforma elearningowa | Zakończone działalności | Zakończone działalności | Informacje ze świata | Tutoriale |
Pierwsza zasada forum
Reklama
Partnerzy
blog, IT blog, IT
Ostatnie wątki
Pozycjonowanie
Ostatni post: margo903
Wczoraj 23:31
» Odpowiedzi: 6
» Wyświetleń: 2066
Programy
Ostatni post: Cooler
Wczoraj 12:45
» Odpowiedzi: 40
» Wyświetleń: 30901
Laptop czy PC do pracy?
Ostatni post: piotr.polkowski
Wczoraj 11:31
» Odpowiedzi: 39
» Wyświetleń: 4052
Poszukuje domen
Ostatni post: Cooler
19.09.2014 13:02
» Odpowiedzi: 9
» Wyświetleń: 2593
Katalogi - czy jeszcze c...
Ostatni post: Cooler
19.09.2014 13:01
» Odpowiedzi: 0
» Wyświetleń: 51
AZ.pl
Ostatni post: Cooler
19.09.2014 12:59
» Odpowiedzi: 2
» Wyświetleń: 390
Depozycjonowanie
Ostatni post: Cooler
19.09.2014 12:55
» Odpowiedzi: 5
» Wyświetleń: 631
Wsp. odrzuceń a wpłw na z...
Ostatni post: Cooler
18.09.2014 09:26
» Odpowiedzi: 3
» Wyświetleń: 391
Pozycjonowanie przez soci...
Ostatni post: Cooler
18.09.2014 09:24
» Odpowiedzi: 23
» Wyświetleń: 4883
Lista darmowych katalogów...
Ostatni post: Cooler
18.09.2014 09:20
» Odpowiedzi: 4
» Wyświetleń: 1310