Egy hivatkozás érték szempontjából háromféle lehet:
Numerikus
Katakteres
Az érték maximum 256 karakter.
|
Logikai
A hivatkozott adat szempontjából a következő típusok lehetnek:
Adatbázis hivatkozás
Formája: Adatbázisnév.Mezőnév
Értéke:
- ASCIIX, CWIX, LBCDX,RBCDX, DATEX, ENUMX: Karakteres
- CARD8X, CARD16X, CARD32X, INT8X, INT16X, INT32X, REALX, LONGREALX: Munerikus
Picture: Az adatbázisban megadott picture.
|
Numerikus konstans
Formája: Egyszerű szám.
Értéke: Numerikus.
Picture: Nincs, azaz a kiértékelésnél máshonnan kell hogy picturét kapjon a kifejezés.
|
Karakteres konstans
Formája: "Szöveg"
Értéke: Karakteres.
Picture: A szöveg hosszának megfelelő "x"
|
Fejléc/Lábléc mező
Formája: Mezőnév
Értéke: A mezőben megadott adatkifejezésnek megfelelő
Picture: A mező picturéje.
|
Adatmező
Formája: Mezőnév
Értéke: A mezőben megadott adatkifejezésnek megfelelő
Picture: A mező picturéje.
|
Input mező
Formája: Mezőnév
Értéke az inputmező típusa szerint:
- Kód,KódNév: A hivatkozott kódmezőnek megfefelően (Lásd: Adatbázis hivatkozás)
- Dátum|SelPic|String|Képlet: Karakteres
Picture az inputmező típusa szerint:
- Kód,KódNév: A hivatkozott kódmezőnek megfefelően (Lásd: Adatbázis hivatkozás)
- Dátum: "99.99.99"
- SelPic: A leghosszab elemnek megfefelő "x"
- String,Képlet: Az inputban megadott hossznak megfefelő "x"
|
Speciális mező
Formája: Mezőnév
Értéke, picture : Lásd Függvények
|
Függvény
Formája: Fügvényvév([Hivatkozás[,Hivatkozás[,Hivatkozás...]]])
Értéke, picture : Lásd Függvények
Egy fügvénynek most maximum 8 argumentuma lehet.
Speciális eset az összehasonlító logikai fügvény aminek a neve "?", és három argumentuma van:
?(Hivatkozás, =|#|<|<=|>|>= ,Hivatkozás)
Értéke: Logikai
Picture: "xxxx" (Nem|Igen)
A fügvények argumentumai csak hivatkozások lehetnek, kifejezés nem adható meg.
Ennek feloldására született egy másik fügvény, a nevenincs rekurzív fügvény, aminek formálya:
(Kifejezés)
Értéke egyetlen hivatkozás, azaz bármilyen bonyorult is a benne lévő kifejezés, kiértékeléskor egyszerű fügvény hivatkozásként viselkedik.
|
A hivatkozások feldolgozása a következő módon történik:
1. Ha a hivatkozás álnév, akkor azt behelyettesítjük, majd folytatjuk a feldolgozást.
2. Karakteres konstans ellenőrzés: Ha a hivatkozás legalább két karakter hosszú, és "-lel kezdődik és azzal ér véget, akkor karakteres konstans. Ezért használható benne bárhol az "-jel.
3. Speciális mezőnév ellenőrzés: egyszerű név azonosság vizsgálat.
4. Függvény ellenőrzés: Ha szerepel benne (-jel akkor függvény.
5. Numerikus konstans ellenőrzés: Ha nem szerepel benne csak szám, illetve tizedespont vagy mínusz.
6. Fejléc mező ellenőrzés: egyszerű név azonosság vizsgálat.
7. Adatmező ellenőrzés: egyszerű név azonosság vizsgálat.
8. Input mező ellenőrzés: egyszerű név azonosság vizsgálat.
9. Adatmező vizsgálat: Ha szerepel benne pont, akkor adatbázis hivatkozás.
10. TMP3-mas módban, SQL-es megadás esetén a hivatkozást mint adatmezőt keresi az FROM részben definiált adatbázisokban. Ha talált, akkor adatbázis hivtakozás.