1. MCSERE: mező csere modul

A modul egy találati halmaz összes rekodján végigmegy, és a mit mezőben megadott értéket lecseréli a mire mezőben megadott értékre. A modul működik szám, szöveg, dátum és dataref (rekord azonosító) mezőkre is.

1.1. A modul indítása

A modul az Egyéb / Eszközök / Modul indítás menüpontból indítható. A modul neve: MCSERE, paramétereket nem kell neki adni. Ha a könyvtár nem jogosult a modul használatára, akkor a

Nem jogosult a modul használatára

hibaüzenet jelenik meg, különben a következő ablak tűnik fel:

1.2. A modul ablaka

1. ábra: Modul ablaka

A Halmaz mezőt az F9 (beszúrás) gomb segítségével tölthetjük ki. A találati halmazok listájából kell kiválasztanuk a feldolgozásra szánt halmazt. Ezt a mezőt kötelező kitölteni (mint az a > jelből is látható).

A Rekordtípus (szintén kötelező) mezőben meg kell adnunk, hogy milyen rekordokra menjen a feldolgozás. E nélkül a mező sorszámnak nem lenne semmi értelme. A találati halmazban lehetnek különböző rekordok, mindegyikben egészen más mezőt jelenthetne ugyanaz a sorszám.

A Mező sorszám (kötelező) mezőbe annak a mezőnek a sorszámát kell beírni, amiben a cserét végre kívánjuk hajtani. Ez szöveg, szám, dataref és kódolt mező is lehet. A mező sorszámokat a DBSTRUCT program segítségével deríthetjük ki.

A mit mezőbe kell azt az értéket beírnunk, amit le akarunk cserélni. Ha üresen hagyjuk, azt jelenti, hogy a ki nem töltött mezőket akarjuk megváltoztatni. Ha egy csonkolás jelet teszünk bele (ALT;) akkor az összes kitöltött mező értékét lecseréljük (ezzel nagyon vigyázzunk!).

Ha a Rekord tipus és a Mező sorszám által azonosított mező szöveges, és 1 csonkolás jelet használunk, az a Mit mező elején/közepén/végén is szerepelhet (ennek megfelelően a Mező sorszám mezőben a csonkolás jel mögött megadott jelsorozattal végződő/a csonkolás jel előtt szereplő jelsorozattal kezdődő és a csonkolás jel után szereplő jelsorozattal végződő/a csonkolás jel előtt megadott jelsorozattal kezdődő értéket tartalmazó rekordokban történik meg a mező cseréje. (A csonkolás jel tetszőleges számú karakterből álló jelsorozatnak felel meg a feldolgozás során.) Szöveges mezőnél a mit mezőben csonkolás jellel kezdődő és azzal is záródó jelsorozatot is megadhatunk, ezáltal a csonkolás jelek közötti jelsorozatot a Mező sorszám mezőben bárhol tartalmazó rekordok szöveges mezői cserélhetők a mire mezőben megadott értékre.

A mire mezőbe kell beírni, hogy mire akarjuk változtatni a mező értékét. Ha üresen hagyjuk, azt jelenti, hogy ki akarjuk törölni. Ha a mit mezőben használtunk csonkolás-jelet, akkor itt is használhatjuk. Ez esetben ugyanazt a jelsorozatot jelenti a feldolgozás során, amelynek megfelelt a mit mező feldolgozása során (természetesen rekordonként más lesz a jelsorozat értelmezése). Ha a mit mezőben két (kezdő és záró) csonkolás jelet használtunk, ugyanakkor a mire mezőben csak egyet, akkor ez utóbbi a mit mezőben szereplő első csonkolás jelnek megfelelt jelsorozatot jelenti a feldolgozás során. A mire mezőben is adhatunk meg két csonkolás jelet (az elején és a végén), ami a mit mezőben megadott csonkolás jeleknek felelt meg a feldolgozás során.

Az utóbbi két mező közül az egyiket ki kell tölteni, mert addig az Indít gomb nem használható. Ha dataref mezőről van szó, a program ellenőrzi, hogy szintaktikusan helyes dataref-et adtunk-e meg (véletlen elírásból elég komoly hibák származhatnának). Egy rekord dataref-jét egyszerűen megtudhatjuk, ha rendszergazdaként belépve lekeressük, és ablakosan megnézzük. Az ablak fejlécének végén látható. Ebben a példában b97037:

2. ábra: Könyv adatlap részlete

Ha a Kis/Nagybetű számít mezőt kipipáljuk, akkor a szöveges mezők esetében figyelembe veszi ezek különbözőségét, ellenkező esetben nem. Más tipusú mezők cseréjénél ennek a mezőnek a kitöltése felesleges.

A fiXhossz mezőre elég ritkán van szükség. Arra használható, hogy egy mező értékét elölről feltöltse 0-val. Jó lehet pl. leltári számok azonos hosszúságúra alakításához. Ilyen esetben a Mit és Mire mezőben is csak egy csonkolás jelet kell megadni.

A MezőIsmétlődés mező akkor aktív, ha a Rekord tipus és a Mező sorszám mezők által azonosított adatbázis-mező ismételhető. Akkor kell beállítani, ha a mezők cseréjét az összes mező minden ismétlődésében el kívánjuk végeztetni (ellenkező esetben csak a első megfelelő mezőismétlődésben történik meg a csere).

Az Előfordulás mező akkor aktív, ha a Rekord tipus és a Mező sorszám mezők által definiált adatbázis-mező szöveges mező és a mit mezőben csonkolás jel szerepel. Akkor kell beállítanunk, ha a csonkolás jel(ek) előtt/között/mögött megadott jelsorozat minden előfordulását le szeretnénk cserélni, ellenkező esetben csak az első előfordulást cseréli le a modul.

Az Indít gomb megnyomása után minden mező elszürkül, jelezvén, hogy a feldolgozás folyik. Ha véget ért, újból rendes színűek lesznek a mezők, és a Halmaz mező lesz az aktuális. Részletezéssel (ALT/F9) mindjárt meg is tekithetjük a halmazt, hogy megnézzük a változásokat.

A feldolgozás során a rendben mezőben láthatjuk, hogy hány rekord változott meg. A maradt mutatja, hogy hány rekoddal nem kellett csinálni semmit, és a hiba mezőben számolja azokat, amiket nem tudott megváltoztatni.

Ha a Kilépés gombot megnyomjuk, és még nem fejeződött be a feldolgozás, akkor a program rákérdez, hogy valóban ki akarunk-e lépni:

A feldolgozás még nem fejeződött be.
Biztos, hogy félbehagyja, és kilép?

Megjegyzés:

Példa:

  1. Példányok beállítása nem kölcsönözhetőre

    Ha egy példányokból álló halmazban a KOLCSONOZHETO mező eddig nem volt kitöltve, és most nem kölcsönözhetőre (értéke 1) akarjuk beállítani, akkor ezt kell megadni:

    3. ábra: Mező csere - példa

Megjegyzés:

Vissza: Kiegészitő programok TextLib honlap