Среда, 22.11.2017, 01:51
Приветствую Вас Гость

Не ошибается тот, кто ничего не делает.
Но и ничего не делать - ошибка.

Эмиль Кроткий

Меню сайта
Категории раздела
База данных "Склад" [14]
Статьи, связанные с программированием баз данных
Форма входа

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0


















Тиц
Главная » Статьи » Базы данных » База данных "Склад"

Delphi. Урок 1.9. Программирование баз данных в Delphi - создаем формы прихода продуктов на склад.
Содержание

Урок 1.1. Пишем программу складского учета.
Будем писать программу учета продуктов на складе по средней цене прихода. А для этого нам нужно научиться работать с базами данных. Начнем работу с создания базы в MS Access 2007.

Урок 1.2. Создаем главную форму программы склад.
На этом уроке мы создадим главную форму для нашего склада. Создадим подключение, к базе, используя компонент TADOConnection. Используемые компоненты ( TADOConnection ).

Урок 1.3. Создаем главную форму программы склад.
На этом уроке мы продолжим создание главной формы для нашего склада. Разместим основные компоненты, создадим меню... Используемые компоненты (TADOTable, TMainMenu).

Урок 1.4. Создаем подчиненные формы для справочников программы склад.
На этом уроке мы создадим форму для справочника "Единицы измерения"  нашего склада. Используемые компоненты (TButton, TDBGrid, TDataSource ).

Урок 1.5. Создаем подчиненные формы для справочников программы склад.
На этом уроке мы создадим форму для справочника «Категории продуктов» и «Поставщики»  нашего склада. Используемые компоненты (TButton, TDBGrid, TDataSource ).

Урок 1.6. Создаем подчиненные формы для справочников программы склад.
На этом уроке мы создадим форму для справочника «Продукты»  нашего склада c использованием поле Lookup  из других таблиц. Используемые компоненты (TButton, TDBGrid, TDataSource ).

Урок 1.7. Создаем формы прихода продуктов на склад.
На этом уроке мы создадим формы прихода продуктов на склад. Приход продуктов будет состоять из трех форм. В первой мы будем хранить данные о приходе. Во второй, данные о продуктах для каждого прихода. Третья – форма для выбора продуктов. Используемые компоненты (TButton, TDBGrid, TADOTable, TADOQuery, DataModule).

Урок 1.8. Создаем формы прихода продуктов на склад.
На этом уроке мы создадим вторую форму,  в которой будут отражаться данные о продуктах для каждого прихода. Используемые компоненты (TButton, TDBGrid, TADOTable, TADOQuery, DataModule, TDateTimePicker, TDBLookupComboBox).

Урок 1.9. Создаем формы прихода продуктов на склад.
На этом уроке мы создадим последнюю форму для прихода продуктов. В  ней  будет происходить   выбор продуктов прихода. Используемые компоненты (TButton, TDataSource, TDateTimePicker, TDBLookupComboBox, TDBEdit).

Урок 1.10. Программирование баз данных в Delphi - создаем формы прихода продуктов на склад.
На этом уроке мы напишем процедуры для обработки событий для наших форм прихода, созданных на уроках 1.7. – 1.9.

Урок 1.13. Программирование баз данных в Delphi (Создаем модуль печати данных о приходе и расходе).
На этом уроке мы реализуем  печать данных прихода, расхода и состояния склада.  Печать будем реализовывать через MS Excel, то есть это будет не совсем печать, а экспорт данных в MS Excel, а там пользователь может сам выбрать, печатать или сохранить отчет. В начале приготовим шаблоны  MS Excel, в которые будем выводить отчеты

Урок 1.14. Программирование баз данных в Delphi (Создаем модуль для сжатия и восстановления базы данных).


Урок 1.9.

Программирование баз данных в Delphi - создаем формы прихода продуктов на склад. 

На этом уроке мы создадим последнюю форму для прихода продуктов. В  ней  будет происходить   выбор продуктов прихода.

Программирование баз данных в Delphi - создаем формы прихода продуктов на склад.

Приступим к созданию  формы.

Создаем новую форму File->New->FormDelphi

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

Name -> Form_select_prod;

Visible->False;

Caption->Выбор продуктов.

 

Сохраните модуль с именем select_prod.

Пропишем uses general, prihod_prod; после раздела implementation {$R *.dfm} в программном модуле unit select_prod.

А программном модуле unit select_prod   формы prihod_prod  пропишем uses general, prihod, unit_dm, select_prod;

Далее размещаем на форме следующие компоненты

Две кнопки TButton шесть компонентов TLable из вкладки Standart

В инспекторе объектов для Button1 устанавливаем свойство  Caption  -> ОК;

для Button2 устанавливаем  свойство  Caption  -> Отмена;

для Label1 устанавливаем  свойство  Caption ->  Группа;

для Label2 устанавливаем  свойство  Caption -> Ед.изм.;

для Label3 устанавливаем  свойство  Caption -> Количество;

для Label4 устанавливаем  свойство  Caption -> Цена;

для Label5 устанавливаем  свойство  Caption -> Сумма;

для Label6 устанавливаем  свойство  Caption ->Срок реализации.


Из вкладки Win32, компонент TDateTimePicker

В инспекторе объектов для него устанавливаем свойство Format -> dd.MM.yyyy, Time -> 0:00:00;

 
Из вкладки Data Access помещаем на форму три компонента TDataSource.

для DataSource1 в инспекторе объектов свойство Name записываем  product_group,

DataSet-> Form_general.table_product_group;

для DataSource2 в инспекторе объектов свойство Name записываем  products,

DataSet-> Form_general.table_products;

для DataSource3 в инспекторе объектов свойство Name записываем  ed_izmer,

DataSet-> Form_general.table_ed_izmer;


Из вкладки Data Controls помещаем на форму три компонента  TDBLookupComboBox  и три TDBEdit.

для DBLookupComboBox1 в инспекторе объектов свойство Name записываем  DBLookup_product_group,  ListSource -> product_group , ListField-> product_name,  KeyField->id, DataSource-> Form_prihod_prod.storage, DataField-> id_product_group.

для DBLookupComboBox2 в инспекторе объектов свойство Name записываем  DBLookup_products,  DataSource-> Form_prihod_prod.storage, DataField-> product.

для DBLookupComboBox3 в инспекторе объектов свойство Name записываем  DBLookup_ed_izmer,  DataSource-> Form_prihod_prod.storage, DataField-> ed_izmer.

для DBEdit1 в Name-> quantity,  DataSource-> Form_prihod_prod.storage, DataField-> quantity;


для DBEdit2 в Name-> price,  DataSource-> Form_prihod_prod.storage, DataField-> price;


для DBEdit3 в Name-> summ,  DataSource-> Form_prihod_prod.storage, DataField-> summa, ReadOnly->True.

Далее располагаем компоненты  формы как показано на рисунке:


Программирование баз данных в Delphi - создаем формы прихода продуктов на склад.


Скачать исходники урока можно здесь.



Категория: База данных "Склад" | Добавил: xaramamburu (27.06.2011)
Просмотров: 12771 | Комментарии: 5 | Рейтинг: 5.0/1
Всего комментариев: 5
1  
Здравствуйте!у меня возник такой вопрос. Я поле product_name таблицы product_group связывала только с таблицей products и теперь у меня не появляется поле Группа. Подскажите пожалуйста как связать таблицу storage с таблицей product_group через таблицу products!!?

2  
Не совсем понятно, где у вас не появляется поле группа, если в форме выше, то связывать ничего не надо. Что бы открывалось поле DBLookupComboBox1 у него достаточно заполнить поля ListSource -> product_group , ListField-> product_name, KeyField->id, (попробуйте заполнить только их, должен появляться выпадающий список ) поля DataSource-> Form_prihod_prod.storage, DataField-> id_product_group нужны для того, чтобы передать данные в таблицу storage из таблицы product_group. Поле группа в этой форме играет роль фильтра категорий для выбора продуктов. Если я вас неправильно понял, то тогда обьясняйте проблему по подробнее, что куда и откуда должно у вас передаваться или открываться.))))

3  
Я хотела сказать,что поле id_product_group у меня есть только в таблице products и нет в таблице storage. В таблице storage у меня есть только поле id_product,поэтому на форме выше поле Группа у меня является пустым,так как не создается поле Lookup в таблице storage для записей из таблицы product_group.

4  
Вы меня не поняли. Поле Группа (DBLookupComboBox1) в данном случае нужно просто для просмотра групп продуктов и выпадающий список будет появляться сразу как только вы заполните поля ListSource , ListField, KeyField, здесь не нужны связи с другими таблицами, потому что данные берутся только из одной таблицы product_group. Если список категорий у вас не появляется, это означает, что у вас закрыта таблица table_product_group (свойство Active должно быть True) или сделаны неправильно подключения самого поля DBLookupComboBox1. Далее как только вы получите список категорий продуктов, вам надо будет привязать к таблице storage таблицу product_group, это делается аналогично как и в справочнике продуктов поля Lookup и сделать фильтр по этому полю, к сожалению будет это работать или не будет я не знаю (знаю, что по Lookup полям не работает поиск и сортировка), поэтому я долго мучатся не стал и ввел в таблицу storage поле id_product_group, все проблемы сразу исчезли.)))

5  
Спасибо!!

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск
Наш опрос
Оцените мой сайт
Всего ответов: 532
Уголок общения



Copyright MyCorp © 2017Конструктор сайтов - uCoz