Sources
Delphi Russian Knowledge Base
DRKB - база знаний по Дельфи в рунете, составленная Виталием Невзоровым

ГЛАВА 4. УТИЛИТЫ

01.01.2007

(Руководство по Btrieve)

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

Три утилиты NetWare Btrieve:

ПРОГРАММА BUTIL

Программа BUTIL содержит полный набор команд для применения при создании, поддержке и восстановлении файлов. Следующие разделы описывают, как запускать BUTIL, контролировать сообщения об ошибках BUTIL, создавать BUTIL-описания файлов и файлы альтернативной последовательности поиска. Команды BUTIL представлены в алфавитном порядке под заголовком "Команды BUTIL"

ЗАПУСК BUTIL

Для запуска BUTIL выполните следующие шаги:

  1. Стартуйте программу BREQUEST до запуска BUTIL. Если Вам нужна помощь в этой процедуре, см. "Программа BREQUEST" в Главе 3.

  2. Введите команду BUTIL в следующем формате:

     <Устройство>:BUTIL-COMMAND[Параметры][-O<Владелец>]
    

Замените <Устройство> именем накопителя или другого устройства, содержащего програмные файлы Btrieve. вы можете опустить устройство, если Вы намерены использовать диск, заданный по умолчанию.

Замените -COMMAND именем Btrieve-команды (COPY, LOAD и т.д.), которую Вы хотите использовать. Вы должны поставить перед командой черточку (-).

Замените <Параметры> информацией, необходимой BUTIL для выполнения выбранной Вами команды. Команды описаны под заголовком соответствующей команды.

Замените <Владелец> или именем владельца Btrieve-файла, к которому будет иметь доступ команда, или звездочкой (*). Если Вы используете звездочку вместо имени владельца, BUTIL подскажет Вам имя владельца файла. BUTIL требует параметр -O<Владелец>, если какой-либо из Btrieve-файлов, заданных в команде, требует имя владельца.

BUTIL отбрасывает ведущие пробелы, тем не менее звездочка (*) - первый непробельный символ параметра -O.

Если Вы задаете два Btrieve-файла в команде, Вы должны задать параметр -O дважды, по разу для каждого файла. Если только второй файл имеет имя владельца, BUTIL игнорирует первое имя владельца.

Вы можете применять опцию "звездочка" дважды.

Если Вы введете команду BUTIL без параметров, BUTIL покажет правильный формат команды для всех команд. Вы можете переназначить этот выход в файл или на принтер с помощью переназначения DOS.

СООБЩЕНИЯ ОБ ОШИБКАХ BUTIL

BUTIL возвращает сообщения об ошибках двумя способами, в зависимости от того, запускаете ли Вы ее из командной строки или из командного файла.

Если какие-либо ошибки появляются во время запуска BUTIL из командной строки, на экране появится сообщение, описывающее проблему. См. Приложение B для информации о сообщениях об ошибках BUTIL и Btrieve.

Если какие-либо ошибки появляются во время запуска BUTIL из командного файла, BUTIL вернется на уровень ошибки DOS.

Следующая таблица перечисляет и описывает уровни ошибок BUTIL.

Уровень ошибки | Описание
       0       | Запуск утилиты завершен без ошибок.
       1       | Запуск утилиты завершен, но появляются нефатальные ошибки, такой как код статуса 5 (Дубликат значения ключа).
       2       | Запуск утилиты не завершен из-за появления фатальной ошибки, такой как код статуса 2 (ошибка ввода/вывода).

Вы можете проверить уровень ошибки DOS, включая в командном файле после команды BUTIL условие подобное следующему:

 IF ERRORLEVEL n ECHO сообщение

Замените n номером уровня ошибки BUTIL. Замените "сообщение" значением сообщения.

Из-за способа, как DOS тестирует уровни ошибок в командах командного файла, Вы всегда должны тестировать уровень ошибки 2 первым. Пример части командного файла, приведенный ниже, иллюстрирует один из способов анализа уровней ошибки BUTIL.

...
BUTIL-LOAD LOADFILE BTRFILE_OOWNERNAME
IF ERRORLEVEL 2 ECHO Фатальная ошибка:BUTIL операция не закончена
IF ERRORLEVEL 1 ECHO Не фатальная ошибка:Проверте на дубликаты в загружаемом файле.
IF ERRORLEVEL 0 ECHO Операция закончена успешно.
...

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

ОПИСАНИЕ ФАЙЛОВ BUTIL

Некоторые из BUTIL-команд, включая CREATE, SAVE и SINDEX, используют ОПИСАНИЕ ФАЙЛА. Описание файла - это последовательный ASCII файл, содержащий некоторую информацию, необходимую Btrieve для выполнения этих операций.

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

Описание элементов файла

Описание файлов состоит из списка ЭЛЕМЕНТОВ. элемент состоит из ключевого слова, за которым следует знак равенства (=), а затем следует значение. Каждый элемент в описании файла соответствует какой-либо характеристике Btrieve-файла или определению ключа.

Полное описание Btrieve-файла и характеристик ключей см. в Главе 2 "Управление Btrieve-файлами".

Ниже содержится объяснение описаний элементов файла. Описания некоторых элементов файла помечены "необязательное" и могут быть опущены при описании файла, если они не требуются для файла или определения ключа. Элементы представлены в том порядке, в котором они должны появляться в описании файла. Под заголовком каждого элемента Вы найдете следующие подзаголовки.

За подзаголовками следует краткое описание элемента и как его применять.

ПРИМЕЧАНИЕ:

Значения в описаниях элементов заключены в скобки. Не заключайте в скобки значения в Вашем описании файла.

Record Length (Длина записи)

Элемент: record=<nnnn>
Граница: 4-4090
Команды: CREATE

Элемент "Record Length" определяет длину логической записи данных в файле. Для записей фиксированной длины это значение должно соответствовать длине параметра буфера данных, что выполняет операции над файлом. Если Вы используете записи переменной длины, задаваемая Вами длина записи должна соответствовать длине фиксированной части записи.

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

Variable Length Records (Записи переменной длины)

Элемент: variable=<y | n>
Граница: нет
Команды: CREATE

Элемент "Variable Length Records" задает, хотите ли Вы чтобы файл содержал записи переменной длины.

Задайте "y", если Вы хотите, чтобы создаваемый Вами файл содержал записи переменной длины. Иначе, задайте "n".

Blank Truncation (Отсечение пробелов)

Элемент: truncation=<y|n>
Граница: нет
Команды: CREATE

Элемент "Blank Truncation" задает, хотите ли Вы, чтобы Btrieve выполнял отсечение пробелов у записей переменной длины.

Ключевое слово truncation требуется только6 если Вы задаете "y" для записи переменной длины.

Задайте "y", если Вы хотите, чтобы Btrieve использовал отсечение пробелов. Иначе, задайте "n".

Data Compression (Сжатие данных)

Элемент: compress=<y|n>
Граница: нет
Команды: CREATE

Элемент "Data Compression" задает, хотите ли Вы, чтобы Btrieve выполнял сжатие данных над записями, добавляемыми в файл.

Задайте "y", если Вы хотите, чтобы Btrieve выполнял сжатие данных. Иначе, задайте "n".

Key Count (счетчик ключа)

Элемент: key=<nn>
Граница: 1-24
Команды: CREATE

Элемент "Key Count" задает число ключей, определенных для файла. Если Вы зададите значение 0 для этого элемента, Btrieve создаст файл, состоящий только из данных. Иначе, Btrieve создаст или стандартный Btrieve-файл или файл, состоящий только из ключей, в зависимости от значения, заданного для элемента "Include Data".

Для значений больших 0 Вы должны определить по крайней мере 1 ключ, но не более 8, если размер страницы равен 512 байтам.

Если размер страницы - 102 байта или больше, Вы можете определить до 24 ключей.

Page Size (Размер страницы)

Элемент: page=<nnnn>
Граница: 512-4096
Команды: CREATE

Элемент "Page Size" задает физический размер страницы файла в байтах. Вы можете задавать любое число, кратное 512, до 4096.

Page pre-allocation (Перераспределение страницы)

Элемент: allocation=<nnnnn>
Граница: 1-64K
Команды: CREATE

Элемент "Page pre-allocation" задает количество страниц, которое вы хотите перераспределить в файле. Если Вы не хотите перераспределять какие-либо страницы, не включайте это ключевое слово в Ваше описание файла.

Replace Existing File (необязательный) (Замена существующего файла)

Элемент: replace=<y|n>
Граница: нет
Команды: CREATE

Элемент "Replace Existing File" показывает, что Вы не хотите, чтобы Btrieve создавал новый файл, если файл с таким же именем уже существует, и предупредил Вас о существовании файла.

Задайте "n", если Вы не хотите создавать новый файл вместо существующего файла.

Если Вы хотите заменить существующий Btrieve-файл на новый пустой файл с тем же самым именем, или задайте "y", или не включайте этот элемент в описание файла.

Include Data (необязательный) (Включение данных)

Элемент: data=<y|n>
Граница: нет
Команды: CREATE

Элемент "Include Data" задает, хотите ли Вы, чтобы Btrieve создал файл, состоящий только из ключей. Задайте "n", если Вы хотите, чтобы Btrieve создал файл, состоящий только из ключей.

Для создания стандартного файла или задайте "y" для элемента "Include Data", или опустите этот элемент в описании файла.

Для создания файла, состоящего только из данных, задайте "y" для элемента "Include Data" и установите элемент "Key Count" в 0.

Free Space Threshold (Граница свободного пространства)

Элемент: fthreshold=<10|20|30>
Граница: 10%, 20% или 30% от размера страницы
Команды: CREATE

Элемент "Free Space Threshold" задает величину свободного пространства, которую Вы хотите, чтобы Btrieve зарезервировал на странице файла для расширения для записей переменной длины. Заданное Вами значение выражено в процентах от размера страницы.

Не включайте элемент "Free Space Threshold" в описание файла, если файл не допускает записи переменной длины. Если вы задаете "variable=y" и не задаете границу свободного пространства, Btrieve будет использовать значение 5% от размера страницы, заданное по умолчанию.

Примечание:

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

Key Position (Позиция ключа)

Элемент: position=<nnn>
Граница: 1-<длина записи>
Команды: CREATE, INDEX, SINDEX

Элемент "Key Position" показывает позицию сегмента ключа в записи. Позиция ключа должна быть по крайней мере равна 1 и не может быть больше значения, заданного Вами для длины записи.

Определяемые Вами ключи могут перекрываться.

Key Length (Длина ключа)

Элемент: length=<nnn>
Граница: 1-<ограничение для типа ключа>
Команды: CREATE, INDEX, SINDEX

Элемент "Key Lehgth" определяет длину поля ключа или ключевого сегмента. Сумма длины ключа и начальной позиции не должна превышать заданную длину записи файла. длина ключа должна быть показывает позицию сегмента ключа в записи. Позиция ключа должна быть по крайней мере равна 1 и не может быть больше значения, заданного Вами для длины запсии.

Определяемые Вами ключи могут перекрываться.

Duplicate Key Values (Дубликаты значений ключа)

Элемент: duplicates=<y|n>
Граница: нет
Команды: CREATE, INDEX, SINDEX

Элемент "Duplicate Key Values" задает, хотите ли Вы допустить, чтобы более чем одна запись в файле содержала одно и то же значение поля ключа.

Задайте "y", если Вы хотите допустить дубликаты значений ключа. Иначе, задайте "n".

Modifiable Key Values (Модифицируемые значения ключа)

Элемент: modifiable=<y|n>
Граница: нет
Команды: CREATE, INDEX, SINDEX

Элемент "Modifiable Key Values" задает, хотите ли Вы позволить прикладной программе модифицировать значение ключа во время операции Update.

Задайте "y", если Вы хотите, чтобы значения этого ключа были модифицируемыми. Иначе, задайте "n".

Key Type (Тип ключа)

 Элемент: type=<значение типа ключа>
 Граница: Любой из типов Btrieve-ключа
 Команды: CREATE, INDEX, SINDEX

Элемент "Key Type" задает тип данных для ключа. Вы можете задать все слово (такое как "float") или только первые две буквы слова ("fl" для типа float). См. Приложение G для дополнительной информации о типах ключа.

Descending Sort Order (необязательный) Убывающий порядок сортировки

Элемент: descending=y
Граница: нет
Команды: CREATE, INDEX, SINDEX

Элемент "Descending Sort Order" задает, хотите ли Вы, чтобы Btrieve сортировал индекс в убывающем порядке.

Включите элемент "Descending Sort Order" и задайте "y", если Вы хотите, чтобы Btrieve сортировал значения ключа в убывающем порядке. Если Вы не включите этот элемент, Btrieve отсортирует значения ключа в возрастающем порядке.

Alternate Collating Sequence (Альтернативная последовательность поиска)

Элемент: alternate=<y|n>
Граница: нет
Команды: CREATE, INDEX, SINDEX

Элемент "Alternate Collating Sequence" задает, хотите ли Вы, чтобы сортировка данных осуществлялась в последовательности, отличающейся от стандартной ASCII последовательности. Это полезно, если вы хотите применять алфавит, отличный от английского, или если вы хотите просматривать символы нижнего регистра как символы верхнего регистра.

Вы можете задать альтернативную последовательность поиска только для ключей типа string, lstring или zstring (строка, l-строка или z-строка). Если Вы хотите, чтобы Btrieve сортировал индекс с помощью альтернативной последовательности поиска, введите "y" в это поле. Иначе, задайте "n".

Manual Key (необязательный) (Ручной ключ)

Элемент: manual=<y|n>
Граница: нет
Команды: CREATE, INDEX, SINDEX

Элемент "Manual Key" задает, что определяемый Вами ключ или сегмент ключа - ручной. Если вы определите сегмент ключа как ручной, Вы должны задать пустое значение для этого сегмента.

Если ключ - сегментированный ключ и Вы определяете один сегмент как ручной, Вы должны определить все сегменты как ручные.

Null Key (Пустой ключ)

Элемент: null=<y|n>
Граница: нет
Команды: CREATE, INDEX, SINDEX

Элемент "Null Key" задает, должен ли определяемый Вами ключ иметь пустое значение. Если Вы определяете пустое значение для одного сегмента сегментированного ключа, Вы должны определить пустое значение для всех сегментов этого сегментированного ключа.

Пустые значения, определяемые Вами для каждого сегмента, могут быть разными. Вы можете включить элемент "Null Key" в файл-описание для команды INDEX. Однако, INDEX не рассматривает какое-либо заданное Вами пустое значение. BUTIL допускает его для поддержки постоянных форматов для файлов-описаний CREATE, INDEX и SINDEX.

Задайте "y", если Вы хотите определить пустое значение для этого ключа. Иначе, задайте "n".

Null Key Value (Пустое значение ключа)

Элемент: value=<nnn>
Граница: любое 1-байтовое шестнадцатиричное значение
Команды: CREATE, INDEX, SINDEX

Элемент "Null Key value" задает в шестнадцатиричном виде значение, которое Вы хотите, чтобы Btrieve распознавал как пустой символ для ключа. Типичные пустые значения - 20 как пробел и 0 как двоичный ноль. Включайте этот элемент только, если Вы определяете ключ как допускающий пустые значения. Если Вы задаете "n" для элемента " Null Key", не включайте элемент "Null Key Value" в файл-описание.

Segmented Key (Сегментированный ключ)

Элемент: segment=<y|n>
Граница: нет
Команды: CREATE, INDEX, SINDEX

Элемент "Segmented Key" задает, имеет ли определяемый Вами ключ еще какие-либо сегменты.

Задайте "y", если ключ имеет другой сегмент. Задайте "n", если Вы определяете несегментированный ключ или последний сегмент сегментированного ключа.

Alternate Collating Sequence Filename (Имя файла альтернативной последовательности поиска)

Элемент: name=<имя файла>
Граница: имя файла
Команды: CREATE, INDEX, SINDEX

Элемент "Alternate Collating Sequence Filename" задает имя файла, содержащего альтернативную последовательнось для создаваемого Вами файла, вы можете включать любое число уровней директорий в имени файла.

Если вы задаете элемент "Alternate Collating Sequence Filename", не включайте это ключевое слово в Ваш файл-описание.

Правила для файлов-описаний

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

ФАЙЛЫ АЛЬТЕРНАТИВНОЙ ПОСЛЕДОВАТЕЛЬНОСТИ ПОИСКА

Первые 265 байт файла альтернативной последовательности поиска содержат определение последовательности поиска, отличной от стандартной ASCII последовательности. Если Вы хотите создать файл альтернативной последовательности поиска, Вы должны написать прикладну программу, генерирующую файл в заданном ниже формате.

Смещение Длина Описание
0 1 Байт знака. Этот байт должен всегда содержать шестнадцатиричное значение AC.
1 8 8-байтовое имя, которое однозначно идентифицирует альтернативную последовательность поиска для Btrieve.
9 256 256-байтовая таблица, содержащая значение сортировки для каждого символа. Храните значение для каждого символа сортировки со смещением, соответствующим представлению символа в ASCII последовательности поиска. Например, для сортировки символа A как чего-то другого чем 0x41, храните новое значение сортировки со смещением 0x41 в этой таблице.

Например, если вы хотите вставить символ с шестнадцатиричным значением 5D между буквами U (шестнадцатиричное 55) и V (шестнадцатиричное 56) в Вашей последовательности, байт 5D в этой последовательности будет содержать значение 56, а байты 56-5C в этой последовательности будет содержать значения 57-5D.

Файл UPPER.ALT, который Вы найдете на Вашей програмной дискете, содержит пример альтернативной последовательности поиска. Эта частная последовательность сравнивает символы верхнего и нижнего регистра так, как будто они бы были все в верхнем регистре. Если Вы имеете множество файлов с различными альтернативными последовательностями поиска, все последовательности должны иметь различные имена.

КОМАНДЫ BUTIL

Следующие разделы описывают, как применять команды BUTIL:

Команда Функция
CLONE Создает пустой Btrieve-файл с теми же самыми спецификациями, что и у существующего файла.
COPY Копирует содержимое одного Btrieve-файла в другой Btrieve-файл
CREATE Создает Btrieve-файл
DROP Отбрасывает дополнительный индекс
EXTEND Создает разделенный файл
INDEX Создает внешний индексный файл
LOAD Загружает содержимое стандартного последовательного файла в Btrieve-файл
RECOVER Восстанавливает данные поврежденого Btrieve-файла
RESET Закрывает файлы данных и освобождает ресурсы
SAVE Сохраняет содержимое Btrieve-файла в стандартном последовательном файле
SINDEX Создает дополнительный индекс
STAT Показывает статистику по атрибутам и текущим размерам файла
STOP Завершает BREQUEST и локальный Record Manager (если он заружен) и удаляет их из памяти
VER Показывает версию Btrieve и номера пересмотра

CLONE

Формат команды

BUTIL-CLONE <Существующий файл><Новый файл>[-O <Владелец>]

Описание

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

Как применять CLONE

Для запуска CLONE введите команду в показанном выше формате. Вместо <Существующий файл> введите имя Btrieve-файла, который Вы хотите получить. Вы можете задать полное имя пути, если требуется.

Вместо <Новый файл> введите имя, которое Вы хотите использовать для нового пустого Btrieve-файла. Вы можете задать полное имя пути, если требуется. Вместо <Владелец> введите имя владельца существующего файла, если оно требуется. Новый файл будет с именем владельца существующего файла.

Пример

Следующая команда получает файл NEWINV08-14-92T из файла INVOICE08-14-92T. Имя владельца файла INVOICE08-14-92T - "Sandy"

 BUTIL-CLONE INVOICE08-14-92T NEWINV08-14-92T -O Sandy

COPY

Формат команды

 BUTIL-COPY <Входной файл><Выходной файл>[-O <Владелец1>
                                         [-O<Владелец2>]]

Описание

Команда COPY копирует содержимое одного Btrieve-файла в другой. Наиболее общее применение COPY - изменение характеристик ключей (таких как позиция ключа, длина ключа или значения ключей- дубликатов) Btrieve-файла.

COPY берет каждую запись из входного файла и вставляет ее в выходной файл, используя операции Btrieve Get и Insert. COPY выполняет за один шаг ту же самую функцию, что и SAVE и следуемая за ней LOAD.

Как применять COPY

Для запуска COPY введите команду в показанном выше формате. Замените <Входной файл> на имя Btrieve-файла, из которого Вы пересылаете записи. Вы можете задать полное имя пути, если требуется.

Замените <Выходной файл> на имя Btrieve-файла, в который Вы хотите вставить записи. Файл может быть как пустой, так и нет. Вы можете задать полное имя пути, если требуется. Замените <Владелец1> и <Владелец2> именами владельцев Btrieve- файлов, если требуется. Если <Входной файл> требует имя владельца, Вы можете задать имя для <Владелец1> или использовать опцию "звездочка", описанную в начале этой главы. Если <Выходной файл> требует имя владельца, испоьзуйте обе опции <Владелец1> и <Владелец2>. Если выходной файл не требует имя владельца, Вы можете оставить пробел вместо <Владелец1>. Используйте <Владелец2> для задания имени владельца для <Выходной файл>.

После того, как записи были скопированы из входного файла в выходной файл, COPY отобразит на экране суммарное число скопированных записей.

Пример

Следующая команда копирует записи из файла CUSTOMER08-14-92T в файл ACCTRECV08-14-92T . Файл CUSTOMER08-14-92T не требует имя владельца.

Файл ACCTRECV08-14-92T имеет имя владельца "Pam".

 BUTIL-COPY CUSTOMER08-14-92T ACCTRECV08-14-92T -O -O Pam

CREATE

Формат команды

BUTIL-CREATE <Новое имя файла><Файл-описание>

Описание

Команда CREATE генерирует пустой Btrieve-файл, используя характеристики заданные в файле-описании.

Как применять CREATE

До того, как Вы сможете запустить CREATE, Вы должны сперва сгенерировать файл-описание в текстовом редакторе. Файлы- описанияля описаны в "Файлы-описания BUTIL".

Для запуска CREATE введите команду в показанном выше формате. Замените <Новое имя файла> на имя файла, который Вы хотите создать. Вы можете задать полное имя пути, если требуется.

Примечание:

Если имя, заданное в <Новое имя файла> - имя существующего Btrieve-файла, BUTIL создаст новый пустой файл вместо существующего файла. Все данные, хранящиеся в существующем файле, будут потеряны и их нельзя будет восстановить.

Вместо <Файл-описание> введите имя файла-описания, содержащего спецификации для нового файла. Вы можете задать полное имя пути, если требуется.

Пример файла-описания для BUTIL-CREATE

Файл-описание, показанный на Рисунке 3.1, создает Btrieve-файл с размером страницы 512 байт и двумя ключами. Фиксированная часть записи - длиной 98 байт. Файл допускает записи переменной длины, но не использует отсечение пробелов. Файл использует сжатие данных. Граница свободного пространства установлена на 20%.

Btrieve будет перераспределять 100 страниц при создании файла.

Первый ключ (Ключ 0) - сегментированный ключ с двумя допускающими дубликаты, немодифицируемыми, строковыми сегментами с альтернативной последовательностью поиска, определенной в файле UPPER.ALT, и с пробелом вместо пустого значения.

Второй ключ (Ключ 2) - числовой ключ без сегментов, не допускающий дубликатов но позволяющий модификацию. Он отсортирован в убывающем порядке.

                    |    record=98 variable=y truncation=n
 Спецификации файла {    compress=y key=2 page=512
                    |    allocation=100 replace=n fthreshold=20

                    |    position=1 length=5 duplicates=y
 Ключ 0, сегмент 1  {    modifiable=n type=string alternate=y
                    |    null=y value=20 segment=y

                    |    position=6 length=10 duplicates=y
 Ключ 0, сегмент 2  {    modifiable=n type=string alternate=y
                    |    null=y value=20 segment=n

                    |    position=16 length=2 duplicates=n
 Ключ 1             {    modifiable=y type=numeric
                    |    descending=y alternate=n null=n
                    |    segment=n

 Имя файла          |
 альтернативной     {    name=UPPER.ALT
 последовательности |
 поиска             |

                  Рисунок 1.3
      Пример файла-описания для CREATE

Пример

Следующая команда создает Btrieve-файл по имени ACCTS.NEW, используя описание, обеспечиваемое файлом-описанием BUILD.DES

 BUTIL-CREATE ACCTS.NEW BUILD.DES

DROP

Формат команды

BUTIL-DROP <Btrieve-файл><Номер ключа>[-O <Владелец>]

Описание

Вы можете применять команду DROP для удаления дополнительного индекса из Btrieve-файла.

Btrieve обновляет номер ключа других дополнительных индексов, если требуется, до завершения команды DROP.

Как применять DROP

Для запуска DROP введите команду в показанном выше формате.

Замените <Btrieve-файл> на имя Btrieve-файла, из которого Вы удаляете индекс. Вы можете задать полное имя пути, если требуется.

Замените <Номер ключа> на номер дополнительного индекса, который Вы хотите отбросить.

Замените <Владелец> именем владельца файла, если он существует.

Пример

Следующий пример отбрасывает ключ с номером 6, дополнительный индекс, из файла MAILER.ADR Имя владельца файла - "Sales".

 BUTIL-DROP MAILER.ADR 6 -O Sales

EXTEND

Формат команды

BUTIL-EXTEND <Btrieve-файл><Расширение файла>[-O <Владелец>]

Описание

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

Как применять EXTEND

Для запуска EXTEND введите команду в показанном выше формате.

Замените <Btrieve-файл> на имя Btrieve-файла, который Вы хотите расширить. Вы можете задать полное имя пути, если требуется.

Замените <Расширение файла> на имя, которое Вы хотите использовать для расширения файла. Обязательно включите спецификацию устройства для нового устройства. Устройство должно отличаться от заданного Вами для первоначального файла. Вы можете задать полное имя пути, если требуется.

Замените <Владелец> именем владельца файла, если он существует.

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

Пример

Следующий пример расширяет файл MAILER.ADR в файл MAILER2.ADR в директорий \SALES устройства E. Имя владельца файла - "Sales".

 BUTIL-EXTEND MAILER.ADR E:\SALES\MAILER2.ADR -O Sales

INDEX

Формат команды

BUTIL-INDEX <Btrieve-файл><Индексный файл><Файл-описание>
                     [-O <Владелец>]

Описание

Команда INDEX строит внешний индексный файл, опираясь на поле, которое Вы предварительно не задали как ключ. Записи в новом файле состоят только из 4-байтового адреса каждой записи в первоначальном Btrieve-файле, за которым следует значение, по которому Вы хотите сортировать.

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

Как применять INDEX

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

Для запуска INDEX введите команду в показанном выше формате. Замените <Btrieve-файл> на имя существующего Btrieve-файла, для которого Вы хотите построить внешний индекс. Вы можете задать полное имя пути, если требуется.

Замените <Индексный файл> на имя файла, в котором Btrieve должен хранить внешний индекс. Вы можете задать полное имя пути, если требуется.

ПРИМЕЧАНИЕ:

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

Вместо <Файл-описание> введите имя создаваемого файла, содержащее определение нового ключа. Файл должен содержать определение каждого сегмента нового ключа. Вы можете задать полное имя пути, если требуется. См. "Файлы-описания BUTIL" для полной информации о файлах-описаниях. Замените <Владелец> именем владельца файла, если он существует.

Пример файла-описания для BUTIL-INDEX

Например, файл-описание на Рисунке 4.2 определяет новый ключ с одним сегментом. Ключ начинается в 30-ом байте записи и имеет длину в 10 байтов. Он допускает дубликаты, модифицируемый, строкового типа и не использует альтернативную последовательность поиска.

 position=30 length=10 duplicates=y modifable=y type=string
 alternate=n segment=n

После того, как Вы определили ключ для внешнего файла, INDEX создает файл. После создания файла INDEX отобразит на экране количество проиндексированных записей.

Пример

Следующая команда создает внешний индексный файл QUICKREF.IDX для файла CUSTOMER08-14-92T Файл CUSTOMER08-14-92T не требует имя владельца. Файл-описание, содержащий определение нового ключа, - NEWIDX.DES.

 BUTIL-INDEX CUSTOMER08-14-92T QUICKREF.IDX NEWIDX.DES

LOAD

Формат команды

BUTIL-LOAD <Входной файл><Btrieve-файл>[-O <Владелец>]

Описание

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

После того, как Btrieve передаст записи, он отобразит на экране суммарное число записей, загруженных в Btrieve-файл.

Как применять LOAD

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

Для запуска команды LOAD ведите команду в показанном выше формате.

Замените <Входной файл> на имя последовательного файла, содержащего записи для загрузки в Btrieve-файл. Вы можете задать полное имя пути, если требуется.

Замените <Btrieve-файл> на имя Btrieve-файла, в который Вы хотите добавлять записи. Вы можете задать полное имя пути, если требуется.

Замените <Владелец> именем владельца Btrieve-файла, если он существует.

LOAD ожидает, что каждая запись в <Входной файл> будет в следующем формате:

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

ЕСЛИ ВЫ ИСПОЛЬЗУЕТЕ ТЕКСТОВЫЙ РЕДАКТОР ПРИ СОЗДАНИИ ЗАГРУЖАЕМОГО ВАМИ ФАЙЛА, удостоверьтесь, что Вы дополнили каждую запись пробелами для достижения заданной вами в начале записи длины.

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

ЕСЛИ ВЫ ИСПОЛЬЗУЕТЕ ПРИКЛАДНУЮ ПРОГРАММУ ПРИ СОЗДАНИИ ЗАГРУЖАЕМОГО ВАМИ ФАЙЛА, удостоверьтесь, что Вы добавили в каждую запись возврат каретки и перевод страницы и включили конец файла в запись. Последовательные запросы ввода/вывода, обеспечиваемые большинством процессоров языков высокого уровня, добавляют автоматически символы возврата каретки, перевод строки и конца файла.

Рисунок 4.3 иллюстрирует правильный формат каждой записи в выходном файле. Допустим, что Btrieve-файл не допускает записи переменной длины и имеет длину записи, равную 40 байт.

40, Запись за разделителем "запятая". <CR/LF>
¦ ¦   \________________________/    ¦  ¦
¦ ¦                                 ¦  L- Возврат каретки/
¦ ¦          Данное                 ¦     перевод строки
¦ ¦                                 ¦
¦ ¦                                 L- 1 пробел для дополнения
¦ ¦                                    до соответствующей длины
¦ L------ Разделитель "запятая"     ¦
L-------- Длина записи

         Рисунок 4.3. Формат записи для выходного файла

Пример

Следующий пример загружает последовательные записи из файла MAILT в файл MAILER08-14-92T. Имя владельца для файла MAILER.ADR - "Sales".

 BUTIL-LOAD MAILT MAILER.ADR -O Sales

RECOVER

Формат команды

BUTIL-RECOVER <Btrieve-файл> <Выходной файл> [-O <Владелец>]

Описание

Команда RECOVER читает записи из заданного Btrieve-файла, используя операции Step, и создает последовательный файл, совместимый с командой LOAD. Каждая запись заканчивается возвратом каретки и переводом строки (шестнадцатиричное 0D0A).

Файл завершается концом файла (шестнадцатиричное 1A). Вы можете применять RECOVER для поиска данных из поврежденного Btrieve-файла. Например, файл может быть поарежден при сбое системы во время доступа к файлу в ускоренном режиме. Команда RECOVER сможет найти многие, а возможно и все, записи из файла.

Вы можете затем использовать команду LOAD для добавления записей в новый неповрежденный Btrieve-файл.

Как применять RECOVER

Для запуска команды RECOVER введите команду в показанном выше формате.

Замените <Выходной файл> на имя файла, где RECOVER будет сохранять восстановленные записи. Вы можете задать полное имя пути, если требуется.

Замените <Btrieve-файл> на имя Btrieve-файла, который Вы хотите восстановить. Вы можете задать полное имя пути, если требуется.

Замените <Владелец> именем владельца Btrieve-файла, если он существует.

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

Disk volume is full. Enter new file name to continue
or . to quit, then press <ENTER>.

(Том диска заполнен. Введите имя нового файла для продолжения
 или . для выхода, затем нажмите <ENTER>.)

Для продолжения операции в другой выходной файл выполните одну из следующих инструкций:

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

Если логическое устройство заполнено, а Вы хотите завершить операцию RECOVER, введите точку (.) и нажмите <Enter>.

Пример

Следующий пример ищет записи из файла MAILER.ADR загружает их в последовательный файл файл MAILT. Имя владельца для файла MAILER.ADR - "Sales".

 BUTIL-RECOVER MAILER.ADR MAILT -O Sales

RESET

Формат команды

BUTIL-RESET <Номер связи>

Описание

RESET выполняет Btrieve-операцию Reset для освобождения ресурсов используемых BREQUEST и Record Manager на рабочей станции. Она освобождает все захваты, отменяет все незавершенные транзакции и закрывает все открытые файлы станции.

Вы можете освобождать рескрсы и чужой станции, введя номер связи станции <Номер связи>. Если Вы не знаете номер связи, консольные команды B ACTIVE, WHOAMI и USERLIST возвращают номера связей как часть своего выхода.

Как применять RESET

Для запуска команды RESET введите команду в показанном выше формате.

Вы можете запросить эту команду с любой рабочей станции сети, на которую загружен BREQUEST. Если Вы не задали номер станции, BUTIL-RESET освободит ресурсы данной станции.

Пример

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

 BUTIL-RESET 12

SAVE

Формат команды

BUTIL-SAVE <Btrieve-файл> <Выходной файл> <Индекс(Y/N)>
       [<Индексный файл> |<Номер ключа>][-O<Владелец>]

Описание

SAVE позволяет Вам искать записи из Btrieve-файлов и хранить их в отсортированном порядке в последовательном файле. Это - точная инверсия LOAD. Эта команда может быть использована в дополнение к LOAD так, что данные из Btrieve-файла могут быть легко извлечены, отредактированы и затем сохранены в другом Btrieve-файле.

SAVE генерирует одну запись в выходном файле идля каждой записи, читаемой из Btrieve-файла. Каждая запись начинается со своей длины и заканчивается возвратом каретки и переводом строки (0D0AH). Файл завершается концом файла (1AH) и совместим с большинством текстовых редакторов. SAVE не выполняет преобразования данных в записях. Поэтому, если Вы используете текстовый редактор для модификации выходного файла, содержащего двоичные данные, результат может быть непредсказуем.

После того, как SAVE завершит этот процесс, на экране будет отображено суммарное число сохраненных записей.

Как применять SAVE

Для запуска SAVE введите команду в показанном выше формате.

Замените <Btrieve-файл> на имя Btrieve-файла, содержащего записи для сохранения. Вы можете задать полное имя пути, если требуется.

Замените <Выходной файл> на имя последовательного файла, в котором Вы хотите, чтобы Btrieve хранил записи. Вы можете задать полное имя пути, если требуется.

Применяйте один из следующих методов для задания порядка, в котором Вы хотите, чтобы SAVE хранила записи:

Замените <Владелец> именем владельца Btrieve-файла, если он существует.

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

Disk volume is full. Enter new file name to continue
or . to quit, then press <ENTER>.

(Том диска заполнен. Введите имя нового файла для продолжения
или . для выхода, затем нажмите <ENTER>.)

Для продолжения операции в другой выходной файл выполните одну из следующих инструкций:

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

Если логическое устройство заполнено, а Вы хотите завершить операцию RECOVER, введите точку (.) и нажмите <Enter>.

Пример

Следующие два примера иллюстрируют, как применять SAVE для поиска записей файла.

Первый пример используют файл внешних индексов QUICKER.IDX для поиска записей мз файла CUSTOMER08-14-92T и сохранения их в последовательном файле CUST.SAV.

 BUTIL-SAVE CUSTOMER08-14-92T CUST.SAV Y QUICKREF.IDX

Следующий пример ищет записи из файла CUSTOMER08-14-92T, используя номер ключа 3 и сохраненяя их в последовательном файле CUST.SAV.

 BUTIL-SAVE CUSTOMER08-14-92T CUST.SAV N 3

SINDEX

Формат команды

 BUTIL-SINDEX <Btrieve-файл> <Файл-описание> [-O <Владелец>]

Описание

SINDEX создает дополнительный индекс для существующего Btrieve- файла. Номер ключа нового индекса будет на единицу выше номера предыдущего наивысшего ключа для этого файла.

Как применять SINDEX

До того, как Вы сможете запустиь SINDEX, Вы должны обеспечить определение дополнительного индекса в файле-описании. См. "Файл- описание BUTIL" для дополнительной информации о файлах-описаниях BUTIL. Смотрите примеры файла-описания в разделе "SAVE" для руководства по созданию файла-описания SINDEX.

Для запуска SINDEX введите команду в показанном выше формате.

Замените <Btrieve-файл> на имя существующего Btrieve-файла, для которого Вы хотите создать индекс. Вы можете задать полное имя пути, если требуется.

Замените <Файл-описание> именем Btrieve-файла, для которого Вы создаете индекс. Вы можете задать полное имя пути, если требуется.

Замените <Владелец> именем владельца Btrieve-файла, если он существует.

Пример

Следующий пример создает дополнительный индекс для файла MAILER.ADR. Имя файла-описания - SUPPIDX.DES. Имя владельца Btrieve-файла - "Sales".

 BUTIL-SINDEX CMAILER.ADR SUPPIDX.DES -O Sales

STAT

Формат команды

 BUTIL-RECOVER <Имя файла> [-O <Владелец>]

Описание

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

Как применять STAT

Для запуска STAT введите команду в показанном выше формате.

Замените <Имя файла> на имя существующего Btrieve-файла, по которому Вы хотите получить статистику. Вы можете задать любое количество уровней директорий в имени файла.

Замените <Владелец> именем владельца Btrieve-файла, если он существует.

Пример

Следующий пример - получение статистики по файлу ADDRESS.BTR.

Файл не имеет имени владельца.

 BUTIL-STAT ADDRESS.BTR

Этот пример показывает, что файл ADDRESS.BTR был определен с размером страницы в 1536 байт, длиной записи 147 байт и 2 ключами. Файл использует сжатие данных, допускает записи переменной длины и имеет границу свободного пространства 10%.

Первый ключ (Ключ 0) состоит из одного сегмента, начинается в позиции один, длиной 30 символов, допускает дубликаты, немодифицируемый, имеет строковый тип ключа и не имеет определенного пустого значения. Ключ 0 отсортирован в убывающем порядке.

Второй ключ (Ключ 1) допускает дубликаты, модифицируемый, ручной и имеет пустое значение - шестнадцатиричное 20 (пробел). Он состоит из двух сегментов.

Первый сегмент начинается в позиции 31, длиной в 30 байтов, имеет строковый тип ключа и пустое значение - шестнадцатиричное 20 (пробел). Второй сегмент начинается в позиции 55, имеет длину четыре, строковый тип ключа, убывающий и имеет пустое значение - шестнадцатиричное 20 (пробел).

В файл было добавлено четырнадцать записей. Файл содержит 14 уникальных значений первого ключа и пять уникальных значений второго. Файла-расширения нет.

--------------------------------------------------------------¬
¦                                                             ¦
¦ File Stats for address.btr                                  ¦
¦                                                             ¦
¦ Record Length = 147          Compressed Records = Yes       ¦
¦ Variable Records = Yes       Free Space Threshold = 10%     ¦
¦ Number of Keys = 2                                          ¦
¦ Page Size = 1536             Unused Pages = 0               ¦
¦ Total Records = 14                                          ¦
¦                                                             ¦
¦                                                             ¦
¦ Key Position Length Duplicates Modifiable  Type  Null  Total¦
¦                                                             ¦
¦  0       1      30     Yes         No     String < __    14 ¦
¦  1      31      30     Yes        Yes     String   20M    5 ¦
¦  1      55       4     Yes        Yes     String < 20M    5 ¦
¦                                                             ¦
L--------------------------------------------------------------
                         Рисунок 4.4
                  Пример выхода BUTIL-STAT

STOP

Формат команды

BUTIL-STOP

Описание

STOP удаляет BREQUEST и Btrieve Record Manager из памяти и, когда возможно, возвращает распределенную память в операционную систему. После того, как Вы один раз запросили команду STOP, Вы не можете запускать прикладную программу Btrieve до тех пор, пока не перезагрузите BREQUEST или Btrieve Record Manager.

Как применять STOP

Для запуска STOP введите команду в показанном выше формате.

VER

Формат команды

BUTIL-VER

Описание

VER сообщает версию BREQUEST, загруженную на рабочую станцию.

Как применять VER

Для запуска VER введите команду в показанном выше формате.

ИСПОЛНИТЕЛЬ ФУНКЦИЙ BTRIEVE

Дискета Btrieve включает программу B, позволяющую Вам выполнять индивидуальные Btrieve-операции интерактивно. B.EXE - прикладная программа Btrieve, выполняющая Btrieve-операции, опираясь на задаваемые Вами для различных подсказок значения. Каждая подсказка обьяснена дальше. Программа B полезна для изучения работы Btrieve, тестирования логики Вашей программы и отладки.

Для выполнения B введите следующую команду после DOS-подсказки:

B <Enter>

Когда Вы выполните B, появится меню с подсказками для каждого требуемого при вызове Btrieve параметра. Список кодов операций Btrieve приведен за подсказками.

Для выполнения вызова Btrieve проинициализируйте все Btrieve- параметры, обычно требуемые для этой операции. Смотрите обсуждение Btrieve-операций записи в Главе 6 для информации о требуемых параметрах. Например, для выполнения операции Open выполните следующие шаги.

  1. Задайте код операции 0.
  2. Задайте режим "open" на подсказку "Key Number" (если надо).
  3. Задайте имя файла на подсказку "Key Buffer".
  4. Нажмите <F1> для выполнения Btrieve-операции.

Программа B выполнит обращение к Btrieve и отобразит результат.

Вы можете продолжить выполнение Btrieve-операций. Для завершения программы сперва закройте все открытые файлы, а затем нажмите клавишу Escape.

Следующий список описывает все подсказки меню утилиты B.

Подсказка Описание
Function Введите код Btrieve-операции, которую Вы хотите выполнить. Список кодов операций будет показан в нижней половине экрана. В Приложении A также имеется список кодов Btrieve-операций.
Key Path Задайте номер ключа для Btrieve-операции в поле пути ключа.
Position Block Задайте файл, к которому Вы хотите получить доступ, в блоке позиции. B присвоит номер файлу на подсказку блока позиции, когда Вы успешно откроете файл в Btrieve.
Вы можете иметь до 10 открытых файлов. Когда Вы открываете файлы, задавайте номер файла в блоке позиции. Правильные значения от 0 до 9 включительно. Начинайте с 0 для первого открываемого файла, 1 - для второго файла и так далее. После того, как Вы открыли файл, идентифицируйте его в последующих операциях, вводя его номер в поле блока позиции.
Status Btrieve возвращает статус из каждой операции в это поле. Полезно проинициализировать статус значением 99 или другим невероятным кодом перед каждой операцией. Это позволит Вам увидеть изменение кода статуса при завершении Btrieve-операции.
Data Buffer Length Установите длину буфера данных в правильное значение для операции, которую Вы хотите выполнить.
Data Buffer Введите данные записи в это поле для операций Insert или Update. Вы можете вводить данные только в формате ASCII. Для операций Get Btrieve возвращает затребованные Вами данные в буфер данных. Только ASCII данные отображаются на экране.
Key Buffer Сохраните или имя файла или значение ключа, в зависимости от выполняемой операции, в буфере ключа. Как и в случае буфера данных, только ASCII данные могут быть введены или отображены.

Следующие клавиши могут быть использованы при запуске программы B:

Клавиши Описание
<Esc> Завершает программу
<F1> Выполняет Btrieve-вызов
<Home> Передвигает на первую подсказку
<End> Передвигает на последнюю подсказку
<Up> Передвигает на предыдущую подсказку
<Down> Передвигает на следующую подсказку
<Left> Передвигает на символ влево
<Right> Передвигает на символ вправо
<Обратная табуляция> Передвигает на предыдущую подсказку
<Табуляция> Передвигает на следующую подсказку
<Ctrl-Home> Передвигает на начало поля
<Ctrl-End> Передвигает на конец поля
<Delete> Удаляет символ
<Insert> Включает режим вставки

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

КОНСОЛЬНЫЕ КОМАНДЫ

Btrieve обеспечивает консльными командами, позволяющими Вам управлять файлами и текущим уровнем применения процесса BSERVER.

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

Следующие разделы описывают консольные команды NetWare Btrieve. Каждое описание включает следующую информацию:

B ACTIVE

Формат команды .

B ACTIVE <Экран>

Описание

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

Btrieve отобразит результат команды в формате таблицы на экране.

Следующая информация будет показана для каждого файла:

Вы можете использовать номер связи, возвращаемый B ACTIVE, для определения пользователя открытого файла. Вы можете также использовать этот номер как параметр команд B RESET, BUTIL-RESET или Btrieve-операции Reset для закрытия файлов и освобождения ресурсов некоторой станции.

Если другой VAP имеет открытым этот же файл, B ACTIVE отобразит двухсимвольный код номера связи. Например, двухсимвольный код для NetWare SQL - "NS". вы не можете использовать этот двухсимвольный код как вход команды B RESET. Смотрите обсуждение команды B RESET на следующих страницах.

Коды для трех видов захвата:

Захват Код
Транзакция T
Единичная запись A
Множество записей M

Как применять B ACTIVE

Для запуска B ACTIVE введите команду в показанном выше формате на сервере, где загружен BSERVER.VAP.

Вставьте пробел между B и ACTIVE. Вы можете вводить команду символами как нижнего, так и верхнего регистров.

B ACTIVE будет показывать сообщение на верху экрана до тех пор, пока не отобразит все активные файлы. Для просмотра дополнительных экранов введите вновь команду B ACTIVE с номером <Экрана>, который Вы хотите посмотреть. Например, для прсмотра второго экрана B ACTIVE введите следующее:

B ACTIVE 2 <Enter>

B DOWN

Формат команды

B DOWN

Описание

Консольная команда B DOWN освобождает все ресурсы, используемые BSERVER, и завершает выполнение BSERVER. Когда Вы запрашиваете B DOWN, Btrieve:

Если Вы запускаете другой VAP, используя BSERVER для доступа к файлам сети, Вы должны перед запросом команды B DOWN :

Например, если Вы запускаете NetWare SQL, Вы запросите команды NS RESET и NS DOWN для того6 чтобы удостовериться, что все файлы NetWare SQL закрыты. После того, как Вы запросите команду B DOWN рабочие станции и другие VAP не смогут получить доступ к Btrieve- файлам через BSERVER до тех пор, пока вновь не будет запущен файл-сервер.

Как применять B DOWN

Для запуска B DOWN введите команду в показанном выше формате на сервере, где загружен BSERVER.VAP. Вставьте пробел между B и DOWN. Вы можете вводить команду символами как нижнего, так и верхнего регистров.

B OFF

Формат команды .

B OFF

Описание

Консольная команда B OFFпрекращает обновление экрана предыдущей утилитой командной строки Btrieve.

Вы можете запросить B OFF после того, как B ACTIVE, B STATUS или B USAGE показали необходимую Вам информацию. Если Вы не запросите B OFF, эти команды продолжат обновление экрана, даже если Вы запросите другую команду.

Как применять B OFF

Для запуска B OFF введите команду в показанном выше формате на сервере, где загружен BSERVER.VAP.

Вставьте пробел между B и OFF. Вы можете вводить команду символами как нижнего, так и верхнего регистров.

B RESET

Формат команды .

B RESET <Номер связи>

Описание

Консольная команда B RESET освобождает все ресурсы, используемые какой-либо станцией сети. Когда Вы запросите консольную команду B RESET с номером связи станции, Btrieve:

Как применять B RESET

Для запуска B RESET введите команду в показанном выше формате на сервере, где загружен BSERVER.VAP. Вставьте пробел между B и RESET. Вы можете вводить команду символами как нижнего, так и верхнего регистров.

Подставьте номер связи станции вместо <Номер связи>. Например, для освобождения ресурсов станции 12 Вы должны будете запросить следующую команду на консоли сервера:

 B RESET 12 <Enter>

Используйте звездочку (*) для всех станций сети Btrieve, а не одной станции. Для освобождения всех станций сети, имеющих открытые Btrieve-файлы, запросите следующую команду на консоли сервера:

 B RESET * <Enter>

Операция B RESET не допускает двухсимвольную ASCII связь ID, означающую VAP, как вход. Для освобождения файлов, открытых VAP, Вы должны использовать соответствующую команду для VAP.

B STATUS

Формат команды

B STATUS

Описание

Вы можете применять B STATUS для помощи в определении наиболее эффективного уровня ресурсов, распределенных для BSERVER, для Вашей среды.

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

Как применять B STATUS

Для запуска B STATUS введите команду в показанном выше формате на сервере, где загружен BSERVER.VAP. Вставьте пробел между B и STATUS. Вы можете вводить команду символами как нижнего, так и верхнего регистров.

Когда Вы выполните B STATUS, Btrieve покажет следующий экран:

       Status for NetWare Btrieve Server VAP v5.xx

Current, Total requests processed:           nn   nn
Available, Max request buffers:              nn   nn
Available, Max SPX packet buffers:           nn   nn
Unprocessed SPX packet buffers:              nn
Current, Total SPX packets received:         nn   nn
Current, Total SPX packets sent:             nn   nn
Current, Total SPX requests processed:       nn   nn
Current, Max, Peak SPX sessions:             nn   nn   nn
Number of display iterations:                nn

Значения "Current" - значения, накопленные во время запроса команды B STATUS и отображаемые в первом столбце. Значения Total" - значения, накопленные со времени загрузки BSERVER и отображаемые во втором столбце. Значения "Max" - максимальные значения ресурсов, допустимых в сети текущей конфигурации, отображаются во втором столбце. Значения "Peak' отражают самую высокую степень использования ресурсов со времени загрузки BSERVER. Следующие абзацы описывают информацию, возвращаемую командой B STATUS.

"Current, Total requests processed" отражает число запросов сети с помощью BSERVER с рабочих станций и других VAP таких, как NetWare SQL.

"Available, Max request buffers" отражает число активных процессов для VAP. Для BSERVER это значение должно быть всегда равно 1.

"Available, Max SPX packet buffers" отражает число пакетных буферов NetWare, допустимых на BSERVER, и максимальное число на сервере.

"Unprocessed SPX packet buffers" отражает разницу между максимальным числом допускаемых NetWare пакетных буферов на сервере, и числом, допустимых для BSERVER.

"Current, Total SPX packets received" отражает число сетевых пакетов, полученных BSERVER с рабочей станции.

"Current, Total SPX packets sent" отражает число сетевых пакетов, посланных BSERVER на рабочую станцию.

"Current, Max, Peak SPX sessions" отражает число проведенных сеанcов BSERVER и максимальное число. допустимое BSERVER.

"Nuber of display iterations" отражает, сколько раз был обновлен экран со времени запроса команды B STATUS.

B USAGE

Формат команды

B USAGE

Описание

Вы можете применять B USAGE для помощи в определении, был ли BSERVER сконфигурирован самым эффективным образом для Вашей среды.

Консольная команда B USAGE возвращает информацию о следующих опциях конфигурации Btrieve:

Как применять B USAGE

Для запуска B USAGE введите команду в показанном выше формате на сервере, где загружен BSERVER.VAP. Вставьте пробел между B и USAGE. Вы можете вводить команду символами как нижнего, так и верхнего регистров. Когда Вы выполняете B USAGE, Btrieve покажет на экране:

       Usage for NetWare Btrieve Server VAP v5.xx

Current, Max, Peak files:                    nn   nn   nn
Current, Max, Peak handles:                  nn   nn   nn
Current, Max, Peak locks:                    nn   nn   nn
Current, Max, Peak transactions:             nn   nn   nn

Значения "Current" - значения, находящиеся в использовании в настоящий момент и отображаемые в первом столбце. Значения "Max" - максимальные значения ресурсов, допустимых в сети текущей конфигурации BSERVER, отображаются во втором столбце. Значения "Peak" отражают самую высокую степень использования ресурсов со времени загрузки BSERVER.

Previous page:
ГЛАВА 3. ЗАПУСК СЕТИ BTRIEVE
Top:
DRKB
Next page:
ГЛАВА 5. ИНТЕРФЕЙС ПРИКЛАДНЫХ ПРОГРАММ