Панель задач Data Explorer используется для открытия соединений к данным и входа на серверы, а также для исследования баз данных на этих серверах. Вы можете производить щелчки по правой клавише мыши на узлах для производства различных действий на элементах данных, представленных этим узлами. Вы можете перетаскивать узлы из Data Explorer и бросать их в дизайнеры и редакторы Visual FoxPro. При этом для данных на формах или в коде создаются новые элементы управления, которые автоматически сконфигурированы для элементов, которые они отображают.

Для доступа к панели задач Data Explorer выберите Task Pane в меню Tools для вывода Task Pane Manager. Выберите панель задач Data Explorer из выпадающего списка Task Panes вверху формы Task Pane Manager. В этом случае Data Explorer откроется внутри Task Pane Manager (примечание переводчика).

Поскольку Data Explorer представляет самостоятельное приложение, то оно может быть запущено вне формы Task Pane manager. Для запуска Data Explorer в виде отдельного приложения, исполните приведенную ниже команду из окна Command. Приведенная в оригинале команда исправлена, так как там имелась синтаксическая ошибка (примечание переводчика).

  CopyCode image Скопировать код
DO HOME()+[DATAEXPLORER.APP]
NoteЗамечание

Data Explorer хранит ваши соединения и установки в таблице с именем DataExplorer.dbf, которая расположена в вашей пользовательской папке (смотрите описание HOME(7)).

Использование Data Explorer

Data Explorer Initial Window

Использовать Data Explorer очень легко. Он имеет простой интерфейс, позволяющий вам легко просматривать и работать с удаленными данными. Ниже описаные базовые операции Data Explorer:

  • Вы создаете соединение к вашим удаленным данным, таким, как базы данных SQL Server. Это делается с помощью кнопки Add Connection.

  • Соединение появляется в виде узла под корневым узлом Connections и сохраняется для использования в будущем.

  • Вы можете распахивать узлы и видеть все компоненты ваших соединений. Когда вы выбираете узел, то подробная информация о нем появится в панели описания, расположенной в нижней части окна.

  • Вы можете производить щелчок по правой клавише мыши для того, чтобы производить различные действия, такие, как просмотр таблиц, проверку определений представлений или редактирования хранимых процедур.

  • Вы можете перетаскивать (drag-and-drop) узлы в редакторы Visual FoxPro и иметь уже подготовленный для вас код для конкретного узла. Кроме того, вы можете перетаскивать узлы в дизайнер форм и иметь после этого подходящий к данному случаю элемент управления, представляющий на форме конкретный узел.

Использовать Data Explorer для производства различных действий с вашими удаленными данными. Ниже приведен список с некоторыми наиболее общими задачами:

Добавить новое соединение

Добавьте новое соединение к вашим удаленным данным щелчком по кнопке Add Connection или с помощью щелчка по правой клавише мыши на корневом узле Connections с последующим выбором пункта контекстного меню Add Connection…. Когда появится диалог Add Connection, выберите тип соединения.

После выбора типа соединения, вы будете запрошены о подробностях вашего источника данных. Если вы выберите тип соединения SQL или ADO, то будет выведено диалоговое окно Connection Properties для установки свойств.

Обращение к существующим SQL серверам

Корневой узел SQL Servers представляет собой удобный путь для исследования и доступа к SQL серверам, доступным на вашей сети. Просто щелкните по корневому узлу для просмотра всех доступных серверов.

NoteЗамечание

Часто более удобно создать отдельное соединение к конкретной базе данных SQL сервера, чем обращаться к нему через корневой узел SQL Servers. Кроме того, отдельное соединение предоставит и более быстрый доступ к серверу.

Изменение существующего соединения

После того, как соединение будет добавлено в Data Explorer, оно станет постоянным и доступным в последующие запуски Visual FoxPro. Вы можете вносить изменения в соединения путем вызова на нем контекстного меню и выбора в нем пункта Properties.

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

Если вы выбрали тип соединения "SQL Server", то узлы, расположенные ниже соединения будут представлять базы данных. Вы можете распахивать узлы баз данных для просмотра ее различных составляющих, включая таблицы, представления, хранимые процедуры и функции.

Если вы используете соединения типа SQL или ADO, то вы можете перетаскивать узлы баз данных в программу и в нее будет вставлен код, который обслуживает соединение и устанавливает объект CursorAdapter для извлечения данных.

Работа с таблицами

Вы можете распахнуть узел "Tables" для просмотра списка всех таблиц в вашем источнике данных. Информация о такой таблице, такая, как ее собственник или ее место размещения отображается в панели описания снизу окна. Вы можете распахивать узлы далее, для того, чтобы увидеть поля таблицы.

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

Для запуска более сложного запроса, выберите из контекстного меню пункт Run Query.

Если вы работаете с таблицами Visual FoxPro, вы можете выбрать контекстного меню пункт Design для того, чтобы открыть родной дизайнер таблиц Visual FoxPro.

NoteЗамечание

Благодаря расширяемости архитектуры, вы можете добавить поддержку собственного дизайнера для удаленных источников данных, таких как SQL Server.

Когда вы перетаскиваете таблицу на формы или в дизайнер классов, то для перетаскиваемой таблицы создается элемент управления Grid.

NoteЗамечание

Вам может потребоваться добавить код или объекты окружуния данных (data environment) для соединения с удаленным источником данных.

Когда вы перетаскиваете таблицу в окно редактирования, то вставляется код для просмотра таблицы:

  • Если вы перетаскиваете родную таблицу Visual FoxPro, то будет вставлено простое предложение SELECT.

  • Если вы перетаскиваете из соединений типов SQL или ADO, то, кроме вставляемого кода, который будет обслуживать соединение, дополнительно создается объект CursorAdapter для извлечения данных.

Работа с представлениями

Вы можете распахнуть узел "Views" для просмотра списка всех представлений в вашем источнике данных. Информация о таком представлении, такая, как его собственник, отображается в панели описания снизу окна. Вы можете далее распахнуть узел представления, чтобы просмотреть включенные в него поля.

Для просмотра данных, вызовите контекстное меню и выберите в нем пункт Browse.

Для запуска более сложного запроса, выберите из контекстного меню пункт Run Query.

Для просмотра определения этого представления выберите из контекстного меню пункт View Definition .

NoteЗамечание

Определенные типы соединений, такие, как ADO к SQL серверу могут не отображать этот пункт контекстного меню.

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

NoteЗамечание

Благодаря расширяемости архитектуры, вы можете добавить поддержку собственного дизайнера для удаленных источников данных, таких, как SQL Server.

Когда вы перетаскиваете представление на формы или в дизайнер классов, то для перетаскиваемой таблицы создается элемент управления Grid.

NoteЗамечание

Вам может потребоваться добавить код или объекты окружения данных (data environment) для соединения с удаленным источником данных.

Когда вы перетаскиваете представление в окно редактирования, то вставляется код для просмотра таблицы:

  • Если вы перетаскиваете родное представление Visual FoxPro, то будет вставлено простое предложение SELECT.

  • Если вы перетаскиваете представление из соединений типов SQL или ADO, то, кроме вставляемого кода, который будет обслуживать соединение, дополнительно создается объект CursorAdapter для извлечения данных.

Работа с полями

Вы можете распахнуть узел "Table" или "View" для просмотра списка его полей. Информация о поле, такая, как тип данных, отображается в панели описания. Если чек-бокс Column Info отмечен для этого соединения, тип данных отображается в узле поля.

NoteЗамечание

Определенные типы соединений могут не поддерживать отображения подобных сведений о поле.

Для запуска запроса выберите из контекстного меню пункт Run Query.

Когда вы перетаскиваете на форму или в дизайнер классов поле, то для него создается элемент управления Textbox.

NoteЗамечание

Вам может потребоваться добавить код или объекты окружения данных (data environment) для соединения с удаленным источником данных.

Когда вы перетаскиваете поле в окно редактирования, то вставляется код для просмотра таблицы:

  • Если вы перетаскиваете поле Visual FoxPro, то будет вставлено простое предложение SELECT.

  • Если вы перетаскиваете поле из соединений типов SQL или ADO, то, кроме вставляемого кода, который будет обслуживать соединение, дополнительно создается объект CursorAdapter для извлечения данных.

Работа с хранимыми процедурами

Вы можете распахнуть узел "Stored Procedures" для просмотра списка всех хранимых процедур вашего источника данных. Информация о хранимых процедурах, такая, как их собственник, отображается в панели описания внизу окна. Вы можете распахивать узлы индивидуальных хранимых процедур для просмотра их параметров.

NoteЗамечание

Определенные типы соединений могут не поддерживать эту опцию.

Для исполнения хранимой процедуры, вы можете вызвать контекстное меню для этого узла и выбрать пункт меню Run Stored Procedure. Если хранимая процедура требует для своего исполнения какие-то параметры, то появится диалоговое окно, где вы сможете ввести их. Результат отобразится в окне Run Query, где вы можете подредактировать процедуру и повторно запустить ее.

Для исполнения вашей процедуры под большим контролем с вашей стороны над синтаксисом вызова, выберите из контекстного меню пункт Run Query.

Для просмотра определения процедуры выберите из контекстного меню пункт View Definition.

Для редактирования процедуры выберите из контекстного меню пункт Edit Procedure.

Для удаления процедуры выберите из контекстного меню пункт Delete Procedure.

Для добавления новой процедуры выберите из контекстного меню пункт New Procedure.

Вы можете перетащить хранимую процедуру из соединения типа SQL или ADO в окно редактирования. Когда вы будете это делать, то будет вставлен код для обслуживания соединения и вызовов процедуры. Для процедур соединения типа SQL, в код будет включено создание объекта CursorAdapter для извлечения данных, полученных в результате исполнения хранимой процедуры.

Работа с функциями

Вы можете распахнуть узел "Functions" для просмотра всех функций в вашем источнике данных. Информация о функции, такая, как ее собственник, отображается в панели описания внизу окна. Вы может распахнуть узел индивидуальной функции для просмотра ее параметров.

NoteЗамечание

Определенные типы соединений, такие как соединения Visual FoxPro, могут не поддерживать эту опцию..

Для вызова функции выполните щелчок по правой клавише мыши на желаемом узле и выберите из контекстного меню пункт Run Stored Procedure. Если хранимая процедура требует параметры, то появится диалоговое окно, в котором вы сможете их ввести. Результат, полученный при исполнении хранимой процедуры отобразится в окне "Run Query", в котором вы можете подредактировать вашу процедуру и заново ее исполнить.

Для исполнения вашей функции под большим контролем с вашей стороны на синтаксисом вызова выберите из контекстного меню Run Query.

Для просмотра определения функции выберите из контекстного меню пункт View Definition .

Для редактирования процедуры выберите из контекстного меню пункт Edit Function.

Для удаления процедуры выберите из контекстного меню пункт Delete Function.

Для ввода новой процедуры выберите из контекстного меню пункт New Function.

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

Использование окна Run Query

Когда вы выберите из контекстного меню пункт Run Query, отобразится окно Run Query, содержащее команды соответствия выбранному узлу.

Например, если вы откроете окно Run Query для таблицы, бокс редактирования будет содержать предложнение SELECT для этой таблицы. Если вы выберите хранимую процедуру, то будет показано предложение EXEC (применимо к SQL).

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

Для запуска запроса введите команду запроса в виде предложения SELECT или EXEC и щелкните по кнопке Run. Результат отобразится в нижней части окна.

Установка фильтра

Вы можете выбрать из контекстного меню пункт Filter для установки фильтра с целью отображения только тех дочерних узлов, которые соответствуют или не соответствуют указанному критерию. Например, вы можете пожелать отфильтровать все таблицы, которые начинаются с "sys" для исключения из списка системных таблиц.

Обновление узлов данных

Если вы произведете щелчок по правой клавише мыши на узле, то вы сможете выбрать из контекстного меню пункт Refresh для обновления всех дочерних узлов.

Диалоговое окно Add Connection

Кнопка Add Connection выводит диалоговое окно Add Connection с тем, чтобы смогли создать новое постоянное соединение.

Add Connection Dialog Box

Вы можете выбрать источник данных типов SQL Server, Visual FoxPro или ADO. Для этого диалогового блока доступны перечисленные ниже типы:

Тип соединения Описание

SQL Server

Соединение к SQL Server. Узел соединения будет отображать дочерние узлы для каждой базы данных на этом сервере.

SQL Database

Соединение к базе данных SQL Server.

FoxPro Directory

Соединение к каталогу. Узел соединения отобразит дочерние узлы для каждой базы данных Visual FoxPro (.dbc).

FoxPro Database

Соединение к базе данных Visual FoxPro.

FoxPro Table

Соединение к таблице Visual FoxPro.

ADO Connection

Соединение к источнику данных ADO.

NoteЗамечание

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

Диалоговое окно SQL Connection Properties

Диалоговое окно SQL Connection Properties используется для установки информации соединения к базе данных SQL сервера. Это диалоговое окно появляется, когда вы создаете соединение к SQL первый раз - либо соединение типа SQL Server, либо соединение типа SQL Database. Вы можете вывести это диалоговое окно и после того, как соединение создано, для того, чтобы внести изменения, через вызов контекстного меню и выбора в нем пункта Properties.

Server Name

Вы можете напечатать имя SQL сервера непосредственно в комбобоксе или выбрать в нем требуемый из выпадающего списка. Выпадающий список будет содержать тот же самый список серверов, который появляется под узлом SQL Servers окна Data Explorer.

Database

После того, как вы выберите желаемый SQL Server, вы можете выбрать базу данных для вашего соединения.

Эта опция доступна только для соединения типа SQL Database.

NoteЗамечание

Вы можете быть запрошены для ввода комбинации Login/Password, если текущее состояние Trusted Connection не разрешает доступа к списку баз данных на выбранном сервере.

Use Trusted Connection

Отметьте этот чек-бокс для использования ваших значений входа в Windows для соединения с SQL сервером.

Login

Если вы снимите метку с чек-бокса Use Trusted Connection, вы можете указать SQL имя входа в систему для использования с этим соединением.

Password

Если вы снимите метку с чек-бокса Use Trusted Connection, вы можете указать SQL пароль для использования с этим соединением.

Connection Timeout

Укажите время ожидания (в секундах), которое должно пройти до возврата ошибки истечения времени ожидания (time-out error). Если вы укажите 0, время ожидания будет неопределенным и ошибка истечения времени ожидания не будет генерироваться. Значение должно лежать в диапазоне от 0 до 600.

NoteЗамечание

Это равнозначно использованию SQLSETPROP(0, “ConnectTimeOut”, nTimeout) до установки соединения.

Query Timeout

Укажите время ожидания (в секундах), которое должно пройти до возврата общей ошибки истечения времени ожидания (time-out error). Если вы укажите 0, время ожидания будет неопределенным и ошибка истечения времени ожидания не будет генерироваться. Значение должно лежать в диапазоне от 0 до 600.

NoteЗамечание

Это равнозначно использованию SQLSETPROP(nHandle, “QueryTimeOut”, nTimeout) до исполнения запроса.

Show Column Info

Отображает тип колонки и текст, помещаемый рядом с именем колонки на каждом узел колонки.

Sort Objects

Сортирует объекты под соединением по имени.

Диалоговое окно ADO Connection Properties

Диалоговое окно ADO Connection Properties используется для указания информации о соединения к источнику данных типа ADO (OLE DB Provider). Это диалоговое окно появляется при первичном создании ADO соединения, но может быть вызвано позднее для редактирования свойств соединения через вызов пункта Properties контекстного меню, вызываемого на узле соединения.

ADO Connection Properties Dialog Box

Use DSN

Определяет соединение с использованием существующего DSN. Введите необходимую информацию для OLE DB Provider выбором доступных источников данных из выпадающего списка и при необходимости введите User ID и Password.

Use Connection String

Введите действительную строку соединения. Кнопка Build доступна с целью помощи в генерации строки соединения. Эта кнопка открывает стандартное окно Data Link Properties, где вы можете выбрать зарегистрированный OLE DB Provider.

Connection Timeout

Укажите время ожидания (в секундах), которое должно пройти до возврата общей ошибки истечения времени ожидания (time-out error). Если вы укажите 0, время ожидания будет неопределенным и ошибка истечения времени ожидания не будет генерироваться. Значение должно лежать в диапазоне от 0 до 600.

NoteЗамечание

Это равнозначно использованию SQLSETPROP(0, “ConnectTimeOut”, nTimeout) до установки соединения.

Query Timeout

Укажите время ожидания (в секундах), которое должно пройти до возврата общей ошибки истечения времени ожидания (time-out error). Если вы укажите 0, время ожидания будет неопределенным и ошибка истечения времени ожидания не будет генерироваться. Значение должно лежать в диапазоне от 0 до 600.

NoteЗамечание

Это равнозначно использованию SQLSETPROP(nHandle, “QueryTimeOut”, nTimeout) до исполенения запроса.

Show Column Info

Отображает тип колонку и текст, помещаемый рядом с именем колонки на каждом узле колонок.

Окно Run Query

Run Query Window

Окно Run Query window представляет собой ядро Data Explorer. Оно позволяет вам исполнять запросы на выбранном узле данных. Вы, кроме того, можете исполнять хранимые процедуры и функции. Для запуска запроса выполните приведенные ниже шаги:

  • Вызовите контекстное меню на узле данных, для которых вы желаете выполнить запрос, с последующим выбором пункта Run Query.

  • Если в верхнем боксе редактирования имеется текст запроса, вы можете щелкнуть по кнопке Run для его исполнения. Если текст не отображается, введите запрос, такой как предложение SELECT и щелкните по Run.

  • Результат исполнения вашего запроса появится в нижней половине окна Run Query window в виде grid. Если запрос был неудачным, то в самой нижней панели появится сообщение об ошибке. Вы можете отредактировать запрос с целью устранения проблемы и щелкнуть по Run для его повторого исполнения.

  • Окно Run Query, кроме того, позволяет вам исполнять хранимые процедуры и функции. Если при их исполнении возвращается результат, например с SQL сервера, то он будет отображен в grid. В противном случае, результат будет храниться в панели результатов.

  • Окно Run Query поддерживает расширяемость в помощью дополнений (add-in), что позволяет вам выполнять пользовательские действия на запросах или возвращенных данных. Добавки Add-in, которые управляются с использованием Add-In Manager (вызывается в диалоговом окне Options), появляются в виде кнопок вверху бокса редактирования запроса (кнопки оформлены в виде панели и при помещении над ними указателя мыши преобразуются в нормальный вид командной кнопки). Вы можете обращаться к add-ins через контекстное меню бокса редактирования запроса.

В поставку Visual FoxPro включены перечисленные ниже add-in, которые могут быть изменены с помощью Add-In Manager:

Add-In Описание

Save Query

Вы можете сохранить текст вашего текущего запроса в текстовый файл с расширением .SQL.

Это представляет собой add-in запроса.

Load Query

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

Это представляет собой add-in запроса.

Format for VFP

Модифицирует текущий запрос с помощью ввода символа переноса командной строки - точки с запятой (;) в конец всех строк, удаляет любые пустые строки и конвертирует любые комментарии SQL "--" в "&&".

В дополнению к этому, удаляются все скобки, окружающие слова. Это полезно в случае, когда у вас есть предложение SQL, написанное изначально для SQL Server и вы хотите запустить его на данных Visual FoxPro.

Например, приведенный ниже запрос:

SELECT [au_lname]

FROM [pubs] -- retrieve all last names

форматируется в виде:

SELECT au_lname ;

FROM pubs && retrieve all last names

Это представляет собой add-in запроса.

Format for SQL

Модифицирует текущую запрос с целью удаления любых завершающих ее символов переноса командной строки (;), конвертирует любые строки комментария VFP, которые начинаются с "*" в строки SQL комментария начинающиеся с "--", заменяет двойные скобки одиночными и изменяет символы двойного равенства (==) в одиночный (=).

Это полезно в случае, когда вы изменяете запрос, изначально написанный для работы с данными VFP для его запуска на данных SQL Server.

Это представляет собой add-in запроса.

Clipboard to Variable

Копирует запрос в буффер, с присвоением значения переменной.

Это представляет собой add-in запроса.

Clipboard to TEXT/ENDT

Копирует запрос в буффер, обрамляя его командами TEXT ... ENDTEXT.

Это представляет собой add-in запроса.

Copy Results to Clipboard.

Данные, отображаемые в grid копируются в буффер.

Это представляет собой add-in результата.

Диалоговое окно Options

Диалоговое окно Options позволяет вам настраивать Data Explorer и поведения соединений.

Font

Устанавливает шрифт, используемый по умолчанию в Data Explorer.

Show Description Pane

При выборе будет отображать панель описания в нижней части окна Data Explorer.

Show Column Info

При выборе будет показывать информацию о колонках в их узлах. Это является значением по умолчанию для новых соединений. Вы можете изменить его поздее в диалоговом окне Connection Properties.

NoteЗамечание

Если панель описания выведена, то там отображается информация о типе данных колонки для выбранной колонки.

Manage Add-Ins

Открывает окно Add-Ins Manager.

Manage Menus

Открывает окно Menu Manager.

Manage DragDrop

Открывает окно DragDrop Manager.

Restore to Default

Восстанавливает установки Data Explorer в их значения по умолчанию.

Backup оригинальной таблицы DataExplorer.dbf производится с присвоением резервной таблице имени DataExplorerBackup_xx.dbf, где xx представляет собой возрастающий номер последовательности, для того, чтобы предыдущие backup не переписывались новыми.

Add-In Manager

Add-In Manager Dialog Box

Окно Run Query позволяет вам добавлять новые и настраивать имеющиеся add-in для работы как с вашими запросами, так и с данными, получаемые в результате их исполнения. Эти add-ins появляются в окне Run Query в виде кнопок. Add-In хранятся в вашей таблице установок DataExplorer.dbf.

Query Add-Ins

Add-In, это те дополнения, которые которые появляются наверху окна Run Query и применяются к запросам.

Data Results Add-Ins

Add-Ins это те дополнения, которые появляются внизу окна Run Query и применяются к результатам, которые появляются после исполнения запросов.

Add-In List

Список зарегистрированных Add-Ins. Когда вы выбираете add-in, его детальное описание появляется в элементах управления, расположенных в правой части окна.

New

Создает новое дополение add-in.

Delete

Удаляет add-in.

Move Up/Move Down

Используйте синие стрелки над списком для перемещения выбранного элемента списка вверх или вних по списку. Это управляет позицией кнопки add-in, появляющейся в окне Run Query.

Add-In

Указывает полное описательное имя add-in.

Abbreviated Name

Указывает, как add-in будет отображаться в полоске меню.

Select Image

С помощью этой кнопки вы можете найти и выбрать картинку, которая будет ассоциирована с текущим выбранным add-in.

Script Code Editbox

Указывает код скрипта, который будет исполняться при выборе add-in. Скрипт может принимать один параметр, которые представляет собой объект, содержащий текст запроса, ссылку на объект управления данными и ссылку на движок DataExplorer.

Modify

Выводит окно редактирования для изменения скрипта, если вы желаете производить редактирование в большем по размере окне.

Menu Manager

Menu Manager Dialog Box

Menu Manager прозволяет вам настраивать элементы контекстных меню, доступных для конкретных узлов. Меню хранится в вашей таблице установок DataExplorer.dbf.

Menu List

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

New

Создает новый элемент контекстного меню.

Copy

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

Delete

Удаляет элемент контекстного меню.

Move Up/Move Down

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

Caption

Указывает имя пользовательского меню в том виде, в каком оно появится в контекстном меню узла. Используйте символы “\-“ для создания разделителя в меню.

Additional Info

Позволяет вам легко определять категории элементов меню. Это появляется во второй колонке списка элементов меню.

Template

Необязательный шаблон кода, к которому можно обращаться в коде скрипта меню. Щелкните по кнопке Modify для редактирования кода в окне редактирования.

Display Only

Эта страница позволяет вам управлять тем, какие узлы будут отображать меню. Текстовый бокс Display only… позволяет вам включить разделенный запятыми список имен узлов (классов), которые могут отображать меню. Вы можете указать в конце любого имени узла символ модификатора (*) для указания любых узлов, которые начинают с введенного до символа модификатора текста.

Code to Determine…

Код, который исполняется для конкретного класса узла, включенного в текстовый бокс Display Only который в дальнейшем может быть использован для фильтрации - будет меню отображаться или нет. Это частично полезно, когда вы желаете ограничить меню только для определенных провайдеров соединений типа ADO.

Это код должен принимать одиночный параметр объекта, содержащего информацию об узле.

Щелкните по кнопке Modify для редактирования кода в окне редактирования.

Script To Run

Код, который будет исполняться при выборе элемента меню.

Это код должен принимать одиночный параметр объекта, содержащего информацию об узле.

Щелкните по кнопке Modify для редактирования кода в окне редактирования.

DragDrop Manager

DragDrop Manager Dialog Box

DragDrop Manager позволяет вам настраивать поведения при операциях drag-and-drop для конкретных узлов. Действия, выполняемые при операциях Drag-and-drop хранятся в вашей таблице установок DataExplorer.dbf.

DragDrop Item List

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

New

Создает новый элемент для операции drag-and-drop.

Copy

Копирует новый элемент для операции drag-and-drop, используя описание выбранного элемента.

Delete

Удаляет элемент операции drag-and-drop.

Move Up/Move Down

Используйте синие стрелки над списком для перемещения выбранного элемента вверх-вниз по списку. Это управляет порядком, в котором испоняется код действия для операции.

Caption

Указывает имя элемента операции drag-and-drop для будущих ссылок.

Template

Необязательный шаблон кода, на которой можно ссылаться в коде скрипта. Щелкните по кнопке Modify для редактирования кода в окне редактирования.

Execute Only

Определяет разделенный запятыми список имен узлов, к которым могут применяться действия операции drag-and-drop. Вы можете указать в конце любого имени узла символ модификатора (*) для указания любых узлов, которые начинаются с введенного до символа модификатора текста.

Script To Run

Код, который исполняется, когда вы перетаскиваете узел в окно редактирования.

Код должен принимать одиночный параметр объекта, содержащего информацию об узле. Если вы желаете указать текст для вставки, вам необходимо установить параметр для свойства объекта DropText.

Щелкните по кнопке Modify для редактирования кода в окне редактирования.

Расширение Data Explorer

Data Explorer, который поставляется с Visual FoxPro включает в себя поддержку для большинства основных нужд при работе с удаленными данными. Благодаря архитектуре, позволяющей расширения, вы можете добавить дополнительные возможности, которые в данный момент времени отсутствуют, такие, как возможности изменять удаленные таблицы или представления через ваши собственные дизайнеры. В дополнение к этому, вы можете добавить поддержку для новых удаленных источников данных, которые могут появиться в будущем (например - новые версии SQL Server).

Data Explorer может быть расширен с помощью введения, удаления или перемены мест в классах узлов или в классах менеджера соединения. Каждый из них определен в таблице DataExplorer, которая расположена в пользовательском каталоге данных (смотрите описание HOME(7)). Если таблица не найдена, тогда она автоматически создается с помощью таблицы DataExplorerDefault.dbf которая связана с приложением DataExplorer.

NoteЗамечание

Если вы пожелаете сделать изменения или расширения в Data Explorer, вы можете найти его исходные коды в XSource.zip, содержащемся в папке Tools\XSource folder.

DataExplorer.dbf

Большинство расширений Data Explorer обслуживается через эту таблицу, так что у вас нет необходимости делать какие-то модификации в файле приложения DataExplorer.app. Все настройки, которые устанавливаеются с помощью различных параметров в диалоговом окне Options хранятся именно в этой таблице.

В приведенной ниже таблице содержатся детальные описания для расширения установок Data Explorer:

Имя поля Тип Описание

UniqueID

C(25)

Уникальный идентификатор ID для создаваемой записи. Он должен быть в формате: vendor.id

Например: microsoft.textscraps

DefType

C(1)

Определение записи:

  • R = Root (Корень)

  • S = Data Source (Источник данных)

  • C = Connection (Соединение)

  • M = Menu (Меню)

  • P = Picture (Картинка)

  • T = Template (Шаблон)

  • Q = Query Add-in (Add-in запроса)

  • Z = Data Add-in (Add-in данных)

  • E = Expanded Info (Детальная информация)

  • Y = Drop Action, Code Window (Действие при операции Drop, окно редактирования кода)

  • V = Drop Action, Design Surface ((Действие при операции Drop, используемый дизайнер)

ConnType

C(25)

Тип соединения для созданного пользователем соединения.

ConnName

C(100)

Имя соединения.

ConnInfo

M

Информация о соединении.

ClassName

M

Имя класса.

ClassLib

M

Имя и местонахождение библиотеки класса.

ScriptCode

M

Код скрипта для исполнения.

DisplayOrd

I

Порядок отображения.

Options

M

Необязательные данные для конкретной записи DefType.

OptionData

M

Содержит установки для узла, которые могут настраиваться пользователем. Это применяется к узлам Connection и Root. Свойства соединений хранятся в этом поле.

Template

M

Может быть использован дополнениями - add-in.

WhenNodes

M

Разделенный запятыми список узлов, к которым применется меню дополнений add-in.

WhenCode

M

Код скрипта, который исполняется в случае, если определено, что меню дополнений (add-in) должно быть отображено.

AddinImage

W

Картинка для отображения с add-in.

Inactive

L

Если установлено в TRUE (.T.), тогда запись игнорируется.

User

M

Что-то, что определяется пользователем.

Modified

T

Последнее изменение.

Приведенная ниже таблица содержит детальную информацию о различных значениях поля DefType в таблице Data Explorer:

Значение DefType Описание

R

Root. Содержит детальное описание корневого узла. Data Connections и SQL Servers представляют собой предопределенные корневые узлы.

S

Источник данных. Указывает действительный тип соединения, которое может быть создано: Используются перечисленные ниже колонки:

  • ConnName - "дружественное" имя источника данных, например, такое как "SQL Server."

  • ClassName - имя класса, ответственного за представление узла. Это класс должен создаваться из класса IConnectionNode в программе TreeNodes.prg.

  • ClassLib - имя и местонахождение библиотеки классов, в которой размещен класс с именем ClassName.

C

Соединение. Содержит соединение, созданное пользователем.

M

Меню. Определяет опции контекстного меню, которое доступно для узла.

  • ConnName - имя элемента меню в том виде, в каком оно появится в контекстном меню.

  • ScriptCode - код, который будет исполнен при выборе элемента меню.

  • WhenNodes - разделенный запятыми список узлов, к которым применяется меню дополнений (add-in).

  • WhenCode - код, который будет исполнен при определении того, что меню должно отображаться (вызывается только, если посылается тест WhenNodes).

  • Template - дополнительная информация, которая может быть использована элементом меню.

  • DisplayOrd - относительный порядок элементов меню, в котором они должны отображаться в контекстном меню.

Если первым словом кода ScriptCode является 'THIS.', тогда DataExplorer подразумевает, что это метод класса управления данными и будет запущен только в том случае, если будет найдено, что имя указанного метода является членом этого объекта.

Если DataExplorer найдет метод с именем <MethodName>Okay(), тогда DataExplorer сначала вызывает этот метод для определения, должно ли опция меню быть видимой или нет (и возвратит TRUE, если элемент меню должен быть включен в контекстное меню и отображен).

Если первым словом ScriptCode не является ‘THIS.’ тогда код исполняется обычным образом.

P

Picture. Содержит картинку, используемую для представления определенного узла.

ConnInfo - относительное местонахождение картинки, например "bitmaps\column.bmp."

T

Template (зарезервировано для использования в будущем).

Q

Query Add-In. Представляет собой дополнение запросов для окна Run Query, которое появляется в виде кнопки вверху окна или элемента контекстного меню. Используются перечисленные ниже поля:

  • ConnName - имя опции меню в виде, в каком оно появится в контекстном меню и полоске дополнений (add-in).

  • ConnInfo - Описательное имя add-in в том виде, в каком оно появится в tooltip.

  • ScriptCode - код для исполнения, когда элемент будет выбран из меню.

  • DisplayOrd - относительный порядок, в котором add-in будут отображаться в меню.

Z

Data Add-In. Представляет собой дополнение для данных в окне Run Query, которое появляется в виде кнопки вверху окна или элемента контекстного меню. Используются теже поля, что и для Query Add-In.

E

Expanded Info (зарезервировано для использования в будущем). Хранит информацию, которая описывает узлы, распахнутые во время закрытия Data Explorer с тем чтобы использовать ее и распахивать указанные здесь узлы при новом запуске Data Explorer. Эта информация хранится в колонке OptionData.

Y

DragDrop Action for Code Window.

  • ConnName - имя действия для операции DragDrop в том виде, в каком оно появится в DragDrop Manager.

  • ScriptCode - код для запуска действия для операции DragDrop.

  • WhenNodes - разделенный запятыми список узлов, к которым применяются действия, связанные с операциями DragDrop.

  • Template - дополнительная информация, которая может быть использования в действиях, связанных с операциями DragDrop.

  • DisplayOrd - относительный порядок исполнения действий, связанных с операциями DragDrop.

V

DragDrop Action for Design Surface. Смотри предыдущую строку этой таблицы для деталей.

Настройка соединений типа ADO

Data Explorer содержит поддержку для общего обслуживания соединений типа ADO. Однако, вы можете пожелать установить настройки для конкретного типа соединения. В действительности, Data Explorer содержит пример такого использования для Oracle. Ниже перечислены шаги, которые вам необходимо сделать, что ввести такой тип настройки:

  • Создайте новый класс на основе ядра класса ADO Data Management. Ниже приведен пример для Oracle в Datamgmt_Oracle.prg:

      CopyCode imageСкопировать код
    DEFINE CLASS OracleDatabaseMgmt AS ADODatabaseMgmt OF DataMgmt_ADO.prg

    В этом классе, вы можете определить поведения, такие как заполнение узлов и функциональность элементов контекстного меню.

    Вы можете пересобрать приложение DataExplorer.app с вашим новым классом или просто оставить его в виде внешнего.

  • Вам необходимо обращаться к этому классу в вашей таблице DataExplorer.dbf, с тем, чтобы именно он был использован. Для этого:

    • Откройте таблицу DataExplorer.dbf из вашей папки HOME(7) и найдите запись для ADO Connection (Deftype="S").

    • Откройте поле ScriptCode

    • Добавьте еще одно предложение CASE к уже существующеку коду (представленному ниже) для вашего конкретного провайдера внутри информации пользовательского класса.

        CopyCode imageСкопировать код
      LPARAMETERS oParam, oConn
      IF TYPE("oConn") == 'O' AND !ISNULL(oConn) 
            DO CASE
            CASE ATC("ORACLE", oConn.DBMSName) > 0
      
            oParam.DataMgmtClass = "OracleDatabaseMgmt"
      
            oParam.DataMgmtClassLibrary = "DataMgmt_Oracle.prg"
                  oParam.ProviderName = "ORACLE"
      
            CASE ATC("SQL Server", oConn.DBMSName) > 0
                  oParam.ProviderName = "SQLSERVER"
      
            CASE ATC("FOXPRO", oConn.DBMSName) > 0
                  oParam.ProviderName = "FOXPRO"
      
            ENDCASE
      ENDIF
  • Для ввода пользовательского контекстного меню и функциональности drag-and-drop, используйте соответствующие менеджеры из диалогового окна Options. Для уточнения, как это сделать, посмотрите на существующие элементы в различных менеджерах, используемых в этом окне.

Смотрите также

Справочное руководство

Task Pane Manager