Samouczek dotyczący ekranów podrzędnych ABAP: Wywołaj ekran podrzędny w systemie SAP

Spisie treści:

Anonim

Zanim przeczytasz ten samouczek, upewnij się, czym jest program dialogowy…

ZADZWOŃ PODEKRAN

  • Ekran podrzędny to niezależny ekran wyświetlany w obszarze innego („głównego”) ekranu.
  • Podekrany umożliwiają osadzenie jednego ekranu w drugim w czasie wykonywania. Możesz dołączyć wiele ekranów podrzędnych na ekranie głównym.
  • Termin podekran dotyczy zarówno osadzonego ekranu, jak i obszaru na ekranie głównym, w którym go umieścisz. Ten samouczek dotyczy obszarów podekranowych. Rzeczywiste ekrany utworzone za pomocą transakcji SE51 nazywane są ekranami podekranowymi, jeśli zostały zdefiniowane w atrybutach ekranu.
  • Podczas korzystania z ekranu podrzędnego logika przepływu osadzonego ekranu jest również osadzona w logice przepływu ekranu głównego. Dlatego korzystanie z ekranów podrzędnych na ekranach przypomina korzystanie z dołączeń w programach ABAP.

Aby użyć podekranu, musisz wykonać trzy proste kroki

  1. Zdefiniuj obszar (y) podekranu na ekranie
  2. Zdefiniuj odpowiednie ekrany podekranowe
  3. Uwzględnij ekran podekranowy w obszarze podekranu.

Musisz także dostosować ramkę ekranu podrzędnego i ekranu głównego. Musisz nadać mu nazwę w polu nazwy pola.
Ponadto musisz również dostosować pola na podekranie, aby były wyświetlane na ekranie głównym. W przypadku, gdy ekran podrzędny zostanie zdefiniowany jako większy niż dostępny obszar na ekranie głównym, widoczna będzie tylko część ekranu podrzędnego, która mieści się w dostępnym obszarze. Obszar jest zawsze mierzony od lewego górnego rogu ekranu. Dlatego należy zachować odpowiednią ostrożność podczas definiowania obszarów pod-ekranów i tworzenia pod-ekranów.
PRZYKŁAD

Na przykład tutaj zdefiniowaliśmy dwa obszary podekranów na ekranie głównym i dołączyliśmy dwa różne ekrany podrzędne do odpowiednich obszarów. Za każdym razem, gdy wywoływany jest ekran główny, wywoływane jest PBO ekranu głównego. Ale przed wyświetleniem nazywane są również PBO każdego ekranu połączonego z obszarami podekranów na ekranie głównym.

Możesz dołączyć ekran podrzędny, używając instrukcji CALL SUBSCREEN w logice przepływu ekranu głównego.
Aby uwzględnić ekran podekranowy w obszarze podekranu głównego ekranu i wywołać jego logikę przepływu PBO, użyj poniższej instrukcji w zdarzeniu PBO na ekranie głównym:

PROCES PRZED WYJŚCIEM.ZADZWOŃ PODEKRAN ] .

Ta instrukcja przypisuje ekran podekranowy o numerze do obszaru podekranu o nazwie . Możesz także określić program, w którym zdefiniowany jest ekran podekranowy (opcjonalnie). Jeśli nie określisz programu jawnie, system wyszuka ekran podekranowy w tym samym programie ABAP, co program główny. Jeśli nie znajdzie odpowiedniego ekranu podrzędnego, wystąpi błąd w czasie wykonywania. Logika przepływu PBO ekranu podekranowego jest również zawarta w tym samym punkcie. Może to wywołać moduły PBO programu ABAP, w którym zdefiniowany jest ekran podekranowy. Na końcu podekranowej PBO, globalne pola z programu są przekazywane do dowolnych identycznie nazwanych pól ekranowych na ekranie podekranowym. Logika przepływu PBO na ekranie podrzędnym może sama obejmować dalsze ekrany podrzędne.

Nazwę obszaru podekranu należy wprowadzić bezpośrednio, bez cudzysłowów. Nazwy i można określić jako literały lub zmienne. Jeśli używasz zmiennych, musisz zadeklarować i wypełnić zmienne o identycznych nazwach w programie ABAP. Numer ekranu musi mieć 4 znaki. Jeśli nie przypiszesz ekranu podrzędnego do obszaru, pozostanie on pusty.
Aby wywołać logikę przepływu PAI na ekranie podrzędnym, użyj następującej instrukcji w logice przepływu PAI na ekranie głównym:

PROCES PO WPROWADZENIU.ZADZWOŃ PODEKRAN .

Ta instrukcja zawiera logikę przepływu PAI ekranu podekranowego zawartego w obszarze podekranu w zdarzeniu PBO. Może to wywołać moduły PAI programu ABAP, w których zdefiniowano ekran podekranowy. Dane są transportowane między polami o identycznych nazwach na ekranie podekranowym i programem ABAP, gdy zostanie wyzwolone zdarzenie PAI lub w odpowiednich instrukcjach FIELD w logice przepływu PAI ekranu podrzędnego.
Punkty do zapamiętania

  • Nazwy elementów ekranów podrzędnych w obrębie ekranu powinny być niepowtarzalne
  • Nie powinieneś mieć OK_CODE lub FCODE dołączonego do ekranu podrzędnego. OK_CODE samego ekranu głównego to OK_CODE ekranu podrzędnego
  • Pod-ekrany nie mogą mieć żadnych modułów dialogowych zawierających SET TITLEBAR, SET PF-STATUS, SET SCREEN, LEAVE SCREEN lub LEAVE TO SCREEN. Spowoduje to błąd w czasie wykonywania.
  • Musisz to wywołać w logice przepływu (zarówno PBO, jak i PAI) na głównym ekranie.
  • CALL SUBSCREEN nie jest dozwolone w instrukcjach CHAIN… ENDCHAIN ​​i LOOP ENDLOOP
  • Nie można mieć modułu AT EXIT-COMMAND
  • Pola, których używasz, to pola globalne. Muszą być zadeklarowane w górnym załączeniu
  • Jeśli używasz ekranów podrzędnych z innego programu dialogowego, transfer danych nie nastąpi, chyba że dodasz określony kod.