|
Часть 10
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є LIST є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Показывает записи базы данных или выражения
Синтаксис
LIST
[FIELDS ]
[] [FOR ]
[WHILE]
[OFF]
[NOCONSOLE]
[NOOPTIMIZE]
[TO PRINTER | TO FILE ]
LIST FILES
[ON ]
[LIKE ]
[TO PRINTER | TO FILE ]
LIST MEMORY
[LIKE ]
[NOCONSOLE]
[TO PRINTER | TO FILE ]
LIST STATUS
[NOCONSOLE]
[TO PRINTER | TO FILE ]
LIST STRUCTURE
[NOCONSOLE]
[TO PRINTER | TO FILE ]
Смотри также
DISPLAY, DISPLAY FILES, DISPLAY MEMORY, DISPLAY STATUS, DISPLAY
STRUCTURE, SET DELETED
Описание
Команды LIST эквивалентны командам DISPLAY за исключением трех
отличий:
- Область действия для команды LIST по умолчанию ALL (все
записи)
- Команда LIST не приглашает вас продвигаться вперед, когда экран
или окно заполнятся
- Команда LIST не показывает записей, помеченных для удаления,
когда DELETED является SET ON (включено).
Дополнительную информацию о командах LIST можно найти в
соответствующих темах DISPLAY в этом руководстве.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є LOAD є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Загружает бинарный файл в памяти
Синтаксис
LOAD [SAVE] [NOSAVE]
Смотри также
CALL
Описание
Команда LOAD загружает бинарную программу с диска в памяти.
Одновременно в память могут быть загружены шестнадцать файлов (до 64К
каждый).
Дополнительные опции
Файл, загружаемый в память. Для бинарных программ по умолчанию
принимается расширение .BIN. Когда вы вызываете бинарную программу,
расширение можно опустить. Если загружаемый файл имеет то же имя, но
другое расширение, чем загруженный перед ним, то новый файл стирает
предыдущий.
SAVE
Команды LOAD и CALL поддерживают необязательные ключевые слова для
использования с бинарными программами, осуществляющими запись на
экран. Вы можете включить SAVE (NOSAVE по умолчанию), когда загружаете
бинарную программу, или SAVE и NOSAVE, когда вызываете бинарную
программу, размещенную в памяти с помощью команды LOAD. При задании в
команде CALL опции SAVE и NOSAVE отменяют опции, ранее заданные в
команде LOAD.
Если задана опция SAVE, FoxPro копирует текущее содержание
видеопамяти в область "стола" FoxPro при возвращении из бинарной
программы (подразумевается, что бинарная программа осуществляла запись
прямо в видеопамять).
Это подразумевает, что любые записи бинарной программы известны
FoxPro, и трактуются, как если бы они сделаны FoxPro. В частности,
такие внешне записанные данные не будут уничтожаться первый раз
никаким объектом FoxPro, буксируемым по ним, если используется опция
SAVE.
Если это не требуется, опция SAVE нежелательна, так как
используется время для просмотра и сохранения содержания экрана при
каждом возврате из бинарной программы.
Создание бинарной программы
При создании бинарного файла должна быть проделана
следующая последовательность операций:
1. MASM
- Ассемблирует программный файл и создает объектный файл
2. LINK
- Компонует объектный файл и создает загрузочный файл
3. EXE2BIN
- Создает бинарный файл
Следуйте следующим правилам при создании бинарных файлов в FoxPro:
* Первая выполняемая инструкция должна быть загружена со смещением
0.
* Бинарная программа не должна изменять размер переменных памяти,
передаваемых как аргументы.
* Размер используемой или размещаемой памяти может не превышать
фактический размер программы, так как размер программы используется
для определения полного объема памяти, который нужно выделить.
* Регистры SS и CS должны быть восстановлены до того, как
управление будет передано FoxPro
* Дальний возврат должен быть использован для передачи управления
FoxPro, когда программа выполняется с помощью команд LOAD и CALL
* Когда работа программы завершена с помощью вызова выхода из
системы, а не дальнего возврата, необходимо выполнять ассемблирование
программы с командой RUN | !.
Внимание!!!
Внимательно читайте следующие предупреждения выдаваемые
интерфейсом языка ассемблер:
При использовании строковых переменных не изменяйте длину строки.
Может случиться, что список свободной памяти испортится, если длина
строки будет изменена хотя бы на один байт.
При сохранении адреса строки из одного вызова в другой вам следует
также сбросить адрес той строки, которую вы будете записывать в память
перед использованием строковой переменной.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є LOCATE є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Определяет местоположение записи в базе данных
Синтаксис
LOCATE FOR
[] [WHILE ]
[NOOPTIMIZE]
Смотри также
CONTINUE, SEEK(), FOUND(), EOF(), RECNO
Описание
Команда LOCATE последовательно ищет в текущей выбранной базе
данных первую запись, соответствующую выражению . База данных
не должна быть индексирована.
Если команда LOCATE находит соответствующую запись, функция
RECNO() вернет номер этой записи, функция FOUND() вернет значение
"истинно" (.Т.), а функция EOF() вернет значение "ложно" (.F.). Номер
записи также отобразится на экране, несмотря на то, что команда TALK
установлена в SET OFF.
Если команда LOCATE нашла соответствующую запись, вы можете
использовать команду CONTINUE для поиска соответствующих записей в
оставшейся части файла. При выполнении команды CONTINUE процесс поиска
продолжается, начиная с записи, следующей непосредственно за
найденной. Команда CONTINUE выполняется до тех пор, пока не будет
достигнут конец области видимости или конец файла, или до тех пор,
пока не заработает новая команда LOCATE.
Если соответствующая запись не будет найдена, функция RECNO()
вернет величину, равную количеству записей в базе данных плюс один,
функция FOUND() вернет значение "ложно", а функция EOF() вернет
значение "истинно".
Команда LOCATE также может быть запущена путем выбора в Меню
записей (Record) пункта Locate...
Для получения более полной информации по интерактивному
использованию команды LOCATE обратитесь к "Руководству по интерфейсу"
(Interface Guide) системы FoxPro.
Итерационная процедура определения местоположения записей и
осуществления серии операций над ними может быть создана в программном
файле путем помещения ряда операторов FoxPro между командами LOCATE и
CONTINUE.
Команды LOCATE и CONTINUE определены для текущей выбранной рабочей
области. Если выбрана другая рабочая область, то процесс поиска
приостанавливается до тех пор, пока не будет переопределена исходная
рабочая область. Тогда процесс поиска будет продолжен.
Дополнительные опции
FOR
Команда LOCATE последовательно ищет в текущей выбранной базе
данных первую запись, которая соответствует .
Rushmore будет оптимизировать запрос LOCATE FOR, если
является оптимизируемым выражением. Для повышения эффективности
используйте оптимизируемые выражения в опции FOR. Выражения,
оптимизируемые Rushmore, рассматриваются в главе Оптимизация ваших
прикладных программ в "Руководстве разработчика" (Developre's Guide)
по системе FoxPro.
Вы можете, также включить в формат команды область действия
для определения диапазона записей для поиска. Только записи,
попадающие в границы, заданную областью действия, будут исследованы
при поиске.
По умолчанию, область действия команды LOCATE распространяется на
все записи.
WHILE
Вы можете также включить опцию WHILE . При этом поиск будет
производиться до тех пор, пока остается истинным (.T.).
NOOPTIMIZE
Для блокировки оптимизации Rushmore команды LOCATE, включите
NOOPTIMIZE. Более подробную информацию о NOOPTIMIZE можно найти в
описании команды SET OPTIMIZE в этом руководстве и в описании Rushmore
в главе Оптимизация ваших прикладных программ в "Руководстве
разработчика" (Developre's Guide) по системе FoxPro.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
CLOSE ALL
SET TALK OFF
CLEAR
USE customer
STORE 0 TO mcount
LOCATE FOR city = 'Perrysburg'
DO WHILE FOUND()
? company
mcount = mcount + 1
CONTINUE
ENDDO
? 'Total customers from Perrysburg: ' + LTRIM(STR(mcount))
USE
В этом примере все покупатели из Perrysburg найдены, выведены на
экран и подсчитаны. Затем общий результат выводится на экран.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є LOCFILE() є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Определяет местоположение файла на диске
Синтаксис
LOCFILE([, ] [, ])
Параметры
Отыскиваемый файл
Список расширений файлов
Приглашение диалога Открыть файл
Возвращаемый тип
Символьный
Замечания
Новая в FoxPro 2.0
Смотри также
FILE(), GETFILE(), PUTFILE()
Описание
Функция LOCFILE() определяет местоположение файла на диске и
возвращает имя файла с полным путевым именем. Если файл не может быть
найден, представляется диалог Открыть файл так, чтобы вы могли
отыскать файл.
Параметры
Параметр задает имя отыскиваемого файла. Если
является простым именем файла, исследуется директория по умолчанию.
Если файла нет в директории по умолчанию, исследуется маршрут,
заданный для FoxPro. Если файл найден, возвращается полное путевое имя
файла. Если не имеет расширения, рассматриваются расширения из
при попытке определить местоположение файла.
Если в вы зададите директорию вместе с именем файла, будет
исследоваться заданная директория. Если файл не может быть найден в
заданной директории, исследуется директория по умолчанию, а затем
исследуется маршрут, заданный для FoxPro. Если файл найден,
возвращается полное путевое имя файла.
Если файл не может быть найден в директории по умолчанию, также
как и в маршруте FoxPro или заданной директории, представляется диалог
Открыть файл. Диалог Открыть файл может быть использован для
определения местоположения файла. Когда файл выбирается из диалога,
возвращается полное путевое имя файла, и маршрут файла добавляется в
маршрут FoxPro.
Если был осуществлен выход из диалога Открыть файл с помощью
кнопки Cancel или нажатия клавиши Escape, представляется
предупреждение "File does not exist" (Файл не существует) (сообщение
об ошибке 1), и функция LOCFILE() не возвращает значения.
Параметр определяет расширения файлов, представляемых в
диалоге Открыть файл, если не выбран блок проверки All Files (Все
файлы). Полный список расширений, используемых FoxPro, можно найти в
таблице расширений файлов в "Руководстве разработчика" (Developer's
Guide) по системе FoxPro.
может быть представлен в различных формах:
- может содержать единственное расширение (например,
'PRG'), и будут представлены только те файлы, которые имеют данное
расширение.
- может содержать список расширений файлов, разделенных
точкой с запятой (например, 'PRG;FXP'). В данном примере функция
LOCKFILE() представит все файлы с расширениями PRG и FXP. Однако, если
файлы имеют одно и то же имя, но различные расширения, (например,
CUSTOMER.PRG и CUSTOMER.FXP), будет представлен только один файл с
расширением, идущим в списке расширений первым. В этом примере, если
список расширений файлов содержит 'PRG;FXP', будет представлен
CUSTOMER.PRG.
- может содержать список расширений файлов, разделенных
вертикальной чертой (например, 'PRG|FXP'). В этом случае будут
представлены все файлы с данными расширениями, даже если файлы имеют
одинаковые имена.
- Если содержит только точку с запятой (';'), все файлы
без расширения будут представлены в прокручивающемся списке.
- Если является пустой строкой, будут представлены все
файлы в текущей директории.
- может также содержать метасимволы DOS (* и ?). Будут
представлены все файлы, которые удовлетворяют критерию метасимволов.
Например, если является '?X?', будут представлены все файлы с
расширениями FXP, EXE, TXT и т. д.
Необязательное символьное выражение является приглашением,
представляемым вверху диалога Открыть файл.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є LOCK є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Пытается заблокировать запись или группу записей базы данных
Синтаксис
LOCK([ | ] | [, | ])
Параметры
Номер рабочей области для базы данных
Псевдоним базы данных
Список одного или нескольких номеров записей, разделенных
запятыми
Возвращаемый тип
Логический
Замечания
FoxPro/LAN
Смотри также
CLEAR, CLOSE, FLOCK(), RLOCK(), SET MULTILOCKS, SET REPROCESS, UNLOCK,
USE
Описание
С помощью функции LOCK() вы можете попытаться заблокировать запись
или группу записей базы данных. FoxPro/LAN, сетевая версия FoxPro,
требует блокировки записей базы данных или файлов.
Если блокировка или блокировки сделаны успешно, возвращается
значение "истинно" (.T.). Заблокированные записи доступны на чтение и
запись только заблокировавшему их пользователю, остальным
пользователям сети доступны только на чтение. Функция LOCK() всегда
возвращает истинное значение для однопользовательской версии FoxPro.
Использование функции LOCK() не гарантирует, что попытка
блокировки записи завершится удачно. Нельзя заблокировать запись, уже
заблокированную другим пользователем, или заблокировать запись в уже
заблокированном другим пользователем файле базы данных. Если
блокировка или блокировки не могут быть успешно произведены,
возвращается логическое значение "ложно" (.F.).
Вы можете выдавать функцию LOCK() в Командном окне и в программах.
Функция LOCK() идентична функции RLOCK().
Команда SET REPROCESS определяет, как функция LOCK() будет
возвращать значение. С помощью SET REPROCESS вы можете продолжать
попытки заблокировать запись, если начальная блокировка не была
успешной. Более подробную информацию о том, как SET REPROCESS влияет
на попытки блокировки, можно найти в описании команды SET REPROCESS в
этом руководстве.
Команда SET MULTILOCKS определяет возможность заблокировать
несколько записей базы данных. Если установлено SET MULTILOCKS OFF (по
умолчанию), то можно заблокировать только одну запись базы данных.
Группу записей можно заблокировать, когда установлен режим SET
MULTILOCKS ON. Смотрите описание команды SET MULTILOCKS в данном
руководстве.
Параметры
|
Если вы не задали рабочую область или псевдоним, функция LOCK()
будет пытаться заблокировать текущую запись в файле базы данных в
текущей рабочей области.
Для попытки блокировки текущей записи в базе данных, открытой в
заданной рабочей области, задайте номер рабочей области или
псевдоним базы данных .
Для попытки блокировки нескольких записей используйте параметр
. Вы должны также включить номер рабочей области или псевдоним
базы данных, в которой вы пытаетесь заблокировать несколько записей,
кроме того, нужно включить режим MULTILOCKS.
является списком одного или нескольких номеров записей.
LOCK() пытается заблокировать все эти записи. Номера записей в
должны разделяться запятыми. Например, для попытки заблокировать
первые четыре записи в базе данных, должно содержать
'1,2,3,4'. Список номеров записей может быть символьной
строкой, заключенной в одинарные или двойные кавычки, или переменной
памяти или элементом массива символьного типа. Он может быть также
полем базы данных символьного типа или memo полем.
Вы можете также заблокировать несколько записей установкой
указателя записей на желаемую запись, использованием функции LOCK()
или RLOCK(), и повторением этой процедуры для каждой записи.
Если успешно заблокированы все записи, заданные в ,
возвращается логическое значение "истинно" (.T.).
Даже если одна из записей, заданных в , не может быть
заблокирована, возвращается логическое значение "ложно" (.F.), и ни
одна из записей, заданных в не будет заблокирована. Однако,
существующие блокировки записей будут оставаться на месте. Блокировка
нескольких записей является аддитивным процессом - установка
дополнительных блокировок не удаляет блокировки других записей.
Максимальное число записей, которые могут быть одновременно
заблокированы в каждой рабочей области, приблизительно равно 8000. В
отношении скорости выполнения, всегда быстрее заблокировать целую базу
данных, чем небольшое число записей.
Разблокировка записей
Запись базы данных может быть разблокирована только пользователем,
установившим блокировку. Блокировки записей могут быть удалены
использованием команды UNLOCK, закрытием базы данных или выходом из
системы FoxPro/LAN с помощью команды QUIT.
Команда UNLOCK может использоваться для снятия блокировок записей
в текущей рабочей области (UNLOCK), заданной рабочей области (UNLOCK
IN | ) или во всех рабочих областях (UNLOCK ALL). Более
подробную информацию о команде UNLOCK можно найти в ее описании в
данном руководстве.
Переключение режима MULTILOCKS из режима ON в режим OFF или
наоборот всегда влечет выполнение команды UNLOCK ALL - освобождаются
блокировки записей во всех рабочих областях.
Базы данных могут быть закрыты с помощью команд USE, CLEAR ALL или
CLOSE DATABASE.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
SET MULTILOCKS ON
SET REPROCESS TO AUTOMATIC
STORE '1,2,3,4' TO mreclist
CLOSE ALL
SELECT 0
USE customer
SELECT 0
USE states
? LOCK('1,2,3,4', 'customer') && Блокирует первые 4 записи в customer
? RLOCK(mreclist, 'states') && Блокирует первые 4 записи в states
UNLOCK IN customer
UNLOCK IN states
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є LOG є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает значение натурального логарифма (по основанию e) численного
выражения
Синтаксис
LOG()
Возвращаемый тип
Численный
Смотри также
EXP(), LOG10(), SET DECIMALS
Описание
Математическая функция LOG() возвращает значение натурального
логарифма численного выражения. Основанием натурального логарифма
является число e. Десятичная часть результата возвращается с
точностью, определенной командой SET DECIMALS.
Параметр
Функция LOG() возвращает значение числа x в выражении e в степени
x = . должно быть больше нуля.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Примеры є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
? LOG(1)
0.00
STORE EXP(2) TO esquared
? LOG(esquared)
2.00
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є LOG10 є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает значение десятичного логарифма (по основанию 10) численного
выражения
Синтаксис
LOG10()
Возвращаемый тип
Численный
Смотри также
EXP(), LOG(), SET DECIMALS
Описание
Математическая функция LOG10() возвращает значение десятичного
логарифма численного выражения. Основанием десятичного логарифма
является число 10. Десятичная часть результата возвращается с
точностью, определенной командой SET DECIMALS.
Параметр
Функция LOG10() возвращает значение числа x в выражении 10 в
степени x = . должно быть больше нуля.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Примеры є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
? LOG10(10)
1.00
STORE 100 TO baseten
? LOG10(baseten)
2.00
? LOG10(baseten^2)
4.00
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є LOOKUP є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Осуществляет поиск в базе данных
Синтаксис
LOOKUP(, , [, ])
Возвращаемый тип
Символьный, численный, логический или дата
Смотри также
FIND, INDEX, LOCATE
Описание
Функция LOOKUP() ищет в базе данных первое появление заданного
выражения. Если имеется в распоряжении индекс, то он используется для
поиска выражения; в противном случае выполняется команда LOCATE.
Если выражение найдено, указатель записи перемещается на запись,
соответствующую выражению. Возвращается содержание заданного поля из
записи. Если записей не найдено, возвращается пустая строка, а
указатель записей остается на конце файла. Указатели записей связанных
файлов перемещаются на связанные записи.
Эта функция не оптимизируется Rushmore.
Дополнительные опции
Если поиск успешен, возвращается поле, заданное в . Если
поиск неуспешен, возвращается пустая строка.
задает выражение для поиска. Выражение может быть
содержанием поля в базе данных. Если база данных индексирована,
функция LOOKUP() исследует главный индекс.
Если вы включите имя тега компактного индекса в необязательное
символьное выражение , отыскиваемое выражение должно
соответствовать индексному выражению тега компактного индекса.
Включение имени тега компактного индекса позволяет вам исследовать
базу данных на комбинацию полей.
Если база данных не имеет активного индекса, функция LOOKUP()
использует команду LOCATE для того, чтобы исследовать поле, заданное в
на соответствие выражению. Если база данных индексирована,
LOOKUP() исследует главный индекс на соответствие выражению. Если вы
включите имя тега компактного индекса в необязательное символьное
выражение , LOOKUP() будет исследовать тег компактного индекса
на соответствие выражению.
Вы можете задать для использования в поиске тег компактного
индекса. Имя тега компактного индекса задается в . Тег
компактного индекса может быть создан из комбинации полей базы данных,
и выражение для поиска должно соответствовать индексному выражению
компактного индекса.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є LOWER є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает заданное символьное выражение в нижнем регистре
Синтаксис
LOWER()
Возвращаемый тип
Символьный
Смотри также
ISALPHA(), ISLOWER(), ISUPPER(), PROPER(), UPPER()
Описание
Функция LOWER() возвращает символьную строку в нижнем регистре из
символьного выражения. Буквы в верхнем регистре (A-Z) в символьном
выражении преобразуются в нижний регистр (a-z). Все символы в
символьном выражении, кроме символов A-Z, остаются неизмененными.
Параметр
Символьное выражение преобразуется в нижний регистр.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
STORE 'FOX' TO name
?LOWER(name)
fox
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є LTRIM є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает символьную строку, получившуюся после удаления лидирующих
пробелов из символьного выражения
Синтаксис
LTRIM()
Возвращаемый тип
Символьный
Смотри также
ALLTRIM(), LEFT(), RIGHT(), RTRIM(), SUBSTR(), TRIM()
Описание
Функция LTRIM() возвращает символьную строку, получившуюся после
удаления лидирующих пробелов из символьного выражения. Эта функция
полезна для удаления лидирующих пробелов, которые возникают, когда вы
используете функцию STR() для преобразования численного значения в
символьную строку.
Параметр
Из символьного выражения удаляются лидирующие пробелы.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Примеры є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
STORE 'Perrysburg' TO city
STORE ' Ohio' TO state
? city, state
Perrysburg Ohio
? city, LTRIM(state)
Perrysburg Ohio
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є LUPDATE є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает дату последнего обновления заданной базы данных
Синтаксис
LUPDATE([ | ])
Возвращаемый тип
Дата
Смотри также
DIR, FILER
Описание
Функция LUPDATE() возвращает дату последнего обновления базы
данных. Эта функция полезна в процедурах обновления.
Параметр
|
Если вы не задали рабочую область или псевдоним, возвращается дата
последнего обновления файла базы данных в текущей рабочей области. Вы
можете получить дату последнего обновления базы данных, открытой в
другой рабочей области, задав номер рабочей области или
псевдоним базы данных .
Если в заданной рабочей области нет открытой базы данных, функция
LUPDATE() возвращает пустую дату (' / / '). Если нет базы данных с
заданным псевдонимом, выдается сообщение "Alias not found" ("Псевдоним
не найден").
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
USE Customer
? LUPDATE ( )
09/15/89
USE
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MAX є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает наибольшее значение из списка символьных, численных
выражений или выражений с датой
Синтаксис
MAX(, [, ... ])
Возвращаемый тип
Символьный, дата или численный
Смотри также
CALCULATE, MIN()
Описание
Функция MAX() (максимум) вычисляет набор выражений и возвращает
наибольшее значение из набора. Выражения должны быть все одного типа,
(символьные, численные или дата ).
Когда определяется максимальное значение типа дата из набора дат,
функция возвращает наиболее позднюю дату.
Параметры
, [, ...]
Используйте набор выражений (, , ...) одного
типа в функции MAX(). Эти выражения вычисляются, и возвращается
наибольшее значение.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Примеры є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
? MAX(54, 39, 40)
54
? MAX(6^6, 10*12, PI())
46656.00
? MAX({07/12/99},DATE())
07/12/99
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MCOL є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает колонку экрана или окна, в которой находится указатель мыши
Синтаксис
MCOL([])
Возвращаемый тип
Численный
Смотри также
COL(), MROW(), ROW(), WCOLS(), WROWS()
Описание
Функция MCOL() возвращает колонку экрана или окна, в которой
находится указатель мыши.
Параметр
Функция MCOL() возвращает колонку, в которой расположен указатель
мыши, если в задана пустая строка. Колонка экрана, в которой
расположен указатель мыши возвращается также, если опустить и
при этом нет активного открытого окна.
Если есть активное окно, и не указано, то функция MCOL()
выдает колонку, в которой расположен указатель мыши, относительно
активного окна. Если вы задаете имя окна в , координата колонки
возвращается относительного заданного окна. В обоих случаях функция
MCOL() возвращает значение -1, если указатель мыши находится вне окна.
Если MCOL() возвращает координату экрана, то ее значение будет
находиться в диапазоне от 0 до максимального числа колонок на экране
минус 1. Например, если дисплей работает в режиме EGA25, то функция
MCOL() будет возвращать значения в диапазоне от 0 до 79.
При получении с помощью этой функции координаты в виде колонки
окна, ее значение будет в диапазоне от 0 до числа колонок в окне минус
1 (или равно -1 в том случае, когда указатель мыши находится вне
окна). Число колонок в окне можно определить с помощью функции
WCOLS().
Если является именем Окна просмотра или Окна отладки, а
указатель мыши находится на левой границе окна, MCOL() возвращает
ноль. Когда указатель мыши находится на левой границе любого другого
окна, MCOL() возвращает -1.
Важно!!!
Если драйвер мыши не был загружен, и нет окна вывода, MCOL()
возвращает -1.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Второй пример в описании функции INKEY() использует MCOL().
Смотрите описание функции INKEY() для примера использования MCOL().
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MDOWN є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает логическое значение, соответствующее состоянию кнопки мыши
Синтаксис
MDOWN()
Возвращаемый тип
Логический
Смотри также
MCOL(), MROW()
Описание
Функция MDOWN() возвращает значение "истинно" (.Т.) или "ложно"
(.F.), которое соответствует состоянию левой кнопки мыши.
Если эта кнопка нажата во время выполнения функции MDOWN(), то она
возвращает значение "истинно" (.Т.). Если эта левая кнопка отпущена во
время выполнения функции MDOWN(), то ее значение "ложно" (.F.).
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MDX є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает имена открытых составных индексных файлов .CDX
Синтаксис
MDX( [, | ])
Параметры
Число, соответствующее позиции индекса, которое указывает
MDX(), что нужно возвращать
Номер рабочей области для базы данных
Псевдоним базы данных
Возвращаемый тип
Символьный
Замечания
Новая в FoxPro 2.0
Смотри также
CDX(), INDEX, NDX(), SET INDEX, SYS(14), TAG(), USE
Описание
Функция MDX() возвращает имена открытых составных индексных файлов
.CDX. MDX() идентична функции CDX().
Индексные файлы могут быть открыты для базы данных с помощью опции
INDEX команды USE или с помощью SET INDEX. Файл .CDX сложного
структурного индекса автоматически открывается с файлом его базы
данных. Все индексные файлы .IDX, заданные опцией INDEX команды USE
или командой SET INDEX игнорируются этой функцией.
Функция TAG() может использоваться для получения имени тега
составного индексного файла .CDX; функция NDX() может использоваться
для возвращения имен открытых индексных файлов .IDX.
Параметры
Если база данных имеет структурный индексный файл, и равно
1, возвращается имя структурного индексного файла (которое всегда
идентично имени базы данных). Если равно 2, возвращается имя
первого составного индексного файла .CDX, заданного опцией INDEX
команды USE или командой SET INDEX. Если равно 3, возвращается
имя второго составного индексного файла .CDX и т. д. Если
больше числа открытых составных индексных файлов .CDX, возвращается
пустая строка.
Если база данных не имеет структурного индексного файла, и
равно 1, возвращается имя первого составного индексного файла .CDX,
заданного опцией INDEX команды USE или командой SET INDEX. Если
равно 2, возвращается имя второго составного индексного файла
.CDX и т. д. Если больше числа открытых составных индексных
файлов .CDX, возвращается пустая строка.
|
Если вы опустите необязательные аргументы и ,
возвращаются имена файлов .CDX, открытых в текущей рабочей области.
Вы можете возвратить имена составных индексных файлов .CDX,
открытых в другой рабочей области, задав номер рабочей области
или псевдоним базы данных .
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MDY є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Преобразует выражение с датой в Американский формат Месяц День Год
Синтаксис
MDY()
Возвращаемый тип
Символьный
Смотри также
DMY(), SET CENTURY, SET DATE
Описание
Функция MDY() возвращает символьную строку в формате Месяц День
Год, используя выражение с датой. Месяц всегда возвращается полностью
(без сокращений). Если команда CENTURY установлена в режим SET OFF,
вернувшееся значение будет иметь формат : Месяц,ДД,ГГ. Если же CENTURY
установлена в SET ON, тогда формат будет выглядеть так: Месяц,ДД,ГГГГ.
Параметр
является выражением с датой. Соответствующая символьная
строка возвращается функцией MDY() в формате Месяц Дата Год.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Следующий пример является функцией, определенной пользователем,
которая преобразует стандартную переменную типа дата в символьное
выражение, совмещенное с днем недели. Это выражение формируется для
сообщения на экран.
*** LongDate ***
FUNCTION longdate
PARAMETERS mdate
RETURN CDOW(mdate) + ', '+MDY(mdate)
Использование этой функции:
SET CENTURY OFF
? Longdate({08/16/89})
Wednesday, August 16, 89
SET CENTURY ON
? Longdate({08/16/89})
Wednesday, August 16, 1989
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MEMLINES є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает число строк в memo поле
Синтаксис
MEMLINES()
Возвращаемый тип
Численный
Смотри также
MLINE(), SET MEMOWIDTH
Описание
Функция MEMLINES() возвращает число строк в memo поле произвольной
длины. Число строк в memo поле определяется текущим значением,
определенным в команде SET MEMOWIDTH.
Параметр
Функция MEMLINES() возвращает число строк в memo поле . Если memo поле находится в базе данных, которая открыта не в
текущей рабочей области, укажите перед именем memo поля псевдоним базы
данных и точку.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
CLOSE ALL
SET TALK OFF
USE customer
SET MEMOWIDTH TO 65
mline = 1
SCAN
memo_size = MEMLINES(comments)
IF memo_size = 0
STORE .T. TO nocomment
STORE 1 TO memo_size
ELSE
STORE .F. TO nocomment
ENDIF
IF mline + memo_size > 65
EJECT
mline = 1
ENDIF
@ mline,2 SAY 'Company : '+company
mline = mline+1
@ mline,2 SAY 'Comments: '
?? IIF(nocomment, 'No comments ',comments)
mline = mline + memo_size + 2
IF mline > 24
mline = 1
CLEAR
ENDIF
ENDSCAN
Этот пример выводит все комментарии в базе данных CUSTOMER.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MEMORY є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает размер оставшейся свободной памяти в килобайтах
Синтаксис
MEMORY()
Возвращаемый тип
Численный
Смотри также
SYS(12), SYS(1001)
Описание
Эта функция возвращает размер свободной памяти в килобайтах как
численное значение.
MEMORY() похожа на функцию SYS(12) с двумя отличиями:
- MEMORY() возвращает размер свободной памяти в килобайтах, а
SYS (12) в байтах.
- MEMORY() возвращает числовое значение, в отличие от функции SYS
(12), которая возвращает значение в виде символьной строки.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
? MEMORY ()
167
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MENU - Имена Системного меню є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Имена Системного меню FoxPro
Замечания
Новое в FoxPro 2.0
Смотри также
ACTIVATE MENU, ACTIVATE POPUP, DEFINE BAR, DEFINE MENU, DEFINE POPUP,
SET SYSMENU, SYS(2013)
Описание
Следующая таблица представляет имена пунктов в линейке Системного
меню FoxPro, имена всплывающих меню в Системном меню и имена команд
всплывающих меню в Системном меню. Эти имена позволяют вам
использовать линейку Системного меню FoxPro. Более подробную
информацию по использованию линейки Системного меню FoxPro можно найти
в "Руководстве разработчика" (Developer's Guide) по системе FoxPro.
Функция SYS(2013) возвращает строку, разделенную пробелами,
содержащую эти имена.
Именем линейки Системного меню FoxPro является _MSYSMENU.
ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
і Пункты Системного меню и их имена і
ГДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДґ
і Пункт меню і Имя і
ГДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДґ
і System (Система) і _MSM_SYSTM і
ГДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДґ
і File (Файл) і _MSM_FILE і
ГДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДґ
і Edit (Редактировать) і _MSM_EDIT і
ГДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДґ
і Database (База данных)і _MSM_DATA і
ГДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДґ
і Record (Запись) і _MSM_RECRD і
ГДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДґ
і Program (Программа) і _MSM_PROG і
ГДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДґ
і Window (Окно) і _MSM_WINDO і
АДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДЩ
ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
і Имена всплывающих меню в меню System (Система) і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДґ
і Всплывающие меню и команды і Имя і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і всплывающее меню System (Система) і _MSYSTEM і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і About FoxPro... (О FoxPro...) і _MST_ABOUT і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Help... (Подсказка...) і _MST_HELP і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Macros... (Макросы...) і _MST_MACRO і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 1-ый Разделитель і _MST_SP100 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Filer (Работа с файлами) і _MST_FILER і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Calculator (Калькулятор) і _MST_CALCU і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Calendar/Diary (Календарь/Дневник) і _MST_DIARY і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Special Characters (Спец. символы) і _MST_SPECL і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і ASCII Chart (Таблица ASCII) і _MST_ASCII і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Capture (Захват) і _MST_CAPTR і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Puzzle (Головоломка) і _MST_PUZZL і
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДЩ
ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
і Имена всплывающих меню в меню File (Файл) і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДґ
і Всплывающие меню и команды і Имя і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і всплывающее меню File (Файл) і _MFILE і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і New... (Новый...) і _MFI_NEW і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Open... (Открыть...) і _MFI_OPEN і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Close (Закрыть) і _MFI_CLOSE і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Close All (Закрыть все) і _MFI_CLALL і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 1-ый разделитель і _MFI_SP100 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Save (Сохранить) і _MFI_SAVE і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Save as... (Сохранить как...) і _MFI_SAVAS і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Revert (Вернуться) і _MFI_REVRT і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 2-ой разделитель і _MFI_SP200 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Printer Setup...(Настр. принтера...)і _MFI_SETUP і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Print... (Печать...) і _MFI_PRINT і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 3-ий разделитель і _MFI_SP300 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Quit (Выход) і _MFI_QUIT і
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДЩ
ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
і Имена всплывающих меню в меню Edit (Редактировать)і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДґ
і Всплывающие меню и команды і Имя і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і всплывающ. меню Edit (Редактировать)і _MEDIT і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Undo (Отменить) і _MED_UNDO і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Redo (Отменить отмену) і _MED_REDO і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 1-ый разделитель і _MED_SP100 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Cut (Вырезать) і _MED_CUT і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Copy (Скопировать) і _MED_COPY і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Paste (Вставить) і _MED_PASTE і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Clear (Стереть) і _MED_CLEAR і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 2-ой разделитель і _MED_SP200 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Select All (Выбрать все) і _MED_SLCTA і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 3-ий разделитель і _MED_SP300 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Goto Line... (Перейти к строке...) і _MED_GOTO і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Find... (Искать...) і _MED_FIND і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Find Again (Искать снова) і _MED_FINDA і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Replace and Find Again і і
і (Заменить и искать снова) і _MED_REPL і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Replace All (Заменить все) і _MED_REPLA і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 4-ый разделитель і _MED_SP400 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Preferences... (Приоритеты...) і _MED_PREF і
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДЩ
ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
і Имена всплыв. меню в меню Database (База данных) і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДґ
і Всплывающие меню и команды і Имя і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і всплыв. меню Database (База данных) і _MDATA і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Setup... (Настройка...) і _MDA_SETUP і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Browse (Правка) і _MDA_BROW і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 1-ый разделитель і _MDA_SP100 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Append From... (Добавить из...) і _MDA_APPND і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Copy To... (Скопировать в...) і _MDA_COPY і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Sort... (Сортировать...) і _MDA_SORT і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Total... (Итог...) і _MDA_TOTAL і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 2-ой разделитель і _MDA_SP200 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Average... (Среднее...) і _MDA_AVG і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Count... (Подсчет...) і _MDA_COUNT і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Sum... (Сумма...) і _MDA_SUM і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Calculate... (Вычислить...) і _MDA_CALC і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Report... (Отчет...) і _MDA_REPRT і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Label... (Этикетка...) і _MDA_LABEL і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 3-ий разделитель і _MDA_SP300 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Pack (Сжать) і _MDA_PACK і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Reindex (Переиндексировать) і _MDA_RINDX і
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДЩ
ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
і Имена всплывающих меню в меню Record (Запись) і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДґ
і Всплывающие меню и команды і Имя і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і всплывающее меню Record (Запись) і _MRECORD і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Append (Добавить) і _MRC_APPND і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Change (Изменить) і _MRC_CHNGE і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 1-ый разделитель і _MRC_SP100 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Goto... (Перейти...) і _MRC_GOTO і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Locate... (Определить местополож.) і _MRC_LOCAT і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Continue (Продолжить) і _MRC_CONT і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Seek... (Искать...) і _MRC_SEEK і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 2-ой разделитель і _MRC_SP200 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Replace... (Заменить...) і _MRC_REPL і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Delete... (Удалить...) і _MRC_DELET і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Recall... (Восстановить...) і _MRC_RECAL і
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДЩ
ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
і Имена всплывающих меню в меню Program (Программа) і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДґ
і Всплывающие меню и команды і Имя і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і всплывающее меню Program (Программа)і _MPROG і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Do... (Выполнить...) і _MPR_DO і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 1-ый разделитель і _MPR_SP100 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Cancel (Прекратить) і _MPR_CANCL і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Resume (Продолжить) і _MPR_RESUM і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 2-ой разделитель і _MPR_SP200 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Compile... (Компилировать...) і _MPR_COMPL і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Generate... (Генерировать...) і _MPR_GENER і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і FoxDoc і _MPR_DOCUM і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і FoxGraph... і _MPR_GRAPH і
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДЩ
ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
і Имена всплывающих меню в меню Window (Окно) і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДґ
і Всплывающие меню и команды і Имя і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і всплывающее меню Window (Окно) і _MWINDOW і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Hide (Скрыть) і _MWI_HIDE і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Hide All (Скрыть все) і _MWI_HIDEA і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Show All (Показать все) і _MWI_SHOWA і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Clear (Стереть) і _MWI_CLEAR і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 1-ый указатель і _MWI_SP100 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Move (Переместить) і _MWI_MOVE і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Size (Изменить размер) і _MWI_SIZE і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Zoom (Распахнуть) і _MWI_ZOOM і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Zoom (Минимизировать) і _MWI_MIN і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Cycle (Перейти по циклу) і _MWI_ROTAT і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Color... (Цвет...) і _MWI_COLOR і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і 2-ой разделитель і _MWI_SP200 і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Command (Командное окно) і _MWI_CMD і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Debug (Отладочное окно) і _MWI_DEBUG і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і Trace (Окно трассировки) і _MWI_TRACE і
ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДґ
і View (Окно просмотра) і _MWI_VIEW і
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДЩ
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MENU є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Средства создания массива для меню
Синтаксис
MENU BAR ,
MENU , , [, ]
READ MENU BAR TO , [SAVE]
Замечания
Включена для совместимости с ранними версиями - Используйте
Построитель меню FoxPro для создания меню
Смотри также
@ ... MENU, CREATE MENU
Описание
Средства создания меню включают некоторые команды, которые создают
систему меню. Система меню состоит из линейки меню (размещающейся
вверху экрана или активного окна), которая содержит пункты меню.
Каждый пункт меню имеет соответствующее всплывающее меню, содержащее
список команд.
Клавиши управления курсором используются для выбора пункта меню в
линейке меню. Когда пункт меню установлен, вы можете выбрать его,
чтобы отобразить под ним список соответствующих ему команд. Клавиши
управления курсором используются также для перемещения по командам. В
любой момент, когда во всплывающем меню нажата клавиша "стрелка
вправо" или "стрелка влево", будет выбран смежный пункт меню.
Если определено больше заголовков меню, чем может уместиться на
экране или в окне, то по мере необходимости пункты меню могут быть
прокручены горизонтально.
Первым шагом при создании нового меню является определение
размеров и инициализация массива для линейки меню. Следующий шаг -
определение размеров и инициализация массива для каждого списка
команд меню. Установите линейку меню, используя команду MENU
BAR, и установите каждое отдельное всплывающее меню в линейке
меню, используя серию команд MENU - одну команду для каждого
всплывающего меню. Затем активизируйте введенную систему меню
выполнением команды READ MENU BAR.
Команды
MENU BAR ,
Команда MENU BAR используется для установки линейки меню
в линейке меню. Элементы массива должны быть символьного
типа. По умолчанию все элементы массива становятся пунктами
меню.
является двумерным массивом символьных строк.
(i,1) является пунктом меню, появляющимся в линейке меню в
позиции i. Если (i,2) не пустая символьная строка, то она
используется как дополнительное сообщение и будет появляться в
положении, установленном командой SET MESSAGE TO.
Численное выражение является числом пунктов меню в линейке
меню.
MENU , , [, ]
Команда MENU устанавливает всплывающее меню в линейке меню.
Численное выражение определяет позицию в линейке меню, в
которой будет устанавливаться определяемое всплывающее меню.
является одномерным массивом, который содержит символьные
строки, используемые в качестве команд меню. Если первый символ в
элементе - обратный слеш (\), то элемент становится недоступным. Если
символ - "\" , то на месте этого элемента в меню отображается черта.
Это дает возможность группировать команды во всплывающем меню.
Численное выражение является числом команд меню во
всплывающем меню.
Численное выражение является необязательным параметром,
определяющим количество команд меню, которые могут отображаться на
экране в заданное время. Если во всплывающем меню больше команд, чем
может быть отображено одновременно, то всплывающее меню отображается в
режиме прокрутки.
READ MENU BAR TO , [SAVE]
Эта команда активизирует структуру меню, определенную двумя
предыдущими командами.
Переменные в памяти и используются для двух
различных целей. Во-первых, они управляют пунктом меню () и
командой меню (), на которые будет установлен курсор при
начальном отображении линейки меню. Если эти величины не соответствуют
допустимой команде меню, то установится 1 команда всплывающего меню 1
пункта меню. Во-вторых, они используются для возвращения индексов
массивов для пункта меню и команды меню, выбранных в результате
операции READ MENU. Если ничего не было выбрано, то обе переменные при
возвращении имеют значение 0.
Если выбрана опция SAVE, то всплывающее меню остается на экране
после выбора команды. Если эта опция не используется, то после выбора
команды всплывающее меню удаляется, и экран возвращается в исходное
состояние.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
*** Пример программы всплывающего меню MENUS ***
SET STATUS OFF
SET ECHO OFF
SET TALK OFF
SET MESSAGE TO 24 CENTER
*** Инициализация массива для линейки меню ***
DIMENSION TOP (3,2)
TOP (1,1) = ' FILE '
TOP (2,1) = ' EDIT '
TOP (3,1) = ' DATA '
TOP (1,2) = ' FILE SELECTIONS '
TOP (2,2) = ' EDIT SELECTIONS '
TOP (3,2) = ' DATA SELECTIONS '
*** Установка размеров и инициализация массива
*** для меню File
DIMENSION M_FILE (7)
M_FILE (1) = 'NEW'
M_FILE (2) = 'OPEN'
M_FILE (3) = 'CLOSE'
M_FILE (4) = '\-' && Вставка линии между элементов
M_FILE (5) = 'SAVE'
M_FILE (6) = 'PRINT'
M_FILE (7) = 'QUIT'
*** Установка размеров и инициализация массива
*** для меню Edit
DIMENSION M_EDIT (5)
M_EDIT (1) = 'COPY'
M_EDIT (2) = 'FIND'
M_EDIT (3) = 'REPLACE'
M_EDIT (4) = 'UNDO'
M_EDIT (5) = 'CLEAR'
*** Установка размеров и инициализация массива
*** для меню DATA
DIMENSION DATA (9)
DATA (1) = 'BROWSE'
DATA (2) = 'APPEND'
DATA (3) = 'SORT'
DATA (4) = 'JOIN'
DATA (5) = '\-' && Вставка линии между элементами
DATA (6) = 'TOTAL'
DATA (7) = 'AVERAGE'
DATA (8) = 'COUNT'
DATA (9) = 'SUM'
*** Установка системы меню ***
MENU BAR TOP, 3 && Установка линейки меню
MENU 1, M_FILE, 7, 7 && Установка меню file в линейке меню
MENU 2, M_EDIT, 5, 5 && Установка меню edit в линейке меню
MENU 3, DATA, 9, 9 && Установка меню data в линейке меню
*** Инициализация местоположения команды меню ***
ROW = 1
COL = 1
*** Активизация системы меню ***
READ MENU BAR TO ROW, COL SAVE
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MENU TO є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Вызывает всплывающее меню
Синтаксис
MENU TO
Замечания
Включена для совместимости с ранними версиями - Используйте
Построитель меню FoxPro для создания меню
Смотри также
@ ... PROMPT, CREATE MENU
Описание
Команда MENU используется для ввода в действие всплывающих меню в
FoxPro.
Серия команд @ ... PROMPT используется для представления команд
меню в указанных позициях на экране. Команда MENU TO вызывает
всплывающее меню, управляемого клавишами курсора или мышью, для
текущих определенных запросов.
Когда вы перемещаетесь по командам меню, каждый запрос (PROMPT)
визуально выделяется, и появляется дополнительное сообщение, связанное
с этим запросом, в позиции, определенной командой SET MESSAGE TO.
Запросы выбираются одним из следующих действий:
- Нажатием клавиши Enter, когда выделен желаемый запрос
- Нажатием клавиши, соответствующей начальной букве запроса
- Щелчком мыши в позиции запроса
Дополнительные опции
Переменная в памяти используется для двух различных
целей. Во-первых, она может управлять тем, на какую команду меню будет
первоначально указывать курсор, когда меню отобразится на экране. Если
значение переменной не соответствует допустимым командам меню, то
начальной считается команда 1. Во-вторых, она может использоваться для
возврата команды меню, которая была выбрана в результате выполнения
операции READ MENU. Возвращаемая в процессе выбора величина,
определяется тем порядком, в котором расположены запросы. Если выход
из меню был осуществлен нажатием клавиши Escape, то переменная получит
значение 0.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MENU є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает имя текущей активной линейки меню
Синтаксис
MENU()
Возвращаемый тип
Численный
Смотри также
ACTIVATE MENU, CREATE MENU, DEFINE MENU
Описание
Функция MENU() возвращает название текущего активного меню в виде
строки символов, состоящей из заглавных букв. Если анализируемое меню
не задействовано в данный момент, MENU() вернет пустую строку.
Для получения названия меню, это меню должно быть определено
командой DEFINE MENU и активизировано командой ACTIVATE MENU.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
CLEAR
DEFINE MENU mainmenu
DEFINE PAD invoices OF mainmenu PROMPT ' \, [, ... ])
Возвращаемый тип
Символьный, дата или численный
Смотри также
CALCULATE, MAX()
Описание
Функция MIN() (минимум) вычисляет набор выражений и возвращает
наименьшее значение из набора. Выражения должны быть все одного
типа, (символьные, численные или дата ).
Когда определяется минимальное значение типа дата из набора дат,
функция возвращает наиболее раннюю дату.
Параметры
, [, ...]
Используйте набор выражений (, , ...) одного
типа в функции MIN(). Эти выражения вычисляются, и возвращается
наименьшее значение.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Примеры є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
? MIN(54, 39, 40)
39
? MIN(6^6, 10*12, PI())
3.14
? MIN({07/12/18},DATE())
07/12/18
? MIN('a','abc')
a
? MIN('a','XYZ')
XYZ
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MLINE є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает заданную строку из заданного memo поля
Синтаксис
MLINE(, [, ]
Параметры
memo поле, из которого возвращается строка
Номер возвращаемой строки
Смещение от начала memo поля
Возвращаемый тип
Символьный
Замечание
Усилена: Новая опция для смещения от начала memo поля
Смотри также
ATCLINE(), ATLINE(), COPY MEMO, MEMLINES(), _MLINE, MODIFY MEMO, SET
MEMOWIDTH
Описание
Функция MLINE() возвращает заданную строку из memo поля. Длина
строк и число строк внутри memo поля определяются текущим значением
SET MEMOWIDTH (по умолчанию 50).
Когда в memo поле ищется символьная строка, вы можете использовать
функцию ATLINE() или ATCLINE() для возврата номера строки, в которой
была найдена символьная строка. Используйте этот номер в функции
MLINE() для получения содержания строки из memo поля.
Параметры
Функция MLINE() возвращает строку из заданного вами memo поля
. Если memo поле находится в базе данных, открытой не в
текущей рабочей области, расположите перед memo полем псевдоним базы
данных и точку.
Численное выражение является номером строки, возвращаемой
из memo поля. Если равно нулю или больше числа строк в memo
поле, возвращается нулевая строка.
Численное выражение является смещением от начала memo
поля. Если вы используете , возвращается -я строка от
смещения .
Для обычно используется системная переменная в памяти
_MLINE. _MLINE автоматически корректируется каждый раз при вызове
функции MLINE().
В рекурсивных процедурах, которые возвращают строки из больших
memo полей, более эффективного выполнения можно добиться, включив
_MLINE в качестве .
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
В примере, приведенном ниже, используются два метода возврата
строк из memo поля. Новая запись добавляется в базу данных CUSTOMER, и
заполняется ее memo поле. Два цикла используют функцию MLINE() для
возврата строк из memo поля. Заметим улучшение выполнения второго
цикла, достигнутое использованием в функции MLINE() системной
переменной _MLINE.
CLEAR
SET TALK OFF
SET MEMOWIDTH TO 50
CLOSE ALL
USE customer && Открыть базу данных customer
APPEND BLANK && Добавить запись
@ 2,2 SAY 'Filling memo field...'
*** Заполнить memo поле ***
FOR outerloop = 1 TO 5 && цикл с 5 итерациями
FOR alphabet = 65 TO 90 && буквы от A до Z
REPLACE comments WITH REPLICATE(CHR(alphabet), 40) ;
+ CHR(13) ADDITIVE
NEXT
NEXT
*** Показать все строки из memo поля ***
STORE MEMLINES(comments) TO numlines && Число строк в memo поле
STORE SECONDS() TO begin && Время начала
FOR count = 1 TO numlines && Цикл по числу строк в memo поле
?MLINE(comments, count) && Показать каждую строку
NEXT
? STR(SECONDS() - begin, 4, 2) + ' seconds' && Общее время
*** Улучшенный метод с использованием _MLINE в MLINE() ***
*** Показать все строки из memo поля ***
WAIT 'Press a key to see the preferred method' WINDOW
CLEAR
STORE 0 TO _MLINE && Сбросить _MLINE в ноль
STORE SECONDS() TO begin && Время начала
FOR count = 1 TO numlines && Цикл по числу строк в memo поле
?MLINE(comments, 1, _MLINE) && Показать каждую строку
NEXT
? STR(SECONDS() - begin, 4, 2) + ' seconds' && Общее время
SET TALK ON
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MOD є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Возвращает остаток, получившийся в результате деления одного
численного выражения на другое
Синтаксис
MOD(, )
Параметры
Делимое (число, которое делится)
Делитель (число, на которое делится делимое)
Возвращаемый тип
Численный
Смотри также
%
Описание
Функция MOD() возвращает остаток, получившийся в результате
деления одного численного выражения на другое численное выражение.
MOD() возвращает тот же результат, что и оператор %.
Параметры
Численное выражение является делимым (численное выражение,
которое делится). Число знаков после запятой в определяет
число знаков после запятой в результате.
Численное выражение является делителем (численным
выражением, на которое делится делимое ). Возвращается
положительное число, если положительно, и отрицательное число,
если отрицательно.
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є Пример є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
? MOD(36, 10)
6
? MOD(4*9, 90/9)
6
? MOD(YEAR(DATE()),4)
3
? MOD(25.250, 5.0)
0.250
ЦДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД·
є MODIFY COMMAND | MODIFY FILE є
УДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЅ
Назначение
Открывает окно текстового редактора
Синтаксис
MODIFY COMMAND | MODIFY FILE []
[NOEDIT]
[NOWAIT]
[RANGE , ]
[[WINDOW ]
[IN [WINDOW] | SCREEN]]
[SAVE]
Смотри также
DO, NOTE | * | &&
Описание
Этот формат команды MODIFY открывает окно текстового редактора для
заданного файла.
Команды MODIFY COMMAND и MODIFY FILE поддерживают "скелет"
файла,использующий метасимволы для открытия окна редактирования для
файлов, совпадающих с шаблоном файла.
Несмотря на то, что в файле конфигурации CONFIG.FP с помощью TEDIT
определяется внешний текстовый редактор, используется встроенный
редактор FoxPro.
Когда изменения осуществляются в программных или текстовых файлах,
то измененный файл записывается на диск. Файл с резервной копией (файл
без изменений) с расширением .BAK будет создан, если вы выбрали блок
проверки Make backup в диалоге, который возникнет, если вы выберете
команду Preference... (Приоритеты...) в меню Edit (Редактировать).
Для получения более полной информации о команде MODIFY
COMMAND/FILE обратитесь к разделу "Основы интерфейса" в "Руководстве
по интерфейсу" (Interface Guide) по системе FoxPro.
Дополнительные опции
MODIFY COMMAND
Редактирует файлы программ. Присваивается расширение .PRG.
может иметь метасимволы (*.prg, A*.prg).
MODIFY FILE
Редактирует текстовые файлы. Расширений файлов не присваивается.
NOEDIT
Опция NOEDIT не допускает модификаций текста в окне
редактирования, открытом командой MODIFY COMMAND или MODIFY FILE.
Текст может просматриваться, но не может изменяться.
NOWAIT
Когда команда MODIFY COMMAND или MODIFY FILE возникает в
программе, открывается окно редактирования, и выполнение программы
приостанавливается, пока окно редактирования не закроется. Опция
NOWAIT продолжает выполнение программы после открытия окна
редактирования. Программа не ожидает закрытия окна, а продолжает
выполнение со строки, следующей за командой MODIFY COMMAND или MODIFY
FILE.
Опция NOWAIT возникает неявно, если вы открываете несколько окон
редактирования одной командой MODIFY COMMAND или MODIFY FILE
(например, MODIFY COMMAND *.PRG).
RANGE ,
Опция RANGE позволяет с уже выбранной областью символов. Символы
выбираются, начиная с позиции, заданной численным выражением ,
и вплоть до (но невключая) позиции, заданной численным выражением
. Если равно , символы не выбираются, и курсор
располагается в позиции, заданной и .
WINDOW
Если вы используете опцию WINDOW , окно
редактирования получит характеристики окна . Например,
если было определено с опцией FLOAT команды DEFINE
WINDOW, окно редактирования сможет перемещаться. Окно, заданное в
опции , не обязано быть активным или видимым, но оно
должно быть определено.
IN [WINDOW]
Если вы используете опцию IN WINDOW |