SAP LSMW – konta księgi głównej

Tworzenie i zmiana danych wzorcowych konta księgi głównej przy pomocy transakcji LSMW

Swój pierwszy kontakt z SAP-em miałam trzy lata temu, gdy był on wdrażany w firmie, w której wówczas pracowałam. Bardzo szybko się zorientowałam, że ciężko o dobre materiały szkoleniowe, nawet te dostarczone przy wdrożeniu. Pamiętam, jak pewnego razu powiedziałam do mojego lidera wdrożenia „Nie obraź się, ale uważam że twoje materiały szkoleniowe są kiepskie, nie jestem w stanie samodzielnie się z nich nic nauczyć”. Jak wielkie było moje zdziwienie, gdy usłyszałam jego odpowiedź: „Gdyby te materiały były dobre, to ja byłbym tu niepotrzebny”. Nie powiem kolega okazał się bardzo dobrym nauczycielem i przekazał mi swoją wiedzę z modułu, za którego wdrożenie byłam odpowiedzialna, ale szybko się zorientowałam, że jeśli chce nauczyć się czegoś więcej, to musze znaleźć inne źródło SAP-owej wiedzy. I tak zaczęła się moja przygoda z wujkiem Google, który okazał się być najlepszym nauczycielem.

Podczas pewnej rozmowy zostałam zapytana, czy gdybym w tym momencie dostała komputer z zainstalowanym SAP-em i dostępem do Internetu, to czy potrafiłbym stworzyć dane wzorcowe przy pomocy transakcji LSMW. Odpowiedziałam, że tak, choć wcale nie byłam tego taka pewna i bardzo się ucieszyłam, że nie ma w pobliżu żadnego komputera 😊. Nie byłabym jednak sobą, gdybym nie sprawdziła jaka jest prawda. I znów poprosiłam o pomoc wujka Google. Przeczytałam kilka artykułów, obejrzałam parę filmów i napisałam dla siebie materiały szkoleniowe, którymi chciałabym się z Wami podzielić.

Pokażę to na przykładzie tworzenia konta księgi głównej i dokonywania w nim zmian. Zanim przejdę do LSMW celem wstępu odrobina teorii w bardzo wielkim skrócie…

Konto księgi głównej jest podstawowym narzędziem ewidencji księgowej. Służy do rejestracji operacji gospodarczych i stanowi podstawowe źródło informacji o zdarzeniach gospodarczych, które  miały miejsce w danym okresie sprawozdawczym.

Zbiór kont księgi głównej składa się na plan kont. W SAP dla każdej jednostki gospodarczej możemy przypisać operacyjny plan kont oraz lokalny plan kont (na potrzeby raportu lokalnego). Ustawień tych dokonujemy w transakcji OBY6.

SAP daje nam kilka możliwości założenia konta księgi głównej. Można tego dokonać z poziomu planu kont przy pomocy transakcji FSP0, z poziomu jednostki gospodarczej przy pomocy transakcji FSS0 lub przy pomocy transakcji FS00 od razu dla obu poziomów.

W tym opracowaniu założymy sobie konto księgi głównej w lokalnym planie kont (jak widać na powyższym obrazku – GKR, a następnie przypiszemy je do konta w planie operacyjnym – INT.

SAP LSMW

Po otwarciu transakcji LSMW wybieramy przycisk Create Entry

Pojawi się okno, w którym należy uzupełnić pola

Po wybraniu Continue otworzy się kolejne pole do uzupełnienia

Po wybraniu Continue otworzy się kolejne pole do uzupełnienia

Po kolejnym wybraniu Continue wracamy do pierwszego ekranu

Wybieramy Go->Recordings i na następnym ekranie wybieramy Create Recording

Uzupełniamy pola i wybieramy Countinue

Na kolejnym ekranie wpisujemy nazwę transakcji za pomocą, której ręcznie tworzymy dane wzorcowe. W tym przypadku FSP0 i znów Continue

Jesteśmy przekierowani kolejnego ekranu, na którym musimy uzupełnić pola, tak jakbyśmy tworzyli konto księgi głównej ręcznie. Wpisujemy numer konta, plan kont, dla którego to konto jest tworzone i wybieramy przycisk Create

Wypełniamy te pola, które mają występować w tworzonym wzorcu

Pola w następnej zakładce w tej transakcji uzupełniają się automatycznie, więc nie musimy nic wypełniać, wybieramy przycisk Save

Jesteśmy przekierowani do kolejnego ekranu, na którym są widoczne pola wypełnione podczas tworzenia danych wzorcowych konta. Niektóre z nich są powielone. Można je usunąć używając przycisku Delete Screen Field

Następnie wybieramy przycisk Default All, pojawiają nam się nazwy pól i opisy.

Usuwamy wprowadzone domyślnie dane, żeby w późniejszym procesowaniu nie pojawiały się błędy. Możemy to zrobić klikając dwa razy w dane pole.

Poniżej usunięte dane.

Zapisujemy i wracamy zieloną strzałką.

Kolejny raz wychodzimy zieloną strzałką. Wracamy do głównego ekranu, na którym wybieramy Execute

Jesteśmy przekierowani do nowego ekranu, na którym będziemy przechodzić przez poszczególne linie:

  1. Maintain Object Attributes
  2. Maintain Source Structures
  3. Maintain Source Fields
  4. Maintain Structure Relations
  5. Maintain Field Mapping and Conversion Rules
  6. Maintain Fixed Values, Translations, User-Defined Routines
  7. Specify Files
  8. Assign Files
  9. Read Data
  10. Display Read Data
  11. Convert Data
  12. Display Converted Data
  13. Create Batch Input Session
  14. Run Batch Input Session

Za każdym razem żeby wejść do kolejnej linii musimy wybrać Execute. Dane na nowym ekranie otworzą nam się do odczytu, więc musimy zmienić to używając Display <-> Change (pojawią się nowe przyciski do wyboru), a wychodząc z danego ekranu jesteśmy automatycznie przekierowani do kolejnej linii.

Zaczynamy od Maintain Object Attributes. Zaznaczamy pole Batch Input Recording i wybieramy utworzony wcześniej rekord.

Następnie zapisujemy i wracamy zieloną strzałką. Automatycznie jesteśmy przekierowani do kolejnej linii Maintain Source Structures, a w pierwszej zostały uzupełnione dane: data, czas i użytkownik.

Przechodzimy do Maintain Source Structures

Ponownie wybieramy przycisk Display <-> Change

Tak jak już wspomniałam pojawiły się nowe przyciski. Wybieramy Create a Structure, a w nowym oknie wypełniamy pola

I wybieramy Continue

Zapisujemy i wracamy zieloną strzałką. Przed przejściem do ekranu kolejnej linii Maintain Source Fields musimy przygotować sobie dane źródłowe pól. W tym celu wybieramy przycisk Object Overview

A nastepnie Table, ponieważ ma lepszy format do kopiowania

Widzimy dane źródłowe

Kopiujemy je do Excela

I zmieniamy kolejność kolumn tak, żeby mieć dane w formacie jak poniżej

Wracamy zieloną strzałką. Przechodzimy do linii Maintain Source Fields. Wybieramy przycisk Display <-> Change

A następnie stojąc kursorem na linii ZFSP0 wybieramy przycisk Table Maintenance

Do tabeli wklejamy wcześniej przygotowane dane

Zapisujemy i wracamy zieloną strzałką, pojawiły się pola źródłowe

Ponownie zapisujemy i wracamy zieloną strzałką. Przechodzimy do linii Maintain Structure Relations i tradycyjnie wybieramy Display <-> Change

Stojąc na linii LCOA wybieramy przycisk Relationship

Wybieramy przycisk Display <-> Change. Mapowanie możemy zrobić na dwa sposoby: automatycznie lub ręcznie. Aby zrobić to automatycznie wybieramy Extras -> Auto-Field Mapping

Pojawi się ekran

Wybieramy Continue

Pola zostały zmapowane. Ponownie wybieramy Continue

Zapisujemy i wracamy zieloną strzałką.

Gdybyśmy chcieli dokonać mapowania ręcznie należy stanąć na linii pola, które mapujemy i wybrać Source Field

Na ekranie, który się pojawi wybrać pole do zmapowania

Kolejną linią jest Maintain Fixed Values, Translations, User-Defined Routines. Ominiemy ją, ponieważ nie będziemy definiować żadnych stałych danych.

Zanim przejdziemy do kolejnej linii Specify Files, przygotujemy sobie plik załadowczy. Skorzystamy z poprzednio przygotowanego pliku. Po obróbce danych mamy

Następnie zapiszemy go jako plik tekstowy, oddzielany przecinkami

Przechodzimy do kolejnej linii Specify Files. Znów zmieniamy tryb przyciskiem Display <-> Change

Dane będziemy importować z komputera, więc dwa razy klikamy w linię: Legacy Data On the PC (Frontend)

Wybieramy wcześniej przygotowany plik, nadajemy nazwę, zaznaczamy Comma i wybieramy Continue

Zapisujemy i wracamy zieloną strzałką.

Przechodzimy do linii Assign Files. Wybieramy przycisk Display <-> Change

Stojąc na linii ZFSP0 wybieramy Assignment, a następnie zapisujemy i wracamy zieloną strzałką.

Przechodzimy do linii Read Data. Wybieramy Execute

Przechodzimy do kolejnego ekranu

Wracamy dwa razy zielona strzałką. Przechodzimy do linii Display Read Data

Wybieramy Continue i widzimy zaczytane dane

Klikając w linię możemy je sprawdzić

Wracamy dwa razy zieloną strzałką. Przechodzimy do linii Convert Data

Ponownie wybieramy Execute

Wracamy dwa razy zielona strzałką. Przechodzimy do linii Display Converted Data

Wybieramy Continue

Klikając w linię możemy sprawdzić dane

Wracamy dwa razy zielona strzałką. Przechodzimy do linii Create Batch Input Session

Zaznaczamy Keep batch input folder, jeśli nie chcemy, żeby sesja zniknęła po przetworzeniu, a następnie Execute. Pojawia się okno

Wybieramy Continue. Przechodzimy do linii Run Batch Input Session

Jesteśmy automatycznie przekierowani do transakcji SM35. Zaznaczamy linię do przeprocesowania i wybieramy przycisk Process

Pojawia się okno

Wybieramy ponownie przycisk Process. Widzimy, że zmienił się status sesji

A konta zostały utworzone, co można sprawdzić tabeli SKA1

Jeżeli w przyszłości będziemy chcieli założyć nowe konta, to wystarczy przygotować plik załadowczy i powtórzyć kroki zaczynając od Specify Files.

Mamy już utworzone konto lokalnego planu kont GKR. Teraz chcemy zmapować je z kontem planu operacyjnego INT. Ręcznie możemy tego dokonać używając transakcji FS00, wprowadzając dane w polu Alternative account no.

A jak to zrobić za pomocą LSMW?

Otwieramy transakcję, uzupełniamy pola jak poniżej

Project WR26 i Subproject FI zostały utworzone wcześniej. Teraz utworzymy dla nich nowy Object. Wybieramy Create Entry, uzupełniamy nazwę i wybieramy Continue

Wracamy do pierwszego ekranu i wybieramy Execute

Widzimy znany już nam ekran

Wybieramy pierwszą linię Maintain Object Attributes, przyciskamy Display <-> Change i uzupełniamy pola

Zapisujemy i wracamy zieloną strzałką. Wracamy do ekranu głównego i po kolei procesujemy poszczególne linie tak jak to zostało opisane powyżej.

Chciałabym jedynie zwrócić uwagę na to, że tym razem w pliku załadowczym oprócz danych pól będzie również nazwa transakcji, którą użyjemy. Co widać w danych źródłowych:

Tyle nauczył mnie wujek Google. A jeśli ktoś chciałby dodać coś od siebie, to komentarze są mile widziane. Mam przeczucie, że jest jeszcze jakaś wiedza tajemna, której nie wygooglałam 😉

Zostaw komentarz

This site uses Akismet to reduce spam. Learn how your comment data is processed.