Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lecture_SBD.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.2 Mб
Скачать

Дәріс 17. Ole db - Object Linking and Embedding Database технологиясы.

17.1 Ole db негіздері.

OLE негіздерін қарастырмастан бұрын, оның терминологиясын оқу керек.

OLE аббревиатурасы Objects Linked and Embedded (Біріктірілген Және Тұрғызылған Объектілер - БЖТО J) білдіреді. Қосымша арасында бөлінетін деректер OLE объектісі деп атлады. OLE объектісі бар қосымшаны OLE контейнері (OLE Container) деп атайды. Приложение, данные из которого можно включить в в виде OLE объектісі түріндегі OLE контейнерге қосылатын деректер қосымшасын OLE сервер деп атайды

Мысалы, MicroSoft Word-та графикалық объектілер, аудио- мен видеоклиптер және тағы басқа объектілер болады (кейде мұндай құжатты құрама құжат - compound document деп атайды).

Аталуына қарай, OLE объектіні OLE контейнерге біріктіруге, болмаса қосуға болады. Бірінші жағдайда деректер дискіде файлда сақталынады, кез келген қосымша осы деректерге қатынай алады және өзгеріс енгізе алады. Екінші жағдайда деректер ОLE контейнерге қосылады және ол осы деректерді қарап оны модификациялай алады.

OLE деректер қосымшасы арасында бөлінетін идеяның әрі қарай өркендеуі.. Егер DDE көмегімен мәтінмен жұмыс істеуге болатын болса, онда OLE қосымшаны деректердің кез келген типін жеңіл тұрғызуға мүмкіндік береді. DDE жағдайындай, клиент-қосымшсының (OLE контейнер) дұрыс жұмысы үшін, приложения OLE серверінің қосымшасы болу керек. Әрбір кезде, клиент-программасында пайдаланушы деректерді қарау және жөндеу мақсатында OLE объектіге үндеу жасайды (көбінесе объектіні тышқанмен екі рет шерту), деректермен жұмыс жүргізілетін сервер-қосымшасы жүктелінеді.

Негізінен OLE объектісінің OLE серверінің активация тәсілімен ерекшелінетін бірнеше түрлері бар. OLE 1 нұсқасы серверді жеке терезеде жүктейді. OLE 2 in-place activation and editing үлестірдеі. Бұл жағдайда сервер клиент-қосымшасының "ішінде" жүктеледі, жүйелік меню түрін және құрал-жабдық сызғышын модификациялайды. OLE идеясының дамуы OLE automation пайда болуына әкеліп соқты. Клиент-қосымшасы сервер кодының бөлігін орындайды. Клиент-программасына орналасқан OLE объектісінің типі, сервер OLE-нің қандай нұсқасын ұстайтыны анықталынады.

ToleContainer объектісі.

12-сурет. OLE объектіні нықтау үшін Windows стандартты диалогы.

TOLEContainer объектісі System Палитра Компонент бетінде орналасады және OLE-контейнер қосымшсын құру үшін қажет. TOLEContainer OLE ішкі ұйымдастырумен байланысты барлық күрделікті жояды және программалаушыға қарапайым интерфейсті ұсынады.

OLE объектіні қолданып қарапайым қосымша тұрғызайық. Жаңа жоба құрып және оны TOLEContainer формасына орналастырыңыз, ал Объектілер Инспекторында ObjClass немесе ObjDoc қасиеттеріне тышқанмен екі рет шертіңіз - Windows "Insert Object" стандартты диалогы пайда болады (сур 20 қараңыз).

Бұл диалогта OLE-сервер жүйесіндегі барлық тіркелушілердің тізімі бар (тіркелу программаның инсталляциясы кезінде болады). OLE-объект типі Сіз көрсеткен сервермен анықталынады. Егер Сіз жаңа объект (Create New) құрсаңыз, онда OK батырмасын басқан кезде жаңа объект қалыптастырылатын OLE-сервер программасы қосылады. Сервер-программасынан шыққаннан кейін программаға жаңа OLE объект қосылады (embedded object). OLE-сервер форматындағы бір файлды қолданып, OLE объект құруға болады. Ол үшін Create from File пунктін таңдау керек. (Сурет 13. қараңыз).

13-сурет. Файлда сақталынатын OLE-объектіні таңдау.

Таңдалған объектіні Link пунктін белгілеп қосымшаға қосуға да, брікітіруге де болды. Енді біздің жобаны құру кезінде Microsoft Word Document таңдап жаңа объект құрамыз (Сурет 14). ОК батырмасын басыңыз, содан кейін MS Word іске қосылады, кез келген мәтінді теріңіз ("Это OLE-объект Microsoft Word document"). Меню жұмысының аяқтау үшін, арнайы пункт бар "File|Close and Return to Form1" (Win'95+MS Word 7.0). Жобаны іске қосыңыз, ол мына түрде болуы мүмкін:

14-сурет. OLE-контейнермен қарапайым қосымша.

OLE-контейнерді тышқанмен екі рет шертіңіз - OLE-объектіден құжаты бар MS Word жүктелінеді. Оған өзгеріс енгізуге болады, бұл жағдайда барлық өзгертулер OLE-объектіде сақталынады.

Егер дизайн кезінде Сіз объектіні OLE-контейнерге қосу үшін таңдасаңыз, онда ол толығымен, (FORM1.DFM) формасындғы файлға жазылады және болашақта EXE файлға өзгереді. Дизайн кезінде объектілер үлкен болса, онда ол ұзақ уақыттық паузаға және "Out of resource" қатесінің пайда болуына әкеп соғады. Сондықтан үлкен объектілерді біріктіру ұсынылады (linked).

TOLEContainer программада объектіні тікелей емес (көбею немесе азаюдың әртүрлі деңгейлері - Zoom қасиеті) немесе пиктограмма түрінде кескіндеуге мүмкіндік береді.

OLE-объектісін таңдау тек дизайн кезінде ғана емес, программаның орындалу кезінде де болады (бұл жөнінде кейінірек айтамыз). Осы объектпен жұмыс істеу нәтижесін файл түрінде сақтауға болады және келесі кезекте оны ол жақтан қайта келтіруге болады, ол үшін TOLEContainer-дің екі әдісі бар SaveToFile және LoadFromFile.

15-сурет. MDI OLE қосымшсы.

15-суретте OLE объектісімен екі балалық терезесі бар MDI қосымшасының мысалы көрсетілген. Жаңа ОLE объект құру үшін менюден File|New және одан әрі Edit|Insert Object пункттерін таңдау керек. OLE объектіні инициализациялау үшін Windows стандартты диалогы пайда болады. Егер OLE-сервер қосымшасының Clipboard-та OLE объект жөнінде ақпарат сақтау мүмкіндігі болса, онда объектіні қайта инициализациялауды менюдің Edit|Paste Special пункт көмегімен орындауға болады.

OLE объектіге drag-and-drop техникасын қолдану мүмкіндігі қызықты болады. MS Word (оны терезеге OLE қосымш көрінетіндей орналастыру) жүктеңіз, кез келген мәтін теріңіз, оны тышқан көмегімен белгілеп, бас MDI қосымша терезесіне апарыңыз. Осы мәтіні бар OLE контейнерлі балалық терезе пайда болады. Бұл мүмкіндікті программалау күрделі. Осы берілген OLE тұрғызу технологиясының толық жазбасы Delphi (User's guide) жинақ құжатында бар, бұған жеке бөлім арналған.

Негізгі әдебиет [2], бет 700-711

Қосымша әдебиет [4], бет 141-169

Бақылау сұрақтары

1. OLE объект дегеніміз не?

2. TOLEContainer объектісін сипаттаңыз.

3. Деректер қорында OLE объектіні сақтау қалай іске асырылады.

4. OLE технологиясын сипаттаңыз.

5. Жоғарыда көрсетілген технологияны салыстырыңыз, жақсы жақтарын анықтаңыз.

Дәріс 18. ADO - ActiveX Data Objects технологиясы.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]