IX. ОБМЕН ДАННЫМИ

Чрезвычайно важной и полезной чертой графической оболочки Windows является возможность динамического обмена данными между ее программами в реальном масштабе времени.

Для обмена данными в Windows используются два механизма:

Динамический Обмен Данными (DDE) и Связывание и Встраивание Объектов (OLE). Если DDE позволяет обмениваться данными, то OLE позволяет хранить данные из других Windows-программ и иметь непосредственный доступ к функциональным возможностям этих программ.

Программа, данные которой являются источником при обмене, называется сервером, а программа, которая получает данные при обмене, называется клиентом. Paradox использует оба механизма обмена данными и способен быть DDE-клиентом, DDE-сервером и OLE-клиентом.E-сервером и OLE-клиентом.

Использование механизма DDE позволяет поддерживать динамические связи между полями Paradox-таблиц и данными в других Windows-программах. Использование механизма OLE позволяет встраивать в Paradox целые файлы из OLE-сервера. При этом пользователь имеет доступ к OLE-серверу непосредственно из Paradox и может с его помощью производить необходимые изменения встроенных данных.

1. МЕХАНИЗМ DDE

Как уже говорилось, Paradox можно использовать в качестве DDE-сервера и в качестве DDE-клиента.

Когда пользователь помещает данные из Paradox в другие Windows-программы, он использует Paradox в качестве DDE-сервера.

Предположим, что в электронной таблице (например, Quattro Pro for Windows) выполняется некоторая вычислительная процедура. Значение, над которым пользователь хочет выполнить вычисление, находится в поле Paradox-таблицы. Чтобы "доставить" в электронную таблицу необходимые данные, надо скопировать значение поля Paradox-таблицы в Clipboard Windows, а затем вставить его в нужную ячейку электронной таблицы соответствующей командой. При этом не просто копируется значение, а задается механизм динамического обмена данными (DDE), который сообщает электронной таблице, где искать значение для вычислений в ячейке. При перемещении по записям Paradox-таблицы значение в связанной ячейке электронной таблицы изменяется в соответствии со значением, находящемся в соответствующем поле текущей записи Paradox-таблицы. Следует отметить, что пользователь может связать с DDE-клиентом не только отдельные поля таблицы, но и всю таблицу. Таким образом можно связывать Paradox с любыми другими Windows-программами, которые поддерживают DDE (например, текстовыми процессорами).

Чтобы использовать Paradox в качестве DDE-клиента, надо поместить информацию о связи с данными из другой Windows-программы в какое-либо алфавитно-цифровое поле Paradox-таблицы. Для этого надо скопировать значение из DDE-cервера в Windows Clipboard, затем выбрать нужное алфавитно-цифровое поле и дать соответствующую команду. Обычно Paradox используется в качестве DDE-клиента тогда, когда необходимо брать данные из другой программы и на их основе производить запросы к таблицам. Также можно использовать таблицу Paradox в качестве DDE-сервера, а запрос - в качестве DDE-клиента. При этом каждое изменение поля таблицы, связанного DDE-связью, будет вызывать выполнение запроса, и, соответственно, обновление таблицы Answer.

2. МЕХАНИЗМ OLE

Механизм OLE позволяет хранить и использовать данные из других Windows-программ и иметь доступ к их функциям непосредственно из Paradox. Если DDE позволяет Paradox иметь доступ к источнику данных, но хранит только указатель на источник, то OLE позволяет не только хранить, но и отображать данные из других Windows-программ. Например, можно поместить документ, состоящий из сотен страниц, в единственной OLE-поле и просматривать его непосредственно из Paradox.

Paradox может быть только OLE-клиентом. Нельзя поместить данные из Paradox в другие программы, используя механизм OLE. Как только данные помещаются из других Windows-программ в OLE-поля Paradox-таблиц, форм или отчетов, пользователь получает возможность вызвать программу-сервер, с помощью которой можно, например, отредактировать данные OLE-поля. Например, можно в OLE-поле поместить рисунок из графического редактора PaintBrush, а потом из Paradox войти в него для редактирования введенного рисунка, используя все его возможности.

Х. ЗАКЛЮЧЕНИЕ

Что всегда отличало Paradox, так - это его возможности.

Недаром способ обработки данных Paradox фактически является стандартом для других СУБД. Появление разновидности Paradox - Paradox for Windows расширило и без того обширные возможности этой СУБД. Возможность работать с данными не только в таблицах и формах, но и в кросстаблицах, - является еще одним шагом вперед по пути к оптимизации обработки данных, предпринятым фирмой Borland. Наличие механизмов обмена данными делает Paradox требуемым компонентом как на машинах, работающих в сети, так и на одиночных. Наличие всесторонних механизмов реализации запросов экономит время пользователя, повышает наглядность изображения данных, тем самым еще повышая возможности продукта.

Единственное, что не отличает версии Paradox for Windows от версий Paradox for DOS, так это простота работы с данными, простота в составлении запросов, простота в реализации новых функций. Пользователи, работавшие с версиями Paradox для ДОС, при работе с версиями для Windows найдут исключительно новые, дополнительные возможности, использующие все преимущества и возможности системы Windows и ее приложений.

К сожалению, на момент написания для широкой публики не появились материалы о объектно-ориентированном языке-приложении Paradox ObjectPAL, который улучшает возможности своего предшественника языка PAL.

С появлением версии Paradox for Windows фирма Borland устранила, по сути, единственный существовавший до того времени недостаток Paradox - отсутствие с пакете компилятора для создания EXE-файлов, и, как следствие, автономных программных продуктов. В результате этого усовершенствования Paradox является базой данных, реализующей все необходимый функции удобным для пользователя способом.

СПИСОК ЛИТЕРАТУРЫ

1. Paradox for Windows: Практическое руководство.Под редакцией Оспищева Д. А. Издательство АОЗТ "Алевар", 1993 (2 части).

2. Paradox - это очень просто. Чарльз Сигель. Москва, 1993.

3. Справочник по программированию в системе Paradox. Москва, 1992.