SAP ABAP -taulukon hallinta esimerkkien avulla

Anonim

Taulukko-ohjaimet ja askelsilmukat ovat ruudun taulukon näyttämisen objekteja, jotka lisäät ruutupaneelin näyttöön.
Ohjelmoinnin näkökulmasta taulukko-ohjaimet ja askelsilmukat ovat melkein täsmälleen samat. Taulukko-ohjaimet ovat yksinkertaisesti parannettuja askelsilmukoita, jotka näyttävät tietoja työpöytäsovellusten taulukoihin liittyvän ulkoasun kanssa.
Taulukko-ohjaimilla käyttäjä voi:

  • Selaa taulukkoa pysty- ja vaakasuunnassa
  • Muuta sarakkeen leveys uudelleen
  • Vieritä kentän sisällä (kun kentän sisältö on kenttää leveämpi)
  • Valitse taulukon rivit tai sarakkeet
  • Järjestä sarakkeiden järjestys uudelleen
  • Tallenna nykyiset näyttöasetukset tulevaa käyttöä varten

Taulukko-ohjaimet tarjoavat myös erityisiä muotoiluominaisuuksia (jotkut automaattiset, toiset valinnaiset), jotka helpottavat taulukoiden tarkastelua ja käyttöä. Table Control tarjoaa -

  • automaattinen taulukon koon muuttaminen (pysty- ja vaakasuuntainen), kun käyttäjä muuttaa ikkunan kokoa
  • erotinlinjat rivien ja sarakkeiden välillä (pysty ja vaaka)
  • sarakkeen otsikkokentät kaikille sarakkeille

Yksi askelpiirien piirre on, että niiden taulukkorivit voivat ulottua useammalle kuin yhdelle ruudulle näytöllä. Toisaalta taulukko-ohjaimen rivin on aina oltava yhdellä rivillä (vaikka vieritys on mahdollista).
Yleensä järjestelmän SAPgui-käyttöliittymä käsittelee monia taulukon hallinnan tarjoamia ominaisuuksia paikallisesti, joten sinun ei tarvitse ohjelmoida niitä itse. Ainoa merkittävä poikkeus tähän on pystysuuntainen vieritys .
Esimerkki (tapahtuma TZ60)


Syntaksi
Jos haluat käsitellä taulukon ohjausobjekteja ABAP-ohjelmissa, sinun on ilmoitettava jokaisen taulukon ohjausobjektin ohjausosa ohjelman ilmoitusosassa seuraavalla käskyllä:

SÄÄTIMET  TYYPPI-TAULUKKOKUVA NÄYTÖSTÄ 

missä on taulukon ohjausobjektin nimi ABAP-ohjelman näytöllä. Ohjaus antaa ABAP-ohjelman lukea taulukon ohjauksen määritteet ja vaikuttaa ohjaukseen. Tässä on näytön numero, johon taulukon alkuperäiset arvot ladataan.
Kohdistimen sijainti taulukon ohjausobjektille voidaan asettaa seuraavilla tavoilla:
PBO: ssa voit asettaa kohdistimen taulukon ohjausobjektin tietyn rivin tietylle kentälle.

ASETA KOHDISTIN KENTTÄ  LINE 
 [OFFSET ]

Käyttämällä valinnaista lisäystä OFFSET voit syöttää kohdistimen siirtymän kenttään kohdassa Kohdistimen sijainnin asettaminen kuvatulla tavalla.
PAI: lla voit lukea kohdistimen nykyisen sijainnin.

HANKI KOHDISTINKENTTÄ  RIVI 

Kohdistimen sijainnin selvittäminen -kohdassa annettujen tietojen lisäksi kenttä sisältää tiedot siitä, millä taulukon rivillä kursori on tällä hetkellä. Voit myös käyttää

HANKI KURSORIVI 
.

määrittää taulukon ohjaimen rivi. SY-SUBRC-toiminnolla voit tarkistaa, onko kohdistin sijoitettu taulukko-ohjaimen riville.
Saat vastaavan sisäisen taulukon rivin:

GET CURSOR -rivi 
.ind =  -top_line + 
 - 1.Lue taulukko  hakemisto ind.

Järjestelmämuuttuja stepl - sisältää nykyisen taulukon rivihakemiston silmukassa… loppupäässä. Loopc - sisältää taulukossa näkyvien rivien määrän
Taulukko-ohjaimen luominen
1.Lisää taulukon ohjauselementti näyttöön 2.
Anna nimi taulukon ohjaimelle. Ilmoita ABAP-ohjelmassa rakenne, jolla on sama (CONTROLS -tyyppinen TABLEVIEW USING SCREEN )
.

  • Kirjoita sen rakenteen nimi, jonka kentät haluat. (Jos haluat sen valitsevan sen ohjelmasi sanakirjasta, napsauta vastaavaa puhepainiketta).
  • Valitse kenttäluettelosta haluamasi kentät ja valitse ok.
  • Napsauta taulukon ohjausaluetta

Jos haluat valintasarakkeen, tarkista asianmukainen valintaruutu määritteistä ja anna sille nimi. Luo kenttä ABAP-ohjelmassa.
PBO: lla sinulla on oltava lausunto

KATSO  KÄYTTÖOHJEET .LOPETA.

PAI: ssa sinun pitäisi olla.

LOOP osoitteessa .LOPETA.

Tiedonsiirto tapahtuu näytön ja sisäisen taulukon välillä silmukoiden sisällä. Kun täytät sisäisen taulukon, käytä DESCRIBE TABLE LINES -riviä tallentaaksesi ohjausrivien kokonaismäärä. voidaan käyttää hallintaan, kun tiedonsiirto tapahtuu
Jos haluat muuttaa yksittäisten solujen määritteitä, muuta väliaikaisesti PBO: n SCREEN-taulukkoa. Voit muuttaa CONTROLS-käskyn luoman rakenteen määritteitä

 -fixed_cols jne. ovat ohjausobjektin attribuutteja -cols-index jne. ovat sarakkeiden määritteet. -cols-screen-invisible jne. ovat kunkin sarakkeen näytön määritteet.