Заполняем таблицы

Чтобы заполнить таблицу foxpro, ее надо каким-либо образом выбрать. Обычно используют или менеджер проекта, или дизайнер базы. Можно использовать команду use, но так делают редко. Затем таблицу нужно открыть, что опять-таки делают кнопкой.

В Database Designer это кнопка с очками (обведена кружочком), в Project Manager-е это кнопка Browse. Можно использовать одноименную команду, или системное меню. Все зависит от того, в каком режиме вы работаете, какие окна открыты и т.п.

Результат будет один и тот же - откроется таблица, в данном случае пустая. В нее нужно добавить пустую строку. Способов два - использовать меню, или нажать Ctrl+Y (подчеркнуто красным).

Черными линиями зачеркнут пункт "Добавить запись из...", поскольку импортировать данные мы не собираемся (неоткуда). Нам просто нужно добавить пустую строку.

Добавлять записи в эту таблицу удается только по одной. Причина тому - ключевое поле KOD. Foxpro следит за уникальностью значения в этом поле, и не дает ввести два пустых значения. Одно - пожалуйста, но при этом будет заблокирован ввод новых записей. Вот и догадайся, почему все работало-работало, и вдруг перестало.

Ввести одну запись без номера все же можно, если поступить так, как показано на рисунке - сначала ввести все номера, а потом стереть один из введенных. Делать этого, конечно же, не следует, более того, следует принять все меры, чтобы этого не смог сделать и пользователь. Колонку "Код" показывать можно, но она всегда должна быть "Только для чтения"

А как все же добавить новую запись в такую таблицу? Нормальную запись, с номером? Ввести ее во вспомогательную базу с такой же структурой, и присоединить командой append from. Элементарно.

Вернув гражданину Сидорову код 003, можно приступать к заполнению следующей таблицы. Она будет вести себя немного по-другому

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

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

Черный квадратик в левой части пустой строки - признак того, что запись помечена как удаленная. Будет она видна, или не будет, зависит от команды

SET DELETE

После того, как выполнена команда PACK, записи с "черной меткой" удаляются необратимо.

Если нет желания вводить всю эту ерунду в таблицы, можете скачать готовые. Они понадобятся для опытов по связыванию таблиц.

 

 
К оглавлениюк следующей статье