Kategorie szkoleń | Egzaminy | Kontakt
  • 3
  • 1
  • 73

Witam.

Mam problem z wykonaniem wydawałoby się prostego zadania. Mianowicie, nie wiem jak przy pomocy PowerPivota obliczyć ilości kilku asortymentów wyprodukowane w danym okresie czasu, korzystając z kilku baz danych. 

INWENTARYZACJA (Stan na początek dnia):

 

Lp Data Id Towaru Ilość
1 2016-01-01 1 100
2 2016-01-01 2 200
3 2016-01-01 3 50
4 2016-01-02 1 50
5 2016-01-02 3 150
6 2016-01-03 2 100
7 2016-01-03 3 100

 

TOWARY

 

Lp Id Towaru Nazwa towaru
1 1 Towar A
2 2 Towar B
3 3 Towar C

 

ZAKUPY HANDLOWE

 

Lp Data Id Towaru Ilość
1 2016-01-01 1 100
2 2016-01-01 2 50
3 2016-01-02 1 100
4 2016-01-02 3 200

 

SPRZEDAŻ

 

Lp Data Id Towaru Ilość
1 2016-01-01 1 300
2 2016-01-01 2 300
3 2016-01-02 1 500
4 2016-01-02 2 800
5 2016-01-02 3 800
6 2016-01-03 2 800
7 2016-01-03 3 800

 

Potrzebny jest raport, który automatycznie będzie liczył produkcję za dowolny okres na podstawie powyższych tabel. Wzór do obliczenia jest prosty: Produkcja = Stan Końcowy Magazynu - Stan Początkowy Magazynu - Zakupy Handlowe + Sprzedaż.

I tak obliczając Produkcję tylko za dzień 2016-01-01 powinienem uzyskać następujące wyniki:

Produkt A - 150

Produkt B - 50

Produkt C - 100

Natomiast w okresie od 1 do 2 stycznia powinienem uzyskać następujące wyniki:

Produkt A - 500

Produkt B - 950

Produkt C - 650

Czy mógłbym liczyć na pomoc w stworzeniu tych obliczeń przy pomocy PowerPivota?

Załączniki

  • xlsx

    Obliczanie Produkcji.xlsx ( 296K )
Michał_Leonarczyk
  • Zapytał
  • @ Michał_Leonarczyk | 19.04.2016
    • 2
    • 0
    • 5

Odpowiedzi (3)

  • 1

Witam.

W polu obliczeniowym PowerPivot stwórz formułę podobną do tej poniżej:

"=SUMX(tabela_stan,tabela_stan[pole_ilosc]) - sumx(....". 

Nie napisałem całej formuły, gdyż nie znam struktur Twoich tabel, u mnie takie coś zadziałało.

Przemysław_Płaczek
  • Odpowiedział
  • @ Przemysław_Płaczek | 19.04.2016
    • 3
    • 6
    • 1
Komentarze
Zaciągam sobie tabele z baz danych SQL w dokładnie takiej postaci jak pokazałem powyżej, z tym, że Id. towarów mam około 1000. (Oczywiście dochodzą z miesiąca na miesiąc nowe) Nie bardzo wiem z jakiego pola obliczeniowego skorzystać. Czy nie powinienem najpierw stworzyć tabeli np. PRODUKCJA i dodać do modelu danych, a następnie połączyć relacjami z pozostałymi tabelami?
Skomentował : @ Michał_Leonarczyk ,19.04.2016
  • 2
  • 0
  • 5
Tak, musisz zrobić tabelę przestawną na podstawie modelu danych i polu obliczeniowym podobną formułę do mojej. Jeszcze pytanie, jak chcesz pokazać wynik narastająco, czy sumę dla wybranych dat, jeżeli to pierwsze, to jest w opcjach pól tabeli przestawnej zliczanie narastające chyba to będzie "suma bieżąca" ale ręki nie daję uciąć.
Skomentował : @ Przemysław_Płaczek ,19.04.2016
  • 3
  • 6
  • 1
Wynik chciałbym widzieć jako suma z dowolnie wybranego okresu. Miałbym prośbę, załączyłem plik xlsx z 4 modelami danych w Pivocie. (Inwentaryzacja, Zakupy, Sprzedaż, Towary) Czy mógłbyś mi zademonstrować na tym pliku jak sobie poradziłeś z tym problemem? Ja się chyba już wykładam na stworzeniu prawidłowych relacji między tabelami. Z góry dziękuję za poświęcony czas :) Arkusz 5 służył mi tylko do obliczenia wyniku ręcznie także nim się nie sugeruj
Skomentował : @ Michał_Leonarczyk ,19.04.2016
  • 2
  • 0
  • 5
  • 11

Proszę, w załączniku moje "wypociny". Wynik w Arkuszu5, który bardzo się przydał. :)

Załączniki

  • xlsx

    przykład.xlsx ( 408K )
Przemysław_Płaczek
  • Odpowiedział
  • @ Przemysław_Płaczek | 19.04.2016
    • 3
    • 6
    • 1
  • 1

Dokładnie o takie rozwiązanie mi chodziło. :) Teraz widzę gdzie popełniłem błąd. Relacje miałem ok, ale do obliczenia produkcji, zamiast stworzyć nową miarę jak to zrobiłeś, to próbowałem stworzyć nową tabelę i dodać ją do modelu. 

Wielkie dzięki za pomoc.

Michał_Leonarczyk
  • Odpowiedział
  • @ Michał_Leonarczyk | 20.04.2016
    • 2
    • 0
    • 5