|
Часть 5
6 ТОНКАЯ НАСТРОЙКА
_______________________________________________________________
На следующих далее страницах описана простая и гибкая про-
цедура, которая позволяет пользователям изменять начальные пара-
метры в момент загрузки памяти) и принятые по умолчанию значения
для команд SET.
Кроме того, в настоящую главу включен раздел, содержащий
различные рекомендации, которые помогут вам оптимизировать рабо-
ту FoxBASE+.
6.1 Возможности конфигурации FoxBASE+.
_______________________________________________________________
Файлы конфигурации
FoxBASE+ позволяет вам изменять распределение памяти и при-
нятые по умолчанию начальные значения команд SET при помощи
простой и гибкой процедуры конфигурации. Эта операция произво-
дится при помощи создания текстового файла с именем "CONFIG.FX",
или, для совместимости с dBASE III PLUS, "CONFIG.DB".
При работе FoxBASE+ автоматически производит в текущем ра-
бочем каталоге поиск файла с именем CONFIG.FX. Если этот файл не
найден в рабочем каталоге, FoxBASE+ производит поиск файла
CONFIG.FX в каталогах, приведенных в списке команды MS-DOS PATH.
(Описание команды PATH приведено в руководстве по MS-DOS).
Если файл CONFIG.FX не найден и в результате этой процеду-
ры, FoxBASE+ повторяет процесс поиска для файла с именем
CONFIG.DB.
Если файлы CONFIG.FX и CONFIG.DB не найдены, тогда исполь-
зуется встроенная конфигурация, предоставляемая по умолчанию.
В целях использования существующего файла dBASE III PLUS
CONFIG.DB без изменений, в случае, если FoxBASE+ находит в этом
файле недопустимую строку, сообщение об ошибке не выдается.
Вместо этого эта строка будет игнорироваться.
Значения числовых параметров конфигурации проверяются на
допустимость этих значений для соответствующих параметров. Недо-
пустимые значения исправляются на ближайшие к ним значения из
допустимого диапазона.
Если строка PROMPT содержит более 20 символов, она будет
усечена.
Изменение конфигурации
Конфигурацию легко изменять с помощью любого встроенного
текстового редактора (включая редактор, встроенный в FoxBASE+).
В связи с этим, после того, как вы освоитесь с FoxBASE+, наилуч-
шим подходом будет поэкспериментировать с различными конфигура-
циями для нахождения одной, которая работает наилучшим образом
на вашем компьютере с вашими программами. Тексовый файл CONFIG
содержит одну или несколько строк в следующем формате:
<параметр> = <значение>
6.2 Конфигурируемые параметры распределения
_______________________________________________________________
Большое количество параметров, которые могут быть включены
в файл CONFIG, относятся к возможностям FoxBASE+, которые управ-
ляются посредством команд SET. Однако, некоторые параметры, ко-
торые задают размеры различных таблиц, буферов, пулов памяти и
других ресурсов FoxBASE+, могут быть также определены в файлах
CONFIG. Когда ваша прикладная система создана, правильная уста-
новка параметров распределения в соответствии с максимальными
запросами системы позволит освободить дополнительную память, ис-
пользуюмую в процессе динамического распределения памяти. Чем
больше предоставлено памяти, тем лучше работает программа.
Ниже приведен перечень параметров распределения и их описа-
ния:
BUCKET Общий объем пула размером К байтов, доступный для
сохранения операторов GET и связанных с ними опера-
торов PICTURE, RANGE и VALID. Объем для хранения
оператора GET колеблется от 30 до 302 байт в зависи-
мости от соответствующих операторов PICTURE, RANGE и
VALID (в случае накличия таковых). Значение парамет-
ра должно лежать в диапазоне от 1 до 32; значение по
умолчанию 4.
EMS Этим параметром указывается, может ли FoxBASE+ ис-
пользовать расширенную память (в соответствии со
спецификацией LOTUS/INTEL/MICROSOFT). В общем случае
FoxBASE+ может сосуществовать с другими программами,
использующими расширенную память. Однако, если вы
хотите зарезервировать расширенную память для других
программ, вы можете установить EMS OFF. Если вы ис-
пользуете внешние программы, которые вы загружаете и
запускаете командами LOAD и CALL, и эти программы
используют расширенную память, вы должны знать, что
FoxBASE+ всегда размещает часть своей памяти на
странице расширенной памяти после ввода команды
CALL. Если ваши программы не учитывают этого, реко-
мендуем вам задать EMS OFF. По умолчанию установлено
ON.
FILES Этот параметр указывает количество файлов, которые
могут быть открыты в процессе работы FoxBASE+. Зна-
чение этого параметра должно лежать в диапазоне от
16 до 48; значение по умолчанию 16.
_______________________________________________________
! Значение, указанное для параметра FILES в файле !
! MS-DOS CONFIG.SYS должно быть по крайней мере на 10 !
! больше, чем значение, указанное для этого параметра !
! в файле CONFIG.FX/CONFIG.DB !
!_____________________________________________________!
HISTORY Этот параметр задает по умолчанию количество команд
в буфере HISTORY, которое будет выведено командой
LIST HISTORY. При этом, однако, фактическое количес-
тво сохраненных в буфере команд будет ограничено об-
ъемом памяти, указанным параметром HMEMORY. Значение
этого параметра должно лежать в диапазоне от 0 до
16.000; значение по умолчанию 20.
HMEMORY Общий объем памяти, доступный для хранения буфера
команд FoxBASE+ в К байт. Необходимый объем следует
вычислять, исходя из предполагаемого среднего разме-
ра команды. Для сохранения одной команды необходим
объем, раный ее длине плюс 8 байт. Значение этого
параметра должно лежать в диапазоне от 0 до 63; зна-
чение по умолчанию 5.
INDEX Этот параметр указывает расширение имени файла, ко-
торое будет использоваться по умолчанию при создании
индексных файлов FoxBASE+. Значение по умолчанию
IDX.
MENU Общий объем в К байт, доступный для хранения подска-
зок и сообщений. Значение должно лежать в диапазоне
от 1 32. Значение по умолчанию 1.
MVARSIZ Объем памяти в К байт, отведенный для строк симво-
лов, сохраняемых в переменных памяти. Значение долж-
но лежать в диапазоне от 1 до 32; значение по умол-
чанию 6.
MVCOUNT Максимальное количество переменных памяти, которое
может быть использовано. Диапазон значений от 128 до
3 600; значение по умолчанию 256.
PROMPT Этот параметр позволяет модифицировать подсказку
FoxBASE+. Значение по умолчанию - это точка со сле-
дующим за ней пробелом.
TEDIT Задает внешний текстовый редактор, который будет ис-
пользоваться с командой MODIFY COMMAND.
TIME Количество повторных попыток для устройства печати.
При этом, если устройство не готово, FoxBASE+ будет
ожидать его готовности указанное количество циклов.
Если счетчик повторов исчерпан, FoxBASE+ выдаст со-
общение об ошибке "Printer not ready. Retry? (Y/N)"
(принтер не готов. Повторить?). Значение этого пара-
метра должно лежать в диапазоне от 1 до 1 000 000;
значение по умолчанию 6000.
WP Задает внешний текстовый редактор, который будет ис-
пользоваться для редактирования полей мемо.
Алфавитный список параметров файла CONFIG.FX с их значениями
и значениями, принятыми по умолчанию.
<параметр> <значение> <умолчание>
ALTERNATE <имя файла>
BELL ON/OFF ON
BUCKET <от 1 до 64> 4
CARRY ON/OFF OFF
CENTURY ON/OFF OFF
CLEAR OFF/ON OFF
COLOR <параметры цвета>
COMMAND <команда>
CONFIRM ON/OFF OFF
CONSOLE ON/OFF ON
DEBUG ON/OFF OFF
DECIMALS <от 0 до 14> 2
DEFAULT <дисковод/каталог>
DELETED ON/OFF OFF
DELIMITER ON/OFF OFF
DELIMITER <1 или 2 символа> двоеточие
DEVICE SCREEN/PRINT SCREEN
EMS ON/OFF OFF
ECHO ON/OFF OFF
ESCAPE ON/OFF ON
EXACT ON/OFF OFF
EXCLUSIVE ON/OFF ON
F<число> <симв_выраж>
FILES <от 16 до 48> 16
HEADINGS ON/OFF ON
HELP ON/OFF ON
HISTORY <от 0 до 16000> 20
HMEMORY <от 0 до 63> 5
INDEX <расширение> IDX
INTENSITY ON/OFF ON
MARGIN <от 1 до 254> 0
MEMOWIDTH <от 8 до 256> 50
MENU ON/OFF ON
MVCOUNT <от 128 до 3600> 256
ODOMETER <числ_выраж> 100
PATH <маршрут>
PRINT ON/OFF OFF
PROMPT <симв_выраж> "."
SAFETY ON/OFF ON
SCOREBOARD ON/OFF ON
STATUS ON/OFF ON
STEP ON/OFF OFF
TALK ON/OFF ON
TEDIT <имя программы
редактора>
TIME <от 1 до 32767> 6000
TYPEAHEAD <от 0 до 32 000> 128
UNIQUE ON/OFF OFF
WP <имя программы
редактора>
6.3 Оптимизация работы FoxBASE+
_______________________________________________________________
Ниже приведены некоторые рекомендации, которые помогут вам
улучшить показатели FoxBASE+.
Разгрузка каталогов MS-DOS
Одной из наиболее распространенных причин неудовлетвори-
тельной работы FoxBASE+ явялется перегрузка каталогов MS-DOS. В
этом случае имеет место следующая ситуация:
* Прикладная система содержит 150 программ с 30 файлами базы
данных и/или индексными.
* Пользователь компилирует 150 программных файлов, создавая
при этом 150 файлов .FOX.
* Затем пользователь выполняет переиндексацию баз данных,
создавая файлы .IDX.
* Запускается прикладная программа, которая генерирует
большое количество промежуточных мелких баз данных или индексных
файлов.
В этот момент пользователь обращается в фирму и заявляет,
что мы ввели его в заблуждение в отношении нашего программного
продукта, который работает с его прикладной программой только на
хх% быстрее, чем dBASE, а не в 6 раз.
Фактически же пользователь в такой ситуации проверяет, с
какой скоростью MS-DOS может производить поиск в каталоге. Этот
процесс FoxBASE+ не контролирует.
В приведенном примере скорость поиска в каталоге может быть
значительно уменьшена по следующим причинам:
* В каталог были введены более 150 файлов, и он содержит в
текущий момент около 300 файлов. Поэтому при создании
нового файла или поиске существующего, MS-D0S должен
просмотреть 300 ссылок в каталоге вместо 150, которые
существовали ранее.
* Пул буферов MS-D0S (размер которого задан в файле
CONFIG.SYS) может быть недостаточным для размещения в нем
полностью каталога увеличенного размера. При этом
значительно увеличится количество обращений к диску при
поисках в каталоге.
* Пользователи (не имеющие достаточного опыта) обычно
недооценивают время, затрачиваемое MS-DOS на работу с
каталогами.
________________________________________________________
! Решение этой пробелмы очевидно. Вам следует очистить !
! каталоги MS-DOS. !
!______________________________________________________!
Далее приведены несколько рекомендаций, которые помогут вам
сократить количество файлов в каталогах и сократить время поис-
ка:
* Заносите ваши файлы .FOX и файлы .PRG в разные каталоги.
Обычно мы сохраняем свои файлы .FOX в главном рабочем
каталоге, а файлы .PRG в подкаталоге с именем SOURCE.
* Совмещайте программныне файлы .PRG в процедурных файлах.
Это поможет вам значительно сократить количество файлов.
Способы построения процедурных файлов приведены в главе 2 в
описании программы создателя процедурных файлов.
* Рассмотрите возможность увеличения количества буферов,
которые задаются в файле MS-DOS CONFIG.SYS. Это позволит
операционной системе содержать больший объем каталогов в
оперативной памяти.
И, наконец, заключительная рекомендация. Во многих случаях
простое удаление файлов из каталога не позволит ускорить процесс
поиска в каталоге. Причиной этого является то, что при удалении
файла соответствующая ссылка в каталоге, помечается, как свобод-
ная, но остается в каталоге. В связи с этим для того, чтобы до-
биться ожидаемого ускорения работы необходимо:
* Скопировать все файлы в новый каталог с целью исключения
всех пустых мест от удаленных файлов, или
* Сжать исходный каталог для удаления пустых мест с
использованием имеющихся вспомогательных программ (Norton
Utilities, DOS2OOLS, и т.д.)
Предоставьте FoxBASE+ достаточно памяти
FoxBASE+ является продуктом, который был разработан для ис-
пользования преимуществ современной техники. Это означает, что
он может использовать большие объемы (недорогой) памяти. Более
того, при появлении новых верcий MS-DOS, которые позволяют ис-
пользовать более 640К памяти, FoxBASE+ сможет использовать и эту
возможность.
Одним из наилучших способов оптимизировать работу FoxBASE+
является предоставление ему большого объема памяти.
Работайте с достаточным местом на диске.
На всех компьютерных системах, как крупных, так и мик-
ро-компьютерах, скорость ввода/вывода на диск значительно замед-
ляется по мере заполнения диска.
Это происходит в связи с сокращением свободного объема на
диске, при этом процедуры, распределяющие свободные объемы, тре-
буют все больше времени на поиск свбодного места на диске.
Как и в ситуации с памятью, дисководы для дисков с большим
объемом памяти становятся все дешевле. В связи с этим в настоя-
щее время редко возникает необходимость работы с силь ограничен-
ным объемом дисковой памяти.
Используйте возможности "SET TALK OFF"
FoxBASE+ может выводить информацию на экран вашего компь-
ютера гораздо быстрее, чем dBASE или любой аналогичный пакет.
Несмотря на это, FoxBASE+ выполняет другие операции так быстро,
что режим SET TALK ON может значительно замедлить его работу.
Конечно, степень замедления FoxBASE+ зависит от выполняемой
операции и объема выводимой при этом информации. Однако при ра-
боте в MS-DOS мы наблюдали ситуации, в которых включение режима
TALK замедляло скорость работы в 2-3 раза.
Используйте "SET STATUS OFF"
Замечания, сделанные выше в отношении режима TALK, относят-
ся также и к операциям с базами данных в состоянии SET STATUS
ON.
Используйте массивы
Как вам известно, в FoxBASE+ возможно использование масси-
вов переменных памяти. Они могут использоваться во многих ситуа-
циях, когда в dBASE используются макрозамены.
Если вы можете использовать массив вместо макрозамены, ско-
рость работы программы, в которой это сделано, значительно воз-
растет.
Используйте процедурные файлы
FoxBASE+ позволяет объединять в один процедурный файл до
128 отдельных программ. Объединение программ, из которых состоит
прикладная система, в один процедурный файл с использованием
процедуры foxcomp и команды SET PROCEDURE TO... для выбора этого
процедурного файла значительно увеличит скорость выполнения
программ.
Это связано с двумя основными факторами:
* Объединение нескольких программ в процедурный файл значи-
тельно сокращает количество файлов в рабочем каталоге. Ре-
жим проверки существования файла в каталоге в MS-DOS доста-
точно неэффективен. Таким образом использование процедурных
файлов увеличивает скорость выполнения всех операций с фай-
лами, поскольку при этом сокращается количество ссылок в
каталоге, которые MS-DOS должен просмотреть при открытии,
переименовании или удалении файлов.
* Команда "SET PROCEDURE TO ..." открывает канал в процедур-
ный файл, который остается открытым. Поэтому при выполнении
программы FoxBASE+, содержащейся в процедурном файле, ко-
мандой DO, не возникает необходимости открывать новые файлы
или производить поиск в каталоге. Соответственно, программа
загружается так же быстро, как одна из служебных программ
FoxBASE+.
Работайте с компилированными ранее программами
Все уже скомпилированные программы выполняются с очень
большой скоростью, обычно свойственной FoxBASE+. Однако, т.к.
исходные программы (.PRG) динамически компилируются в процессе
их загрузки (командой DO), то очевидно, что общая скорость вы-
полнения удет уменьшена из-за использования дополнительного вре-
мени на загрузку программ .PRG. Более того, компилятор foxpcomp
осуществляет более полную оптимизацию своих выходных объъектных
программ (.FOX). Поэтому, программы .FOX, скомпилированные ком-
пилятором foxpcomp, в целом будут выполняться быстрее, чем если
бы они загружались и компилировались "на лету" по команде DO в
форме .PRG.
7 Поставка прикладных программ FoxBASE+
_______________________________________________________________
Далее в настоящей главе описан процесс формирования продук-
та периода исполнения в FoxBASE+. В этом разделе приведена иноф-
рмация о том, что вы имеете право поставлять совместно с вашими
прикладными программами.
Если вы собираетесь использовать прикладные программы толь-
ко на одном компьютере или в одной сети, вы можете пропустить
эту главу.
7.1 Версии FoxBASE+ только периода исполнения
_______________________________________________________________
Для распространения ваших прикладных программ вы должны
сначала купить систему FoxBASE+ только периода исполнения. Сис-
тема FoxBASE+ только периода исполнения - это специализировнная
версия FoxBASE+, выполняющая только компилированные программы с
расширением .FOX. Кроме того, в ней удалены некоторые особеннос-
ти, используемые только в интерактивном режиме.
Купленная вами система только периода исполнения может быть
копируема и распространяема только с компилированными версиями
ваших прикладных программ. Без этой системы ваши компилированные
программы выполняться не могут. С помощью этой системы ваши
пользователи смогут выполнять прикладные программы, не имея ос-
новной программы FoxBASE+ или dBASE+, а вы сможете защитить ис-
ходный код вашей программы от самовольного распространения, рас-
пространяя только компилированные (а возможно, и засекреченные)
прикладные программы.
Фактическое имя файла FoxBASE+ периода исполнения, который
вы будет поставлять совместно с программами, зависит от приобре-
тенной вами версии FoxBASE+. В однопользовательской системе
MS-DOS соответствующий файл FoxBASE+ имеет имя FOXPRUN.EXE, а в
многопользовательской системе MS-DOS MFOXPRUN.EXE для различных
сетей PC-DOS.
Лицензия на FoxBASE+ периода исполнения принадлежит вам, и
на ней стоит серийный номер вашей системы. (Для получения инфор-
мации о присвоении уникального номера и ключа активации вашей
сисетеме только периода исполнения смотрите раздел об инстолля-
ции в главе 2 "Начало работы").
Систему FoxBASE+ только периода исполнения можно распрост-
ранять только вместе с вашими прикладными программами. Отдельно
модули этой сисетмы распространять нельзя.
В вашей организации модули системы FoxBASE+ только периода
исполнения могут распространяться беспошлинно. Конечным пользо-
вателям из других организаций они могут продаваться вместе с ва-
шими прикладными программами, но не могут раздаваться бесплатно.
Конечные пользователи ваших прикладных программ, работающих
под управлением системы FoxBASE+ только периода исполнения, не
могут самостоятельно распространять модули этой системы.
_____________________________________________________________
! Ни при каких обстоятельствах не следует передавать версии !
! FOXPLUS.EXE, MFOXPLUS.EXE или FOXCOMP.EXE другим поль- !
! зователям. !
!___________________________________________________________!
Имея систему FoxBASE+ только периода исполнения, вы имеете
право распространять неограниченное число копий этой системы
вместе с вашими прикладными программами, не внося никакой допол-
нительной платы фирме Fox Software.
Демонстрационные версии
Пользователи, желающие распространять демонстрационные вер-
сии своих прикладных программ, могут воспользоваться одним из
двух подходов. Демонстрационный пакет может включать полностью
интерактивную версию, снабженную вашим уникальным серийным номе-
ром и ключом активации демонстрационной версии. Это приводит к
автоматическому ограничению на размер прикладной программы - не
более 120 записей в каждом файле базы данных. Или вы можете соз-
дать свою собственную демонстрационную дискету, самостоятельно
определив ограничения, и распространять ее вместе с системой
FoxBASE+ только периода исполнения.
_____________________________________________________________
! В качестве дополнительного средства защиты исходного кода !
! мы рекомендуем вам вводить команду SET ECHO OFF в качест-!
! в е первой строки всех ваших прикладных программ, которые !
! вы собираетесь распространять с версией FoxBASE+ перио-!
! да исполнения. !
!___________________________________________________________!
Более подробная информация об использовании версии FoxBASE+
периода исполнения приведена в главе 2 в разделе "Выполнение
программ FoxBASE+ в версии FoxBASE+ периода исполнения".
8 Поддержка програмного обеспечения FoxBASE+.
_______________________________________________________________
Компания Fox Software, Inc., надеется, что вы не сожалеете
о принятом вами решении приобрести FoxBASE+, и что вы продуктив-
но используете ее. Мы не только считаем FoxBASE+ лучшей системой
управления базой данных, имеющейся в настоящее время, мы поддер-
живаем наш программный продукт и готовы помочь вам во всех воз-
никших у вас затруднениях.
Сотрудники по поддержке систем компании Fox Software, Inc.
готовы помочь вам во всех вопросах, которые возникают у вас при
работе в FoxBASE+. Мы также ожидаем от вас отзывов и предложений
по усовершенствованию будущих версий FoxBASE+. Мы уверяем вас,
что все ваши пожелания будут учтены наишм персоналом по систем-
ной поддержке.
8.1 Перед тем, как звонить нам...
_______________________________________________________________
Существуют несколько типичных вопросов, с которыми пользо-
ватели обращаются в Fox Software. В настоящем разделе мы попыта-
лись привести ответы на наиболее часто встречающиеся вопросы.
Принтер не готов ...
Симптомы этой ситуации следующие: При распечатке отчета
FoxBASE+ выдает сообщение "Printer not ready" (Принтер не го-
тов). Эта ошибка чаще всего происходит при использовании быстро
работающего компьютера с медленно работающим принтером.
Это означает, что параметр TIME в файле CONFIG.FX/
CONFIG.DB задан слишком малым.
Дополнительная информация о параметре TIME приведена в гла-
ве 6.
Возможность недоступна...
Это сообщение об ошибке выводится, когда вы пытаетесь ис-
пользовать одну из возможностей, не поддерживаемую FoxBASE+. Од-
нако список таких функций постоянно сокращается. Далее приведен
список возможностей dBASE III PLUS, которые в настоящее время не
поддерживаются:
* CREATE/MODIFY QUERY
* CREATE/MODIFY SCREEN - Она заменена значительно более мощным
генератором экранов Fox View.
* CATALOG
* IMPORT/EXPORT Поддержка файлов в форматах .DIF, .SYLK и .WKS
в командах COPY и APPEND. (Конечно, форматы SDF и с ограни-
чителями полностью поддерживаются командами COPY и APPEND).
8.2 Анализ
_______________________________________________________________
Для того, чтобы помочь нам в разрешении ваших проблем, воз-
никших при работе в FoxBASE+, просим вас выполнить описанную ни-
же последовательность действий:
* Проверили ли вы по руководству свои действия?
* Отвечает ли ваш компьютер специальным требованиям к аппара-
туре?
* Проводили ли вы установку FoxBASE+ с использованием соответ-
ствующих значений номера и ключа активации? Внимательно ли
вы ввели нужные значения, соответствующие напечатанному об-
разцу, соблюдая точное использование прописных и строчных
букв? Замечание: Если вы используете версию FoxBASE+ периода
исполнения, в ваш комплект будут влючены отдельно номер и
ключ активации. Обратитесь к разделу "установка FoxBASE+" в
главе 2 для проверки предпринятых шагов по инстоляции конфи-
гурации ситстемы
* Проверили ли вы файл CONFIG.FX/CONFIG.DB?
* Модифицировали ли вы файл CONFIG.SYS? Превышает ли значение
параметра FILES в файле MS DOS CONFIG.SYS значение параметра
FILES в файле FoxBASE+ CONFIG.FX/DB хотя бы на 10?
* Многопользовательская система - Работаете ли вы с версией
DOS 3.10 или выше? Поддерживает ли ваша сет стандартный
NETBIOS интерфейс?
* Многопользовательская система - Заданы ли соответствующим
образом разрешения чтения/записи?
* Многопользовательская система - На отдельно работающем ком-
пютере все время параметр EXCLUSIVE должен быть SET ON, или
должна быть загружена программа DOS SHARE. Чтобы избежать
уменьшения скорости работы во всех случаях устанавливайте
SET EXCLUSIVE ON. Программа DOS SHARE в данной конфигурации
будет снижать скорост.
* Правилен ли синтаксис соответствующей команды или функции?
Проверьте по главам 4 и 5.
* Компилировали ли вы программный файл после последней коррек-
ции?
* Обратитесь к поставщику FoxBASE+.
Если вам необходима помощь после выполнения перечисленых
выше шагов, звоните в группу поддержки программного обеспечения
Fox Software по телефону (419) 874-0162.
* Подготовьтесь отвечать на вопросы в отношении файла
CONFIG.FX.
_____________________________________________________________
! Если вы обращаетесь в Fox Software за технической по- !
! мощью, вы должны сообщить соответствующий номер продукта. !
! Кроме того, вы должны зарегистрировать приобретенный па- !
! кет в течение 45 дней со дня покупки. Если регистрация не !
! была выполнена в этот период, мы не сможем обеспечить вам !
! техническую помощь до получения фирмой данных о регистра- !
! ции. Если у вас возникает потребность в помощи в течение !
! первых 45 дней владения пакетом, будьте готовы сообщить !
! источник приобретения пакета. !
!___________________________________________________________!
Техническая помощь предоставляется с понедельника по пятни-
цу с 8:30 до 17:00 среднеевропейского времени. Укажите, в какой
помощи вы нуждаетесь и сообщите вид продукта, в отношении кото-
рого вам необходима помощь (напр. многопользовательская система
FoxBASE+, однопользовательская система FoxBASE+).
Если вы обращаетесь в Fox Software за технической помощью,
а все специалисты заняты выполнением других вызовов, ваш запрос
будет занесен в очередь запросов. По нашим правилам, чем раньше
поступил запрос, тем быстрее предоставляется обслуживание. Мы
гордимся нашим техническим обслуживанием и отвечаем на звонки
как можно быстрее, обычно в течение одного или двух часов.
Наиболее напряженный период с 11:00 до 16:00 среднеевропей-
ского времени, поэтому лучшим временем подачи заявки является
время до 10:00.
Если вы думаете, что ваш вопрос связан с проблемами прог-
раммного обеспечения FoxBASE+, или у вас есть предложение по
усовершенствованию FoxBASE+, мы попросим вас заполнить бланк
программной поддержки для последующего анализа нашим техническим
персоналом.
8.3 Бланки программной поддержки
_______________________________________________________________
На следующих страницах приведены несколько бланков програм-
мной поддержки(SSF). В этих бланках следует просто вносить соот-
ветствующую информацию в указанное место бланка. В разделе, где
должно быть приведено общее описание вопроса наряду с его под-
робным описанием, просим вас записать подробнейшим образом ваше
объяснение возникшей ситуации. Далее, необходимо привести под-
робное описание ситуации для того, чтобы мы смогли смоделировать
возникшую ситуацию.
Мы работаем только с теми бланками (SSF), в которых содер-
жится только один вопрос или предложение по усовершенствование.
Поэтому, вам возможно захочется сделать дополнительные копии
этих бланков для поддержания дальнейшей связи с нами. Если ваш
вопрос включает много программных строк, пожалуйста, приложите к
бланку дискету с исходным текстом, файлами данных и остальными
файлами, необходимыми для оценки ситуации. Пожалуйста, наклейте
на дискету этикетку с именем вашей компании и телефоном.
Заполненный бланк SSF и все дополнительные материалы должны
быть отправлены группе системной поддержки компании Fox
Software, Inc. по следующему адресу:
Fox Software, Inc
Systems Support Group
27475 Holiday Lane
Perrysburg, OH 43551
На обороте бланка поместите подробное описание и пример
проблемы. Пожалуйта, помещайте на каждом бланке только один воп-
рос.
.
яш1.0
Fox Software, Inc
FoxBASE+ Software Support Form
/Бланк системной поддержки FoxBASE+/
---------------------------------------------------------------
Фамилия _______________________________________________
Компания _______________________________________________
Адрес _______________________________________________
_______________________________________________
_______________________________________________
Телефон _______________________________________________
Конфигурация:
Версия FoxBASE+________________ Лицензия # __________________
Операционная система __________ Версия _____________________
Тип и модель процессора _______________________________________
Объем памяти __________________________________________________
Сеть __________________________ Версия сети _________________
Значения параметров конфигурации:
BUCKET_____ MVARSIZ______ MVCOUNT _________ TALK ________
SCOREBOARD________STATUS______ ESCAPE ___________
Приложения:[] гибкий диск [] информация с консоли
[] текст программы [] дополнительные замечания
[] дополнительно
Тип проблемы: [] Несовместимость с dBASE III PLUS версия ___
[] Запрос на изменение или модержнизацию
[] Проблема (повреждение или потеря данных)
[] Ошибка - программа дает неверные результаты
[] Невозможность работы
[] Работа возможна
Краткое описание проблемы: ____________________________________
_______________________________________________________________
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
.
Fox Software, Inc
FoxBASE+ Software Support Form
/Бланк системной поддержки FoxBASE+/
---------------------------------------------------------------
Фамилия _______________________________________________
Компания _______________________________________________
Адрес _______________________________________________
_______________________________________________
_______________________________________________
Телефон _______________________________________________
Конфигурация:
Версия FoxBASE+________________ Лицензия # __________________
Операционная система __________ Версия _____________________
Тип и модель процессора _______________________________________
Объем памяти __________________________________________________
Сеть __________________________ Версия сети _________________
Значения параметров конфигурации:
BUCKET_____ MVARSIZ______ MVCOUNT _________ TALK ________
SCOREBOARD________STATUS______ ESCAPE ___________
Приложения:[] гибкий диск [] информация с консоли
[] текст программы [] дополнительные замечания
[] дополнительно
Тип проблемы: [] Несовместимость с dBASE III PLUS версия ___
[] Запрос на изменение или модержнизацию
[] Проблема (повреждение или потеря данных)
[] Ошибка - программа дает неверные результаты
[] Невозможность работы
[] Работа возможна
Краткое описание проблемы: ____________________________________
_______________________________________________________________
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
.
Fox Software, Inc
FoxBASE+ Software Support Form
/Бланк системной поддержки FoxBASE+/
---------------------------------------------------------------
Фамилия _______________________________________________
Компания _______________________________________________
Адрес _______________________________________________
_______________________________________________
_______________________________________________
Телефон _______________________________________________
Конфигурация:
Версия FoxBASE+________________ Лицензия # __________________
Операционная система __________ Версия _____________________
Тип и модель процессора _______________________________________
Объем памяти __________________________________________________
Сеть __________________________ Версия сети _________________
Значения параметров конфигурации:
BUCKET_____ MVARSIZ______ MVCOUNT _________ TALK ________
SCOREBOARD________STATUS______ ESCAPE ___________
Приложения:[] гибкий диск [] информация с консоли
[] текст программы [] дополнительные замечания
[] дополнительно
Тип проблемы: [] Несовместимость с dBASE III PLUS версия ___
[] Запрос на изменение или модержнизацию
[] Проблема (повреждение или потеря данных)
[] Ошибка - программа дает неверные результаты
[] Невозможность работы
[] Работа возможна
Краткое описание проблемы: ____________________________________
_______________________________________________________________
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
---------------------------------------------------------------
.
яш1.5
9 Многопользовательская система FoxBASE+
_______________________________________________________________
Многопользовательская система FoxBASE+ сохраняет все воз-
можности, имеющиеся в однопользовательской системе FoxBASE+ для
операционной системы MS/PC DOS и дополнительно предоставляет
возможность доступа и последующего редактирования файлов данных
общего пользования. Все версии FoxBASE+ поддерживают многополь-
зовательский синтаксис с тем, чтобы многопользовательские прог-
раммы могли работать в однопользовательском варианте.
В настоящей главе предоставлена информация о возможностях и
функциях, реализованных в многопользовательской системе
FoxBASE+. Информация о различных типах сетей, поддерживаемых
FoxBASE+ (например, Novell) не включена в настоящее описание.
Если у вас возникли вопросы в отношении максимально возможного
количества пользователей, минимально необходимого объема памяти
или дополнительного оборудования, необходимого для функциониро-
вания таких систем, вам следует обратиться к документации по со-
ответствующей системе.
Кроме того, у вас может возникнуть необходимость обратиться
к разделам "Команды" и "Функции" руководства для получения ин-
формации о синтаксисе и работе команд и функций FoxBASE+.
9.1 Системные требования
_______________________________________________________________
Аппаратура
Ниже приведены минимальные требования к аппаратуре для ра-
боты FoxBASE+. Просим вас иметь в виду, что ваш выбор многополь-
зовательской операционной системы и типа сети может продиктовать
дополнительные требования к аппаратуре. В отношении требований к
аппаратуре вам следует обратиться к документации по соответству-
ющему программному обеспечению.
* Компьютер, поддерживающий FoxBASE+
* По крайней мере 360 Кбайт свободной памяти
Дополнительная информация по этому вопросу приведена в гла-
ве 1 в разделе "Требования к аппаратуре".
Программное обеспечение
Требуется программное обеспечение сети, которое поддержива-
ет стандартный интерфейс NETBIOS и совместимо с DOS 3.1. В боль-
шинстве случаев имеющиеся сетевые системы удовлетворяют этим
требованиям, включая и систему Novell Advanced NetWare (версия
1.02 или выше) и программу IBM PC NetWork.
FoxBASE+ также предоставляет пользователям Novell Advanced
Netware версии 2.00 и выше средства более удобного управления
принтерами и очередями.
Перед началом работы
_______________________________________________________________
В данном разделе приведена специфическая информация о мно-
гопользовательской системе FoxBASE+. Информацию о номере и про-
цедуре установки вашей системы FoxBASE+, компиляции программных
файлов, выполнении программ FoxBASE+ и другую, относящуюся к
FoxBASE+, вы можете найти в главе 2, "Начало работы".
Совместимость многопользовательской системы FoxBASE+
Многопользовательская система FoxBASE+ совместима по син-
таксису и семантике с программой Administrator dBASE III PLUS.
Программы, которые работают под управлением dBASE III PLUS
Administrator, будут также правильно работать в многопользова-
тельской системе FoxBASE+.
Существуют однако несколько областей, в которых многополь-
зовательская система FoxBASE+ предоставляет более широкие воз-
можности, чем dBASE III PLUS Administrator.
Основной областью расширения возможностей являются опера-
ции, требующие доступа только для чтения баз данных. В общем
случае, при операциях чтения базы данных без внесения изменений
запирания баз данных не производится.
Например, в dBASE III PLUS REPORT FORM не будет работать с
базой данных, если другой пользователь запер хотя бы одну за-
пись. В многопользовательской системе FoxBASE+ REPORT FORM смо-
жет работать с базой данных в том случае, если другой пользова-
тель запер одну запись файла или даже весь файл. Тот же подход
используется и в других аналогичных операциях, например TOTAL,
SUM, SORT, и т.д.
Это позволяет пользователям более жестко контролировать
свои прикладные программы. Конечно в ситуациях, когда необходима
самая последняя информация (например, общий отчет по учетным
книгам и т.д.) придется запирать базу данных, по которой форми-
руется отчет.
_____________________________________________________________
! Во избежания повреждения данных не допускайте исполь- !
! зоание dBASE III PLUS LAN PACK совместно с FoxBASE+. !
!___________________________________________________________!
Расширения многопользовательской системы FoxBASE+
FoxBASE+ предоставляет несколько дополнительных возможнос-
тей по отношению к dBASE III PLUS Administrator. К ним относят-
ся:
* Функция SYS, описанная в разделе "Функции" данной главы. Эта
возможность предоставляет разработчикам дополнительную воз-
можность доступа к основным параметрам системы, которые по-
могут эффективно и полностью использовать многопользователь-
скую систему.
* Пользователям сети Novell Advanced Netware версии 2.00 и вы-
ше предоставляется возможность более гибкого управления
принтерами и очередями. Существует возможность контроля фор-
матов, количества копий, управления флагом заголовка страни-
цы, и т.д. при выводе отчетов из FoxBASE+.
Неподдерживаемые возможности
Исходная версия многопользовательской системы FoxBASE+ не
влкючает в себя возможностей по поддержке следующих процедур
программы dBASE III PLUS Administrator.
* Кодирование файлов
* Другие возможности команды PROTECT
* LIST/DISPLAY USERS
Работа в многопользовательской системе FoxBASE+
Далее подразумевается, что вы установили свою сеть в соот-
ветствии с инструкциями, приведенными в документации по вашей
сети.
- Если это требуется вашей сетью, загрузите команду DOS
SHARE.
- Запустите сеть в соответствии с инструкцией, приведенной в
документации по сети.
- Введите команду MFOXPLUS или MFOXPRUN как это описано в
главе 2 настоящего руководства.
9.3 Глоссарий
_______________________________________________________________
Для облегчения восприятия описания возможностей многополь-
зовательской системы FoxBASE+, мы привели определения терминов,
которые будут использоваться в данном разделе описания.
Автоматическое запирание файлов (Automatic file locking)
Механизм, посредством которого файл может быть автоматичес-
ки заперт при вводе определенных команд. После завершения выпол-
нения команды файл отпирается. Кроме того упоминается при кос-
венном запирании файлов.
Автоматическое запирание записей (Automatic record locking)
Механизм, посредством которого запись может быть автомати-
чески заперта при вводе определенных команд. После завершения
выполнения команды запись отпирается. Кроме того упоминается при
косвенном запирании записей.
Конфликт (Collision)
Ситуация, возникающая при попытке пользователя использовать
запись, которая в текущий момент используется другим пользовате-
лем. Когда это происходит, может произойти повреждение данных,
если несколько пользователей собираются корректировать запись.
Многопользовательская система FoxBASE+ предоставляет полную за-
щиту от повреждения данных в таких ситуациях посредством исполь-
зования возможностей запирания записей и файлов.
Глухой замок (Deadly embrace)
Ситуация, возникающая, когда один пользователь запер запись
и хочет использовать другую запись, которая заперта другим поль-
зователем, который, в свою очередь хочет использовать запись,
запертую первым пользователем. Такие случаи редки, но их вероят-
ность возрастает по мере увеличения периода, в течение которого
запись находится в запертом состоянии.
Исключительное использование (Exclusive use)
Если пользователь открывает файл для исключительного ис-
пользования, другие пользователи не могут использовать этот
файл; ни чтение, ни запись не разрешены. Хотя некоторые много-
пользовательские операции требуют исключительного использования
баз данных, в общем случае необходимо осторожно относиться к ис-
пользованию этого режима, поскольку это связано с введением ог-
раничений для других пользователей.
Запирание файла (File Locking)
Механизм, посредством которого пользователь запрещает дру-
гим пользователям изменять (но не считываить) записи в файле ба-
зы данных. Запирание файлов предотвращает повреждение данных,
которое может произойти в случае, если один пользователь вносит
изменения в одну или несколько записей в файле в тот момент,
когда другой пользователь требует исключительного доступа для
корректировки этого же файла. Помните, что ограничения для дру-
гих пользователей доступа к записям в общем случае снижает эф-
фективность работы. Из этого правила, однако, существуют исклю-
чения. Например, при выполнении общей корректировки файла базы
данных он должен быть заперт.
Косвенное запирание файла (Implicit File Locking)
Смотрите "Автоматическое запирание файлов".
Косвенное запирание записи (Implicit Record Locking)
Смотрите "Автоматическое запирание записей".
Многопользовательская среда
Рабочая среда, основанная на сочетании многопользователь-
ской аппаратуры и программного обеспечения, которая обеспечивает
двум или более пользователям возможность одновременно использо-
вать файлы данных и периферийные устройства.
Запирание записи (Record Locking)
Механизм, посредством которого пользователь лишается воз-
можности изменения записи (дополнение или корректирование записи
в файле базы данных), которая в текущий момент корректируется
другим пользователем. Запирание записей предотвращает поврежде-
ние данных, которое может произойти в случае, если один пользо-
ватель вносит изменения в запись в тот момент, когда другой
пользователь требует исключительного доступа для корректировки
этой же записи.
9.4 Многопользвательское программирование
_______________________________________________________________
Наиболее очевидным и важным отличием между хорошими одно- и
многопользовательскими программами является предоставление воз-
можности нескольки пользователям одновременно работать с базами
данных и разрешение неизбежных в таких случаях конфликтов. При
этом обычно в программу требуется вносить не очень большие изме-
нения.
_____________________________________________________________
! Необходимо предусматривать во всех программах, которые не !
! используют базы данных в исключительном режиме, средства !
! разрешения конфликтов. !
!___________________________________________________________!
Требования к общему доступу
Многие команды FoxBASE+ подразумевают в процессе выполнения
исключительное использование всей базы данных или ее части. К
таким командам относятся все команды, способные вносить измене-
ния в базу данных или ее часть, они требуют при этом исключи-
тельного доступа к изменяемой части базы данных.
Исключительный доступ может быть организован тремя способами:
* открыть базу данных с исключительным доступом,
* предоставить командам, которые на это способны,
автоматически запирать соответствующие области базы
данных,
* вручную запереть области базы данных в вашей программе с
использованием команд и функций, существующих для этой
цели.
Если вы выберете любой из первых двух способов, в вашей
программе должна быть предусмотрена процедура ON ERROR для раз-
решения конфликтов, которые могут возникнуть, если два пользова-
теля работают одновременно. Если вы выберете третий вариант, вам
следует внести изменения в свои программы для использования ко-
манд запирания, описанных далее.
Исключительное использование базы данных
База данных открыта для исключительного использования, ес-
ли:
- установлено состояние EXCLUSIVE ON при первом занесении
базы данных в область USE, или
- путем использования ключевого слова EXCLUSIVE при занесении
файла в область USE:
USE <имя файла> EXCLUSIVE
Если файл был открыт в режиме исключительного использова-
ния, другие пользователи не смогут использовать этот файл. Отк-
рытие файла в режиме исключительного использования является
единственным способом предотвратить доступ для чтения базы дан-
ных других пользователей. Запирание базы данных при помощи функ-
ции FLOCK() не помешает многочисленным пользователям читать за-
писи. База данных не может быть открыта в режиме исключительного
использования, если она уже открыта другим пользователем. Если
база данных не может быть открыта в режиме исключительного ис-
пользования, выводится сообщение об ошибке: File is in use by
another /Файл используется другим/.
Операции, требующие исключительного открытия баз данных
Некоторые команды требуют, чтобы база данных использовалась
в исключительном режиме. К таким командам относятся:
* INSERT [BLANK]
* MODIFY STRUCTURE
* PACK
* REINDEX
* ZAP
Если предпринимается попытка выполнить какую-либо из этих
команд не в режиме исключительного использования файла базы дан-
ных, выводится сообщение об ошибке: Exclusive open file is
required /Требуется файл открытый для исключительного использо-
вания/.
Операции с автоматическим запиранием.
Следующие команды выполняют автоматическое запирание облас-
ти базы данных, на которую она воздействует, если эта область
еще не заперта или если база данных не была открыта в режиме ис-
ключительного использования. Если вы не запираете вручную, вы
должны предусмотреть в своей программе процедуру ON ERROR для
обработки конфликтов, которые могут возникнуть при использовании
таких команд.
Если файл не был открыт в режиме исключительно использова-
ния или заперт функцией FLOCK(), команды из приведенного ниже
списка автоматически запрут весь файл при выполнении.
* APPEND
* APPEND FROM
* BROWSE
* DELETE <диапазон>
* INDEX
* JOIN
* RECALL <диапазон>
* REPLACE <диапазон>
* UPDATE
Обратите внимание, что команды DELETE, RECALL и REPLACE с
указанием диапазона запирают всю базу данных, в отличие от тех
же команд с указанием параметров NEXT 1 или RECORD
|