FoxPro8

         

Использование мастера наращивания для переноса данных в базу данных SQL Server


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



Определение базы данных назначения и ее параметров


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

Если вы решили создать новую удаленную базу данных, ее имя может состоять не более чем из 30 символов, включая буквы, цифры и символы "#", "$" и "_". Пробелы не разрешаются.

Предупреждение

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

Рис. 23.5. Выбор базы данных назначения

На шестом и седьмом этапах определяются устройство и размер для базы данных и журнала транзакций. Размер новой базы данных должен быть не менее 2 Мбайт: это минимальный размер, допускаемый в SQL Server. SQL Server создает для вашей базы данных журнал транзакций, который можно использовать для восстановления базы данных в случае серьезных ошибок в системе. В идеальном варианте базу данных и соответствующий ей журнал следует размещать на устройствах, находящихся на разных физических дисках. Эти устройства должны быть созданы до запуска мастера наращивания, поскольку он создает все новые устройства на одном и том же физическом диске, на котором расположено главное устройство базы данных.

По умолчанию мастер наращивания экспортирует структуру таблицы и ее содержимое (рис. 23.6). Наряду с именами полей и типами данных вы также можете экспортировать индексы, значения по умолчанию, отношения (ограничения целостности на уровне ссылок) и правила.

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


Замечание

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



Рис. 23.6. Определение параметров базы данных

Если у вас только один физический диск, вы должны разместить базу данных и ее журнал на разных устройствах, чтобы можно было пользоваться командой сервера sql dump transaction.

На последнем этапе вы можете выбрать следующие варианты завершения наращивания:

провести наращивание, не генерируя код SQL;

сгенерировать только код SQL для наращивания;

провести наращивание и сгенерировать код SQL.



Рис. 23.7. Проект с информацией о переносе данных



Рис. 23.8. Часть отчета о выполнении наращивания базы данных

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

Мастер наращивания создает проект Report (Отчет) (рис. 23.7), который содержит таблицы, использующиеся для переноса данных из таблиц Visual FoxPro, а также отчеты о переносе данных (рис. 23.8).


Отображение объектов мастером наращивания


В табл. 23.4 показано, как отображаются объекты из Visual FoxPro в SQL Server:

Таблица 23.4. Отображение объектов мастером наращивания

Объект Visual FoxPro Объект SQL Server
База данных База данных
Таблица Таблица
Индексы Индексы
Поле Поле
Значение по умолчанию Значение по умолчанию
Правило проверки достоверности таблицы Хранимые процедуры SQL Server, вызываемые ИЗ Триггеров UPDATE И INSERT

Правило проверки достоверности поля Хранимые процедуры SQL Server, вызываемые ИЗ Триггеров UPDATE И INSERT

Постоянные отношения (там, где они используются в качестве ограничений ссылочной целостности) Триггеры Update, Insert и Delete



Отображение правил и ссылочной целостности мастером наращивания


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

Таблица 23.5. Триггеры, создаваемые мастером наращивания

Триггер Эмулируемые функциональные возможности Visual FoxPro
UPDATE Правила проверки достоверности (на уровне полей и на уровне записей). Ссылочная целостность
INSERT Правила проверки достоверности (на уровне полей и на уровне записей). Ссылочная целостность (только триггеры дочерних таблиц)
DELETE (только родительские таблицы)

Ссылочная целостность



Отображение типов индексов мастером наращивания


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

Таблица 23.3. Сопоставление типов индекса Visual FoxPro типам индекса SQL Server

Тип индекса Visual FoxPro Тип индекса SQL Server
Первичный Кластеризованный уникальный
Кандидат Уникальный
Уникальный, обычный Не уникальный

Мастер наращивания использует имена индексов Visual FoxPro в качестве имен индексов в SQL Server. Если имя индекса оказывается зарезервированным ключевым словом, мастер наращивания изменяет это имя, присоединяя к нему символ "_".

Замечание

SQL Server не поддерживает убывающие и возрастающие индексы и не разрешает использовать выражения в индексах сервера. Мастер наращивания в ходе наращивания индекса удаляет выражения Visual FoxPro из выражений индекса; на сервер передаются только имена полей.



Отображение выражений из Visual FoxPro в SQL Server мастером наращивания


Несмотря на то что Visual FoxPro и Transact-SQL имеют несколько общих функций, многие функции Visual FoxPro не поддерживаются в SQL Server. Выражения Visual FoxPro, содержащиеся в правилах проверки достоверности на уровне полей и на уровне записей, а также в значениях по умолчанию, мастер наращивания пытается преобразовать в выражения Transact-SQL, используя соответствия, представленные в табл. 23.2.

Таблица 23.2. Отображение выражений из Visual FoxPro в SQL Server

Выражение Visual FoxPro Выражение SQL Server
Истина (.T.) 1
Ложь (.F.) 0
# <>
.AND. AND
.NOT. NOT
.NULL. NULL
.OR. OR
=< < —
— > >=
ASCO ASCII 0
AT() CHARINDEXO
CDOW() DATENAME(dw, ...)
CHR() CHAR()
CMONTH() DATENAME(mm, ...)
CTOD() CONVERT(datetime, ...)
CTOT() CONVERT(datetime, ...)
DATE() GETDATE()
DATETIMEO GETDATE()
DAY() DATEPART(dd, ...)
DOW() DATEPART(dw, ...)
DTOC() CONVERT(varchar, ...)
DTOR() RADIANS( )
DTOT() CONVERT(datetime, ...)
HOUR() DATEPART(hh, ...)
LIKEO PATINDEX()
MINUTE() DATEPART(mi, ...)
MONTH() DATEPART(mm, ...)
MTON() CONVERT(money, ...)
NTOM() CONVERT(float, ...)
RTOD() DEGREES()
SUBSTR() SUBSTRING!)
TTOC() CONVERT(char, ...)
TTOD() CONVERT(datetime, ...)
YEAR() DATEPART(yy, ...)

Следующие функции имеют одинаковый вид и в Visual FoxPro, и в SQL Server.

CEILING() LOG( LOWER()
LTRIM( RIGHT() RTRIM()
SOUNDEX() SPACE() STR( )
STUFF() UPPER()  



Перенос данных из Visual FoxPro на платформу клиент — сервер


В последнее время перед разработчиками все чаще возникает необходимость переноса приложений, созданных для базы данных Visual FoxPro, на платформу клиент/сервер. Наиболее простым способом переноса данных является использование мастера наращивания.

Мастер наращивания создает базу данных SQL Server, которая дублирует, насколько это возможно, функциональный диапазон базы данных Visual FoxPro. С помощью мастера наращивания вы можете:

преобразовывать локальные базовые таблицы и локальные представления в удаленные базовые таблицы и удаленные представления;

перемещать локальные данные на удаленный сервер;

П переносить локальные приложения в среду клиент — сервер.

Наращивание может занимать много времени; это зависит от количества данных, объема сетевого трафика и числа параллельных запросов, обрабатываемых сервером. Для больших таблиц наращивание может выполняться в течение нескольких часов.

В данной главе рассмотрим использование мастера наращивания для переноса данных из Visual FoxPro в базу SQL Server.



Соответствие типов данных


Типы данных и полей Visual FoxPro отображаются в типы данных SQL Server следующим образом (табл. 23.1):

Таблица 23.1. Соответствие типов данных

Сокращенное обозначение

Тип данных Visual FoxPro

Тип данных SQL Server

С Character char
Y Currency money
D Date datetime
Т DateTime datetime
В Double float
F Float float
G General image
I Integer int
L Logical bit
М Memo text
М (binary) Memo binary image
С (binary) Character binary binary
N Numeric float



Установка драйвера ODBC


Перед запуском мастера наращивания необходимо установить драйвер ODBC для выбранной базы данных и определить источник данных для связи с базой данных. Также желательно определить именованное удаленное соединение.

Замечание

Установку драйверов ODBC, определение источника данных и создание именованного удаленного соединения мы рассмотрели в главе 22.



Выбор базы данных и источника данных


Для запуска мастера наращивания необходимо в меню Tools (Сервис) выбрать команду Wizards (Мастера), а затем значение Upsizing (Наращивание).

На первом этапе работы с мастером наращивания вам необходимо выбрать и открыть локальную базу данных, которая будет переноситься в базу данных SQL Server (рис. 23.1).

Рис. 23.1. Выбор локальной базы данных с исходными таблицами

На втором этапе необходимо выбрать источник данных (рис. 23.2). Если вы используете именованное соединение для доступа к источнику данных, мастер наращивания будет связывать это именованное соединение со всеми удаленными представлениями, создаваемыми в процессе наращивания. Если при регистрации в источнике данных вы вместо имени соединения используете

имя источника данных, а в дальнейшем задаете создание удаленных представлений, мастер наращивания создает именованное соединение с именем Upsize (или Upsize2, Upsize3 и т. д., если определение соединения с предлагаемым именем уже существует).

Рис. 23.2. Определение источника данных

При нажатии кнопки Next (Далее) мастер откроет диааоговое окно ODBC Login (ODBC Логин). Если вы используете именованное соединение с сохраненным паролем, мастер зарегистрирует вас на выбранном сервере SQL Server, не требуя ввести регистрационную информацию ODBC.



Выбор переносимых таблиц


На третьем этапе вы выбираете наращиваемые таблицы (рис. 23.3). Чтобы обеспечить правильность экспортируемых данных, мастер пытается открыть все таблицы базы данных, выбранной для наращивания, в режиме эксклюзивного пользования. Если какие-либо открытые таблицы находятся в совместном пользовании, мастер закрывает их и вновь открывает в эксклюзивном режиме, что может вызвать потерю некоторых временных

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

Рис. 23.3. Выбор таблиц для переноса в базу SQL Server

Вы не можете изменить принимаемое по умолчанию соответствие для поля ключа, если новый тип данных не позволит индексировать это поле. Вы можете изменить соответствие для поля, входящего в состав ключа индекса, если выберете тип данных, допускающий индексирование; однако после этого вы, возможно, захотите для единообразия изменить типы данных для остальных полей ключа. Visual FoxPro выдает предупреждающее сообщение при попытке изменить соответствие для поля, которое не является полем ключа, но используется в индексе Visual FoxPro. Если вы сделали ошибку, нажмите кнопку Reset To Defaults (Сброс); произойдет сброс типов данных.

При переносе мастером наращивания таблиц Visual FoxPro, имена полей и типы данных автоматически преобразуются в поля SQL Server.

Мастер показывает вам устанавливаемое по умолчанию преобразование типов данных (рис. 23.4). При необходимости вы можете изменить тип данных на сервере базы данных с помощью раскрывающегося списка Server Type (Тип сервера).

Рис. 23.4. Таблица соответствия между типами данных



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


При нажатии кнопки Advanced (Дополнительно) на третьем шаге мастера появляется одноименное диалоговое окно, показанное на рис. 24.8. Оно позволяет использовать при создании Web-страницы внешние таблицы стилей (ess), созданные с помощью других программ, задать фон страницы, разместить на Web-странице HTML-элементы, такие как заголовок, текст, бегущая строка, линия и т. д.

Рис. 24.8. Диалоговое окно Advanced

В верхнем левом углу диалогового окна Advanced (Дополнительно) расположено поле Cascading style sheet (Внешняя таблица стилей), позволяющее указать расположение внешней таблицы стилей, используемой для оформления Web-страницы.

Область Body (Тело) содержит два списка. Список Color (Цвет) позволяет задать фон Web-страницы. Этот параметр имеет более высокий приоритет по отношению к цвету, установленному с помощью макета данных или визуального стиля. Поле Image (Изображение) позволяет указать расположение графического файла, размещаемого на странице.

Установленный флажок Copy graphics to HTML output location (Копировать графику) указывает, что любой графический файл, используемый для размещения на странице, копируется в папку, в которой сохраняется Web-страница.

В области Additional HTML items (Добавленные HTML-элементы) содержится список элементов, используемых в оформлении Web-страницы. Находящиеся здесь же кнопки имеют назначение, описанное в табл. 24.2.

Таблица 24.2. Назначение кнопок области Additional HTML Items

Кнопка Назначение
Add (Добавить)

Открывает диалоговое окно HTML Item (HTML-элемент) (рис. 24.9), позволяющее добавить элемент оформления на Web-страницу
Edit (Правка)

Открывает диалоговое окно HTML Item (HTML-элемент) для редактирования выбранного из списка текущей области элемента оформления Web-страницы
Remove (Удалить)

Удаляет выделенный HTML-элемент из списка

В нижней части окна расположены следующие три кнопки (табл. 24.3).

Таблица 24.3. Кнопки окна Advanced

Кнопка Назначение
Save Settings (Сохранить параметры)

Открывает диалоговое окно Save Settings (Сохранить параметры), в котором можно указать название созданного визуального стиля
Load Settings (Загрузить параметры)

Открывает диалоговое окно Load Settings (Загрузить параметры), в котором содержится список сохраненных визуальных стилей
Done (Применить)

Сохраняет и применяет к создаваемой Web-странице настройки окна
<
Используя область Additional HTML items (Добавленные HTML-элементы), можно сформировать список элементов оформления Web-страницы. Для добавления в список нового элемента предназначено диалоговое окно HTML Item (HTML-элемент) (рис. 24.9), открываемое нажатием кнопки Add (Добавить).

В его верхней части находится список Туре (Тип), содержащий типы HTML-элементов, которые могут быть размешены на Web-странице с помощью мастера, а список Location (Расположение) — его расположение на странице. Диалоговое окно HTML Item (HTML-элемент) позволяет добавить на Web-страницу следующие элементы:

Text — обычный текст, заголовки различных уровней;

Hyperlink — гиперссылка;

Image — графическое изображение;

Marquee — бегущая строка текста;

Horizontal Rule — горизонтальная линия;

Line Break — линия разрыва;

Tag — тэг.



Рис. 24.9. Диалоговое окно HTML Item

Количество доступных в диалоговом окне HTML Item (HTML-элемент) объектов интерфейса зависит от типа добавляемого элемента. Так, например, для текста можно указать сам текст, используемый при его отображении шрифт, размер, цвет, способ выравнивания информации. Для гиперссылки кроме перечисленных выше параметров можно также указать адрес, на который с помощью нее осуществляется переход и т. д.


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


Диалоговое окно Layout Options (Параметры расположения) (рис. 24.5) предназначено для настройки параметров данных, отображаемых на Web-странице из таблицы или представления данных. Оно открывается при нажатии на третьем шаге работы мастера кнопки Options (Параметры) и содержит несколько вкладок. Находящиеся в окне Layout Options (Параметры расположения) вкладки, а также отображаемые на них параметры зависят от значения, выбранного из списка Data layouts (Расположение данных), т. е. от макета данных.

Рис. 24.5. Диалоговое окно Layout Options

Вкладки диалогового окна Layout Options (Параметры расположения) позволяют настроить следующие параметры Web-страницы:

Border (Граница) — для данных, отображаемых в виде таблицы, цвет обрамления и фона, толщину границ. Поле Background image (Фоновое изображение) позволяет использовать в качестве фона области, в которой располагаются данные, графическое изображение;

Font (Шрифт) — задает семейство шрифтов (наименование, размер и цвет), которые будут использоваться при открытии Web-страницы, если у пользователя отсутствует шрифт, используемый при создании этой страницы;

Other (Другие) — используемый для оформления страницы HTML-класс. Кроме того, вкладка содержит параметры, специфичные для разных макетов данных. Так, например, с помощью объектов интерфейса этой вкладки строки или группы строк табличных данных можно выделить разными цветами. Или, например, задать цвет строки, на которой установлен курсор;

Relations (Отношения) (рис. 24.6) — данная вкладка присутствует в окне Options (Параметры) только для макета типа Tabular Hierarchical (Табличная иерархия). Она позволяет создавать иерархические таблицы. Например, вы можете отобразить на странице список покупателей и выполненные ими заказы. Web-страница, созданная с использованием настроек вкладки Relations (Отношения), показана на рис. 24.7.

Рис. 24.6. Вкладка Relations диалогового окна Layout Options

Рис. 24.7. Web-страница, созданная с использованием настроек вкладки Relations



Мастер Web Publishing


Чтобы создать Web-страницу с помощью мастера, выполните следующие действия:

Откройте базу данных проекта, содержащую таблицу, локальное или удаленное представление, информацию из которых хотите разместить на Web-странице.

В меню Tools (Сервис) выберите команду Wizards (Мастера), а затем опцию — Web Publishing (Web-публикация).

Запускается мастер и появляется его первое диалоговое окно, в котором необходимо указать используемую таблицу или представление, и выбрать поля этой таблицы, размещаемые на Web-странице. В области Databases and tables (Базы данных и таблицы) окна мастера расположены два списка. Верхний список содержит название открытой базы данных, нижний — список ее таблиц и представлений. Выберите из нижнего списка требуемую таблицу. При этом в списке Available fields (Доступные поля) будут отображены все поля текущей таблицы (рис. 24.1).

Рис. 24.1. Первое окно мастера

Рис. 24.2. Указание сортировки данных

Перенесите из списка Available fields (Доступные поля) в Selected fields (Выбранные поля) поля, которые хотите расположить на Web-странице. Для перехода к следующему тагу в работе мастера нажмите кнопку Next (далее).

На втором шаге задается критерий сортировки данных (рис. 24.2). Поля, по которым будет осуществляться упорядочение, необходимо разместить в списке Selected fields (Выбранные поля). Для переноса полей из списка Available fields or index tag (Имеющиеся поля и индексы) в список Selected fields можно использовать кнопку Add (Добавить) или мышь. Опции Ascending (По возрастанию) и Descending (По убыванию) определяют, по возрастанию или по убыванию будут упорядочиваться данные в указанном поле.

Задав сортировку данных, нажмите кнопку Next (Далее).

На третьем шаге задается макет Web-страницы и стиль отображения объектов (рис. 24.3). Диалоговое окно мастера содержит два списка. С помощью списка Data layouts (Расположение данных), содержащего пять значений, определяется расположение данных на странице, т. е. макет данных. Получаемый вид страницы в зависимости от выбранного макета данных можно просмотреть в области просмотра, расположенной в левом верхнем углу окна мастера. Список Visual styles (Визуальные стили) содержит флажки, позволяющие настроить стиль оформления Web-страницы установкой требуемых флажков.




Рис. 24.3. Задание стиля оформления

Диалоговое окно мастера содержит кнопки следующего назначения:

Options (Параметры) — открывает диалоговое окно для настройки параметров отображения данных на Web-странице;

Advanced (Дополнительно) — открывает диалоговое окно, позволяющее настроить параметры всей Web-страницы, разместить на ней,

помимо данных из таблицы, HTML-элементы (заголовки, текст, линии, бегущую строку и т. д.);

Preview (Просмотр) — загружает оформленную в соответствии с заданными стилями Web-страницу в обозреватель Internet Explorer без выхода из мастера. Вы можете просмотреть созданную страницу, в случае необходимости с помощью мастера изменить параметры настройки и снова просмотреть результат своей работы.

Используя расположенные в этом окне мастера объекты интерфейса, настройте параметры создаваемой Web-страницы и для перехода к следующему шагу нажмите кнопку Next (Далее).

Замечание

Настройка параметров, осуществляемая на данном шаге мастера, будет рассмотрена чуть позже.

На заключительном шаге создания Web-страницы с помощью мастера (рис. 24.4) укажите предполагаемые действия с созданной страницей, используя опции, описанные в табл. 24.1.

Таблица 24.1. Опции окна Web Publishing Wizard — Step 4

Опция Действие
Save web page for later use (Сохранить Web-страницу) Созданная Web-страница сохраняется на диске в файле с расширением НТМ
Save web page and modify it in the text editor (Сохранить Web-страницу и открыть для модификации в текстовом редакторе) Созданная Web-страница сохраняется на диске в файле с расширением НТМ и открывается в текстовом редакторе для модификации
Save web page and open it in a browser (Сохранить Web-страницу и открыть для просмотра в Web-браузере) Созданная Web-страница сохраняется на диске в файле с расширением НТМ и открывается для просмотра в Web-браузере
Create script for generating web page (Создать скрипт генерации Web-страницы) Созданная Web-страница сохраняется в виде скрипта, т. е. генерируется программный файл с расширением PRG, при запуске которого на выполнение динамически создается Web-страница
Поле Type a title for your web page (Введите заголовок Web-страницы) позволяет задать заголовок создаваемой Web-страницы.

Диалоговое окно содержит флажок Save style (Сохранить стиль). При его установке в расположенное справа поле можно ввести имя файла, в котором будет сохранен стиль, полученный при создании Web-страницы.



Рис. 24.4. Заключительное окно мастера

После того как все параметры заданы, нажмите кнопку Finish (Готово). Откроется диалоговое окно Save As (Сохранить как), в нем укажите имя файла и папку, в которой созданная Web-страница должна быть сохранена. На этом создание Web-страницы завершено.


Настройка параметров


После того как данные подготовлены, можно приступать к формированию Web-страницы:

Откройте базу данных проекта, содержащую созданное локальное представление ДанНЫХ GoodsCount.

В меню Tools (Сервис) выберите команду Wizards (Мастера), а затем опцию — Web Publishing (Web-публикация).

На первом шаге мастера из нижнего списка области Databases and tables (Базы данных и таблицы) выберите представление GoodsCount. Затем перенесите все поля представления из списка Available fields (Доступные поля) в список Selected fields (Выбранные поля). Чтобы перейти к следующему шагу, нажмите кнопку Next (Далее).

Открывается окно мастера, позволяющее задать макет Web-страницы и стиль отображения объектов (см. рис. 24.3). Выберите, например, из списка Data layouts (Расположение данных) значение Tabular List (Лист в виде таблицы).

Чтобы добавить на Web-страницу бегущую строку и заголовок, нажмите кнопку Advanced (Дополнительно). Открывается одноименное диалоговое окно (см. рис. 24.8).

Нажмите кнопку Add (Добавить), расположенную в области Additional HTML Items (Добавленные HTML-элементы).

Из списка Туре (Тип) открывшегося диалогового окна HTML Item (HTML-элемент) выберите значение Marquee (Бегущая строка).

В поле Text (Текст) введите текст бегущей строки. Например, Мы приветствуем Вас на своем сайте!

Чтобы задать наименование шрифта, нажмите кнопку с тремя точками, расположенную справа от поля Font name (Наименование шрифта). Открывается диалоговое окно Pick Font (Выберите шрифт). Используя содержащийся в нем список, укажите используемый в бегущей строке шрифт л нажмите кнопку ОК.

С помощью списка Size (Размер) задайте размер шрифта.

Используя списки Backcolor (Цвет фона) и Forecolor (Цвет надписи), укажите цвет фона и текста бегущей строки.

Нажмите кнопку ОК. Диалоговое окно HTML Item (HTML-элемент) закрывается, а в список Additional HTML Items (Добавленные HTML-элементы) добавляется одно значение. Бегущая строка размещена на Web-странице. Теперь добавим на страницу заголовок.


Снова нажмите кнопку Add (Добавить), расположенную в области Additional HTML Items (Добавленные HTML-элементы).

В списке Туре (Тип) открывшегося диалогового окна HTML Item (HTML-элемент) оставьте установленное по умолчание значение Text (Текст).

В поле Text (Текст) введите текст заголовка. Например, Продажи товара в апреле 2003 года.

Используя списки Location (Расположение) и Alignment (Выравнивание), задайте расположение и тип выравнивания заголовка.

Из списка Heading (Заголовок) выберите размер заголовка.

Используя список Forecolor (Цвет надписи), укажите цвет заголовка.

Нажмите кнопку ОК. Диалоговое окно HTML Item (HTML-элемент) закрывается, а в список Additional HTML Items (Добавленные HTML-элементы) добавляется второе значение. Заголовок размещен на Web-странице.

Закройте диалоговое окно Advanced (Дополнительно), нажав кнопку Done (Применить).

Для перехода к заключительному шагу мастера нажмите кнопку Next (Далее).

В заключительном окне мастера установите требуемую опцию из предлагаемых и нажмите кнопку Finish (Готово).

В открывшемся диалоговом окне Save As (Сохранить как) укажите имя файла и папку, в которой хотите сохранить созданную Web-страницу. Создание Web-страницы завершено.

На рис. 24.11 представлена Web-страница, созданная с помощью мастера.



Рис. 24.11. Web-страница, созданная с помощью мастера


Настройка параметров Web-страницы с помощью мастера


Мы рассмотрели создание Web-страницы с помощью мастера Web Publishing (Web-публикация). Теперь более подробно остановимся на параметрах, настраиваемых на третьем шаге работы мастера (см. рис. 24.3).



Подготовка данных


Прежде чем приступить к созданию Web-страницы, необходимо подготовить размещаемые на ней данные. Это могут быть таблицы, содержащие требуемые данные, локальные или удаленные представления. Мы будем использовать локальное представление GoodsCount, в котором содержатся сведения о продажах различных товаров фирмы за истекший месяц. Требуемая нам информация содержится в таблицах ordsaled и Goods. Создадим представлениеданных, выполнив последовательно следующие действия:

Откройте окно конструктора представлений. Для этого на вкладке Data (Дакмыс) окна конструктора проекта перейдите в раздел Local Views (Локальные представления данных) выбранной базы данных и нажмите кнопку New (Новый).

Добавьте и него таблицы ordsaled и Goods, используемые для создания представления.

Установите связи между размешенными в окне конструктора таблицами по коду товара.

В список Selected fields (Выбранные поля) перенесите код и наименование товара.

Добавьте в список Selected fields (Выбранные поля) вычисляемое поле, содержащее количество продаж:

PUM (Orrlsd led . nQuant)

На вкладке Group By (Группировка) конструктора задайте группировку данных по коду и наименованию товара.

Рис. 24.10. Просмотр итоговых продаж товаров

Упорядочьте данные по наименованию товара, используя для этого вкладку Order By (Сортировка).

Для сохранения представления данных в меню File (Файл) выберите команду Save As (Сохранить как). В поле View Name (Имя представления) открывшегося диалогового окна Save (Сохранить) укажите имя создаваемого представления данных GoodsCount и нажмите кнопку ОК.

Просмотрите созданное представление данных (рис. 24.10), чтобы убедиться что оно содержит требуемые данные. Для этого нажмите кнопку Run (Выполнить) на стандартной панели инструментов.

Закройте окно конструктора представлений.



Публикация данных на Web-сервере


Все больше в нашу жизнь входит Интернет. В связи с этим во многие программные продукты добавляются средства создания Web-страниц. Не является исключением и FoxPro. В Visual FoxPro имеется мастер Web Publishing (Web-публикация), позволяющий формировать Web-страницы на основе баз данных. При этом пользователь может выбирать стили оформления страницы, предлагаемые мастером, а также использовать внешние таблицы стилей, созданные в других программных продуктах. Данные, размещаемые на странице, могут находиться в таблицах, локальных или удаленных представлениях базы данных. Рассмотрим работу мастера, а также предлагаемые им элементы оформления Web-страницы.



Редактирование созданной Web-страницы


Файл с расширением НТМ, полученный в результате работы мастера Web Publishing (Web-публикация), может быть отредактирован средствами редактора программы Visual FoxPro. Для открытия данного файла (рис. 24.12) в меню File (файл) выберите команду Open (Открыть), в списке Тип файлов укажите расширение htm, выберите требуемый файл на диске и нажмите кнопку ОК. После того как редактирование завершено, сохраните изменения, нажав на панели инструментов кнопку Save (Сохранить). Для просмотра отредактированной Web-страницы в браузере запустите обозреватель Internet Explorer и в строке адреса укажите местоположение и название файла.

Рис. 24.12. Просмотр созданной Web-страницы в редакторе



Создание Web-страницы


Мы рассмотрели работу мастера Web Publishing (Web-публикация). Теперь создадим с его помощью Web-страницу, которая будет содержать бегущую строку, заголовок и данные из представления GoodsCount.



Controls


Вкладка Controls (Элементы управления формы) (рис. 25.2) позволяет выбирать библиотеки классов и ActiveX-компоненты. Библиотека классов содержит один или более определенных пользователем классов, которые определяются исходя из основных классов FoxPro. ActiveX-компоненты обеспечивают связь с другими приложениями, поддерживающими OLE. Выбранные на данной вкладке библиотеки классов и ActiveX-компоненты появляются на панели инструментов Form Controls (Элементы управления формы) при нажатии на кнопку View Classes (Просмотр классов) этой панели.

Рис. 25.2. Вкладка Controls диалогового окна Options



Data


Вкладка Data (Данные) (рис. 25.3) предназначена для задания параметров, связанных с доступом к данным, методами сортировки и поиска, размером блока для Memo-полей, частотой обновления информации и многим другим.

Рис. 25.3. Вкладка Data диалогового окна Options

В верхней части вкладки содержатся флажки, описанные в табл. 25.6.

Таблица 25.6. Назначение флажков вкладки Data

Флажок

Назначение

Open exclusive (Открывать в монопольном режиме) Определяет режим открытия таблицы. Когда он установлен, Visual FoxPro открывает таблицу в монопольном режиме, то есть никто, кроме вас, не может ее открыть
Show field names (Показывать наименования полей) Соответствует команде set headings и определяет, будет ли имя поля появляться в виде заголовка столбца данных при выполнении таких команд, как average, DISPLAY, LIST И SUM

Prompt for code page (Напоминание о кодовой странице)

Определяет, запрашивать ли пользователей относительно кодовой страницы. Кодовые страницы, если они включены, выполняют преобразования кодов символов
Ignore deleted records (Игнорировать удаленные записи)

Определяет, как Visual FoxPro будет обрабатывать записи, помеченные для удаления. Этот флажок соответствует команде set deleted
Rushmore optimization (Оптимизация)

Включает методику оптимизации поиска, называемую Rushmore. Этот флажок соответствует команде set OPTIMIZE

Unique records in indexes (Использовать только уникальные индексы) Влияет на создание индексных файлов. Если он сброшен, то индексы могут содержать повторяющиеся указатели. Флажок соответствует команде set unique

Раскрывающийся список Collating sequence (Схема упорядочения) позволяет изменить порядок символов при сортировке, чтобы приспособиться под различные наборы символов в разных странах. По умолчанию используются ASCII-коды. Эта опция соответствует команде set collate.

На данной вкладке расположены счетчики, приведенные в табл. 25.7.

Таблица25.7. Назначение счетчиков вкладки Data

Счетчик Назначение
Record counter interval (Частота отображения количества обработанных записей)

Определяет частоту сообщений выдачи числа обработанных записей при выполнении команд reindex, pack. Соответствует команде set odometer
Memo block size (bytes) (Длина Memo-поля)

Определяет длину Memo-поля в байтах и соответствует команде set blocksize
Browse refresh interval (sec) (Частота обновления данных в окне Browse) Определяет, как часто данные, отображаемые в окне Browse (Обзор), будут синхронизироваться с фактическими данными в таблице. Соответствует команде set REFRESH

Table refresh interval (sec) (Частота обновления данных на экране) Определяет, как часто данные, отображаемые в любом окне, будут синхронизироваться с фактическими данными в таблице
<
Для управления процессом сравнения строк используется область String comparisons (Сравнение строк), содержащая флажки, описанные в табл. 25.8.

Таблица 25.8. Назначение флажков области String comparisons

Флажок Назначение
SET NEAR on Определяет действия при неудавшемся поиске. Если флажок не установлен, FoxPro оставляет указатель записи в конце файла, в противном случае указатель устанавливается на следующую по алфавиту запись после той, в которой ожидалось найти нужное значение
SET EXACT on Управляет поиском символьных строк. Если он установлен, то требуется точное совпадение образца с полем записи, то есть совпадение длин строк и совпадение всех их символов. При сброшенном флажке строки сравниваются до длины той из них, которая в условии сравнения стоит справа
SET ANSI on При сравнении двух строк разной длины дополняет более короткую пробелами, чтобы длины строк стали одинаковыми. Когда флажок сброшен, строки сравниваются до длины более короткой из них
При работе в многопользовательском режиме вам необходимо в области Locking and buffering (Блокировка и буферизация) установить режимы блокировки файлов и записей с помощью флажков, приведенных в табл. 25.9.

Таблица 25.9. Назначение флажков области Locking and buffering

Флажок Назначение
Automatic file locking (Автоматическое блокирование файла)

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

Multiple record locks (Блокировка нескольких записей)

Этот флажок устанавливается, когда требуется заблокировать сразу несколько записей и изменять их одновременно. Соответствует команде set multilocks
Для установки режима буферизации используется раскрывающийся список Buffering (Буферизация), а для определения количества попыток блокировки — Reprocessing (Повторное выполнение).


Debug


Вкладка Debug (Отладка) (рис. 25.12) диалогового окна Options (Параметры) Visual FoxPro позволяет настроить параметры работы отладчика, такие как:

шрифт и цвета;

отработка событий таймера;

нумерация строк кода на экране;

сохранение в файле содержимого окна Debug Output (Выходные данные отладки).

Раскрывающийся список Environment (Окружение) содержит два значения:

Debug Frame (Область отладки) — при установке данного значения все окна отладчика открываются в отдельном от основного окна Visual FoxPro окне. При установке этой опции вы можете открыть окно отладчика с помощью команды Debugger (Отладчик) из меню Tools (Сервис);

FoxPro Frame (Область FoxPro) — отладчик встраивается в основное окно Visual FoxPro. При установке данного значения в меню Tools (Сервис) вместо пункта меню Debugger (Отладчик) появляется пять пунктов меню, открывающих отдельные окна трассировки программы, просмотра переменных.

Рис. 25.12. Вкладка Debug диалогового окна Options

Для отображения событий таймера в окне Trace (Трассировка) установите флажок Display Timer Events (Показывать события таймера).

С помощью переключателя области Specify Window (Задать параметры окна) и расположенных ниже объектов настраиваются параметры окон отладки:

Call Stack (Стек вызова). Определяются параметры окна Call Stack (Стек вызова) (табл. 25.17);

Output (Выходные данные). Задаются параметры окна Debug Output (Выходные данные отладки) (табл. 25.18);

Trace (Трассировка). Задаются параметры окна Trace (Трассировка) (табл. 25.19).

Таблица 25.17. Назначение флажков области Call Stack

Флажок Назначение
Show call stack order (Показывать стек вызова)

При установке флажка показывается глубина вложенности программы
Show current line indicator (Показывать индикатор текущей строки) Устанавливает режим выделения текущей строки в окне Call Stack (Стек вызова)
Show call stack indicator (Показывать индикатор стека вызова)

Управляет выделением стрелкой процедуры, отображаемой в окне Trace (Трассировка)
<
Таблица 25.18. Назначение флажков области Debug Output

Флажок Назначение
Log Debug Output (Записать данные отладки) Результат отладки записывается в текстовый файл
Append (Добавлять) Информация окна Debug Output (Выходные данные отладки) добавляется к содержимому заданного текстового файла
Overwrite (Обновлять) Информация окна Debug Output ( Выходные данные отладки) обновляет содержимое заданного текстового файла
Таблица 25.19. Назначение флажков области Trace

Опция Назначение
Show line numbers (Показывать нумерацию строк) Отображается нумерация строк
Trace between breakpoints (Трассировка между точками останова)

Устанавливается замедленный режим выполнения программы между точками останова
Pause between line execution (Пауза между выполнением строк программы)

Задает задержку в секундах между выполнением каждой строки программы
С помощью кнопки Font (Шрифт) и раскрывающихся списков области Colors (Цвета) устанавливаются гарнитура шрифта, его цвет и фон.


Editor


Вкладка Editor (Редактор) (рис. 25.И) диатогового окна Options (Параметры) позволяет настроить параметры редактора Visual FoxPro.

Рис. 25.11. Вкладка Editor диалогового окна Options

В верхней области вкладки расположены три флажка:

Selection margin (Область выборки) — при установке флажка в левой части окна редактора появляется область, в которой можно устанавливать признак точки останова или заметки;

Drag drop between words (Перенести-и-оставить между словами) — устанавливает режим, в котором при использовании механизма "перенести-поставить" выделенную область можно вставить только между словами;

Enable hyperlinks (Доступны гиперссылки) — определяет, будет ли редактор распознавать "http:/" как гиперссылку.

Поле Comment string (Строка комментария) содержит символы, совокупность которых в программе идентифицирует строку с комментарием. По умолчанию используется набор символов *!*.

Счетчик List display count (Количество элементов в списке) определяет максимальное количество элементов в раскрывающемся списке.

Счетчик Highlight duration (Интервал подсветки) определяет количество миллисекунд, в течение которых при закрытии круглой или квадратной скобки содержащийся в скобках текст будет выделен. Вы можете выбрать значение из списка или ввести его вручную.

Раскрывающийся список Area (Область) области Syntax color settings (Цветовое выделение синтаксических конструкций) содержит перечень программных элементов Visual FoxPro (зарезервированных слов, операторов, переменных, комментариев и т. д.). Выбирая из этого списка значение программного элемента можно, используя список Font style (Стиль шрифта), задать стиль его отображения, а используя списки Foreground (Цвет шрифта) и Background (Цвет фона) — цвет шрифта и цвет фона.

Кнопка Reset All (Восстановить все) позволяет восстановить предыдущее состояние цветов и стилей программных элементов.



Field Mapping


С помощью вкладки Field Mapping (Связь типов элементов управления с типами полей таблиц) (рис. 25.13) вы можете установить тип объекта,который будет создаваться в форме при размещении в ней полей таблицы заданного типа.

Рис. 25.13. Вкладка Field Mapping диалогового окна Options

Таблица для определения соотношения между типом объекта и типом поля содержит три столбца:

Туре (Тип) — типы полей таблиц;

Class Library (Библиотека класса) — имя библиотеки, из которой выбирается тип объекта;

Class Name (Имя класса) — имя класса объекта, определяющего тип создаваемого объекта.

При нажатии на кнопку Modify (Модифицировать) открывается диалоговое окно Modify Field Mapping (Связь типов элементов управления с типами полей таблиц), в котором вы можете установить связь между типом поля таблицы базы данных и типом объекта.

В области Database options (Параметры базы данных) вкладки Field Mapping (Связь типов элементов управления с типами полей таблиц) расположены четыре флажка (табл. 25.20).

Таблица 25.20. Назначение флажков области Database options

Флажок Назначение
Drag and drop field caption (Перенести-и-оставить подпись поля) При выборе этой опции имя поля таблицы будет размещено в форме в качестве надписи к создаваемому объекту
Copy field comment (Копировать комментарии к полю)

Копирует примечание поля базы данных в свойство comment (Комментарий) создаваемого объекта
Copy field input mask (Копировать маску ввода поля)

Копирует маску ввода поля базы данных в свойство inputMask (Маска ввода) создаваемого объекта
Copy field format (Копировать формат поля)

Копирует Маску ВВОДа ПОЛЯ базы ДаННЫХ В СВОЙСТВО Format (Формат) создаваемого объекта



File Locations


FoxPro в своей работе использует много файлов, находящихся в разных каталогах. Расположение двадцати различных групп файлов определяется с помощью вкладки File Locations (Расположение файлов) (рис. 25.4).

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

Рис. 25.4. Вкладка File Location диалогового окна Options

В табл. 25.9 приведены типы файлов и варианты их настроек.

Таблица 25.9. Типы файлов окна File Locatior

Тип файла Назначение Имя по умолчанию
Beautify Определяет имя и расположение приложения, которое вызывается при выборе команды Beautify (Улучшить) из меню Tools (Сервис) Beautify, арр
Builders Определяет имя и расположение приложения-построителя объектов Builder.арр
Class Browser Определяет имя и расположение приложения, вызываемого командой Class Browser (Обзор класса) из меню Tools (Сервис) Browser.app
Code? References Определяет имя и расположение приложения, вызываемого командой Code References (Ссылки на код) из меню Tools (Сервис) FoxRef.app
Component Gallery Определяет имя и расположение приложения для просмотра Галереи компонентов Gallery.app
Converter Определяет имя и расположение приложения, преобразующего объекты типа форм и отчетов, разработанные в более ранних версиях FoxPro, в формат Visual FoxPro 8.0 Converter.app
Coverage Profiler Определяет имя файла приложения, предназначенного для статистического анализа разработанного вами приложения Coverage.app
Cross tab Generator Определяет имя и расположение программы, создающей перекрестные таблицы Vfpxtab.fxp
Default Directory Определяет по умолчанию имя каталога, в котором Visual FoxPro будет пытаться разместить таблицы и программные файлы  
Default Include File Определяет имя и расположение файла, который используется для задания констант Не задано
Expression Builder Определяет имя и расположение приложения построителя выражений Не задано
FoxCode Определяет имя и расположение таблицы, используемой при функционировании IntelliSense. Эта опция соответствует свойству FoxCode Foxcode.dbf
FoxTask Определяет имя и расположение таблицы со списком заданий. Эта опция соответствует системной переменной FoxTask Foxcode.dbf
HTML Generator Определяет имя и расположение приложения, которое используется для сохранения приложения в формате HTML. По умолчанию — имя приложения Gethtml.app
Help File Определяет имя и расположение файла справки Foxhelp.chm
IntelliSense Manager Определяет имя и расположение программы, поддерживающей Visual FoxPro IntelliSense Foxcode.app
Menu Builder Определяет имя и расположение построителя меню  
Object Browser Определяет имя и расположение Object Browser (Браузер объектов)  
Resource File Определяет имя файла ресурсов с информацией о режимах работы, установках редактора, размерах окон, палитрах и т. д.  
Samples Directory Определяет папку, в которой расположены примеры Visual FoxPro  
Search Path Определяет каталог, в котором будет производиться поиск файлов, не найденных в текущем каталоге. Здесь можно указать несколько каталогов, разделив их точками или точками с запятой  
Startup Program Определяет имя и расположение приложения, которое вызывается при запуске Visual FoxPro Vfp6strtapp
Task List Задает имя и расположение программы, управляющей списком задач. Эта опция соответствует системной переменной _TASKLIST Tasklist.app
Temporary Files Определяет каталог для создания временных файлов на диске  
Toolbox Определяет имя и расположение приложения, которое вызывается при выборе команды Toolbox (Инструментарий) из меню Tools (Сервис) Toolbox.app
Wizards Определяет имя и расположение мастеров Visual FoxPro Wizard.app

Рис. 25.5. Диалоговое окно Change File Location

Для изменения значения столбца Location (Расположение) выберите строку и выполните одно из следующих действий:

нажмите кнопку Modify (Модифицировать) данной вкладки;

дважды щелкните кнопкой мыши на данной строке.

На экране открывается диалоговое окно Change File Location (Изменить расположение файла) (рис. 25.5), в котором вы можете выбрать файл или папку.



Forms


Вкладка Forms (Формы) диалогового окна Options (Параметры) (рис. 25.6) предназначена для настройки параметров работы конструктора форм.

Рис. 25.6. Вкладка Forms диалогового окна Options

Область Grid (Сетка) используется для управления линиями сетки и выравнивания объектов (табл. 25.10).

Таблица 25.10. Назначение флажков области Grid

Флажок Назначение
Grid lines (Линии сетки) Определяет отображение линий сетки в форме
Snap to grid (Выровнять по сетке) При установке данного флажка при изменении положения объекта в форме он автоматически устанавливается в ближайшую точку пересечения линий сетки. Флажок не влияет на положение объектов, перемещенных до его установки

Эта опить содержит также два счетчика (табл. 25.11).

Таблица 25.11. Назначение счетчиков области Grid

Счетчик Назначение
Horizontal spacing (pixels) (Расстояние по горизонтали! Определяет число точек между горизонтальными ли ниями сетки
Vertical spacing (pixels) (Расстояние по вертикали)

Определяет число точек между вертикальными линиями сетки

Для отображения в строке состояния положения и размера текущего объект формы установите флажок Show position (Показывать положение).

Список Tab ordering (Перемещение при нажатии на клавишу <Таb>), ее держащий два элемента Interactive (Интерактивное) и By List (По списку определяет, каким образом будет устанавливаться последовательность перс хода между объектами формы при нажатии клавиши <Таb>:

Interactive (Интерактивно) — порядок переключения объектов можно ус танавдивать кнопкой мыши при нажатой клавише <Shift>;

By List (По списку) — последовательность переключения объектов отс бражаегся в списке, элементы которого можно менять местами.

Для определения размеров и положения объектов в Visual FoxPro могут не пользоваться две единицы измерения: пикселы и фокселы. Выбор единиц: измерения осуществляется с помощью списка Scale units (Единицы измере пия).

Список Maximum design area (Максимальная область проектирования) не пользуется для согласования разрешающих способностей пользовательской монитора и драйвера монитора. Значение списка ограничивает максималь ный размер создаваемых форм, с тем чтобы они поместились на пользова тедьском экране с меньшей разрешающей способностью.


Предупреждение

Разрабатывая заказные прикладные программы, избегайте разработки экран ных форм со слишком большим разрешением. Это может вызвать проблем! при установке такой программы на компьютер пользователя с низкой разре шающей способностью монитора.

Для выбора классов, используемых по умолчанию как шаблоны при создании форм и набора форм, используется область Template classes (Класс! шаблонов). При установке флажков Form set (Набор форм) или Form (Фор ма) становятся доступны кнопки с правой стороны одноименных текстовы: полей, открывающие список доступных библиотек классов, выбранных на вкладке Controls (Элементы управления). Из этого списка можно выбрать ласе, который будет использоваться по умолчанию при создании форм или набора форм.

Остановка флажка Builder lock (Закрепление построителя) ведет к автомати-ескому запуску построителей при добавлении объектов в форму.

Флажок Prompt to save changes before running form (Подтверждать запись изменений до запуска формы на выполнение) используется для вывода на экран сообщения о необходимости сохранения формы перед запуском ее на выполнение.


и опции, влияющие на совместимость


Вкладка General (Общие) (рис. 25.1) содержит флажки и опции, влияющие на совместимость с предыдущими версиями программ, на установку цвета, звуковых сигналов и ввод данных.

Область Warning sound (Предупреждение звуком) данной вкладки позволит выбрать тип сигнала, звучащего при достижении пользователем конца или вводе недопустимых данных, путем установки одной из трех onmiii (табл. 25.2).

Таблица 25.2. Назначение опций области Warning sound

Опция Назначение
Off (Выкл.) Звуковой сигнал выключен
Default (По умолчанию) Частота и длительность звукового сигнала устанавливаются по умолчанию (частота 512 Гц, продолжительность — 2 с)
Play (Проигрывать) Проигрывает звуковой файл
При выборе опции Play (Проигрывать) можно воспользоваться кнопкой, расположенной справа от поля ввода, и выбрать файл звукового сигнала с расширением WAV.

С правой стороны вкладки расположены четыре флажка (табл. 25.3).

Таблица 25.3. Назначение флажков для выбора файла звукового сигнала

Флажок Назначение
dBASE compatibility (Совместимый с dBASE)

Флажок управляет совместимостью Visual FoxPro с другими Xbase языками. Если флажок установлен, то Visual FoxPro иначе интерпретирует команды, перечисленные в табл. 25.4
Use Visual FoxPro color palette (Использовать цветовую палитру Visual FoxPro) При установленном флажке Visual FoxPro использует по умолчанию собственную цветовую палитру при отобра жении растровых изображений. При сброшенном флажке применяется палитра, использовавшаяся при его создании. Этот флажок соответствует команде set palette
Confirm file replacement (Подтверждать перезапись файла) Определяет, будет ли выдаваться предупреждающее сообщение перед перезаписью уже существующего файла Этот флажок соответствует команде set safety
Browse IME Control (Отображать окно редактора)

Используется для открытия окна редактора при работе в режиме, когда каждый символ отображается двумя байтами
Таблица 25.4. Команды, действие которых изменяется командой set compatible



Команда В состоянии On В состоянии Off
@ . . .GET. . .RANGE Всегда проверяет предел Проверяет предел, только если изменяются данные
&...SAY CHR(7) вызывает звуковой сигнал chr(7) не вызывает звуковой сигнал
@...SAY Вывод информации на экран вызывает сдвиг экрана вверх Вывод информации на экран прекращается при достижении нижнего правого угла
@...SAY Крайняя правая цифра при использовании picture округляется Крайняя правая цифра при использовании picture отсекается
ACTIVATE SCREEN Делая активным экран, устанавливает курсор в позицию 0,0 Делая активным экран, не изменяет позицию курсора
ACTIVATE WINDOW Делая активным окно, устанавливает курсор в позицию 0,0 Делая активным окно, не изменяет позицию курсора
APPEND MEMO Использует по умолчанию расширение ТХТ Расширения по умолчанию нет
DECLARE Создает одномерный или двумерный массив (Используйте вместо нее команду dimension)
DIMENSION Создает одномерный или двумерный массив  
FSIZE Возвращает размер файла Возвращает размер поля
go/goto (если было SET TALK ON)

Выводит сообщение о текущей рабочей области и номере записи Не выводит сообщений
INKEY() Клавиши <Ноте> и <Shift>+<Home> возвращают код 26. Клавиши< Ctrl>+<<-> возвращают 1 Клавиши <Ноте> и <Shift>+<Home> возвращают 1. Клавиши <Ctrl>+«-> возвращают 26
LASTKEY() Возвращает целое число в соответствии с кодом последней нажатой клавиши (Используйте вместо нее

ФУНКЦИЮ INKEY( ) )
LIKEO Лидирующие пробелы в строках отсекаются перед сравнением Лидирующие пробелы сохраняются и считаются значимыми
MENU И POPUP Меню помещается в текущее окно вывода, курсор позиционируется согласно команде Меню помещается в свое собственное окно, курсор остается в текущем окне вывода
Вложенные операторы Подразумевается выполнение

КОМаНДЫ CLEAR GETS При

возврате на более высокий уровень
Текущие gets остаются при переходе на более высокий уровень
Передаваемые пары Параметры, адресуемые ссылкой, остаются доступными в вызываемой процедуре Параметры, адресуемые ссылкой, недоступны в вызываемой процедуре
PLAY MACRO Подразумевается добавление клавиши <Alt>+<F1O> перед макрокомандами, которые начинаются на A-Z. Перед макросами <F1>—<F9> добавляется <Alt> Ничего не добавляется
READ Проверяет значение оператором valid при нажатии клавиши <Esc> При нажатии <Esc> проверок VALID не выполняется
RUN Перед началом вывода курсор передвигается в первую позицию 24-й строки. После завершения экран сдвигается на 3 строки вверх Вывод на экран начинается с текущей позиции курсора, а после завершения экран сдвигается на две строки
SELECT() Возвращает номер наибольшей неиспользуемой рабочей области Возвращает номер текущей рабочей области
SET COLOR TO Устанавливает цвета окон и меню, определенных пользователем (Пользуйтесь вместо нее командой COLOR OF SCHEME)
SET BORDER Определяет границу вокруг различных полей, меню и окон  
SET FIELDS Определяет поля, к которым возможен доступ  
SET MEMOWIDTH Определяет ширину Memo-полей и символьных выражений  
SET MESSAGE Выдает сообщение в нижней строке экрана Сообщение выдается, если была команда set status ом
SET PRINTER TO По умолчанию выходной файл имеет расширение PRT Выходной файл не имеет расширения по умолчанию
STORE He может присвоить значения всем элементам массива Может присвоить значения :;ра зу всем элементам массива
SUM Использует установленное

КОМаНДОЙ SET DECIMALS

число десятичных цифр
Используемое число дес;, тичных цифр определяет™ суммируемым полем
SYS(2001,'COLOR') Возвращает значение, установленное последней командой SET COLOR Возвращает значение цвето вой пары для оператора :-1 .¦;¦

COLOR TO
TRANSFORM Возвращает строку символов из символьного или числового выражения  
USE Если установлен путь VFP и в команде указано устройство, то поиск файла производится только на указанном устройстве Если установлен путь VFP и в команде указано устройство, то вначале производится по иск на заданном устройстве. а затем — по указанному пути
<


/p> Область Programming (Программирование) вкладки General (Обшие) содержит три флажка, связанных с программированием (табл. 25.5).

Таблица 25.5. Назначение опций вкладки General

Флажок Назначение
Cancel programs on escape (Останавливать программу при нажатии <Esc>) Позволяет прерывать выполнение программы нажатием клавиши <Esc>
Log compilation errors (Регистрировать ошибки компиляции)

Позволяет регистрировать в специальном файле ошьг. ки, возникающие при компиляции файла
SET DEVELOPMENT (Компилировать при изменении)

При установке данного флажка перед выполнением у*',-скомпилированного файла Visual FoxPro проверяет бы.1 ли исходный файл изменен, и в случае изменения <¦¦> вторно компилирует его
В области Data entry (Входные данные) вкладки General (Обшие) содержатся три команды, связанные с вводом данных:

список Navigation keys (Кнопки навигации) соответствует команде KEYCOMP;

флажок Fill new records with current values (Заполнить новые записи текущими значениями) вызывает перенос содержимого текущей записи на новую запись и соответствует команде set carry;

установка флажка Enter or tab to exit fields (Выход из поля нажатием <Entei > или <Tab>) разрешает пользователю переходить в следующее поле только нажав клавишу <Enter> или <ТаЬ>. Флажок соответствуем команде set confirm. Установка флажка несколько замедляет ввод данных, но при jtom предотвращает случайное изменение полей записи.

Замечание

Команда set carry может содержать фразу то, которая позволяет указать поля, переносимые из старых записей в новую.

В области Year 2000 Compliance (Соглашение по 2000 году) вкладки General (Общие) содержится раскрывающийся список Strict Date Level (Строгая проверка данных типа "Дата и время"), который используется для аналта ошибок и неоднозначности данных типа "дата".


IDE


С помощью вкладки IDE (рис. 25.14) настраиваются параметры интерактивной среды разработки.

Рис. 25.14. Вкладка IDE диалогового окна Options

Область Specify file/window (Задать параметры файла/окна) позволяет задать тип файла/окна, настраиваемого с помощью данной вкладки. Список Туре (Тип) содержит возможные типы файлов. Поле Extensions (Расширения) показывает допустимые расширения выбранного типа файлов. Флажок Override individual settings (Перезаписать настройки по умолчанию) позволяет аннулировать настройки, заданные по умолчанию.

Область Indentation (Размеры отступов) позволяет определить размеры табуляции и отступа. По умолчанию используются значения в 4 символа.

Область Save options (Параметры сохранения) содержит флажки, позволяющие определить, каким образом файл выбранного типа будет сохраняться:

Make backup (Создать резервную копию) — при установке флажка сохранение файла ведет к созданию резервной копии;

Save with line feeds — текущий тип файла сохраняется с символами новой строки CHR(13)+CHR(10);

Save with end-of-file marker (Сохранить с маркером конца файла) — текущий тип файла сохраняется с символом Ctrl+Z в конце файла;

Compile before saving (Компилировать перед сохранением) — перед сохранением данного типа файла осуществляется его компиляция.

Область Appearance and behavior (Отображение и поведение) позволяет задать, как будет выглядеть текст настраиваемого типа файла. Список Alignment (Выравнивание) определяет тип выравнивания информации: по левому краю, по центру, по правому краю. Поле Font (Шрифт) указывает шрифт, стиль оформления и размер символов текущего типа файла. Флажки области имеют следующее назначение:

Drag-and-drop editing (Правка механизма перенести-и-оставить) — указывает, будет ли настраиваемый тип файла поддерживать механизм "перенести -и-оставить";

Automatic indent (Автоматический отступ) — позволяет автоматически делать отступ при переходе на новую строку;

Show line/column position (Показывать позицию курсора) — управляет отображением в строке состояния главного окна позиции курсора в Memo-полях;

Word wrap (Перенос слов) — управляет переносом слов в окне редактирования файла;

Syntax coloring (Выделять синтаксические конструкции) — установленный флажок позволяет использовать выделение цветом текста в программе в соответствии с результатами синтаксической проверки;

Embedded hyperlinks (Включить гиперссылки) — указывает, можно ли включать гиперссылки в настраиваемый тип файла;

Display white space (Показывать непечатаемые символы) — управляет отображением на экране заданных непечатаемых символов (табуляции, отступов и т. д.)

Кнопка Apply (Применить установки) сохраняет параметры, заданные на вкладке IDE, а кнопка Reset All (Восстановить все) восстанавливает параметры, задаваемые по умолчанию Visual FoxPro.



Параметры вкладок окна Options


Visual FoxPro содержит множество разнообразных параметров настройки. Вы можете указать расположение системных файлов, форматы отображения данных и многое другое. Для их настройки используется диалоговое окно Options (Параметры) (рис. 25.1), которое открывается при выполнении команды Options (Параметры) из меню Tools (Сервис).

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

Таблица 25.1. Назначение вкладок диалогового окна Options

Вкладка Назначение
General (Общие) Содержит параметры настройки звука, программирования, ввода данных
View (Вид) Содержит флажки, определяющие, будут ли отображаться на экране строка состояния, часы, системные сообщения и информация общего характера
Data (Данные) Содержит параметры для управления данными в таблицах
Remote Data (Удаленные данные)

Осуществляет настройку средств удаленного доступа к данным
File Locations (Расположение файлов)

Содержит расположение каталогов и файлов Visual FoxPro
Forms (Формы) Настраивает конструктор форм
Reports (Отчеты) Настраивает конструктор отчетов
Projects (Проекты) Настраивает окно проекта
Controls (Элементы управления)

Содержит параметры настройки визуальных классов и OLE-объектов
Regional (Региональные параметры) Содержит форматы отображения дат, времени де нежных единиц и чисел
Debug (Отладка) Содержит параметры отладки и трассировки
IDE (Интерактивная среда разработки) Содержит параметры, позволяющие настроить свой ства интерактивной среды разработки Visual FoxPro
Editor (Редактор) Настраивает параметры редактора Visual FoxPro
Field Mapping (Связь типов элементов управления с типами полей таблиц) Задает тип объекта, который по умолчанию создается в форме при переносе в нее таблицы или поля из окон конструктора базы данных, проекта и среды окружения

После настройки параметров вы можете нажать кнопки ОК или Set As Default (По умолчанию). При нажатии кнопки ОК установленные значения будут действовать только в текущем сеансе работы с Visual FoxPro, и при нажатии кнопки Set As Default (По умолчанию) — во всех последующих сеансах.

Рис. 25.1. Вкладка General диалогового окна Options



Projects


Вкладка Projects (Проекты) (рис. 25.7) определяет параметры работы конст-уктора проектов. Область Project double-click action (Действие при двойном нажатии мыши в проекте) данной вкладки содержит две опции:

Run selected file (Выполнить выбранныйе файл) — при двойном нажатии на имени файла в конструкторе проектов файл запускается на выполнение;

Modify selected file (Модифицировать выбранный файл) — при двойном нажатии на имени файла в конструкторе проектов файл открывается для модификации.

Рис. 25.7. Вкладка Projects диалогового окна Options

Флажок Prompt for Wizards (Запрос на использование мастеров) управляет отображением запроса при использовании мастера во время создания нового файла из конструктора проектов.

При установленном флажке Display user-defined container icons (Отображать значки, определенные пользователем) в окне проекта отображаются значки, определенные пользователем.

Установкой флажка Project class (Класс проекта) можно задать класс, который будет использоваться по умолчанию при создании нового проекта. Введите класс в расположенное рядом с флажком поле. Для ввода класса можно воспользоваться кнопкой с правой стороны поля ввода, открывающей диалоговое окно для поиска нужной библиотеки классов на диске.

Остальные флажки данной вкладки были подробно описаны в главе 13.



Regional


Вкладка Regional (Региональные) (рис. 25.8) служит для настройки форматов дат, времени, валюты и условных обозначений чисел в прикладных программах.

Если флажок Use System Settings (Использовать системные установки) установлен, будут действовать системные настройки, и вы не сможете устанавливать параметры вкладки.

Рис. 25.8. Вкладка Regional диалогового окна Options

Параметры отображения даты и времени задаются в области Date and Time (Дата и время). Раскрывающийся список Date Format (Формат даты) содержит форматы разных стран. Можно выбрать устраивающее вас значение и t этого списка или создать и сохранить свой собственный формат.

Форматы отображения валюты и чисел устанавливаются в области Currency and Numbers (Валюта и числа). Список Currency Format (Формат валюты) указывает размещение символа валюты относительно его значения и заменяет КОМанДЫ SET CURRENCY LEFT ИЛИ SET CURRENCY RIGHT. В поле Currency Symbol (Символ валюты) задается символ валюты. Здесь можно использовать любой символ, допустимый в текущем наборе символов, или их комбинацию. Соответствует команде set currency то. Символ из поля 1000 Separator (Разделитель) появляется перед каждой третьей цифрой слева в целой части числа, отделяя тысячи от миллионов и т. д. Соответствует команде set separator.

Символ в поле ввода Decimal Separator (Десятичный разделитель) отделяет целую часть числа от дробной.

Значение счетчика Decimal Digits (Десятичные знаки) определяет мини мальное число десятичных знаков, используемых для вывода выражения. Это число может иметь значения от 0 до 18. Соответствует команде set DECIMALS TO.

Списки Week Starts on (Неделя начинается с) и First Week of Year (Первая неделя года) определяют по умолчанию день начата недели и первую неделю года.



Remote Data


Вкладка Remote Data (Удаленные данные) (рис. 25.9) определяет работу Visual FoxPro с удаленными данными.

Область Remote view defaults (Удаленные представления данных по умолчанию определяет по умолчанию параметры для удаленных представлении данных. Расположенные в этой области флажки имеют назначение, описанное в табл. 25.12.

Таблица 25.12. Назначение флажков области Remote view defaults

Флажок Назначение
Share connection (Совместное подключение) Позволяет ODBC открывать не одно, а несколько представлений данных
Fetch memo (Выборка Memo-поля) Позволяет загружать Memo-данные только в случае активации пользователем соответствующего поля, так как пересылка Memo-полей по локальной сети значительно увеличивает объем пересылаемой информации и уменьшает скорость работы

Рис. 25.9. Вкладка Remote Data диалогового окна Options

Список Criteria (Условие) определяет условия модификации исходных таблиц и содержит четыре значения:

Key Fields Only (Только ключевые поля) — допускает модификацию только ключевых полей;

Key and Updatable Fields (Ключевые и изменяемые поля) — допускает модификацию ключевых и изменяемых полей;

Key and Modified Fields (Ключевые и модифицированные поля) — допускает модификацию ключевых и измененных полей;

Key and Timestamp (Ключевые поля и время изменения) — допускает модификацию ключевых полей и времени изменения.

Список Method (Метод) определяет метод изменения таблиц. В зависимости от выбранной из него команды производится либо модификация нужной записи, либо удаление старой записи и добавление новой

В табл. 25.13 приведены счетчики вкладки Remote Data и их назначение.

Таблица 25.13. Назначение счетчиков вкладки Remote Data

Счетчик Назначение
Records to fetch at a time (Выборка записей в единицу времени) Позволяет уменьшить нагрузку на локальную сеть, ограничивая число одновременно пересылаемых записей. Дополнительные блоки записей считываются с сервера по мере необходимости
Maximum records to fetch (Максимальное число выбираемых записей) Определяет верхний предел общего числа записей, возвращаемых запросом, позволяя ограничить объем выбираемых данных при неправильном формировании условий запроса
Use memo for fields >= (Использовать Memo-поле для полей)

Определяет число символов, при превышении которого поле автоматически преобразуется в Memo-поле. Поскольку максимальная длина символьного поля составляет 254 символа, этот счетчик обычно содержит число 255
Records to batch update (Количество записей в пакете обновления)

Определяет число записей, посылаемых на сервер при выполнении одной команды модификации, позволяя оптимизировать пересылки по сети
<
Флажки области Connection defaults ( Установки соединения по умолчанию) определяют, как ваша прикладная программа будет связываться с данными на сервере (табл. 25.14).

Таблица 25.14. Назначение флажков области Connection defaults

Флажок Назначение
Asynchronous execution (Асинхронное выполнение) Определяет, возвращается ли управление к вашей прикладной программе сразу после начала сетевой операции. При синхронном обмене программа всегда дожидается окончания операции обмена по сети. Если установлен асинхронный обмен, то программа может выполнять различные операции и во время обмена по сети
Display warnings (Показывать предупреждения) Разрешает выдавать на экран сообщения об ошибках сетевых операций
Batch processing (Пакетная пересылка) Разрешает пакетные пересылки по сети
Automatic transactions (Автоматические транзакции)

Определяет, будут ли транзакции обработаны автоматически или же ваша прикладная программа должна включать собственные функции sqlcommit и sqlrollback
Раскрывающийся список Show login (Показывать окно входа в систему) позволяет указать, когда нужно показывать диалоговое окно входа в систему для пользователя перед обращением к данным: всегда, никогда, или только по необходимости.

Счетчики области Connection defaults (Установки соединения по умолчанию) выполняют функции, описанные в табл. 25.15.

Таблица 25.15. Назначение счетчиков области Connection defaults

Счетчик Назначение
Connection timeout (Ожидание подключения)

Определяет число секунд ожидания опознавания соединения сервером
Idle timeout (Время простоя) Определяет, сколько минут будет поддерживаться соединение без действий. Значение по умолчанию 0 вызывает немедленный разрыв соединения по окончании обмена
Query timeout (Ожидание результатов запроса) Определяет время ожидания результатов запроса в минутах. Если результат не получен по истечении этого времени, выдается сообщение об ошибке
Wait time (Время ожидания) Определяет число миллисекунд между проверками завершения обмена по сети

Reports


Вкладка Reports (Отчеты) диалогового окна Options (Параметры) (рис. 25.15) предназначена для настройки параметров работы конструктора отчетов.

Рис. 25.15. Вкладка Reports диалогового окна Options

Область Grid (Сетка) используется для управления линиями сетки и выравнивания объектов (табл. 25.21).

Таблица 25.21. Назначение флажков области Grid

Флажок Назначение
Grid lines (Линии сетки) Определяет отображение линий сетки в отчете
Snap to grid (Выровнять по сетке) Если при установке данного флажка изменяется положение объекта в отчете, он автоматически устанавливается в ближайшую точку пересечения линий сетки. Флажок не влияет на положение объектов, перемещенных до его установки

Эта область содержит также два счетчика (табл. 25.22).

Таблица 25.22. Назначение счетчиков области Grid

Счетчик Назначение
Horizontal spacing (pixels) (Расстояние по горизонтали)

Определяет число точек между горизонтальными линиями сетки
Vertical spacing (pixels) (Расстояние по вертикали)

Определяет число точек между вертикальными линиями сетки

Для отображения в строке состояния положения и размера текущего объекта отчета установите флажок Show position (Показывать положение).

Для определения размеров и положения объектов в Visual FoxPro могут использоваться две единицы измерения: пикселы или дюймы и сантиметры (в зависимости от региональных настроек). Выбор единицы измерения осуществляется с помощью списка Ruler scale (Единицы измерения).

Поле Default font (Шрифт по умолчанию) позволяет задать шрифт, его размер и стиль оформления, используемый по умолчанию при создании отчетов.

Область Report Options (Параметры отчета) содержит флажки, управляющие режимами работы конструктора отчетов.



View


С помощью флажков вкладки View (Вид) (рис. 25.10) можно определить, что требуется показывать на экране (табл. 25.16).

Таблица 25.16. Назначение флажков вкладки View

Флажок Назначение
Status bar (Строка состояния) Включает отображение строки состояния в нижней части экрана. Если строка состояния выключена, сообщения FoxPro выдаются в окно Wait (Ожидание) в верхнем правом углу экрана
Clock (Часы) Отображает в строке состояния время
Command results (Результаты команд) Выводит результаты выполнения команд в строку состояния
System messages (Системные сообщения) Включает или отключает вывод некоторых системных сообщений. Этот флажок соответствует команде set NOTIFY

Open last project on startup (Открывать последний проект при запуске) Заставляет Visual FoxPro при запуске автоматически открывать тот проект, который был открыт последним в предыдущем сеансе работы

Счетчик Most Recently Used list contains (Наиболее часто используемый список содержит) позволяет указать, сколько имен последних открывавшихся проектов должно отображаться в меню File (Файл).

Рис. 25.10. Вкладка View диалогового окна Options