Vodič za ABAP pretplatnike: Nazovite podzaslon u SAP-u

Sadržaj:

Anonim

Prije nego što pročitate ovaj vodič, provjerite što je program dijaloga ...

POZOVITE PODBRANU

  • Podzaslon je neovisni zaslon koji se prikazuje na području drugog ("glavnog") zaslona.
  • Podzasloni omogućuju ugradnju jednog zaslona u drugi tijekom izvođenja. Na glavni zaslon možete uključiti više podzaslona.
  • Pojam podzaslon odnosi se na zaslon koji ste ugradili i na područje na glavnom zaslonu u koje ste ga postavili. Ovaj vodič govori o podzaslonima. Stvarni ekrani stvoreni kroz SE51 transakciju nazivaju se podzasloni ako su definirani u atributima zaslona.
  • Kada koristite podzaslon, logika protoka ugrađenog zaslona također je ugrađena u logiku protoka glavnog zaslona. Stoga je korištenje podzaslona na zaslonima poput korištenja uključuje u programima ABAP.

Da biste koristili podzaslon, morate slijediti tri jednostavna koraka

  1. Definirajte područja podzaslona na zaslonu
  2. Definirajte prikladne podzaslone
  3. Uključite zaslon podzaslona u područje podzaslona.

Također, trebate prilagoditi okvir pod-zaslona i glavnog zaslona. Morate ga imenovati u polju imena polja.
Dalje, također morate prilagoditi polja na podzaslonu kako bi se pojavila na glavnom zaslonu. U slučaju da je definirano da je pod-zaslon veći od dostupnog područja na glavnom zaslonu, bit će vidljiv samo dio pod-zaslona koji stane u dostupno područje. Područje se uvijek mjeri od gornjeg lijevog kuta zaslona. Stoga biste trebali biti na oprezu dok definirate područja podzaslona i stvarate podzaslone.
PRIMJER

Na primjer, ovdje smo definirali dva pod-zaslona na glavnom zaslonu i priložili smo dva različita pod-zaslona odgovarajućim područjima. Kad god se pozove glavni zaslon, poziva se PBO glavnog zaslona. Ali prije prikaza, nazivaju se i PBO-ovi svakog zaslona koji je povezan s pod-zaslonima na glavnom zaslonu.

Možete uključiti podzaslon pomoću izraza CALL SUBSCREEN u logiku toka glavnog zaslona.
Da biste uključili podzaslon u područje podzaslona glavnog zaslona i pozvali njegovu logiku protoka PBO, upotrijebite sljedeću izjavu u PBO događaju glavnog zaslona:

PROCES PRIJE IZLAZA.POZOVITE PODSKREN  UKLJUČUJUĆI [
] .

Ova izjava dodjeljuje podzaslon s brojem području podzaslona zvanom . Također možete odrediti program u kojem je definiran zaslon podzaslona (nije obavezno). Ako program ne navedete izričito, sustav traži zaslon podzaslona u istom programu ABAP kao i glavni program. Ako ne pronađe odgovarajući zaslon podzaslona, ​​pojavit će se pogreška vremena izvođenja. Logika protoka PBO na podzaslonu također je uključena u istoj točki. To može pozvati PBO module ABAP programa u kojima je definiran podzaslon. Na kraju PBO podzaslona, ​​globalna polja iz programa prosljeđuju se u bilo koja identično nazvana polja zaslona na podzaslonu. Logika protoka PBO na podzaslonu sama može uključivati ​​daljnje podzaslone.

Ime područja podzaslona mora se unijeti izravno bez obrnutih zareza. Imena i možete navesti bilo kao literale ili kao varijable. Ako koristite varijable, morate deklarirati i popuniti identično imenovane varijable u programu ABAP. Broj zaslona mora sadržavati 4 znaka. Ako nekom zaslonu ne dodijelite podzaslon, ono ostaje prazno.
Da biste pozvali logiku protoka PAI na podzaslonu, upotrijebite sljedeću izjavu u logici protoka PAI na glavnom zaslonu:

PROCES NAKON ULAZA.POZOVITE PODBRANU .

Ova izjava uključuje logiku protoka PAI zaslona podzaslona uključenog u područje podzaslona u PBO događaju. To može nazvati PAI module ABAP programa u kojima je definiran podzaslon. Podaci se prenose između polja s istoimenim imenom na zaslonu podzaslona i programa ABAP, bilo kada se aktivira PAI događaj, ili na odgovarajućim izrazima FIELD u logiki toka PAI zaslona podzaslona.
Bodovi koje treba zapamtiti

  • Imena elemenata podzaslona unutar zaslona trebala bi biti jedinstvena
  • Ne biste trebali imati OK_CODE ili FCODE spojene s podzaslonom. OK_CODE glavnog zaslona je OK_CODE pod-zaslona
  • Podzasloni ne mogu imati dijaloške module koji sadrže SET TITLEBAR, SET PF-STATUS, SET SCREEN, LEAVE SCREEN ili LEAVE TO SCREEN. To će uzrokovati runtime error.
  • Morate ga pozvati u logici protoka (i PBO i PAI) glavnog zaslona.
  • CALL SUBSCREEN nije dopušten u CHAIN ​​... ENDCHAIN ​​i LOOP ENDLOOP izjavama
  • Ne može imati AT EXIT-COMMAND modul
  • Polja koja koristite su globalna polja. Moraju biti prijavljeni u vrhu uključuju
  • Ako koristite podzaslone iz drugog dijaloškog programa, prijenos podataka neće se dogoditi ako ne dodate određeni kôd.