Blog JSystems - uwalniamy wiedzę!
Blog JSystems - uwalniamy wiedzę!
Power BI - Instalacja, licencje i pliki Power BI Desktop
Przecinek czy kropka w liczbach i datach Power BI - ustawienia regionalne pliku
Przecinek czy kropka w liczbach Power BI to pytanie, które wraca przy każdym pliku CSV, eksporcie z systemu i danych z zagranicznego źródła. Ustawienia regionalne decydują, czy tekst 1299,90 zostanie kwotą, czy liczbą sto razy za dużą, i czy 04/03/2025 to 4 marca, czy 3 kwietnia. Pokazujemy na modelu Nordvelli, które ustawienie za co odpowiada i jak je poprawić bez przebudowy raportu.
Pierwszy objaw nie daje żadnego komunikatu. W lekcji 2 kursu kolumna WartoscNetto po konwersji w regionie angielskim pokazała 619848 zamiast 6198,48: Power BI potraktował polski przecinek dziesiętny jako separator tysięcy. Wiersz z kwotą 6198,48 zł jest w FaktSprzedaz jeden, ale gdy błąd dotknie całej kolumny, raport policzy się bez ostrzeżenia wielokrotnie za wysoko. Kwota zapisana z dwiema cyframi po przecinku rośnie sto razy, z jedną cyfrą dziesięć razy, a bez części dziesiętnej się nie zmienia. Sprawdziliśmy to zapytaniem DAX: [Łączna sprzedaż] Nordvelli to 467 775 009,17 zł, a po zamianie każdej kwoty na tekst z przecinkiem i odczytaniu przecinka jako separatora tysięcy suma rośnie do 35 552 741 741 zł, czyli około 76 razy, bo dwie cyfry po przecinku ma 91 782 ze 108 675 wierszy.
Drugi objaw to błąd konwersji. W modelu Nordvelli, który ma ustawienia regionalne pl-PL, funkcja VALUE("1299.90") zwraca komunikat „Nie można przekonwertować wartości „1299.90” typu Text na typ Number.” (w angielskiej wersji: „Cannot convert value '1299.90' of type Text to type Number.”), a VALUE("1299,90") daje 1299,9. Trzeci objaw to daty: ten sam model odczytał tekst 04/03/2025 jako 4 marca 2025, czyli dzień przed miesiącem, a plik z systemu amerykańskiego zapisuje tak 3 kwietnia.

Zobacz też: Szkolenie Power BI - Desktop, DAX i Online + Copilot
Liczba zapisana w źródle jako liczba nie ma problemu z regionem. W arkuszu Excela Nordvelli kwoty są liczbami, więc region ich nie zmienia. Kłopot zaczyna się przy tekście: w pliku CSV, w odpowiedzi z interfejsu API albo w kolumnie tekstowej. Według dokumentacji Microsoft Power Query w Power BI Desktop rozpoznaje format regionalny systemu operacyjnego i według niego zamienia tekst na liczby i daty. Zmienić to można w oknie Opcje, w sekcji Bieżący plik, na stronie Ustawienia regionalne, w polu Ustawienia regionalne na potrzeby importowania. To ustawienie dotyczy tylko otwartego pliku, więc w kolejnym projekcie trzeba je ustawić od nowa.
Na tej samej stronie jest drugie pole, Domyślne ustawienia regionalne formatu dla dat i liczb. Ono zmienia tylko domyślne formatowanie w wizualizacjach, a nie wartości w modelu. Że region formatu zmienia tylko tekst, a nie liczbę, widać w DAX: funkcja FORMAT zamienia tę samą liczbę 1299,9 z regionem pl-PL na tekst 1 299,90, a z regionem en-US na 1,299.90. Trzecia rzecz to sekcja Globalne, gdzie w ustawieniach regionalnych są język aplikacji, język modelu, który według opisu w Desktopie działa tylko przy tworzeniu nowego raportu, oraz separatory w formułach DAX, opisane w poście o przecinku i średniku w formułach DAX.
1299.90 czy 1299,90, a daty 04/03/2025 czy 04.03.2025. Od tego zależy region, który ustawisz.let
Zrodlo = Csv.Document(File.Contents("C:\Kurs_PBI\eksport_sprzedazy.csv"), [Delimiter = ",", Encoding = 65001]),
Naglowki = Table.PromoteHeaders(Zrodlo, [PromoteAllScalars = true]),
TypyKolumn = Table.TransformColumnTypes(
Naglowki,
{{"WartoscNetto", type number}, {"DataSprzedazy", type date}},
"en-US"
)
in
TypyKolumnW widoku tabeli (druga ikona na lewym pasku) wybierz tabelę w panelu Dane i porównaj liczby ze źródłem. W kursie kontrola wyglądała tak: kolumna WartoscNetto pokazuje wartości jak 2473,14 z przecinkiem dziesiętnym, a pasek stanu w lewym dolnym rogu Tabela: FaktSprzedaz (wiersze: 108,675). Pewny test to suma: łączna sprzedaż Nordvelli ma wynosić 467 775 009,17 zł, tyle samo co suma kolumny w Excelu. Wynik kilkadziesiąt albo sto razy większy oznacza pomylony separator, a błędy w kolumnie oznaczają tekst, którego region nie potrafi odczytać.
Region ustawiaj przy zakładaniu każdego nowego pliku, bo ustawienie nie przechodzi między projektami. Dla źródeł, które na pewno mają inny zapis, podawaj region w kroku zmiany typu, wtedy zapytanie działa tak samo na każdym komputerze, niezależnie od ustawień systemu Windows. Zanim zaczniesz szukać błędu w miarach DAX, sprawdź region pliku.
Zachowanie programu sprawdziliśmy w Power BI Desktop 2.157 (wydanie z sierpnia 2026 r.) z polskim interfejsem, a przykłady na modelu sieci Nordvella z bezpłatnego kursu Power BI. Microsoft wydaje nową wersję Power BI Desktop co miesiąc, więc nazwy przycisków i limity usługi mogą się zmieniać. Aktualne wartości podaje dokumentacja Microsoft Learn.
Wróć do listy: 131 najczęstszych pytań i problemów związanych z Power BI
Komentarze (0)
Brak komentarzy...