Большой архив статей, книг, документации по программированию, вебдизайну, компьютерной графике, сетям, операционным системам и многому другому
 
<Добавить в Избранное>    <Сделать стартовой>    <Реклама на сайте>    <Контакты>
  Главная Документация Новости ИТ Программы Книги Games   Обои   Экспорт RSS E-Books
 
Поиск по сайту

TOP-10 программ
Symantec Norton Ghost 9.0
Partition Magic 8.0.2 Pro
Xilisoft 3GP Video Converter v3.1.7.0616b
Norton AntiVirus 2005
Xilisoft 3GP Video Converter v2.1.52.831b
Антивирус Касперского Personal 5.0.303 beta 2
RAR Password Cracker 4.12
ABBYY PDF Transformer v1.00.820
Windows Movie Maker 2.6
MP3 To Ringtone Gold v3.02
 
Наши сервисы
Рассылка новостей. Подпишитесь на рассылку сейчас и вы всегда будете в курсе последних событий в мире информационных технологий.
Новостные информеры. Поставьте наши информеры к себе и у вас на сайте появится дополнительный постоянно обновляемый раздел.
Добавление статей. Если вы являетесь автором статьи или обзора на тему ИТ присылайте материал нам, мы с удовольствием опубликуем его у себя на сайте.
 
 

   Программирование -> Delphi / Pascal -> Delphi 4: новые возможности


Работа с базами данных

При использовании компонента TTable можно создавать, переименовывать и удалять таблицы непосредственно в дизайнере форм - в контекстном меню этого компонента есть соответствующие команды.

Поддержка новых версий СУБД и новых типов данных

Библиотека Borland Database Engine (BDE) теперь поддерживает Access '97 и Oracle8, при этом поддерживаются новые расширения Oracle 8, такие как абстрактные типы данных (ADT - Abstract Data Type), массивы, ссылки, вложенные таблицы. В соответствии с этим созданы новые классы объектов - потомков TField: TADTField, TReferenceField, TDataSetField, TArrayField.

Поддержка вложенных таблиц

Компонент TDBGrid теперь может отображать вложенные таблицы. Для иллюстрации этой возможности воспольуемся таблицами customer.db, orders.db и items.db, поставляемыми вместе с Delphi. Поместим на форму три компонента TTable, три компонента TDataSourse, один компонент TClientDataSet и один компонент TProvider. Установим следующие свойства этих компонентов:

КомпонентСвойствоЗначение
DBGrid1DataSourceDataSource3
DBNavigator1DataSourceDataSource3
Table1DatabaseName 'DBDEMOS'
TableName'customer.db'
ActiveTrue
DataSource1 DataSetTable1
Table2DatabaseName 'DBDEMOS'
TableName 'orders.db'
IndexFieldNames 'CustNo'
MasterFields 'CustNo'
MasterSourceDataSource1
ActiveTrue
DataSource2DataSet Table2
Table3DatabaseName 'DBDEMOS'
TableName'items.db'
IndexFieldNames'OrderNo'
MasterFields'OrderNo'
MasterSourceDataSource2
ActiveTrue
Provider1DataSetTable1
ClientDataSet1ProviderName 'Provider1'
ActiveTrue
DataSource3DataSet ClientDataSet1

Рис. 15 Главная форма приложения, использующего вложенные таблицы.

Сами таблицы формата Paradox, естественно, не поддерживают поля, содержащие вложенные таблицы, но такие поля поддерживает компонент TClientDataSet со страницы MIDAS палитры компонентов. Связав его с компонентом Table1 посредством компонента Provider1, мы получим набор данных, содержащий поле Table2 типа TDataSetField, а внутри вложенной таблицы - поле Table3 того же типа:

Рис. 16 Вложенные таблицы на этапе выполнения.

Такое представление данных даже в случае использования настольных СУБД весьма удобно просто потому, что оно решает общеизвестную проблему нехватки места на форме при наличии нескольких связанных таблиц. Единственное, о чем при этом следует позаботиться, это вызов метода ApplyUpdates компонента TClientDataSet (например, в обработчике события, связанного с выбором какого-либо пункта меню или с нажатием на кнопку):

	ClientDataSet1.ApplyUpdates(-1);

Если не использовать этот метод, данные будут сохраняться только в кэше, которым фактически и является компонент TClientDataSet, а не в самих таблицах.

Новый генератор запросов - SQL Builder

В Delphi 4 в качестве построителя запросов используется SQL Builder, уже знакомый пользователям Visual dBase 7 и C++Builder 3. Он позволяет создавать и выполнять запросы, редактировать созданные SQL-предложения, использовать вычисляемые поля и связи между таблицами, основанные на выражениях.

Рис. 17 SQL Builder.

Сгенерированный запрос можно отредактировать вручную, и все внесенные изменения будут отображены в дизайнере запросов.

Рис. 18 Сгенерированный текст запроса можно редактировать.

Возможен также просмотр результатов запроса и копирование полученного набора данных в буфер обмена.

Рис. 19 Выполнение запроса из SQL Builder

Отметим, что скопированный в буфер обмена текст легко преобразуется в таблицы текстовых процессоров (например, MS Word 97).

Новые возможности генерации отчетов

В генераторе отчетов QuickReport добавлены компоненты TQRTextFilter, TQRHTMLFilter и TQRCSVFilter, позволяющие сохранять отчеты не только в оригинальном формате *.qrp, но и в виде текстового файла, файла формата HTML или CSV (Comma Separated Value).

Рис. 20 Отчет QuickReport с возможностью сохранения данных в формате HTML.

Рис. 21 Отчет QuickReport в формате HTML, отображенный в броузере.

Автоматизация создания приложений для публикации данных в Internet

В Delphi 4 имеется DB Web Application Wizard, позволяющий автоматизировать создание приложения для публикации данных в Internet. После выбора соответствующей пиктограммы в репозитарии объектов можно выбрать тип приложения и тип компонентов TDBDataSet для построения приложения.

Рис. 22 Выбор DB Web Application Wizard из репозитария объектов Delphi 4.

Рис. 23 Выбор типа приложения.

Далее следует выбрать псевдоним базы данных и имя публикуемой таблицы.

Рис. 24 Выбор псевдонима базы данных и таблицыдля публикации в Web.

После этого следует выбрать публикуемые поля таблицы:

Рис. 25 Выбор публикуемых полей.

И, наконец, далее следует ввести текст заголовка генерируемой приложением страницы, а также текст, помещенный перед таблицей и после нее.

Рис. 26 Ввод заголовка таблицы и дополнительного текста

После этого можно открыть полученный компонент TWebModule, выбрать компонент Table1 и установить его свойство Active равным True.

Рис. 27 Сгенерированный компонент TWebModule

Рис. 28 Редактор свойства Actions компонента TWebModule

Далее можно выбрать сгенерированный объект TWebAction, выбрать его в качестве действия по умолчанию - и можно компилировать приложение, а затем тестировать его с помощью web-сервера и web-броузера.

Рис. 29 Результат выполнения сгенерированного приложения

Создание многозвенных систем

Возможности создания многозвенных информационных систем в Delphi 4 существенно расширены по сравнению с прежней версией. В данную версию включена поддержка CORBA (Common Object Request Broker Architecture), что позволяет использовать в качестве серверов приложений сервисы, выполняющиеся на различных платформах. Имеется также поддержка Microsoft Transaction Server. В палитре компонентов теперь имеется отдельная страница MIDAS, содержащая компоненты, используемые в серверах приложений и "тонких" клиентах, в частности, новые компоненты TCorbaConnection, TDCOMConnection, TSocketConnection, TOLEnterpriseConnection (последние три обладают свойством LoginPrompt, поддерживающим аутентификацию пользователя). В репозитарии объектов имеется соответствующая страница Multitier, содержащая генераторы соответствующих типов приложений.

Рис. 30 Шаблоны серверов приложений репозитария объектов

Создание многозвенной системы, где сервер приложений обеспечивает доступ к данным, по-прежнему представляет собой несложный процесс.

Рис. 31 Создание удаленного модуля данных

После выбора соответствующей пиктограммы (например, Remote Data Module) из репозитария объектов и ввода характеристик соответствующего COM-объекта получим удаленный модуль данных, в который можно поместить компоненты доступа к данным.

Рис. 32 Главная форма и модуль данных сервера приложений

Далее следует экспортировать компоненты доступа к данным из модуля данных:

Рис. 33 Библиотека типов удаленного модуля данных

После этого можно скомпилировать сервер приложений и приступить к созданию "тонкого" клиента. С этой целью можно добавить в имеющуюся группу проектов еще один проект (если разработка клиента ведется на том же компьютере, где создавался сервер приложений), либо просто создать новый проект или активную форму (в случае "тонкого" клиента в виде ActiveX) и поместить туда какой-либо компонент доступа к удаленному серверу (например, TSocketConnection). Для осуществления удаленного доступа с помощью TSocketConnection следует запустить на том компьютере, где содержится сервер приложений, Borland Socket Server. Затем следует установить свойства Host и ServerName равными имени компьютера и удаленного модуля данных (в формате <имя исполняемого файла>.<имя удаленного модуля данных>) соответственно. Далее можно поместить на форму компонент TClientDataSet, связать его с компонентом TSocketConnection и выбрать значение свойства ProviderName из выпадающего списка. Теперь можно помещать на форму компоненты для отображения данных (например, создав объекты TFields и переместив их на форму методом drag-and-drop из списка полей). Таким образом, "тонкий" клиент готов.

Рис. 34 Главная форма "тонкого" клиента

Помимо соединения клиента с сервером с помощью протокола TCP/IP, возможно использование Microsoft DCOM (Distributed Component Object Model) и соответственно компонента TDCOMConnection, а также технологии OLenterprise (с помощью компонента TOLEnterpriseConnection).

Отметим, что CORBA-серверы и CORBA-клиенты с помощью Delphi 3 создаются примерно так же.

Назад | Содержание | Вперед



 
Популярные книги

Общая информатика. Универсальный курс

Подробнее

Ремонт и обслуживание компьютера дома

Подробнее

Введение в ИТ Сервис-менеджмент

Подробнее


 
Новости ИТ
09.01.2009  Exeda -- корпоративный цифровой ассистент с Android Linux
09.01.2009  Правительство Вьетнама массово переходит на Open Source
09.01.2009  Windows 7 build 7000
09.01.2009  Silicon Power представила скоростную SDHC
09.01.2009  CES 2009: RealView 360 3D Desktop Scanner - настольный 3D-сканер, один из первых в мире
09.01.2009  W90 - очень быстрый мультимедийный ноутбук ASUS «Ultimate-уровня»
09.01.2009  CES 2009: SanDisk представила семейство G3 - самых быстрых SSD-накопителей на флэш-памяти MLC
09.01.2009  ZOTAC GeForce GTX 285 и GTX 285 AMP! Edition - 3D-ускорители для геймеров на новом GPU NVIDIA
09.01.2009  Net Applications: в декабре доли Firefox и Chrome росли за счет IE
09.01.2009  Imation говорит о «новом классе» SSD и первом в отрасли полном наборе для модернизации на основе SSD
09.01.2009  Маршрутизатор D-Link Xtreme N DIR-685 может играть роль NAS, сервера печати... и цифровой фоторамки
09.01.2009  Очень тонкая фотокамера Pentax Optio P70 имеет разрешение 12 Мп
09.01.2009  pureSilicon 1TB Nitro - первый в мире 2,5-дюймовый SSD объемом 1 ТБ
09.01.2009  Дебютировали мобильные GPU ATI Mobility Radeon HD 4000
09.01.2009  NVIDIA GeForce GTX 285 и GTX 295 представлены официально
09.01.2009  Scythe выпустила процессорный кулер Mugen 2
09.01.2009  Optio E70 - новая компактная камера Pentax начального уровня
09.01.2009  Новый iPhone получит четырехъядерный процессор?
09.01.2009  У загрузчика GRUB 2 появился новый движок для шрифтов
09.01.2009  xf86-video-ati 6.10.0 -- драйвер XOrg для карт AMD/ATI обновился
 
Полезно

 
Copyright © CompDoc.Ru
При цитировании и перепечатке ссылка на www.compdoc.ru обязательна. Карта сайта.
 
Rambler's Top100