Рис. 7. Форма для работы с таблицей Country
Работа с формой очень проста: на форме четыре кнопки и одно текстовое поле, все операции проводятся над таблицей и полем.
Добавить. Добавляет в таблицу страну, введённую в текстовое поле, идентификатор получается автоматически (порядковый номер в таблице – начиная с нуля). Код:
SELECT COUNT(country.страна) AS _index;
FROM dataagent!country;
INTO CURSOR temp NOCONSOLE;
INSERT INTO country (id, страна);
VALUES (temp._index + 1, thisform.country.value)
Просмотр. По сути: простой SQL- запрос. Вот его код:
select country.страна, country.id;
FROM dataagent!country;
Удаление. Реализуется с помощью SQL-команды DELETE. Довольно проста:
DELETE FROM country WHERE страна = thisform.country.value
close tables
use country
PACK
Искать. Поиск – это тоже стандартный SQL – запрос, выводящий на экран строку таблицы, имеющую поле страна, такое, как задано в текстовом поле.
SELECT country.id, country.страна;
FROM country;
WHERE country.страна = thisform.country.value
Формы редактирования таблиц Country, Producer, Supplier - очень похожи друг на друга в связи с похожестью таблиц, а потому, дабы не терять времени, приведу только скриншоты соответствующих форм:
Рис. 8. Форма Производитель
Рис. 9. Форма Поставщик
Отдельного внимания требует форма обработки таблицы Goods. Вот на ней остановимся подробнее.
Итак, выглядит она следующим образом:
Рис. 10. Форма «Товары»
В частности, приведу обработчик нажатий всех клавиш (кнопок).
Добавить.
INSERT INTO goods (id_агента, вес, дата_выпуска, дата_продажи, кол_во_продаж, наименование, поставщик, производитель, стоимость, страна);
VALUES (VAL(thisform.select_name.value), thisform.ves.value, thisform.data_vyp.value,;
thisform.data_prod.value, thisform.kol_vo.value, thisform.naim.value, VAL(thisform.supp.value), VAL(thisform.prod.value), thisform.cost.value, VAL(thisform.country.value))
Посмотреть Базу.
select agent.фамилия, agent.имя, agent.отчество, agent.год,;
goods.наименование, producer.производитель, country.страна,;
supplier.поставщик, goods.вес, goods.стоимость, goods.дата_продажи;
FROM dataagent!agent, dataagent!goods,dataagent!country,;
dataagent!producer, dataagent!supplier;
where agent.id=goods.id_агента and producer.id = goods.производитель;
and country.id = goods.страна and supplier.id = goods.поставщик
Отчистить.
thisform.select_name.value = ""
thisform.ves.value = 0
thisform.kol_vo.value = 0
thisform.naim.value = ""
thisform.supp.value = ""
thisform.prod.value = ""
thisform.cost.value = 0
thisform.country.value = ""
Удалить.
DELETE FROM goods WHERE id_агента = VAL(thisform.select_name.value) and вес = thisform.ves.value and дата_выпуска = thisform.data_vyp.value;
and дата_продажи = thisform.data_prod.value and кол_во_продаж = thisform.kol_vo.value and наименование = thisform.naim.value;
and поставщик = VAL(thisform.supp.value) and;
производитель = VAL(thisform.prod.value) and стоимость = thisform.cost.value;
and страна = VAL(thisform.country.value)
close tables
use goods
PACK
Искать.
select agent.Фамилия, agent.имя, agent.отчество, agent.год,;
goods.наименование, producer.производитель, country.страна,;
supplier.поставщик, goods.вес, goods.стоимость, goods.дата_продажи;
FROM dataagent!agent, dataagent!goods,dataagent!country,;
dataagent!producer, dataagent!supplier;
where agent.id=goods.id_агента and producer.id = goods.производитель;
and country.id = goods.страна and supplier.id = goods.поставщик;
and goods.id_агента = VAL(thisform.select_name.value) and goods.вес = thisform.ves.value and goods.дата_выпуска = thisform.data_vyp.value;
and goods.дата_продажи = thisform.data_prod.value and goods.кол_во_продаж = thisform.kol_vo.value and goods.наименование = thisform.naim.value;
and goods.поставщик = VAL(thisform.supp.value) and;
goods.производитель = VAL(thisform.prod.value) and goods.стоимость = thisform.cost.value;
and goods.страна = VAL(thisform.country.value)
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.