visual foxpro что это

Национальная библиотека им. Н. Э. Баумана
Bauman National Library

Персональные инструменты

Microsoft Visual FoxPro

Версия 9.0, выпущенная в 2004 году и обновленная в 2007 году, является окончательной версией продукта.

Содержание

История

Развитие

В конце 2002 года было показано, что Visual FoxPro может работать на Linux под Wine, однако это, по существу, нарушает пользовательское лицензионное соглашение (EULA).

В декабре 2005 года, VFP (Visual FoxPro) находился в Top 20 индекса языков программирования TIOBE. По состоянию на август 2010 года, VFP (в сочетании с XBase) находился на 25-й позиции индекса.

В марте 2007 года Microsoft объявила, что не будет выпускать VFP 10; соответственно, VFP 9 (выпущен в производство 17 декабря 2004 г.) — последний коммерческий релиз VFP от Microsoft. Поддержка версии 9 продолжается с пакетами обновления, которые были выпущены 8 декабря 2005 и 11 октября 2007 года.

Разработка продукта MS прекращена с выходом SP2 для версии 9.0.[3].

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

3 апреля 2007 Microsoft ответила на просьбы заявителя таким заявлением от Алана Гривера (Alan Griver): «Мы хорошо знаем FoxPro-сообщество, и это сыграло большую роль в нашем объявлении от 13 марта. Всегда нелегко объявлять, что мы не собираемся выпускать следующую версию продукта, и к подобному мы подходим очень осторожно.

Мы не объявляем конец FoxPro: очевидно, приложения FoxPro будут продолжать работать. Согласно нашим внутренним оценкам в FoxPro 2.6 работает гораздо больше приложений, чем в VFP, а ведь FoxPro 2.6 не поддерживается много лет. Visual FoxPro 9.0 будет поддерживаться Microsoft до 2015 года.

Чтобы далее развивать FoxPro, нам потребовалось бы приступить к созданию 64-разрядной среды разработки, что привело бы к практически полной переработке продукта. Кроме того, мы инвестируем в Microsoft SQL Server как в масштабируемую СУБД, в том числе поставляя бесплатную редакцию SQL Server Express Edition. Мы рассматривали передачу системы одному из наших партнёров, однако крупные FoxPro-клиенты дали нам понять, что они не будут использовать FoxPro, если эта система перестанет поставляться проверенным вендором. Мы полагаем, что наилучшее решение — выложить открытые исходные коды среды на CodePlex, что уравновесит потребности как сообщества, так и крупных клиентов.»

История версий

Все версии указаны для Windows.

Дата выхода Версия
June 1995 Visual FoxPro 3.0
October 1996 Visual FoxPro 5.0
October 1997 Visual FoxPro 5.0a
18 May 1998 Visual FoxPro 6.0
27 June 2001 Visual FoxPro 7.0
1 February 2003 Visual FoxPro 8.0
7 October 2003 Visual FoxPro 8.0 Service Pack 1
20 December 2004 Visual FoxPro 9
20 December 2004 Visual FoxPro 9
8 December 2005 Visual FoxPro 9 Service Pack 1
16 October 2007 Visual FoxPro 9 Service Pack 2

Достоинства

– интеграция с Microsoft Office 2007;

– возможность совместной работы над проектом;

– поддержка более 40 форматов файлов баз данных;

– интеграция с системой контроля версий Visual Source Safe;

– поддержка технологии OLE Automation;

– возможность разработки серверных приложений;

– большая библиотека с различными примерами кода;

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

– встроенный словарь данных;

– высокая скорость обработки серверных запросов;

– поддержка графиков и диаграмм.

Недостатки

– для написания серверных приложений используется узкоспециализированный язык программирования FoxPro (диалект языка xBase);

– Microsoft больше не поддерживает данный продукт;

– несовместимость с 64-битными ОС;

– эта IDE поддерживает современные ОС Windows 8 / 10. [Источник 2]

Совместимость с операционными системами

Версия VFP 3.0 VFP 5.0 VFP 6.0 VFP 7.0 VFP 8.1 VFP 9.0
Windows 3.x ДА НЕТ НЕТ НЕТ НЕТ НЕТ
Windows NT 4.0 ДА ДА ДА ДА НЕТ НЕТ
Windows 95 ДА ДА Только среда запуска (Runtime) НЕТ НЕТ НЕТ
Windows 98 ДА ДА ДА ДА Только среда запуска (Runtime) Только среда запуска (Runtime)
Windows ME ДА ДА ДА ДА Только среда запуска (Runtime) Только среда запуска (Runtime)
Windows 2000 ДА ДА ДА ДА ДА ДА
Windows XP ДА ДА ДА ДА ДА ДА
Windows Server 2003 ? ДА ДА ДА ДА ДА
Windows Vista В режиме совместимости ДА ДА ДА ДА ДА
Windows 7 ДА ДА ДА ДА ДА ДА

Образцы кода

Объекты

Обработка данных

Язык также имеет обширные команды управления базами данных и индексирования. Индекс «help» команд в VFP 9 содержит несколько сотен команд и функций. В приведенных ниже примерах показано, как закодировать создание и индексирование таблиц, однако в VFP есть экраны таблиц и баз данных, которые создают таблицы и индексы без необходимости писать код.

Доступ ODBC с использованием пересылки SQL

Итог о продукте

В настоящее время Visual FoxPro не рассматривается профессиональными разработчиками в качестве надежной и удобной IDE для работы с реляционными базами данными. Хотя нельзя сказать, что она полностью утратила свою популярность в связи с утратой поддержки от Microsoft в 2015 году, так как во многих учебных заведениях Испании, Индии, Чили и Аргентины студенты и преподаватели все еще пользуются этим приложением. В свою очередь, отечественные программисты уже полностью перешли на альтернативный продукт от Microsoft SQL Server. [Источник 3]

Источник

FoxPro работает с таблицами формата *.dbf
Visual FoxPro 7.0 снабжено мощным набором мастеров, которые позволяют новичку достаточно быстро создать мощное работоспособное приложение, однако не могу рекомендовать использовать эту возможность людям, желающим, создать рациональное приложение, т.к. мастера используют навороченные библиотеки и не рационально используют память. Программы созданные с помощью мастеров очень грамозки.
FoxPro сильно интегрирован с SQL, позволяет вставлять блоки SQL-комманд непосредственно в тело основного кода и использовать в SQL-запросах собственные (фоксовские) функции. Что позволяет быстро и эффективно обробатывать большие базы, даже если таблицы не индексированы. Кроме того, FoxPro облодает собственными, очень мощными, и главное, удобными средствами работы с БД.
Наиболее крупные БД созданные на FoxPro (из известных автору):
База данных ГУВД г. Москвы.
База данных МГТС.
База данных Пенсионного фонда России.
Это основной язык написания программ Главного Научно-Вычеслительного Центра (ГНИВЦ) Министерства РФ по налогам и сборам

К достоинствам VFoxPro можно так же отнести: возможность создания составного индекса, работа с курсорами (виртуальными таблицами, не отличающимися от обычных, но исчезающих после завершения сеанса работа, т.е. не остаются ни в памяти ни на диске), возможность экспортировать\импортировать данные в\из XML, VFoxPro работает с другими базами по средствам драйвера ODBC, VFoxPro обладает высокой надежностью при работе с БД (в т.ч. и с индексами) и полность соответствует объявленным возможностям.
На VFoxPro можно создавать и клиент-серверные БД, однако в этой области VFoxPro значительно уступает большинству из известных серверов БД.
Резюме VFoxPro мощнейшее средство для работы с локальными базами данных, значительно превосходящее, по эффективности, все остальные системы БД.

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

Читайте также:  Что такое лицевое предлежание

Ограничения VFoxPro 7.0
Для людей имеющих представление, что такое БД привожу некоторые ограничения для 7-го Фокса (это лучше любых хар-тик), выводы сами напросятся. Для остальных распишу все позже.

Ограничения работы с базами
Максимум записей в файл таблицы. 1 миллиард
Максимальный размер файла таблицы. 2 гигабайта
Максимум символов в записи (MEMO). 65,500
Максимум символов в поле таблицы. 254
Максимальный размер числовых (и с плавающей точкой) полей. 20
Максимум полей записей. 255
Максимум таблиц открывается в одно время. 255
(ограниченно памятью и доступными дескрипторами файла.)
Максимум байтов в индексном ключе в некомпактном индексе. 100
Максимум байтов в индексную ключе в компактном индексе. 240
Максимум открытых индексных файлов в таблице. неограниченно
Максимум открытых индексов во всех базах. неограниченно
Максимум отношений. неограниченно
Максимальные поля, которые могут быть выбраны SQL SELECT. 255

Источник

Visual FoxPro

IDE: английский, немецкий, испанский
Runtime: все вышеупомянутые, а также французский, китайский, русский, корейский

Visual FoxPro 9.0, пакет обновления 2 (SP2) (11.10.2007)

Visual FoxPro (VFP) — объектно-ориентированный и процедурный язык программирования систем управления реляционными базами данных, разработанный корпорацией Microsoft. Основой для данного программного продукта послужил язык программирования FoxPro. Относится к семейству языков xBase, разработанных на базе синтаксиса языка программирования dBase. Другими членами данного семейства являются Clipper и Recital.

Содержание

Новейшая история

В конце 2002 года было показано, что Visual FoxPro может работать на Linux под Wine, однако это, по существу, нарушает пользовательское лицензионное соглашение (EULA).

В декабре 2005 года, VFP взлетел в Top 20 на TIOBE индекс в первый раз. В марте 2007 года он был в положении 19, что делает его языком группы «B». По состоянию на август 2010 года, VFP (в сочетании с XBase) находится в позиции 25.

В марте 2007 года Microsoft объявила, что не будет VFP 10, соответственно, VFP 9 (выпущен в производство 17 декабря 2004 г.) — последний коммерческий релиз VFP от Microsoft. Поддержка версии 9 продолжается с пакетами обновления, которые были выпущены 8 декабря 2005 и 11 октября 2007 года.

История версий

Совместимость с операционными системами

Поддерживаемые версии Windows
Версия VFP 3.0 VFP 5.0 VFP 6.0 VFP 7.0 VFP 8.1 VFP 9.0
Windows 3.x Да Нет Нет Нет Нет Нет
Windows NT 4.0 Да Да Да Да Нет Нет [1]
Windows 95 Да Да Да Только среда запуска (runtime) Нет Нет
Windows 98 Да Да Да Да Только среда запуска (Runtime) Только среда запуска (Runtime)
Windows ME Да Да Да Да Только среда запуска (Runtime) Только среда запуска (Runtime)
Windows 2000 Да Да Да Да Да Да
Windows XP Да Да Да Да Да Да
Windows Server 2003 ? Да Да Да Да Да
Windows Vista В режиме совместимости Да Да Да Да Да
Windows 7 Да Да Да Да Да Да

Исполняемые файлы

Версия Возвращаемое значение VERSION() Размер EXE-файла Дата EXE-файла Размер DLL-файла Название DLL-файла
VFP 9 SP2 with Hotfixes Visual FoxPro 09.00.0000.7423 for Windows 5,648 kb 3 апреля 2009 4,624 kb VFP9R.DLL
VFP 9 SP2 Visual FoxPro 09.00.0000.5721 for Windows 5,648 kb 16 октября 2007 4,624 kb VFP9R.DLL
VFP 9 Visual FoxPro 09.00.0000.2412 for Windows 5,620 kb 13 декабря 2004 4,600 kb VFP9R.DLL
VFP 8 Visual FoxPro 08.00.0000.3117 for Windows 5,236 kb 25 сентября 2003 4,200 kb VFP8R.DLL
VFP 7 Visual FoxPro 07.00.0000.9465 for Windows 4,260 kb 4 января 2002 3,344 kb VFP7R.DLL
VFP 6 Visual FoxPro 06.00.8961.00 for Windows 4,091 kb 18 августа 2000 3,295 kb VFP6R.DLL
VFP 5 Visual FoxPro 5.0.0.415 for Windows 4,065 kb 24 января 1997 3,148 kb VFP500.DLL
VFP 3 Visual FoxPro 03.00.00.0711 for Windows 4,374 kb 16 декабря 1995 3,657 kb VFP300.ESL
FPW 2.6a FoxPro 2.6a for Windows 2,444 kb 28 сентября 1994 2,946 kb FOXW2600.ESL

Дальнейшее развитие

Также 3 апреля 2007 Microsoft ответила на просьбы заявителя таким заявлением от Алана Гривера ( Alan Griver ):

Мы очень хорошо понимаем FoxPro сообщество и, то, что сыграло большую роль в том, что мы объявили 13 марта. Это всегда нелегкое решение — объявить, что мы не собираемся выпускать другую версию продукта, и это первое, что мы рассматриваем очень тщательно.

Мы не объявляем конец проекта FoxPro: очевидно, приложения FoxPro будут продолжать работать. Согласно нашим внутренним оценкам, существует больше приложений, работающих в FoxPro 2.6, чем есть в VFP, а ведь FoxPro 2.6 не поддерживается много лет. Visual FoxPro 9.0 будет поддерживаться Microsoft до 2015 года.

Для Microsoft, чтобы сохранить развитие основы FoxPro, надо обратить внимание на создание 64-разрядной среды разработки, что будет включать почти полностью переписанный основной продукт. Мы также инвестировали в создание масштабируемой базы данных SQL Server, включая свободно доступный SQL Server Express Edition. Что касается формирования партнерских отношений с третьей стороной, о которой мы слышали в интерпретации ряда крупных клиентов FoxPro, — это сделает невозможным использование FoxPro, поскольку он больше не будет от утвержденного поставщика. Мы чувствовали, что выложить среду с открытым исходным кодом на CodePlex, которая уравновешивает потребности как сообщества, так и крупных клиентов — лучший путь вперёд.

We’re very aware of the FoxPro community and that played a large part in what we announced on March 13th. It’s never an easy decision to announce that we’re not going to release another version of a product and it’s one that we consider very carefully.

We’re not announcing the end of FoxPro: Obviously, FoxPro applications will continue to work. By some of our internal estimates, there are more applications running in FoxPro 2.6 than there are in VFP and FoxPro 2.6 hasn’t been supported in many years. Visual FoxPro 9 will be supported by Microsoft through 2015.

For Microsoft to continue to evolve the FoxPro base, we would need to look at creating a 64-bit development environment and that would involve an almost complete rewrite of the core product. We’ve also invested in creating a scalable database with SQL Server, including the freely available SQL Server Express Edition. As far as forming a partnership with a third-party is concerned, we’ve heard from a number of large FoxPro customers that this would make it impossible for them to continue to use FoxPro since it would no longer be from an approved vendor. We felt that putting the environment into open source on CodePlex, which balances the needs of both the community and the large customers, was the best path forward. [5]

Источник

Национальная библиотека им. Н. Э. Баумана
Bauman National Library

Персональные инструменты

VFP (Visual FoxPro)

Разработчики: Microsoft Операционная система: Windows Платформа: x32, x64 (виртуально) [1] Локализация: Английский, Немецкий, Испанский Тип ПО: Среда разработки ПО, язык программирования Лицензия: Проприетарное ПО Веб-сайт официальный сайт

Visual FoxPro — реляционная база данных с объектно-ориентированной средой программирования от Microsoft, которая поставляется с предварительно определенными классами. Visual FoxPro является частью набора продуктов Microsoft Visual Studio.

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

Читайте также:  Что такое мемориал определение

Содержание

Обзор

Быстрое создание приложений

Вы можете быстро разрабатывать приложения с помощью визуальных мастеров FoxPro, используя панели инструментов и конструкторы. Кроме того, с помощью модели объектов и событий Visual FoxPro, вы можете создавать прототипы и быстро внедрять приложения.

Получение быстрых результатов с помощью мастеров и конструкторов

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

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

Взгляните на то, что вы можете сделать:

Меню и панели инструментов

Как и остальные приложения Microsoft, Visual FoxPro включает в себя панели инструментов, содержащие кнопки, отвечающие за выполнение общих задач или наиболее частых действий. Для выполнения конкретной задачи или использования конкретного объекта выберите соответствующую кнопку.

Вы можете настроить панели инструментов, которые поставляются с Visual FoxPro. Можно также определить пользовательские панели инструментов для приложений, которые вы разрабатываете. Дополнительные сведения о панелях инструментов см. Настройка среды Visual FoxPro или Проектирование меню и панелей инструментов.

Building Controls Quickly

Так же, как помощники могут помочь в создании отчетов и форм, конструкторы — визуальные инструменты, которые помогут вам создать элементы управления с заданными параметрами. Конструкторы могут сэкономить время, когда вы настраиваете много форм или прототипов приложений. Все, что необходимо сделать, — это запустить конструктор и ответить на ряд вопросов. В зависимости от ваших ответов, конструктор задает свойства для элемента управления, который вы добавляете. [4]

Добавление комбинированного списка в форму. Предположим, что вы хотите улучшить простую форму, созданную путем добавления возможности выбора значений полей из списка вместо перемещения через все записи с VCR-кнопками и просмотром значения в текстовом поле. Просто замените текущее текстовое поле на поле со списком и используйте конструктор для установки свойств. [5]

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

Например, Combo Box Builder — диалоговое окно с закладками, которое поможет вам создать поле со списком в форме. Комбинированный список дает тот же вид значения, что и обычное текстовое поле, но позволяет выбрать из списка. С помощью этого конструктора вы можете установить свойства комбинированного списка. С каждым изменением свойств, управляющий элемент формы будет изменяться для соответствия настройкам. [6]

Создание Grid Control. Для отображения небольшой таблицы данных вы можете использовать элемент Grid Control. Даже если вы не знакомы со всеми свойствами Grid Control, вы все равно можете воспользоваться их функциональными возможностями, используя конструктор. Конструктор поможет вам выбрать поля для вашей таблицы, стиль и расположение, а также установить связи между таблицами, связанными с Grid Control. По мере внесения изменений в свойства элемента, они отражаются в Form Designer.

Преимущества

Visual FoxPro является намного более мощным, чем его предшественники. Объектно-ориентированное программирование ускоряет разработку приложений с помощью таких особенностей, как наследование. Модель событий Visual FoxPro устраняет необходимость в использовании Foundation READ или написании обработчики событий. Оптимизация настроек системы и преимущества технологии Rushmore оптимизации запросов повышает производительность Visual FoxPro.

Объектно-ориентированное программирование в Visual FoxPro

С помощью объектной модели Visual FoxPro, вы можете использовать все возможности объектно-ориентированного программирования, включая наследование, инкапсуляцию, полиморфизм и использование подклассов.

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

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

Модель классов Visual FoxPro предоставляет широкие возможности контроля над объектами в вашем приложении. У вас есть столько контроля над внешним видом и поведением объектов на формах во время выполнения, сколько во время разработки в Form Designer.

Обработка событий

С помощью Visual FoxPro вы можете создавать приложения, полностью управляемые событиями. Вы можете получить доступ ко всем стандартным событиям Windows, таким как движения мыши, которые позволяют перетаскивать объекты. Вы можете контролировать события либо визуально через окно свойств, либо программными средствами с помощью визуального языка FoxPro. Дополнительные сведения о модели событий, см. Understanding the Event Model.

Тестирование и отладка

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

Проверяйте то, что разрабатываете. Усовершенствованная среда разработки Visual FoxPro дает вам больше возможностей для тестирования ваших компонентов и кода. Например, если вы разрабатываете форму, вы можете нажать кнопку Run для запуска кода. Если вы хотите изменить что-то, просто нажмите на кнопку Design и внесите необходимые изменения.

Отлавливайте синтаксические ошибки раньше. Редактор теперь имеет цветовую маркировку редактирования: вы можете задать цвета для синтаксиса, обычный текст, переменные, комментарии, подробнее см. Edit Properties Dialog Box. Если вы ошиблись при вводе команды или ключевого слова, вы будете знать сразу, потому что оно примет неправильный цвет.

Мощный отладчик

Вы можете отлаживать и отслеживать компоненты приложений более легко в последней версии Visual FoxPro с помощью Debugger Window.

Создание пользовательского интерфейса без программирования

Visual FoxPro предоставляет мощные данные и элементы управления пользовательского интерфейса, которые можно добавить в формы с помощью конструктора форм, что делает возможным создание пользовательского интерфейса, не программируя совсем или совсем немного. Например, вы можете разработать один-ко-многим формы, легко привязав grid control к таблице, что вы можете сделать, перетащив таблицу на форму для создания grid control.

Создание формы Один-ко-многим

Visual FoxPro позволяет легко настроить формы для отображения записей из связанных таблиц. C помощью Project Manager Window и конструктора форм вы можете просто «перетаскивать» поля, необходимые для настройки формы.

Формы Один-ко-многим отображают данные из связанных таблиц.

Попробуйте настроить форму один-ко-многим, используя две связанные таблицы: Customers и Orders из Testdata.dbc.

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

Читайте также:  Что такое мониторить простыми словами

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

Придание формам профессионального вида

Вы можете быть творческим и настраивать расположение форм и добавить цвета, формы и графики.

Настройка свойств элементов управления

Вы можете улучшить свой пользовательский интерфейс с помощтю свойств элементов управления в Visual FoxPro. Используя Properties Window (Visual FoxPro) вы можете увидеть и установить свойства, связанные с каждым объектом в вашей форме, чтобы определить, как форма управления выглядит и ведет себя.

Настройка конструктора форм

Для того, чтобы облегчить себе работу, вы можете настроить Form Designer, чтобы соответствовать вашему стилю работы и потребностям.

Программирование в Visual FoxPro

Основные понятия о программировании

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

Хранение данных

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

Типы данных

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

Контейнеры данных

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

Тип Описание
Переменные Одиночные элементы данных, хранящихся в оперативной памяти компьютера (Random Access Memory).
Записи таблицы Несколько строк заранее определенных полей, каждое из которых может содержать предварительно определенный фрагмент данных. Таблицы сохраняются на диске.
Массивы Несколько элементов данных, хранящихся в оперативной памяти.

Операции над данными

Используя операторы

Операторы связывают данные вместе. Ниже приведены наиболее распространенные операторы в Visual FoxPro. [8]

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

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

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

Используя команды

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

Например, команда USE позволяет открывать и закрывать таблицы.

В следующей таблице приведены некоторые примеры команд.

Команда Описание
DELETE Помечают указанные записи для удаления.
REPLACE Заменяет значение поля новым значением.
Go Устанавливает указатель записи на определенное место в таблице.

Контроль хода выполнения программы

Visual FoxPro включает в себя особую категорию команд, осуществляющую «циклический переход» других команд и функций, определяя, когда и как часто другие команды и функции выполняются. Эти команды позволяют делать условные переходы и циклы — два очень мощных инструмента программирования. Следующая программа иллюстрирует условные ветвления и циклы. Эти концепции описаны более подробно на примере.

Условное ветвление

Условное ветвление позволяет проверить условия, а затем, в зависимости от результатов этого теста, выполнять различные операции. Есть две команды в Visual FoxPro, которые позволяют условное ветвление:

В следующем примере, если значение переменной nWaterTemp меньше, чем 100, никаких действий не предпринимается:

Циклы

Циклы позволяют выполнять одну или несколько строк кода столько раз, сколько вам нужно. Есть три команды в Visual FoxPro, которые позволяют делать зацикливание:

Используйте SCAN, когда вы выполняете ряд действий для каждой записи в таблице, как и в примере программы, описанной выше. Цикл SCAN позволяет писать код один раз, и он будет выполнен для каждой записи, так как указатель на запись перемещается через всю таблицу.

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

Используйте DO WHILE, когда вы хотите выполнять фрагмент кода до тех пор, пока выполняется определенное условие. Вы можете не знать, сколько раз код будет выполняться, но вы знаете, когда он должен прекратить выполнение. Например, давайте предположим, что у вас есть таблица с именами и инициалами людей, и вы хотите использовать инициалы, чтобы искать людей вверх. У вас возникла бы проблема, если бы вы попытались добавить человека, который имел те же инициалы, как кто-то другой уже в вашей таблице. [10]

Чтобы решить эту проблему, можно добавить номер к инициалам. Например, идентификационный код Иванова Ивана мог бы быть II. Следующий человек с теми же инициалами, например, Ильясов Илья, будет иметь II1. Если вы затем добавили Ирину Иркину в таблицу, ее идентификационный код был бы II2. Цикл WHILE DO позволяет найти правильный номер для добавления к инициалами.

Потому что вы не знаете заранее, сколько раз вы найдете соответствующие коды идентификации, вы используете цикл DO WHILE.

Источник

Информ портал о технике и не только