Page 27 - Enterpress Magazin - 2020. 3-6.
P. 27

2020. május – december                                                                          27. oldal



        10.5. Formátumozott adatbevitel,                      rekord „ar” nevű mezőjének, tartalmát. (Az STR() konvertá-
                  adatmegjelenítés                            ló függvény a típusegyezés miatt kell, ennek második és
                                                              harmadik argumentuma a keletkező karakterlánc hosszát,
        Egyik eddig ismertetett adatbeviteli parancs sem adott le-  illetve a numerikus adatból az átalakítandó tizedesjegyek
        hetősé arra, hogy az adatbeviteli képernyő megjelenési  számát adja meg.) Ha egyetlen numerikus típusú kifejezés
        formáját befolyásolhassuk. Az ún. formátumozott adatbe-  érti szeretnénk megjeleníteni, nem kell használni a külön-
        vitelt megvalósító parancsok használatával egy egyszerű  böző konvertáló függvényeket, de amikor ezeket karakte-
        APPEND parancs „semmitmondó megjelenési formáját  res adattal keverve íratjuk akkor már igen.
        is  megváltoztathatjuk,  ily  módon  a  program  „felhaszná-
        ló-barátsága” nő. A képernyőn nem csupán a kurzor vagy  A „GET” paraméter segítségével adatokat tudunk a bil-
        az adatbázismezők puszta neve jeleníthető meg, hanem  lentyűzetről bekérni. Mégpedig olyan kényelmes formá-
        általunk meghatározott magyarázó és segítségnyújtó szö-  ban, hogy a megadott változó jelenlegi értéke megjele-
        vegek is.                                             nik a képernyőn és - karakteres típusú adat esetén - azt
        A formátumozott adatbevitel megvalósításához végered-  a megszokott szerkesztőbillentyűkkel javíthatjuk olyanra,
        ményben egyetlen parancs ismerete elegendő. A pa-     amilyent tárolni szeretnénk. A „PICTURE” paraméter hasz-
        rancs, amely a felhasználó által definiált formában fogadja  nálatával bizonyos mértékben korlátozhatjuk a bevihető
        billentyűzetről vagy jeleníti meg a képernyőn az adatokat,  adat formáját és tartalmát. A „GET” paraméterben mega-
        az adatbekérés vagy -megjelenítés pontos helyét is befo-  dott változónév egyaránt lehet memóriaváltozó és adat-
        lyása. A parancs teljes felépítése:                   bázismező neve. A szerepeltetett változónak léteznie kell,
                                                              ez memóriaváltozó esetében azt jelenti, hogy a beviteli
            @ <oszlop>,<sor> [SAY <kifejezés> [USING <formá-  parancs előtt valamilyen értékadó utasításban kell szere-
        tum>]]                                                peltetni, adatbázismező esetében pedig gondoskodnunk
            @ <oszlop>,<sor> [SAY <kifejezés>] [GET <változó> [PI-  kell a parancs kiadása előtt, hogy a rekordmutató az aktív
        CTURE <formátum>]]                                    adatbázisnak egy rekordjára mutasson (az EOF() függvény
                                                              ne legyen igaz értékű), és az adott táblázatban legyen
        A „sor” és „oszlop” paraméterek a kurzort pozícionálják,  olyan mező, melynek a megadott neve van.
        a „SAY” paraméter megjeleníti a kifejezés értékét, a „GET”  A „@ ... GET” parancs az adatbevitelt még csak előkészíti;
        paraméter az adott változó tartalmát ajánlja fel módosí-  definiálja, hogy hol és mely változókba szeretnénk ada-
        tásra, a „PICTURE” paraméterrel lehet befolyásolni a meg-  tot bekérni. A tényleges adatbevitel engedélyezését (vagy
        jelenítendő vagy tárolandó adat formáját és tartalmát.  ahogy másképpen szoktuk nevezni, a változók” aktivizálá-
        A parancs összetettségére való tekintettel egyesével, pél-  sát) egy másik parancs, a
        dákkal illusztrálva tárgyaljuk a paramétereket; hogy ezek
        közül  melyek  hagyhatók  el,  illetve  melyek  használhatók      READ
        együtt, azt a parancs szintaktikájából leolvashatjuk (a [] zá-
        rójeleket figyelembe véve). Érdemes kipróbálni interaktív  végzi. Hatására a kurzor megjelenik az első változó kezdő
        módban a parancs formáit (közben néha le kell törölni a  pozíciójában. A parancs az előtte szereplő összes olyan
        teljes képernyőt az ERASE paranccsal).                „get változót” aktivizálja, amelyeket egy előző READ pa-
                                                              rancs még nem olvasott be. Az „összes” nem értendő szó
        A „sor” és „oszlop” paraméterek helyezik a kurzort a ké-  szerint, ennek is van egy korlátja, mely számszerint 64. Ezt
        pernyő megadott sorába, illetve oszlopába. Mindkét para-  a 64 darab „get változót” célszerű egy oldalra zsúfolni, kü-
        méter megadható numerikus változóval is, de ügyeljünk  lönben egyesek magyarázó szövegei már letörlődtek, és
        a korlátokra. A képernyőn 25 sorban és 80 oszlopban he-  csak a puszta változó jelenik meg jelenlegi értékével. Az
        lyezhetők el karakterek. Példa a pozícionálásra:      adatbevitel akkor ér véget, ha az utolsó változót is kitöltöt-
                                                              tük, és leléptünk róla valamilyen módon (a kurzormozga-
            @ 4,5                                             tó, illetve az ‚ENTER’ billentyű megnyomásával). Ameddig
                                                              a kurzor valamelyik változó „mezőjében” látható, a szer-
        A „SAY” paraméter használatával egy kifejezés értékét tud-  kesztőbillentyűkkel bármilyen irányban mozoghatunk,
        juk megjeleníteni, esetleg más formában, mint ahogy a  például egy előzőleg kitöltött változót javíthatunk.
        kifejezésben található adatokat tároljuk (például a kisbetűs  A READ parancs nélkül a „@ ... GET” parancsok hatására ugyan
        szavakat megjeleníthet nagybetűsként, anélkül hogy va-  megjelennek a változók a képernyőn, de a program tovább-
        lójában módosítanánk a tárolt adatot). A kifejezésbe bár-  fut, nem ad lehetőséget arra, hogy adatainkat begépeljük.
        mely nyitott adatbázis mezője beírható, de ez csak aktuá-  Numerikus  változóba  való  adatbekérés  esetén  a dBASE
        lis rekord mezőjét jelenti. Hangsúlyozzuk, hogy egyetlen  csak számjegyeket, előjelet és/vagy tizedespontot fogad
        kifejezés írható a paraméterbe, így több adat megjeleníté-  el. Minden egyéb billentyű megnyomásakor figyelmez-
        séhez különböző „trükkökre” lesz szükségünk. Példaként  tető hangjelzést ad a rendszer, és képernyőre nem ír ki
        tekintsük a következő parancsot:                      újabb karaktert. Példa két változó beolvasására:

            @ 4,5 SAY ‚Az aru ara forintban: ‚+STR(ar,7,2)        @ 2,2 SAY „Csaladnev:” GET CSNEV
                                                                  @ 3,2 SAY „Keresztnev:” GET KNEV
        Hatására a rendszer a megadott pozíciótól kezdve kiírja      READ
        a határolójelek közé tett szöveget, és mögéje az aktuális                                       Folytatjuk!
   22   23   24   25   26   27   28