SAP-ABAP obsługuje dwa typy programów - programy raportów i programy dialogowe. Programy raportów są używane, gdy trzeba wyświetlić duże ilości danych
W tym samouczku dowiesz się:
- Ekran wyboru
- Wydarzenia w programie raportowania ABAP
- Formatowanie raportu
- Interaktywne programowanie raportów
- Logiczne bazy danych
Cel / użycie programów raportujących
- Są używane, gdy dane z wielu tabel muszą zostać wybrane i przetworzone przed prezentacją
- Używane, gdy raporty wymagają specjalnego formatu
- Używane, gdy raport musi zostać pobrany z SAP do arkusza Excel w celu dystrybucji.
- Używane, gdy raport ma zostać wysłany pocztą do określonej osoby.
Ważne uwagi dotyczące programu raportowania
- Programy raportów są zawsze programami wykonywalnymi. Typ programu to zawsze 1.
- Każdy program raportu odpowiada określonemu typowi aplikacji, tj. Sprzedaż i dystrybucja, FI - CO itp. Może to być również program Cross Application, tj. Typ „*”.
- Programowanie raportów jest programowaniem sterowanym zdarzeniami.
- Pierwsza linia programu raportującego to zawsze Report
. - Aby pominąć nagłówek listy lub nazwę programu, używany jest dodatek Brak standardowego nagłówka strony .
- Rozmiar linii dla konkretnego raportu można ustawić za pomocą dodania rozmiaru linii
. - Liczbę wierszy dla określonej strony można ustawić za pomocą dodawania liczby wierszy n (n1) . N to liczba wierszy strony, a N1 to liczba wierszy zarezerwowanych dla stopki strony.
- Aby wyświetlić jakiekolwiek informacje lub komunikaty o błędach, dodajemy do programu klasę wiadomości, używając dodatku: Message-id
. Klasy wiadomości są utrzymywane w SE91.
Raportbrak standardowego nagłówka stronyrozmiar linii liczba linii id-wiadomości .
Ekran wyboru
„Ekran wyboru” to ekran, na którym określa się wartości wejściowe, dla których program ma działać.
Ekran wyboru jest zwykle generowany z pliku
- Parametry
- Wybierz opcje
Składnia
Początek ekranu wyboru ekranuekran wyboru początek bloku <#> z tytułem ramki …… koniec ekranu wyboru bloku <#>ekran wyboru koniec ekranu
Parametry
Parametry pomagają w dynamicznym wybieraniu. Mogą pomieścić tylko jedną wartość na jeden cykl wykonywania programu.
Składnia
Definiowanie parametrów jako typu danych
Parametry p_id (30) typ c.
Definiowanie parametrów, takich jak pole tabeli.
Parametr p_id taki jak- .
Parametrami mogą być zarówno pola wyboru, jak i przyciski radiowe.
Parametry p_id jako pole wyboru. Parametry p_id1 grupa radiobutton.Parametry p_id2 grupa radiobutton .
Parametry mogą być listbox.
Parametr p_id taki jak- jako listbox
Wybierz opcje
Opcja Wybierz-Opcja służy do wprowadzenia zakresu wartości lub zestawu wartości do programu
Składnia
select-options s_vbeln dla vbak-vbeln.
Możesz także zdefiniować opcję wyboru, taką jak zmienna
select-options s_vbeln dla vbak-vbeln bez interwałów bez rozszerzenia
Wydarzenia w programie raportowania ABAP
Programy raportów ABAP to programy sterowane zdarzeniami . Różne zdarzenia w raporcie Program to:
Ładowanie programu
- Uruchamia skojarzone zdarzenie w sesji wewnętrznej po załadowaniu programu typu 1, M, F lub S.
- Uruchamia również powiązany blok przetwarzania raz i tylko raz dla każdego programu i sesji wewnętrznej.
- Blok przetwarzania LOAD-OF-PROGRAM ma z grubsza tę samą funkcję dla programu ABAP typu 1, M, F lub S, jaką konstruktor ma dla klas w obiektach ABAP
Inicjalizacja.
- To zdarzenie jest wykonywane przed wyświetleniem ekranu wyboru.
- Inicjalizacja wszystkich wartości.
- Możesz przypisać inne wartości, inne niż wartości domyślne na ekranie wyboru.
- Możesz wypełnić ekran wyboru pewnymi wartościami w czasie wykonywania.
Na ekranie wyboru.
- Zdarzenie jest przetwarzane po przetworzeniu ekranu wyboru (na koniec PAI).
- Tutaj odbywa się walidacja i kontrola wprowadzonych wartości
Początek wyboru.
- Tutaj program rozpoczyna wybieranie wartości z tabel.
Koniec wyboru.
- Po wybraniu wszystkich danych zdarzenie to zapisuje dane na ekranie.
Wydarzenia interaktywne
- Służy do interaktywnego raportowania. Służy do tworzenia szczegółowej listy z listy podstawowej.
Formatowanie raportu
ABAP umożliwia formatowanie raportów zgodnie z życzeniem użytkownika. Na przykład „Linie alternatywne” muszą być wyświetlane w różnych kolorach, a linia „Sumy” powinna mieć kolor żółty.
Składnia
Format Kolor nFormat Kolor n Intensyfikowany Wł
n może odpowiadać różnym liczbom.
Należy pamiętać, że są też inne dodatki wraz z formatem
FORMATUJ WYŁĄCZ KOLOR WZMOCNIONE WYŁĄCZ ODWRÓCENIE WYŁĄCZ HOTSPOT WYŁĄCZ WEJŚCIE WYŁĄCZONE
Interaktywne programowanie raportów
- Korzystając z programowania interaktywnego, użytkownicy mogą aktywnie kontrolować pobieranie i wyświetlanie danych
- Służy do tworzenia szczegółowej listy z bardzo podstawowej listy
- Szczegółowe dane znajdują się na dodatkowej liście.
- Lista pomocnicza może całkowicie nakładać się na pierwszy ekran lub można ją wyświetlić na nowym ekranie
- The secondary lists can be themselves interactive.
- The first list may also call a transaction.
- There are different events associated with interactive programming.
Some commands used for interactive programming
HotspotIf one drags the mouse over the data displayed in the report the cursor changes to a Hand with an Outstretched Index finger. An hotspot can be achieved using the FORMAT statement.
Syntax: Format Hotspot On (Off).
HideThis command helps you to store the field names based on which one will be doing further processing to get a detailed list. It is written directly after the WRITE statement for a field. When a row is selected the values get automatically filled in the variables for further use.
Syntax: Hide.
Logical Databases
- Instead of using "Select" queries you can use logical database to retrieve data for a program.
- Logical databases are created by transaction SE36
- The name of a logical database can be up to 20 characters long. It may begin with a namespace prefix.
- The data is selected by another program and one can access the data using GET
command which places the data in the work area .
Advantages of a logical database over normal Select queries.
- It offers check conditions to see whether the input is correct, complete and plausible
- It contains central authorization checks for database access
- Enhancements such as improvement in performance immediately apply to all reports which use logical database.
Note: Due to the complexities involved, logical databases are not used in most of the cases