OD PYTANIA DO SPRAWDZONEGO WYNIKU

Wykres to wynik.
Zobacz drogę do niego.

Co zrobić z powtórzonym wierszem? Jak zdefiniować miarę, żeby wynik dało się sprawdzić? Dwa małe studia pokazują decyzje przed raportem, wykonanie i sposób odbioru.

Autorskie demonstracje syntetyczne

Wszystkie identyfikatory i kwoty są fikcyjne. To materiał przygotowany dla PMC, bez danych i wdrożeń klientów. Liczby opisują wyłącznie ten przykład; nie dowodzą oszczędności lub efektów w firmie.

Materiał PMC · wersja 1 · · jeden zestaw danych, dwa etapy pracy

01 / JAKOŚĆ DANYCH I AUTOMATYZACJA

Zanim dodasz liczby,
sprawdź wiersze.

Niekompletny rekord i duplikat mogą zmienić wynik zestawienia. W tym przykładzie zachowujemy źródło, zapisujemy wyjątki i dopiero potem liczymy.

Bilans wierszy · wynik demonstracji
  1. 8wierszy wejścia
  2. 6przyjętych do raportu
  3. 2wyjątki do wyjaśnienia

8 = 6 + 2. Wiersz odłożony do wyjaśnienia pozostaje w śladzie źródłowym.

01Problem

Trzeba przygotować zestawienie bez podwójnego policzenia tego samego rekordu i bez uznania brakującego kosztu za zero.

02Wejścia

Plik input.csv: ID, miesiąc, przychód i koszt w tys. zł. Osiem fikcyjnych wierszy, w tym powtórzenie F03 i niepełny F07.

03Założenia

ID oznacza jeden rekord. Miesiąc ma format 01–12, kwoty są nieujemne i kompletne. Brak pola ma pierwszeństwo przy przypisaniu wyjątku. Oryginału nie zmieniamy.

04Alternatywy i decyzja

Można usuwać wiersze ręcznie albo domyślnie wstawiać zera. Wybrano jawne reguły i osobną listę wyjątków: identyczne powtórzenie odkładamy, braku nie uzupełniamy. Sprzeczne dane z tym samym ID zatrzymują obliczenia.

05Wykonanie

Skrypt czyta kopię CSV. Pierwszy kompletny rekord pozostaje, powtórzenie F03 trafia na listę z powodem exact_duplicate, F07 z powodem missing_field. Każdy wyjątek ma numer wiersza źródła.

06Weryfikacja

Odbiór porównuje przyjęte ID F01–F06, wyjątki z wierszy 8 i 9 oraz bilans 8 = 6 + 2. Skrypt sprawdza zgodność plików z wynikiem referencyjnym i stałymi oczekiwaniami.

07Rezultat

Sześć przyjętych wierszy i dwa udokumentowane wyjątki. To wynik porządkowania fikcji, bez pomiaru czasu lub kosztu pracy u klienta.

08Ograniczenia

Nie ustalamy, jaka kwota powinna zastąpić brak. Lipcowy F07 nie wchodzi do raportu sześciu miesięcy. Regułę ID, okres i sposób obsługi innych błędów trzeba uzgodnić dla rzeczywistego źródła; ten skrypt nie jest gotowym importerem.

Wyjątki zachowane do wyjaśnienia · dane syntetyczne
Wiersz źródłaIDPowódDecyzja w demo
8F03Identyczne powtórzenieZachowaj pierwszy, odłóż drugi
9F07Brak kosztuOdłóż bez dopisywania kwoty

02 / RAPORTOWANIE I ANALIZA BIZNESOWA

Najpierw definicja.
Potem porównanie.

Na sześciu przyjętych wierszach pokazujemy różnicę przychodów i kosztów. Miara ma określony zakres, jednostkę, wzór i sposób sprawdzenia.

Przychody i koszty · tys. zł · dane syntetyczne
04080120styczeń: przychody 60 tys. złstyczeń: koszty 49 tys. zł01luty: przychody 72 tys. złluty: koszty 57 tys. zł02marzec: przychody 68 tys. złmarzec: koszty 54 tys. zł03kwiecień: przychody 80 tys. złkwiecień: koszty 61 tys. zł04maj: przychody 92 tys. złmaj: koszty 67 tys. zł05czerwiec: przychody 108 tys. złczerwiec: koszty 77 tys. zł06
PrzychodyKoszty

Oś pozioma: miesiące 01–06. Wartości i sumy są dostępne w tabeli. W wąskim widoku wykres i tabele można przewijać poziomo.

01Problem

Sam wykres nie wyjaśnia, co oznacza „marża”. Potrzebna jest jedna definicja i możliwość uzgodnienia wyniku z wejściem.

02Wejścia

clean.csv z pierwszego studium: sześć miesięcy, te same jednostki, osobne kolumny przychodów i kosztów. Wyjątki są poza obliczeniem.

03Założenia

Różnica = suma przychodów − suma kosztów. Marża demonstracyjna = różnica / suma przychodów × 100%. Zaokrąglenie do jednego miejsca, po obliczeniu całości.

04Alternatywy i decyzja

Średnia z procentów miesięcznych ważyłaby każdy miesiąc jednakowo. Wybrano iloraz sum, zgodny z pytaniem o cały okres. Dwa szeregi pokazujemy na wspólnej osi od zera; tabelę zostawiamy do kontroli.

05Wykonanie

Obliczenia używają liczb dziesiętnych. Skrypt zapisuje sumy, różnicę, procent, wersję demonstracji i SHA-256 wejścia w result.json. Strona pobiera liczby z tego artefaktu.

06Weryfikacja

Niezależne oczekiwania dla fikcji: 60 + 72 + 68 + 80 + 92 + 108 = 480, koszty = 365, różnica = 115. Kontrola porównuje wszystkie pliki wynikowe i 115 / 480 × 100% po zaokrągleniu.

07Rezultat

480 tys. zł przychodów, 365 tys. zł kosztów, różnica 115 tys. zł i 24,0% marży demonstracyjnej. To obliczenia na fikcyjnych danych, bez pomiaru poprawy wyniku firmy.

08Ograniczenia

Różnica nie oznacza zysku netto. Przykład nie zawiera podatków, alokacji ani pełnej definicji kosztów firmy. Nie badano integracji, odświeżania produkcyjnego i odbioru przez rzeczywistego użytkownika. Nowe dane wymagają nowego sprawdzenia.

Dane raportu · fikcja · tys. zł
MiesiącPrzychodyKosztyRóżnica
01 / styczeń604911
02 / luty725715
03 / marzec685414
04 / kwiecień806119
05 / maj926725
06 / czerwiec1087731
Razem480365115

SPRAWDŹ SAMODZIELNIE

Od wejścia do wyniku.
Pliki są częścią przykładu.

Pobierz sześć plików do jednego folderu. To mały materiał demonstracyjny do odtworzenia lokalnie, bez konta i bez wysyłania danych.

Jak odtworzyć kontrolę

  1. Przygotuj Python 3.10 lub nowszy. Biblioteki i połączenie z siecią nie są potrzebne.
  2. W folderze pobranych plików uruchom python verify.py. Skrypt niczego nie zapisuje.
  3. Oczekiwany wynik to PASS: 8 = 6 + 2, przychody 480, koszty 365, różnica 115 i marża 24,0%.
  4. Opcjonalnie uruchom python verify.py --output wynik-demo i porównaj osobno wygenerowane pliki z referencjami. Zmieniony plik lub wynik niezgodny z oczekiwaniem wymaga wyjaśnienia.

Pełne reguły i ograniczenia znajdziesz w README. Nie podmieniaj fikcji na rzeczywiste dane klienta.

Dawne trzy demonstracje wizualizacji na stronie głównej pokazują możliwe układy raportu. Także one są syntetyczne; nie stanowią dowodu wdrożenia lub efektu u klienta.

TWÓJ PROCES

Co trzeba sprawdzić
w Twoim raporcie?

Opisz trudność i oczekiwany wynik. Bez danych klientów, haseł i kluczy dostępu. Materiały, zakres i sposób odbioru uzgodnimy osobno.

Opisz swój problem