Skip to Content

Separator tysięcy w Odoo — konfiguracja formatu liczb

W Odoo sposób wyświetlania liczb nie jest ustawiany w widokach ani w poszczególnych polach, lecz w konfiguracji języka. Jedno ustawienie decyduje o tym, czy użytkownik zobaczy 1234567,89 czy 1 234 567,89 — i obowiązuje w całym systemie.

Gdzie Odoo przechowuje format liczb

Za formatowanie odpowiada model języka (res.lang). Każdy aktywny język ma własny zestaw trzech parametrów:

  • Separator dziesiętny – znak oddzielający część ułamkową; dla polskiego jest to przecinek.
  • Separator tysięczny – znak wstawiany między grupami cyfr; zgodnie z polską normą typograficzną jest to spacja, nie kropka ani przecinek.
  • Grupowanie – schemat określający, co ile cyfr wstawić separator.

Zmiana dotyczy wszystkich użytkowników pracujących w danym języku.

Konfiguracja krok po kroku
  1. Uruchomić tryb deweloperski (Ustawienia → Narzędzia dla programistów → Aktywuj tryb programisty).
  2. Przejść do Ustawienia → Tłumaczenia → Języki.
  3. Otworzyć pozycję Polish / Język polski.
  4. Uzupełnić pola:
    • Separator dziesiętny: ,
    • Separator tysięczny: spacja
    • Grupowanie: [3,0]
  5. Zapisać i odświeżyć przeglądarkę.

Po odświeżeniu wszystkie kwoty i liczby w interfejsie zostaną sformatowane według nowego schematu.

[formularz języka polskiego z uzupełnionymi polami separatorów]

Pułapka: puste pole Grupowanie

To najczęstsza przyczyna sytuacji, w której separator został ustawiony, a liczby nadal wyświetlają się bez odstępów.

Samo wpisanie separatora tysięcznego nie wystarczy. Jeżeli pole Grupowanie pozostaje puste lub zawiera [], Odoo nie wie, co ile cyfr ma wstawiać znak — i nie wstawia go wcale.

Zapis [3,0] należy czytać następująco: pierwsza liczba to rozmiar grupy, zero na końcu oznacza „powtarzaj ten sam podział aż do końca liczby". Notacja pozwala też na schematy nieregularne — [3,2,0] da zapis 12 34 567, stosowany w niektórych krajach azjatyckich.

Zakres działania ustawienia

Dwie kwestie warto znać przed wprowadzeniem zmiany.

Ustawienie obejmuje również wydruki. Raporty QWeb — faktury, oferty, zestawienia — korzystają z tej samej konfiguracji języka co interfejs. Nie da się włączyć separatora wyłącznie na ekranach, pozostawiając wydruki bez zmian. W praktyce nie stanowi to problemu, ponieważ separator tysięcy na dokumencie handlowym jest zapisem poprawnym i oczekiwanym.

Ustawienie działa osobno dla każdego języka. Użytkownik pracujący w interfejsie angielskim zobaczy format angielski (1,234,567.89) niezależnie od konfiguracji języka polskiego. Jeżeli w firmie używane są dwa języki, oba wymagają osobnego skonfigurowania.

Uwagi praktyczne

Jeśli po zapisie separator nadal nie działa, warto sprawdzić, czy spacja w polu została faktycznie zachowana — znaki puste bywają przycinane przy zapisie formularza.

Rozwiązaniem pewniejszym typograficznie jest spacja nierozdzielająca, która nie pozwala przeglądarce złamać liczby na końcu wiersza. Zwykła spacja działa poprawnie w większości zastosowań.

Mechanizm pozostaje niezmieniony w wersjach 16, 17, 18 i 19 — różnić się może jedynie układ menu prowadzącego do listy języków.

Na koniec

Formatowanie liczb należy do ustawień, o których przypomina się dopiero wtedy, gdy ktoś pomyli się o rząd wielkości przy odczycie kwoty z ekranu. Konfiguracja zajmuje minutę i obejmuje całą bazę — warto wykonać ją na początku wdrożenia, zanim użytkownicy przyzwyczają się do liczb zapisanych ciągiem.

Nikt tego nie kasował, a numer znikał ?!