Типы данных Точность расчета Numeric Currency Memo General Binary AutoIncrement

Типы данных Точность расчета Numeric Currency Memo General Binary AutoIncrement

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

Прежде всего, следует понимать, что существуют типы данных переменных памяти и типы данных полей таблиц. Это далеко не одно и то же. Например, если Вы используете в таблице поле типа Character, то количество символов в таком поле всегда ограничено некоторым числом не превышающем 254 символа. Но переменная памяти имеет значительно больший размер, ограниченный количеством символов 16,777,184

Индекс Типы (виды) индексов

Индекс Типы (виды) индексов

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

Триггер Особенности использования функций

Триггер Особенности использования функций

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

Триггер — это выражение, значение которого вычисляется при наступлении определенного события. Это выражение должно вернуть обязательно логическое значение .T. или .F.

Но все дело в том, что в качестве одного из аргументов этого выражения может стоять некоторая функция (или несколько функций). Вот эти-то функции, вызываемые из выражения триггера, также называют «триггер».

Как правило, когда речь идет о триггере, то подразумевают именно функцию — триггер, а не выражение — триггер.

Тайна потусторонних связей или Использование переадресованных вызовов

Тайна потусторонних связей или Использование переадресованных вызовов

В далеком, теперь уже, 1994 году, в свете развития всяких ООП технологий , в том же Turbo Vision, захотелось и мне в Фоксе придумать нечто такое же, пусть, хоть и отдаленно напоминающее сие новаторства. Собственно все сводилось к возможности получения результата функции из внешнего, по отношению к текущему, модуля. Если разработчики дали возможность использовать конструкции DO Func1 in Module1

То почему-то не дали возможности хотя бы сделать так Do Func1 in Module1 to myVar

Хотя и такая конструкция, меня не устраивала. Хотелось сделать модуль отвечающий за поведение определенного вида документа, но как получать результат функции их этого модуля или другого без шаманского передергивания с использованием Set Procedure

Главный (стартовый) файл проекта

Главный (стартовый) файл проекта

Главный (стартовый) файл проекта

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

Возникает закономерный вопрос, какой файл из этой кучи в готовом файле EXE должен запускаться первым? А как этот файл выделить (пометить, обозначить)?

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

Как сделать exe файл

Как сделать exe файл

Технология компиляции EXE в Visual FoxPro довольно проста. Мы не будем отвлекаться на такие экстремальные методы как ввод в командном окне команд типа BUILD PROJECT, BUILD APP, BUILD EXE, а ограничимся удобствами, предоставляемыми графическим интерфейсом VFP.
Итак, для создания EXE нам понадобится нажать в менеджере проекта кнопку «BUILD…». Выбрав в открывшемся диалоговом окне опцию Win32 executable / COM server (EXE) давим OK. ВСЕ. 😉
«Как все?»— спросите Вы — «А указать под каким именем сохранить файл?»
Согласен… Надо указать обязательно, иначе все насмарку.

Перевод макроса Excel в синтаксис FoxPro

Перевод макроса Excel в синтаксис FoxPro

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

Для этого выбирается пункт меню Excel с именем «Сервис» — «Макрос» — «Начать запись». В появившемся окне указываем имя макроса (по умолчанию «Макрос1») и нажимаем кнопку «Ok». В результате, поверх листа Excel появляется маленькое специфическое окошко — ToolBar — с именем «Остановить запись» и все Ваши действия будут автоматически записываться.

MS Visual FoxPro

MS Visual FoxPro

В последнее время все чаще можно услышать разговоры о том, что FoxPro — это устаревшая технология 80-х, что программисты, которые остались верны данной среде разработки «отстали от жизни», что у них «нет будущего» и, вообще, «они ничего не понимают в развитии IT индустрии»… Прочитав эту статью, Вы научитесь применять FoxPro в глобальных масштабах всего мира. Для Вас будет абсолютно без разницы, для чего писать приложения — для маленькой задачи на одном компьютере, для целого предприятия, работающего в среде Интранет, для крупной компании, спрятавшей своих клиентов за навороченными системами защиты «firewall», или для ее филиалов, разбросанных по всему миру, и имеющих разнородный парк серверов, на которых крутятся разношерстные операционные системы от Windows 2000, 2003 до Unix. Web Services размывают наши представления о различиях между файл

Web Services и MS Visual FoxPro

Web Services и MS Visual FoxPro

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

1) Идентифицировать проблему (или постановить задачи и найти ответы на вопросы: “ Что мы хотим сделать и что должно в итоге получиться?”, “Какие ограничения или другие условия влияют на проект?”)

Расширенная функциональность универсального класса Grid в VFP.

Расширенная функциональность универсального класса Grid в VFP.

1. Методы работы с удалёнными данными.
Основной задачей СУБД-приложения, основанного на модели «Клиент-Сервер», яв-ляется сохранение, удаление и редактирование данных, хранящихся на сервере (в данном случае имеется в виду SQL-сервер). Основным средством работы с данными является компонент класса Grid в Visual FoxPro.
Работа с объектом Grid может осуществляться в двух основных режимах:
— с использованием сквозных запросов,
— с использованием обновляемых курсоров.
Эти режимы значительно отличаются друг от друга, и имеют свои недостатки и пре-имущества. Рассмотрим подробнее режим использования обновляемых курсоров.
1.1. Использование обновляемых курсоров.