HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Adatfelvitel, módosítás, törlés


Paradox használata hálózatban 3. rész

Példaprogram letöltése

50293 bájt

Az előző részben elkészítettük az alkalmazás vázát, létrehoztuk a működéséhez szükséges Form-okat. Most ellátjuk a vázat tartalommal is. Ebben a részben elkészítünk minden adatfelvitelt és módosítást. Így a program teljesen alkalmassá válik arra, hogy egy egygépes rendszerben használjuk.

Kezdjük az frmBetegek ablakkal. Az előző részben szó volt róla, hogy az adatfelvitelt és a módosítást ugyanabban az ablakban, az frmModify1-ben hajtjuk végre. Az adatok módosításához hagyományos Edit mezőket használunk, nem pedig DBEdit-et. Így rengeteg bonyodalmat elkerülhetünk.
Amikor az frmBetegek Form-on az új gombra kattintunk, akkor csak meg kell nyitnunk az frmModify1 ablakot, üresen. Módosítás esetén, az ablak megjelenítése előtt meghívjuk annak SetModify metódusát, amely beállítja a Form Caption property-jét. A Caption értéke alapján meg tudjuk majd határozni, hogy módosításról vagy új adatról van szó, hiszen mindkét esetben más fejlécet használunk.
Amikor módosítunk valamit, akkor meg kell jelenítenünk az előző adatokat. Ezt a SetModify metódusban kell implementálnunk. Az egyes Edit mezőknek a Text tulajdonságait be kell állítanunk egyesével. A felhasználó az frmBetegek ablakban, a DBGrid segítségével már rápozícionált a módosítandó személyre, ezért nekünk csak az aktuális rekord mezőit kell beolvasnunk.
with DM.tBetegek do begin
  Edit1.Text:=FieldByName('BNev').AsString;
  Edit2.Text:=FieldByName('SzulIdo').AsString;
A mezőket célszerű nevük alapján azonosítanunk, és AsString-ként beolvasnunk, hiszen a Text property sztringet vár.
A megadott adatok ellenőrzését és rögzítését az OK gomb lenyomásakor tesszük meg.
Az első lépés, hogy végrehajtjuk az ellenőrzéseket. Ha valami nem stimmel, akkor hibaüzenetet küldünk a felhasználónak, majd kilépünk a rögzítési algoritmusból.
Amikor adatokat rögzítünk, el kell gondolkoznunk azon, hogy mely adatok megadása legyen kötelező. Jelen példában a beteg nevének és születési idejének megadását tesszük kötelezővé.
if TrimRight(Edit1.Text)='' then begin
  ShowMessage('Nincs megadva a beteg neve!');
  Edit1.SetFocus;
  Exit;
end;
Az ellenőrzések egy másik kategóriája az adatok formátumának ellenőrzése. Ez különösen igaz a számokra és a dátumokra. Ha hibás adatot próbálnánk rögzíteni, azt a BDE úgysem engedné meg. Szerencsésebb esetben, adna egy angol nyelvű hibaüzenetet. Magyar nyelvű alkalmazásunkban ennek viszont nincs helye, ezért meg kell előznünk a problémát.
A hibaüzenetek megadásánál törekednünk kell arra, hogy rövid, tömör, de egyértelmű üzeneteket adjunk, amelyből a felhasználó rájön a hiba okára.
Egy szám, vagy egy dátum formátumának ellenőrzésére kiválóan alkalmas a try – except blokk.
try
  StrToDate(Edit2.Text);
except
  ShowMessage('A dátum formátuma nem megfelelő!');
  Edit2.SetFocus;
  Exit;
end;
Az ellenőrzések végrehajtása után következik az adatok rögzítése. A rögzítés algoritmusa, módosítás és új adat felvitele esetén is ugyanaz, csak az első esetben az Edit, a másodikban az Append parancsot használjuk.
if Caption='Új beteg felvitele' then
  Append
else
  Edit;  
Az adatok rögzítésénél, az egyes mezőkbe be kell másolnunk a megfelelő Edit mező tartalmát. Itt is célszerű az AsString elérést alkalmaznunk.
FieldByName('BNev').AsString:=Edit1.Text;
A BKod mezőnek nem kell értéket adnunk, mert Autoincremet-re állítottuk.
Az OKod mező alapján tudjuk a beteget az orvoshoz kötni. Ennek a mezőnek az értékét az orvosok tábla aktuális rekordjából olvassuk ki.
FieldByName('OKod').Value:=DM.tOrvosok.FieldByName('OKod').Value;
Az adatrögzítést a Post utasítás zárja le.
Amikor egy hálózatos alkalmazást készítünk, nagyon fontos, hogy az adott rekordot minél kevesebb ideig használjuk. Előfordulhat ugyanis, hogy egy másik gépről is azt a rekordot akarják elérni. Ha Edit mezőket alkalmazunk, akkor csak az adatok beolvasásakor és rögzítésekor használjuk a megadott rekordot.
Törlésnél egy „Biztosan törölni akarja...” típusú kérdés segítségével szokás levédeni a programot.
Ha törlünk egy beteget, akkor törölnünk kell a hozzá tartozó vizsgálatokat is. Mivel master-detail kapcsolatokat használunk, ez azt jelenti, hogy a vizsgalat táblában elérhető összes rekordot törölnünk kell.
with DM.tVizsgalat do begin
   Last;
   while not Bof do
   Delete;
end;
DM.tBetegek.Delete;
Ne feledkezzünk meg a parancsgombok aktivitásának frissítéséről sem. Ezt új felvitel és törlés esetében kell megtennünk.
A betegek adatait kezelő ablakokhoz hasonlóan kell elkészítenünk a vizsgálatokat feldolgozó két ablakot.
A program most már alkalmas arra, hogy egy egygépes rendszerben használjuk. Használatához, természetesen szükséges a BDE paradox kezelése.

Cikksorozat

#IDKategóriaCikk címeSorozat
2591WindowsTippek és trükkök - RAS - Modem csengetési szám állítása1. rész
2622WindowsTippek és trükkök - Program futtatása más felhasználóként2. rész
2640WindowsA Windows ikonméretének megváltoztatása és Windows 2000 Asztaltémák3. rész
2657WindowsTippek és trükkök - Internet Explorer4. rész
2667WindowsTippek és trükkök5. rész
2684WindowsAlapértelmezések állítása, telepítési fájlok helye, intéző nézetek6. rész
2696WindowsBiztonsági trükkök7. rész
2702WindowsWindows XP trükkök8. rész
2729WindowsWindows 2000 és XP tippek, trükkök9. rész
2757WindowsRegistry trükkök10. rész
2784WindowsTippek, trükkök11. rész
2829WindowsTippek, trükkök12. rész
2889WindowsWindows XP tippek13. rész
2909WindowsTippek Windows XP-hez14. rész
2919WindowsWindows tippek15. rész
2924WindowsWindows tippek16. rész
2963WindowsWindows tippek17. rész
2973WindowsWindows Tippek18. rész
2981WindowsWindows tippek19. rész
2990WindowsTippek-trükkök20. rész
3027WindowsIIS tippek21. rész
3034WindowsWindows XP tippek-trükkök22. rész
3088WindowsWindows 2000/XP tippek, trükkök23. rész
3133WindowsWindows XP tippcsokor24. rész
3140WindowsWindows XP tippek, trükkök25. rész
3152WindowsXP és IIS tippek - trükkök26. rész
3158WindowsWindows XP tippek, trükkök27. rész
3168WindowsTippek, trükkök28. rész
3170WindowsRegistry trükkök29. rész
3179WindowsTippek, trükkök30. rész
3197WindowsWindows XP tippek, trükkök31. rész
3205WindowsTippek, trükkök32. rész
3214WindowsTippek, trükkök33. rész
3223WindowsTippek, trükkök34. rész
3233WindowsTippek, trükkök35. rész
3271WindowsTippek, trükkök36. rész
3307WindowsTippek, trükkök37. rész
3370WindowsTippek, trükkök38. rész
3399WindowsTippek, trükkök39. rész
3510WindowsTippek, trükkök40. rész
3611WindowsHardverrel kapcsolatos tippek, trükkök41. rész
3668WindowsRegistry trükkök42. rész
3711WindowsTippek, trükkök43. rész
3771WindowsTippek, trükkök44. rész
3801WindowsTippek, trükkök45. rész
3831WindowsTippek, trükkök46. rész
3891WindowsTippek, trükkök47. rész
3921WindowsTippek, trükkök48. rész
3981WindowsTippek, trükkök49. rész
4041WindowsTippek, trükkök50. rész
4071WindowsTippek, trükkök51. rész
4151WindowsTippek, trükkök52. rész
4171C#Tippek, trükkök53. rész
4211WindowsTippek, trükkök54. rész
4251WindowsTippek, trükkök55. rész
4281WindowsTippek, trükkök56. rész
3589DelphiTippek, trükkök57. rész
3718DelphiTippek, trükkök58. rész


Könyv
Ez a cikk megtalálható ebben a könyvben: Delphi Software Offline 2003 évkönyv 286. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |