Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 28.03.2011, 20:55
Goof_3569 Goof_3569 вне форума
Прохожий
 
Регистрация: 28.03.2011
Сообщения: 2
Репутация: 10
По умолчанию Помогите разобраться

Ситуация следующая :
Есть 2 таблицы :
1)Расходная накладная шапка
Код_документа_шапки
Дата
Код_контрагента
Код_фирмы
Код_склада
Код_машины
Код_экспедитора
Номер_развозки
Комментарии
Итого

2)Расходная_накладная_табличная_часть
Код_документа_табличной_части
Код_документа_шапки
Код_товара
Код_единицы_измерения
Количество
Цена
Сумма

Пытался сделать следующее. Есть форма на которой расположены 2 DBGRIDa . В верхней части должна отображаться информация о накладных (т.е вся информация из 1) ). В нижней части должна отображаться информация о всех товарах , которые были куплены по этой накладной.

Мои соображения по этому поводу. Чтобы в нижнем Dbgrid отображалась информация о каждой позиции из верхнего Dbgrid нужно написать SQL запрос типа " select * from table2 where Расходная накладная шапка.Код_документа_Шапки = Расходная_накладная_табличная_часть.Код_документа_ шапки.

Соответственно атрибут Код_документа_шапки является первичным ключом для таблицы 1) и внешним для таблицы 2) . Объединил таблицы через MS SQL SERVER.

Далее.На главной форме где отображается информация о накладных вверху и о товарах внизу, есть кнопка ДОБАВИТЬ НАКЛАДНУЮ. При этом появляется еще одна форма, на которой сверху добавляются данные о накладной,в основном из Dbedit и DblookupCombobox , а снизу соответственно еще один Dbgrid и кнопка добавить товар.Появляется еще одна форма с выбором товаров,производителя и т.п. После успешного добавления возвращаемся к форме где сверху информация о накладной, а снизу добавленные товары которые должны быть куплены по этой накладной и кнопка сформировать накладную.
После нажатия кнопки сформировать накладную , на главной форме должна сохраниться информация о добавленной накладной, а снизу при выделении накладной сверху , должна отображаться информация о товарах купленных по этой накладной, и так для каждой накладной.
Т.е каждой записи из DbGrid1(таблица(Расходная накладная шапка) должна соответствовать запись Dbgrid2 о добавленных товарах для этой накладной из таблицы(Расходная_накладная_табличная_часть).

Таблицы связаны по полю Код_документа_шапки, но при добавлении информации в таблицу 1 , это же поле в таблице 2 не заполняется тем же значением.
Я вообщем совсем запутался. Помогите,пожалуйста. И , извиняюсь,если слишком много и занудно обо всем расписал.

Немного о том,как пытался сделать я :
ГЛАВНАЯ ФОРМА
Dbgrid - 2шт
AdoConnection - 1шт
AdoQuery - 2шт
(AdoQuery1 SQL = " Select * from Расходная накладная шапка")
(AdoQuery2 SQL = " Select * from Расходная_накладная_табличная_часть ")
DataSource - 2шт

Соответственно они все нормально связанны и Insert - Post нормально работает, кроме поля Код_документа_шапки для таблицы 2)

ВТОРАЯ ФОРМА
открывается при нажатии ДОБАВИТЬ НАКЛАДНУЮ
DBgrid - 1шт (связь по DATASOURCE через главную форму, т.е Datasource 2 ( для нижнего DBgrid(информация о товарах) )

ТРЕТЬЯ ФОРМА
Открывается по нажатию кнопки ДОБАВИТЬ ТОВАР
Здесь обычные DbEdit и Dblookupcombobox и кнопка ОК.

Я так подозреваю что надо как-то через Datasource объединить AdoQuery,но уже от количества компонентов просто запутался что где куда надо...

Вообщем я по-моему нагородил тут непонятного чего...Но помогите пожалуйста,как-нибудь...
Ответить с цитированием
  #2  
Старый 28.03.2011, 20:57
Goof_3569 Goof_3569 вне форума
Прохожий
 
Регистрация: 28.03.2011
Сообщения: 2
Репутация: 10
По умолчанию

http://narod.ru/disk/8676869001/444.jpg.html вот ссылка с картинкой которую я нарисовал,чтобы более понятны мои мысли были
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 05:15.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter