Автосалон
Мазмұны
КІРІСПЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ….3
1 Есептің қойылымы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . …4
2 Есептің алгоритмі . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . …5
3 Теориялық бөлім . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . …..6
3.1 Мәліметтер базасын ұйымдастыру . . . . . . . . . . . . . . . . . . . . .. ..6
3.2 BDE Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . …6
3.3 Мәліметтер базасының кестесін құру . . . . . . . . . . . . . . . . . . . …7
3.4 Кестенің қасиетін беру . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . …9
3.5 Paradox форматының кестелері . . . . . ……………. . . . . . . . . ..11
3.6 Компоненттер парағы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ….13
4 Программаның баяндалуы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..15
4.1 Жалпы мағлұматтар . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . …15
4.2 Функционалдық тағайындалуы . . . . . . . . . . . . . . . . . . . . . . . . ..15
4.3 Логикалық құрылымның баяндалуы . . . . . . . . . . . . . . . . . . . . .15
4.4 Шақыру және жүктеу . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..18
4.5 Қажетті техникалық жабдықтар . . . . . . . . . . . . . . . . . . . . . . .. ..18
4.6 Кіріс мәліметтер. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . …18
4.7 Шығыс мәліметтер . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . …19
5 Бақылау мысалдарын баяндау . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Қорытынды . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . 20 Қолданылған әдебиеттер . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Қосымша А . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . .22
Қосымша Б . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .29
КІРІСПЕ
Әртүрлі ұйымдардың табысты жұмыс жасауы үшін ақпаратты жүйенің дамығанын талап етеді. Сонда сол деректермен автоматтандырылған жинауды, өңдеуді және монипуляциялауды іске асырады.
Мәліметтер базасы деп, деректердің электрондық сақтаушысын айтады. Оларға қатынас, бір немесе бірнеше компьютерлер көмегімен іске асады. Әдетте деректер базасы деректерді сақтау үшін жасалады.
Мәліметтер базасы – ақпаратты сақтауды және де мәліметтерге ыңғайлы, тез кіруді қамтамасыз етеді. Мәліметтер базасы өзінен белгілі бір ережелерге сай құрылған деректер жиынтығын құрайды. Деректер базасындағы ақпарат :
- қайшылықсыз
- артықсыз
- тұтас
болуы керек.
Мәліметтер базасын басқару жүйесі деректер базасын құруға, толтыруға, жаңартқанға, жоюға арналған программалық жабдық болып табылады.
DELPHI жүйесі деректер базасын басқару жүйесі болып табылмайды, егер сөздің тура мағынасын алатын болсақ, бірақ толық МББЖ ( мәліметтер базасын басқару жүйесі) мүмкіндіктеріне ие. Ұсынылып отырған DELPHI құралы локальдік және тораптық деректер базасын құрып, және оның ішінде жұмыс істеуге және кез-келген деректер базасымен жұмыс істей алатын қолданба құруға мүмкіндік береді .
Локальді МББЖ барлық бөліктері қолданушы компьютерінің деректер базасында орналасады. Егер бір мәліметтер базасына бірнеше қолданушылар бір мезгілде қатынас жасаса, әрбір қолданушының компьютерінде өзінің локальді МББЖ-нің көшірмесі болуы керек.
Тораптық МББЖ-ге файл-серверлік, клиент-серверлік, бөлінген МББЖ-лар жатады. Осы жүйенің негізгі атрибуты болып, торап саналады. Торап−бірнеше компьютерлерді байланастырып, бір дерекпен бірнеше қолданушылардың корпоративті жұмысын қамтамасыз етеді.
Көпқолданбалы МББЖ ақпараттық жүйе құруға мүмкіндік береді. Көпқолданбалы МББЖ-леріне: Oracle,Informix, SyBase, Microsoft SQL Server,
InterBase және т.б жатады.
DELPHI-ді кәдімгі МББЖ деп айтуға, оның өзінің кестелік форматының болмауы ( деректерді сипаттау тілі ) бөгет жасайды. Сондықтан ол басқа МББЖ кестелік форматын қолданады. Мысалы: dBase , Paradox , InterBase .
Бұны бірақ та жетіспеушілігі деп те айтуға болмайды, себебі аталған форматтар өздерін жақсы қолданушылық қабілетін көрсетті. Сонда да DELPHI мүмкіншіліктері арнайы МББЖ мүмкіншіліктерінен қалыспайды, кей-кезде олардан асып та тұрады.
1 Есептің қойылымы.
Бұл курстық жұмыстың мақсаты−деректер базасын құру және онымен жұмыс істеу. Delphi программалық жүйесінде бір топтың ойын күнтізбесінің базасына курстық жұмысты жасадым.
2 Есептің алгоритмі
1.BDE Administrator – ды ашып, біздің мәліметтер базасына керекті драйверді таңдаймыз (STANDART). Диалогтық терезенің оң жағында PATH параметріне құрылған каталогтың жолын көрсетеміз.
2.Деректер базасын құру үшін ең алдымен Database Desktop арқылы бізге керекті кестелерді құрамыз. Сонымен қатар, бас кестенің қосымша кестелермен байланыстыру үшін бас кестеде екінші индекстерді тағайындау керек. Бас кестені қосымша кестелермен байланыстыру керек. Барлық құрылған кестелерді BDE Administrator – да көрсетілген каталогқа сақтау керек.
3.Содан кейін Delphi – ге кіріп, кестелер және менюі бар жаңа форманы жасаймыз, сақтаймыз.
4.Delphi – де кестелерді байланыстыру үшін DataModule – ді құрамыз, сақтаймыз.
5.Әр бір кестеге формаларды жасаймыз, проектте сақтаймыз.
6.Кестені және SQL тілін пайдаланып, құжаттар мен есеп беруді құрастырамыз.
7.Жаңа формаларға инструкцины және автор туралы мәліметтерді енгіземіз.
8.Барлық жасалған формаларды проектің ішіне сақтаймыз.
3 Теориялық бөлім
Мәліметтер базасын ұйымдастыру
Мәліметтер базасы кейбір қолданбалы ақпараттық жүйеде қолданылатын деректерді қамтиды. Мысалы: ’Сирена’ немесе ’Экспресс’ авиа және теміржол билеттерін сату системасы. Мәліметтердің ұйымдастыру түріне байланысты мәліметтер базасындағы деректердің негізгі модульдері келесі түрде болады:
- иерархиялық
- желілік
- реляциялық
- объекті-бағытталған
Иерархиялық модельде деректер ағаштәріздес (иерархиялық) құрылым түрінде беріледі. Деректердің осындай ұйымы иерархиялық реттелген ақпараттармен жұмыс жасағанда ыңғайлы, бірақ қиын логикалық байланыстармен жұмыс жасағанда иерархиялық модель әлсіз .
Желілік модельде деректер ерікті граф түрінде ұйымдастырылады. Желілік модельдің кемшілігі болып, құрылымының қаттылығы және оны ұйымдастырудың қиындылығы болып табылады. Сонымен қатар, иерархиялық және желілік модельдерінің кемшіліктерінің бірі болып, деректер құрылымының деректер базасын жобалау кезінде берілуі және деректерге қатынау барысында өзгертуге келмейді.
Объекті-бағытталған модельде мәліметтер базасының жазбасы объект түрінде беріледі. Объекті-бағытталған модель желілік және реляциялық модель ерекшеліктерін қамтып, күрделі мәліметтер базасын құруда пайдаланылады.
BDE Administrator
DELPHI қолданбасы деректер базасына қатынауды BDE ( Borland DataBase Engine- Borland фирмасының деректер базасының поцессоры ) арқылы жүзеге асырады. BDE өзінен деректерге қатынайтын динамикалық кітапханалар және драйвер жиынтығын құрайды. BDE деректер базасымен жұмыс істейтін барлық компьютерлерге орнатылуы тиіс. Деректер базасына BDE арқылы жіберілген сұраныс, қолданушы сұратқан деректерді алады.
Жергілікті деректер базасы және онымен жұмыс істейтін қолданба бір компьютерде орналасады. Бұл жағдайда ақпараттық жүйе жергілікті сәулетке ие. (Сурет 1.1)
Сурет 1.1. Дербес сәулет
Деректер базасымен жұмыс, ережеге сай, бірқолданушылық режимде жұмыс істейді. STANDART драйверлер үшін, әдетте Paradox деректер базасы, мінездемелер псевдонимі жиынтығы минималды болады: Type – драйвер аты және PATH – деректер базасына жол. PATH параметрін басқанда, сіз көп нүктелі батырманы көресіз. Оны басқанда Windows – тің жаңа каталогты таңдау стандартты диалогы ашылады, ол арқылы біз керекті каталогты таңдап аламыз.
STANDART типті драйверлерді тек Paradox, dBASE, FoxPro кестелері үшін қолдануға болады.
Жергілікті деректер базасына қатынау үшін BDE деректер базасының процессоры стандартты драйверлерді қолданады. Олар dBase, Paradox, FoxPro және текстік файлдарымен жұмыс жасайды. Жергілікті деректер базасын қолданғанда, желіде деректер базасына көпқолданушылық қатынауды ұйымдастыруға болады. Бұл жағдайда деректер базасының файлдары және осымен жұмыс істейтін қолданбалар желінің серверінде орналасады. Сонда әрбір қолданушы өз компьютерінен серверде орналасқан қолданбаны қосқанда, өз компьютерінде қолданбаның көшірмесі іске
Мәліметтер базасының кестесін құру
Деректер базасын құрайтын кестелер қатты дискідегі каталогта тұрады. Кестелер файлдарда сақталып , бөлек құжаттарға немесе электрондық кестелерге ұқсас. Кестелерді көшіруге, орнын ауыстыруға болады. Бірақ, құжаттарға қарағанда, деректер базасының кестелері көпқолданбалы қатынау режимін қолдайды, яғни бірнеше қолданбалармен бірмезгілде қолданылуына болады. Бір кесте үшін ( деректер, кілттер, индекстер т.б құрайтын ) бірнеше файлдар жасалады. Осылардың ішінде негізгісі болып кестенің атымен аталатын деректер файлы болып есептеледі. Кестені таңдағанда, әсіресе оның негізгі файлы таңдалады. Мыс: dBase кестесі үшін кеңейтіндісі DBF болатын файл, ал Paradox кестесі үшін DB кеңейтіндісі болып табылады. Деректер базасының әрбір кестесі жолдан және бағаннан тұрады, бір типті объектілердің ақпараттық жүйелер деректерін сақтауға негізделген.
Өріс мүмкін болатын типтің деректерін қамтиды. Кестенің негізін оның өрісінің сипаты құрайды. Әрбір кестенің кем дегенде бір өрісі болуы тиіс. Кестенің құрылымдық түсінігі өте кең және оның құрамына:
- өріс сипаты
- кілт
- индекс
- өрістің мәтініне шек қою
- кестелер арсындағы біртұтастықты сақтау
- парлольдер
кіреді. Кестені құрғанда кестенің аты және құрылымы беріледі. Кестенің атын өзгерткенде кесте және оның файлдары жаңа атқа ие болады. Бұл үшін деректер базасының кестелерімен жұмыс істейтін арнайы программалар қолданылады. Мыс: Database немесе Data Pump. Дискіден кестені жойғанда, оның барлық файлдары да жойылады.
Ал енді мәліметтер базасымен жұмыс жасамас бұрын, біз оның каталогын құрып алайық. Ол каталог бізде D:BOLATKHAN. Деректер базасын құру DatabaseDesktop (DBD) утилит көмегімен іске асырылады. DBD утилит көмегімен кестені құруға және оның құрылымын өзгертуге, оның біріншілік кілттерін және индекстерін, жазбалар құру және өзгертулер жасауға болады.
Жаңа кестені құру келесі команда бойынша іске асады: ПускПрограммыBorland Delphi7Database Desktop. DBD кірген мезетте жұмыс істейтін каталогты таңдап алу керек. Ол үшін DBD менюінде FileWorking Directory және көрсетілген терезеден D:BOLATKHAN каталогына сілтеме жасаймыз. Менің жағдайымда Raspisanie кестесін құру үшін FileNewTable. DBD Create Table терезесін шығарады, оның форматын таңдап алу керек.
ОК-ді басып, біз осы форматты аламыз. Экранда келесідей сурет шығады:
Сурет1. Кестенің құрылымын құру суреті
Құрылып жатқан кестенің әрбір өрісіне бір жазба сәйкес келеді. Field Name бағанына өріс атын, Type – символ, өрісте сақталынатын мәліметтердің типін анықтайды. Size бағанына – сан қойылады, өрістің ұзындығын анықтайды, Key–«*» символы, егер бұл өріс бойынша біріншілік кілт қою керек болса.
Кестенің қасиетін беру
Validity Checks – бұл қасиет кестенің мәндерінің дұрыстығын тексереді. Бұл бөлімнің оң жақ терезесі 2 – кестеде көрсетілген және өрістік типіне қарай өзгеріп отыруы мүмкін:
2 – кесте Validity Checks қасиеттері.
Required Field | Бұл индекаторда әрбір жазбада керекті жолдар белгілену керек. |
Minimum | Мәннің минимумы. Бұл қасиет сандық өріске берілу тиімді. |
Maximum | Мәннің максимумы. Бұл қасиет сандық өріске берілу тиімді. |
Default | Бұл қасиетті сандық және логикалық өрістерге, ал кейбір жағдайда символдыққа қолдану тиімді. |
Picture | Енгізілетін мәннің түрін корсетуге болады. Мысалы, телефон номерінің шаблоны (## — ## — ##). |
Assist | Бұл батырма Picture түрін құруға көмектесетін диалогтық терезені шақырады. |
Table Lookup – бұл бөлім берлген кестенің өрісін басқа көрсетіліп отырған кестенің өрісімен байланысын көрсетеді. Table Lookup – ті таңдағаннан кейін Define – анықтау батырмасы шығады. Бұл батырманы басқанда көру диалогтық терезесі ашылады. Бұл терезеде драйверлер мен псевдонимдерді қолдана аламыз.
Secondary Index – бұл бөлім ары қарай жұмыс барысына керекті екінші индекс құруға мүмкіндік береді.
Жаңа индекс құру үшін Define – анықтау батырмасын басу керек. Бұл батырманы басқанда көру диалогтық терезесі ашылады. Оның cол жақ терезесінде Fields қатынау өрістерінің тізімі көрсетілген, ал оң жақ терезесінде Indexed fields екінші индекс болатын өрістер көрсетіледі.
Index Options радиобатырма панелі келесідей қасиеттерді құруға мүмкіндік береді:
Unique | Бұл опция екінші индекс болатын өрісті болдырмайды, егер кестеде бір – біріне ұқсас өрістер болса. |
Descending | Бұл опция кестені кему бойынша реттейді. |
Case Sensitive | Бұл опция енгізілген символдардың регистріне назар аударады. |
Maintained | Егер бұл опция тұрса, онда кестеде өзгерістерден кейін индекс ауысып тұрады. |
Индексі таңдалғаннан кейін, оның индексін беретін терезе ашылады.
Referential Integrity – бұл бөлім әртүрлі кестелердің арасында бүтін сілтеме байланыстарды қамтамасыз ету үшін қолданылады. Егер екі кестенің арасында сілтеме байланыс көрсетілсе, оның біреуі – бас, ал басқасы – қосымша кестелер, онда қосымша кестеде бас кестеден алатын мәннің өрісі көрсетіледі. Сонымен қатар, бас кестедегі кілттік өрістің өзгерістеріне қосымша кестенің өзгеруін қамтамасыз ететін операция көрсетуге болады. Бұндай бүтін сілтеме деңгейі барлық кестелерге тән емес, бірақ Paradox 7 – де барлығы қарастырылған.
Update rule – радиобатырмалар тобы егер бас кестеде кілттік өрісті өшіргенде қосымша кестеде болатын өзгерістерді анықтайды. Егер Prohibit – ті таңдасақ, онда Database Desktop бұндай операцияны болдыртпайды. Егерде Cascade опциясы тұрса, онда кілттік өрісі бар бас кестеде өзгеріс болса, онда қосымша кестеде де өзгеріс блады. Ал егер сіз бас кестеден кілт өрісі бар жазбаны өшірсеңіз, онда қосымша кестеде сол кілттік өрісі бар жазба автоматты түрде өшеді.
Strict Referential индекаторын орнатқанда Paradox – тың алғашқы версияларына (соның ішінде Paradox for DOS) кестелердің ашылуын және бұзылуына жолбермейді.
Барлық операциялар біткеннен кейін құрылған сілтеме атын беру керек.
Password Security бөлімі Paradox – та құрылған кестелерге және оның әр өріс жазбасына пароль қоюға мүмкіндік береді. Бұл үшін Define батырмасын басу керек, сонда диалогтық терезе шығады. Диалогтық терезеде басты парольді (Master password терезесі) қоюға және сол парольді мақұлдауға (Verify master password) мүмкіндік аламыз. Егер Auxiliary Password (қосымша парольдар) батырмасын бассақ қосымша парольдарды тағайындауға және өрістерге қатынаудың ережесін көрсетуге болады.
Current Password (ағымдағы пароль) терезесінде сіз парольді көрсетесіз (ол сіз кірген парольге ұқсас болуға тиісті емес), бұл пароль арқылы сіз қатынау ережесін құрасыз. Table Rights (кестеге қатынау құқығы) радиобатырмалар тобында кестеге жалпы қатынау құқығын анықтауға болады.
All | Барлық операциялар қабылданады, кестені өшіру, құрылымын өзгерту, парольдерді өзгерту және өшіру. |
Insert & Delete | Кестедегі жазбаларға барлық операциялар қолданылады (редактірлеу, қою, өшіру), бірақ кестенің құрамын өзгертуге және жоюға тиім салынады. |
Data Entry | Мәліметтерді редактерлеуге және жазбаларды қоюға болады, бірақ оларды өшіруге және кестенің құрылымын өзгертуге, өшіруге тиім салынады. |
Update | Кестені көруге және кілті жоқ өрістерді өзгертуге береді. |
Read Only | Тек кестені көруге болады. |
Table Language – бұл бөлім BDE Administrator арқылы кестенің тілін көрсетуге (егер көрсетілмесе) немесе анықтауға (Modify батырмасы) мүмкіндік береді.
Dependent Tables – бұл бөлім Referential Integrity сілтемелі деңгейіндегі кестелерді көруге мүмкіндік береді.
Барлық керекті құрылымдық мәліметтер кестеге енгізілгеннен кейін Save As батырмасын басу керек, сол кезде Windows – тағы стандартты сақтау терезе шығады. Кәдімгі терезеден айырмашылығы Alias тізмнің болуында. Бұл тізімде әр түрлі мәліметтер базасының псевдонимдері бар. Сіз тізімнен керекті псевдонимді таңдап, кестені сақтайсыз.
Paradox форматының кестелері
Delphi – дің өзіндік кестелік форматы жоқ, бірақ ол Paradox кестелерімен жұмыс істей береді. Осы кестелердің әрқайсысының өзіндік ерекшеліктері бар.
Paradox кестесі деректер базасын құруға және онымен жұмыс істегенде ыңғайлы болып табылады .
Оның негізгі артықшылықтарын атап өтейік :
- деректердің тұтастығын
- әртүрлі типті деректерді ұсынуға арналған өрістік типті
- енгізілген деректерді тексеруді
- кестенің парольдық қорғанысын
қамтамасыз етеді .
-
- кестесінде Paradox 7 кестесінің өрістік типі тізімі берілген .
Тип Белгіленуі Мәннің мазмұны
Alpha A Символдар қатары. Ұзындығы 255 символ . Number N Жүзбелі нүкте саны . Money $ Ақшалық қосынды . Short S Бүтін сан . Диапазон -32768…32767 Longinteger I Бүтін сан . Диапазон -2 147 483 648…2 147 483 647 BCD # Екілік – ондық жүйедегі сан . Date D Күн . Time T Уақыт Timestampt @ Күн мен уақыт Memo M Символдар қатары. Ұзындығы шенелмеген . Formatted F Символдық қатар. Memo-дан айырмашылығы, қатар құрамында форматталған текст болады. Graphic G Графиктік көрініс.Форматтары BMP,PCX,TIF,GIF. OLE O OLE технологиясын қамтитын деректер форматы. Logical L Логикалық мән. Autoincrement + Автоинкрементті өріс. Binary B Байттар тізбегі. Ұзындығы шенелмеген . Bytes Y Байттық тізбек. Ұзындығы 255 символдан аспайды |
Кесте1.2. Paradox7 кестесінің өрістік типі тізімі
Ескерту !
Database Desktop программалық ортасында жұмыс істегенде Graphic, Binary,
Memo және OLE өрістік типінің мәні көрсетілмейді.
Paradox кестесіндеөріс аты әріптен басталып, әріптер мен сандар құрылуы тиіс. Өріс атының максимал ұзындығы 25 символдан аспау керек. Өрістің атын бергенде пробел ,» # » ,» $ » символдарын қолдануға болады. Бірақ , «.» , » ! » , » | « символдарын қолдануға болмайды. Себебі, бұл символдар DELPHI – де басқа мақсаттарда қолданылады .
Paradox кестесінің кемшілігі болып, кестелік деректерді сақтайтын типтік файлдардың көптігі болып саналады. Бір каталогтан келесі каталогқа қандай да бір кестенің орнын ауыстырғанда немесе көшіргенде, осы кестені қамтитын барлық файлдарды көшіру немесе орнын ауыстыру керек.
Paradox кестесінің файлдарының келесі кеңейтінділері бар :
- DB – деректі кесте
- MB – BLOB-деректер
- PX – негізгі индекс
- XG* және YG* – екінші индекстер
- VAL – деректердің және сілтемелік тұтастықты тексеретін параметрлер
- TV және FAM – Database Desktop программасында кестені шығару форматы
Delphi-дің өзіндік деректер базасының кестелік форматы болмаса да, әртүрлі МББЖ қамтамасыз етеді. Деректер базасымен жұмыс істеуге арналған Delphi құралын екіге бөлуге болады :
- аспаптық құрал
- компоненттер
Аспаптық құралдарға арнайы программалар мен пакеттер жатады. Олар деректер базасына қызмет етуді қамтамасыз етеді.
Компоненттер, деректер базасымен операция жасайтын қолданбаларды құруға арналған. Біз солардың компоненттерін қарастырайық.
Компоненттер парағы
Деректер базасының қолданбасын құруда қолданылатын компоненттерді қарастырайық.
Деректер базасымен жұмыс істегенде қолданылатын компоненттер Data Access, Data Control, Midas, Decision Cube, Rave және InterBase парақтарында орналасады.
Data Access парағында деректерге қатынауды ұйымдастыратын визуалды емес компоненттер орналасады:
- DataSource – деректердің басы
- Table – ДБ кестесіне негізделген деректер жинағы
- Query – SQL – сұранысқа негізделген деректер жинағы
- StoredProc – серверде сақталатын процедураны шақыру
- DataBase – ДБ қосылу
- Session – ДБ жұмысының ағымды сеансы
- BatchMove – топ жазбалармен операцияларды орындау
- Update – деректер жиынтығын модификациялау
- NestedTable — қойылған кесте
Data Controls парағында деректерді басқаратын визуалды компоненттер орналасады:
- DBGrid – кесте
- DBNavigator – навигациялық интерфейс
- DBText – жазба
- DBEdit – бірқатарлы редактор
- DBMemo – көпқатарлы редактор
- DBImage – графиктік көрініс
- DBListBox – қарапайым тізім
- DBComboBox – комбинацияланған тізім
- DBCheckBox – тәуелсіз ауыстырғыш
- DBRadioGroup – тәуелді ауыстырғыш топтары
- DBLookupListBox – басқа өріс деректерінің қарапайым тізімі
- DBLookupComboBox – басқа өріс деректерінің комбинацияланған тізімі
- DBRichEdit – толық функционалды тестілік редактор
- DBCtrlGrid – модификацияланған кесте
- DBChart – диаграммма
Midas парағында қашық деректер базасын басқаратын визуалды компоненттер орналасады :
- ClientDataSet – клиенттік деректер жинағы
- DCOMConnection – көпқолданбалы режимде қашық сервермен қосылу
- SocketConnection — Windows сокеті арқылы қашық сервермен қосылу
- DataSetProvider – деректер жиынының провайдері
- SimpleObjectBroker – қарапайым объект брокері
- WebConnection – Web-сервермен қосылу
- CorbaConnection – Corba-клиенттің қосылуы
Decision Cube парағында шешімді қабылдайтын жүйені қалыптастыратын компоненттер орналасады:
- DecisionCube – көпшекті деректер кубы
- DecisionQuery – көпшекті деректерді қамтитын жиынтық
- DecisionSource – көпшекті деректердің бастамасы
- DecisionPivot – көпшекті деректердің көпөлшемді проекциясы
- DecisionGrid – көпшекті деректердің кестесі
- DecisionGraph – көпөлшемді деректердің графиктік ұсынысы
Rave парағында есеп берудің ретіне арналған визуалды компоненттер орналасады :
- RvProject – проектің басты компоненті, Rave – пен байланысты қамтамасыз етеді
- RvSystem – уневирсалды компонент, есеп беруді қарауды және баспаға шығаруды қамтамассыз етеді
- RvNDRWriter – есеп беруді арнайы форматтағы файлға жазады және оны көруге мүмкіндік береді, баспаға шығарады
- RvCustomConnection – мәліметтері жоқ есеп берумен байланыстырады
- RvDataSetConnection – мәліметтермен байланыстырады
- RvTableConnection – Table компаненті бар мәліметтермен байланыстырады
- TRvQueryConnection – Query компоненті бар мәліметтермен байланыстырады
- RvRenderPreview–RvNDRWriter арқылы құрылған файлдағы мәліметтерді экранда мүмкіндік береді
- RvRenderPrinter–RvNDRWriter арқылы құрылған файлдағы мәліметтерді баспа құрылғысына жібереді
- RvRenderPDF – есеп беруді PDF форматына ауыстырады
- RvRenderRTF – есеп беруді RTF форматына ауыстырады
- RvRenderHTML – есеп беруді HTML форматына ауыстырады
- RvRenderText – есеп беруді мәтіндік файлға ауыстырады
InterBase парағында InterBase серверімен жұмыс істеуге арналған компоненттер орналасады :
- IBTable – Table дерегінің жинағы
- IBQuery – Query дерегінің жинағы
- IBStoredProc– InterBase серверінде сақталатын процедураны шақырады
- IBDatabase – деректер базасымен қосылу
- IBTransaction – транзакция
- IBUpdateSQL – деректер жиынтығын модификациялау
- IBDataSet – деректердің бастамасы
- IBSQL – SQL- сұранысты орындау
- IBDatabaseInfo – деректер базасы туралы ақпарат
- IBSQLMonitor – SQL- сұраныс орындалуының мониторы
- IBEvents – сервер оқиғасы
InterBase парағының көп компоненттері Data Access компоненттеріне ұқсас болып келеді, айырмашылығы InterBase компоненттері, тек InterBase серверімен жұмыс істеуге арналған. Data Access парағының компоненттері әмбебап болып келеді.
4 Программаның баяндалуы
Жалпы мағлұматтар
Қарастырылып отырған мәліметтер базасы Delphi 7 ортасында құрылды. Ол үшін компьютер Celeron 1800| 256 Mb| 40 Gb| 32 Mb GeForce| M| K қолдандым.
Функционалдық тағайындалуы
Мәліметтер базасының көмегімен қолданушы мәліметтерге қатынаудың жолын қысқартады. Мәліметтер базасы үлкен фирмаларда, мекемелерде және т.б көп жерлерде қолданылады.
Логикалық құрылымның баяндалуы
1) Unit1
1) unit-ке Unit1 деген ат беріледі
2) интерфейсін құру
3-5) модульдерді баяндау
6) типін беру
7) бірінші форманы ашу
8-16) Компонентер қою
17-30)Менюларды қою
31-40) Процедуралар баяндамасы
41-45) декларациясы
46) айнымалылар бөлімі
47-51) Form1 құру және unit термен байланыс
52-55) Form1-ға жабу процедурасы
56-59) Form3-ға ашу процедурасы
60-63) Form4-ға ашу процедурасы
64-67) Form5-ға ашу процедурасы
68-71) Form6-ға ашу процедурасы
72-75) Form7-ға ашу процедурасы
76-79) Form8-ға ашу процедурасы
80-83) Form9-ға ашу процедурасы
84-87) Form10-ға ашу процедурасы
89-91) Form11-ға ашу процедурасы
92) соңы
2) Unit3
1) Unit3 атын беру
2) интерфейсін құру
3-4) модульдерді таңдау
5-10) Компонентерді белгілеу
11-13) процедураларды баяндау
14-18) Диклорациялар
19) Айнымалылар бөлімі
20-23) Form3 құру
24-27) Insert ашу программасы
28-31) Cancel программасы
32-35) Form3- жабу процедурасы
36) соңы
3) Unit4
1) Unit4 атын беру
2) интерфейсін құру
3-4) модульдерді таңдау
5-10) типтерін беру
11-13) процедураларды баяндау
14-18) Дикларациялар
19) Айнымалылар бөлімі
20-23) Form5 құру және unit термен байланыс
24-27) Insert ашу программасы
28-31) Cancel программасы
32-35) Form4- жабу процедурасы
36) соңы
4) Unit5
1) Unit5 атын беру
2) интерфейсін құру
3-4) модульдерді таңдау
5-10) типтерін беру
11-13) процедураларды баяндау
14-18) Дикларациялар
19) айнымалылар бөлімі
20-23) Форма5 құру Unit-термен байланыс
24-27) Insert ашу программасы
28-31) Cancel программасы
32-35) Form5- жабу процедурасы
36) соңы
5) Unit6
1) Unit6 атын беру
2) интерфейсін құру
3-4) модульдерді таңдау
5-13) типтерін беру
14) процедураларды баяндау
15-19) Дикларациялар
20) айнымалылар бөлімі
21-24) Форма6 құру Unit-термен байланыс
25-29) Form6- жабу процедурасы
31) соңы
6) Unit7
1) Unit7 атын беру
2) интерфейсін құру
3-4) модульдерді таңдау
5-16) типтерін беру
17) процедураларды баяндау
18-22) Дикларациялар
23) Айнымалылар бөлімі
24-27) Форма7 құру Unit-термен байланыс
28-32) Form7- жабу процедурасы
33) соңы
7) Unit8
1) Unit8 атын беру
2) интерфейсін құру
3-4) модульдерді таңдау
5-25) типтерін беру
26-30) Дикларациялар
31) айнымалылар бөлімі
32-35) Форма8 құру Unit-термен байланыс
36) соңы
8) Unit9
1) Unit9 атын беру
2) интерфейсін құру
3-4) модульдерді таңдау
5-21) типтерін беру
22-24) процедураларды баяндау
25-29) Дикларациялар
30) айнымалылар бөлімі
31-34) Форма9 құру Unit-термен байланыс
35-38) Next программасы
39-42) Prior программасы
43-46) Form9- жабу процедурасы
47) соңы
9) Unit10
1) Unit10 атын беру
2) интерфейсін құру
3-4) модульдерді таңдау
5-34) типтерін беру
35-39) Дикларациялар
40) айнымалылар бөлімі
41-44) форма 11құру
45) соңы
10) Unit11
1) Unit11 атын беру
2) интерфейсін құру
3-4) модульдерді таңдау
5-23) типтерін беру
24-26) Процедураларды баяндау
27-31) Дикларациялар
32) айнымалылар бөлімі
33-36) форма 11 құру
37-40) Next программасы
41-44) Query1.Prior программасы
45-48) Form11- жабу процедурасы
49) соңы
11) Unit13
1) Unit13 атын беру
2) интерфейсін құру
3-5) модульдерді таңдау
6-23) типтерін беру
24-26) Процедураларды баяндау
27-31) Дикларациялар
32) айнымалылар бөлімі
33-36) форма 13 құру
37-40) Query1.Next программасы
41-44) Query1.Prior программасы
45-48) Form13- жабу процедурасы
49) соңы
Шақыру және жүктеу
Мәліметтер базасын Delphi-де ашу үшін Пуск|Программы|Borland Delphi7| Delphi7 ашамыз. Өз папкамызды тауып, проектімізді ашамыз. Оны Ғ9 арқылы жүктейміз.
Қажетті техникалық жабдықтар
МБ жасауда Pentium 2660| 512 Mb| 80 Gb| 64 Mb GeForce| M| K компьютерін қолдандым. Сонымен қатар принтер қажет.
Кіріс мәліметтер
Мәліметтер базасындағы мәліметтер толығымен кестеде көрсетілген. Ол үшін Қосымша А ішіндегі Сурет 1, Сурет 2, Сурет 3 қара.
Шығыс мәліметтер
МБ қолдана отырып, екі документ жасадым. Оларды Қосымша А ішіндегі Сурет 4, Сурет 5-тен көре аласыздар.
Бақылау мысалдарын баяндау
Алдымен, осы курстық жобаны сақтайтын бір папка құрып алдым. МБ кестесін құрмас бұрын, алдымен BDE Administrator-да сол папкамды тауып, оның бүркеншік атын бердім. Содан соң DBD – қа кіріп, кестелерімді құрдым. Әрбір кесте құрар алдында жұмыс істеп отырған каталогта, өз папкамды көрсетіп отырдым. Барлық кестелерімді сол папкаға сақтадым. Бағынышты кесте бас кестелер арасына байланыс ұйымдастырдым. (Сурет 6, Сурет 7, Сурет 8 қара.) DBD-да жұмысымды аяқтап, Delphi7 ортасына көштім. Ендігі жұмыстардың барлығы осы ортада көрініс алады. Delphi-ге кірдім, форма1 өзі шығып тұрады. Оның ішіне үш панель тастап, сол панельдердің ішіне өз кестелерімді біртіндеп орналастырдым. Осы форма ішінде негізгі меню кнопкаларын жасадым. (Form1-ді Сурет 9-дан қара).
DBD-да байланыстырған кестелерімді, Delphi-де қайта байланыстырдым. Ол File|New|Others|DataModule аламыз. Бөлек бір кішкентай терезе шығады. Оның ішіне өзімнің үш кестемді тастап және әр кесте ішіне
Data Access парағындағы DataSource,яғни деректердің басын тастадым. (Сурет 10 қара)
Негізгі менюдағы Rabota s BD ішіндегі үш кетеге әрқайсысына жеке-жеке форма құрдым. Команда кестесі үшін Form3(Сурет 11 қара). Расписание кестесі үшін Form4 (Сурет 12) және Стадион кестесі үшін Form5 (Сурет 13) құрдым.
Келесі Documenty менюінің ішіне екі документ жасадым. Біреуі команданың күнтізбесі туралы документ болса Form6 (Сурет 4), екіншісінде сұранысты қолдана отырып, билеттің формасын жасадым Form7 (Сурет 5).
Statistica менюіне отчеттарды жасадым. Отчеттарды жасау барысында отчет жасау генераторы Rave- ті қолдандым. Бірінші жағдайда билеттердің орта бағасы туралы отчет жасасам Form8 (Сурет14), ал екінші жағдайда жаңа DataModule қолданып, query көмегімен ең максималды билет бағасын таптым Form13 (Сурет 15).
O Programme менюына инструкция Form9 (Сурет 16) және об авторе туралы Form10 (Сурет 17) жаздым.
Vyhod менюына Delphi –дан шығу терезесін құрдым Form11 (Сурет18).
ҚОРЫТЫНДЫ
Қорыта келгенде, осы курстық жұмысты жаза отырып мен DELPHI ортасымен таныстым. DELPHI құралы үлкен бір программалық орта болып саналады. Соған қарамастан DELPHI ортасында жұмыс істеу онша қиын емес және де өте қолайлы. DELPHI – деректер базасын басқару жүйесі болмаса да, деректер базасымен жұмыс істегенде жоғарғы дәрежеде жұмыс істейтініне көзім жетті. DELPHI–де өзім үшін екінші рет деректер базасын жасадым. DELPHI қолданушы үшін мәліметтер базасын жасауда көп мүмкіншіліктерді береді. Сол мүмкіншіліктердің біразын біз осы курстық жұмысты жазу барысында қолдандық.
Қазіргі кезде DELPHI құралының мүмкіншіліктері күннен – күнге артуда. Бүгінгі күні DELPHI – дің көмегімен деректер базасын интернетте де жариялауға болады .
Қорыта келсек, әрбір программист үшін DELPHI құралын білген өте пайдалы, әрі тиімді екенін айта кеткен жөн.
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ
1. В.В.Фаронов DELPHI 5 . Руководство программиста.
Издательство «Нолидж», Москва 2001 г.
2. В.Гофман, А.Хомоненко Работа с базами данных в DELPHI.
Издательство «БХВ – Петербург», Санкт – Петербург 2000 г.
3. А.М. Епанешников , В.А. Епанешников DELPHI база данных
Издательство «ДИАЛОГ – МИФИ», Москва 2000 г.
4. А.Я. Архангельский Програмирование в Delphi 7.
Издательство «Бином», Москва 2004 г.
5. Электронный учебник по Delphi 6.
ҚОСЫМША А
сурет – 1
сурет – 2
ҚОСЫМША А
сурет – 3
сурет – 4
ҚОСЫМША А
сурет – 5
сурет – 6
ҚОСЫМША А
сурет – 7
сурет – 8
ҚОСЫМША А
сурет – 9
сурет – 10
ҚОСЫМША А
сурет – 11
сурет – 12
сурет – 13
сурет – 14
ҚОСЫМША Б
- 1)unit Unit1;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, DBCtrls, Grids, DBGrids, ExtCtrls, Menus;
- type
- TForm1 = class(TForm)
- Panel1: TPanel;
- Panel3: TPanel;
- Panel4: TPanel;
- Panel2: TPanel;
- DBGrid1: TDBGrid;
- DBGrid2: TDBGrid;
- DBGrid3: TDBGrid;
- DBNavigator1: TDBNavigator;
- MainMenu1: TMainMenu;
- N1: TMenuItem;
- N2: TMenuItem;
- N3: TMenuItem;
- N4: TMenuItem;
- N5: TMenuItem;
- N6: TMenuItem;
- N7: TMenuItem;
- N8: TMenuItem;
- N11: TMenuItem;
- N12: TMenuItem;
- N9: TMenuItem;
- N10: TMenuItem;
- N13: TMenuItem;
- N14: TMenuItem;
- procedure N5Click(Sender: TObject);
- procedure N8Click(Sender: TObject);
- procedure N7Click(Sender: TObject);
- procedure N6Click(Sender: TObject);
- procedure N9Click(Sender: TObject);
- procedure N10Click(Sender: TObject);
- procedure N11Click(Sender: TObject);
- procedure N13Click(Sender: TObject);
- procedure N12Click(Sender: TObject);
- procedure N14Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form1: TForm1;
- implementation
- uses Unit2, Unit3, Unit4, Unit5, Unit6, Unit7,unit8,
- unit9,unit10,unit11;
- {$R *.dfm}
- procedure TForm1.N5Click(Sender: TObject);
- begin
- form1.Close;
- end;
- procedure TForm1.N8Click(Sender: TObject);
- begin
- form3.show;
- end;
- procedure TForm1.N7Click(Sender: TObject);
- begin
- form4.Show;
- end;
- procedure TForm1.N6Click(Sender: TObject);
- begin
- form5.Show;
- end;
- procedure TForm1.N9Click(Sender: TObject);
- begin
- form6.Show;
- end;
- procedure TForm1.N10Click(Sender: TObject);
- begin
- form7.show;
- end;
- procedure TForm1.N11Click(Sender: TObject);
- begin
- Form8.QuickRep1.Preview;
- end;
- procedure TForm1.N13Click(Sender: TObject);
- begin
- form9.show;
- end;
- procedure TForm1.N12Click(Sender: TObject);
- begin
- Form10.QuickRep1.Preview;
- end;
- procedure TForm1.N14Click(Sender: TObject);
- begin
- Form11.show;
- end;
- end.
2)unit Unit3;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, Grids, DBGrids, StdCtrls;
- type
- TForm3 = class(TForm)
- DBGrid1: TDBGrid;
- Button1: TButton;
- Button2: TButton;
- Button3: TButton;
- procedure Button1Click(Sender: TObject);
- procedure Button2Click(Sender: TObject);
- procedure Button3Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form3: TForm3;
- implementation
- uses Unit1, Unit2;
- {$R *.dfm}
- procedure TForm3.Button1Click(Sender: TObject);
- begin
- DataModule2.Table1.Insert;
- end;
- procedure TForm3.Button2Click(Sender: TObject);
- begin
- DataModule2.Table1.cancel;
- end;
- procedure TForm3.Button3Click(Sender: TObject);
- begin
- form3.Close;
- end;
- end.
3) unit Unit4;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, Grids, DBGrids, StdCtrls;
- type
- TForm4 = class(TForm)
- DBGrid1: TDBGrid;
- Button1: TButton;
- Button2: TButton;
- Button3: TButton;
- procedure Button1Click(Sender: TObject);
- procedure Button2Click(Sender: TObject);
- procedure Button3Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form4: TForm4;
- implementation
- uses Unit1, Unit2;
- {$R *.dfm}
- procedure TForm4.Button1Click(Sender: TObject);
- begin
- DataModule2.Table2.Insert;
- end;
- procedure TForm4.Button2Click(Sender: TObject);
- begin
- DataModule2.Table2.cancel;
- end;
- procedure TForm4.Button3Click(Sender: TObject);
- begin
- form4.Close;
- end;
- end.
4) unit Unit5;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, Grids, DBGrids, StdCtrls;
- type
- TForm5 = class(TForm)
- DBGrid1: TDBGrid;
- Button1: TButton;
- Button2: TButton;
- Button3: TButton;
- procedure Button1Click(Sender: TObject);
- procedure Button2Click(Sender: TObject);
- procedure Button3Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form5: TForm5;
- implementation
- uses Unit1, Unit2;
- {$R *.dfm}
- procedure TForm5.Button1Click(Sender: TObject);
- begin
- DataModule2.Table3.Insert;
- end;
- procedure TForm5.Button2Click(Sender: TObject);
- begin
- DataModule2.Table3.cancel;
- end;
- procedure TForm5.Button3Click(Sender: TObject);
- begin
- form5.Close;
- end;
- end.
5) unit Unit6;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, StdCtrls;
- type
- TForm6 = class(TForm)
- Label1: TLabel;
- Label2: TLabel;
- Label3: TLabel;
- Label4: TLabel;
- Label5: TLabel;
- Label6: TLabel;
- Button1: TButton;
- procedure Button1Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form6: TForm6;
- implementation
- uses unit1;
- {$R *.dfm}
- procedure TForm6.Button1Click(Sender: TObject);
- begin
- form1.Show;
- form6.Close;
- end;
- end.
6) unit Unit7;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, StdCtrls;
- type
- TForm7 = class(TForm)
- Label2: TLabel;
- Label3: TLabel;
- Label4: TLabel;
- Label5: TLabel;
- Label6: TLabel;
- Label7: TLabel;
- Label8: TLabel;
- Label9: TLabel;
- Label10: TLabel;
- Button1: TButton;
- procedure Button1Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Foкm7: TForm7;
- implementation
- uses Unit1;
- {$R *.dfm}
- procedure TForm7.Button1Click(Sender: TObject);
- begin
- form1.show;
- form7.Close;
- end;
- end.
7) unit Unit8;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, DB, QRCtrls, QuickRpt, DBTables, ExtCtrls;
- type
- TForm8 = class(TForm)
- QuickRep1: TQuickRep;
- QRBand1: TQRBand;
- QRBand3: TQRBand;
- QRBand4: TQRBand;
- Table1: TTable;
- QRLabel1: TQRLabel;
- QRDBText1: TQRDBText;
- QRDBText2: TQRDBText;
- QRDBText3: TQRDBText;
- QRDBText4: TQRDBText;
- QRDBText5: TQRDBText;
- DataSource1: TDataSource;
- QRLabel2: TQRLabel;
- QRLabel3: TQRLabel;
- QRLabel4: TQRLabel;
- QRLabel5: TQRLabel;
- QRLabel6: TQRLabel;
- QRSysData1: TQRSysData;
- QRSysData2: TQRSysData;
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form8: TForm8;
- implementation
- uses Unit1, Unit2;
- {$R *.dfm}
- end.
8) unit Unit9;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, StdCtrls, DB, DBTables, Mask, DBCtrls;
- type
- TForm9 = class(TForm)
- DBEdit1: TDBEdit;
- DBEdit2: TDBEdit;
- Table1: TTable;
- DataSource1: TDataSource;
- DBEdit3: TDBEdit;
- DBEdit4: TDBEdit;
- DBEdit5: TDBEdit;
- Label1: TLabel;
- Label2: TLabel;
- Label3: TLabel;
- Label4: TLabel;
- Label5: TLabel;
- Button1: TButton;
- Button2: TButton;
- Button3: TButton;
- procedure Button1Click(Sender: TObject);
- procedure Button2Click(Sender: TObject);
- procedure Button3Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form9: TForm9;
- implementation
- uses unit1,unit2;
- {$R *.dfm}
- procedure TForm9.Button1Click(Sender: TObject);
- begin
- table1.Next;
- end;
- procedure TForm9.Button2Click(Sender: TObject);
- begin
- table1.prior;
- end;
- procedure TForm9.Button3Click(Sender: TObject);
- begin
- form9.hide;
- end;
- end.
9) unit Unit10;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, QRCtrls, DB, QuickRpt, DBTables, ExtCtrls;
- type
- TForm10 = class(TForm)
- QuickRep1: TQuickRep;
- Table1: TTable;
- Table2: TTable;
- QRBand1: TQRBand;
- QRBand2: TQRBand;
- QRBand3: TQRBand;
- QRLabel1: TQRLabel;
- QRLabel2: TQRLabel;
- QRLabel3: TQRLabel;
- QRLabel4: TQRLabel;
- QRLabel5: TQRLabel;
- QRLabel6: TQRLabel;
- QRBand4: TQRBand;
- QRDBText1: TQRDBText;
- QRDBText2: TQRDBText;
- QRDBText3: TQRDBText;
- QRDBText4: TQRDBText;
- QRDBText5: TQRDBText;
- QRDBText6: TQRDBText;
- QRLabel7: TQRLabel;
- QRSysData1: TQRSysData;
- QRSysData2: TQRSysData;
- DataSource1: TDataSource;
- DataSource2: TDataSource;
- QRExpr1: TQRExpr;
- QRLabel8: TQRLabel;
- QRExpr2: TQRExpr;
- QRExpr3: TQRExpr;
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form10: TForm10;
- implementation
- uses unit1;
- {$R *.dfm}
- end.
11) unit Unit11;
- interface
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, StdCtrls, DB, DBTables, Mask, DBCtrls;
- type
- TForm11 = class(TForm)
- DBEdit1: TDBEdit;
- DBEdit3: TDBEdit;
- DBEdit4: TDBEdit;
- DBEdit5: TDBEdit;
- Table2: TTable;
- DBEdit6: TDBEdit;
- Label1: TLabel;
- Label3: TLabel;
- Label4: TLabel;
- Label5: TLabel;
- Label6: TLabel;
- DBEdit7: TDBEdit;
- Label7: TLabel;
- Button1: TButton;
- Button3: TButton;
- DataSource1: TDataSource;
- Button2: TButton;
- procedure Button1Click(Sender: TObject);
- procedure Button3Click(Sender: TObject);
- procedure Button2Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- Form11: TForm11;
- implementation
- uses unit1;
- {$R *.dfm}
- procedure TForm11.Button1Click(Sender: TObject);
- begin
- table2.next;
- end;
- procedure TForm11.Button2Click(Sender: TObject);
- begin
- table2.Prior;
- end;
- procedure TForm11.Button3Click(Sender: TObject);
- begin
- form11.hide;
- end;
- end.