|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
13.04.2010, 00:08 | #1 |
Регистрация: 08.04.2007
Сообщений: 9
|
ввод в БД через таблицу с раскрывающимися полями (lookup)
Доброго времени суток Вам.
прошу помочь разобраться как ниже описанное сделать грамотно, профессионально и не самым длинным путём ) по идее подобные задачи имеют место быть и кажется у 1С виде подобное, но сам найти, например по "ввод данных через форму таблица с lookup-полям" не смог. Суть дела: Всё это часть базы для торговли одеждой: мне надо сделать форму введения заказа клиента, выглядеть должно как таблица с 7-ю полями: | Артикул | Размер | Рост | Кол-во | Цена | Скидка | Итог | 3 поля по типу lookup; 2 поля ручной ввод оператором; 1 поле заполняется из базы, не является списком и не меняется оператором; 1 рассчитывается по 3-м предыдущим. т.е. оператор видит таблицу с единственной пустой строкой, его действия: -выбирает нужную позицию товара из раскрывающегося списка ячейки первой колонки (Артикул) -выбирает размер из 2-й колонки (Размер) [em] раскрывающийся список размеров во второй колонке меняется в зависимости от первой колонки, чтоб на детскую пижаму не взяли взрослый размер[/em] -выбирает рост из 3-й колонки(рост) [em]раскрывающийся список зависит от первой колонки(Артикул), опять чтоб не заказали на детское взрослый рост или просто не существующий для данного артикула рост[/em] -проставляет количество заказанных штук (Кол-во) -следующее поле уже заполнено (Цена) из базы, зависит только от артикула -проставляет скидку если есть(Скидка), по дефолту 0 -рассчитываться по колонкам Цена и Скидка для каждой строки (Итог) после чего если это не весь заказ то оператор переводит курсор на другую строку и повторяет для другово артикула ну а если весь то кликает кнопку и заноситься все в БД через процедуру, т.е. число строк всегда равно числу артикулов в заказе. что сделано: 5 дней копание в инете, в книге фаронова и много попыток, научился обращаться с lookup-полями, пытался заполнять PickList у Columns, в итоге к нужному результату не дошел, башка уже квадратная, а в эти выходные надо сиё уже рабочим на работе к понедельнику установить в тестовый режим . Делаю в связке БД MySQL 5 и Delphi 2006, соединение с базой через Devart MyDAC З.Ы. серверная часть сделана, заполнена и работает уже в штатном режиме 2 недели, таблицы БД используемые для данных к заполнению заказов выглядят так: BD2(kod_izd, tip, kol_vo) где __ kod_izd = ID;___ tip - тип склада, одно значение для всех артов;___ kol_vo кол-во на складеж KOD_IZD(kod_izd, art, raz,rost) где __ kod_izd = ID; __ art - название артикула, __ raz - размер артикула; __ rost - значение роста для артикула З.Ы.Ы. есть мысль что я принципиально не так подошел к решению этой задачи, это мой проект первый такой и наставников нет ( пытался у более опытного программиста спросить, но видимо недопоняли друг друга, так что старался изложить максимально детально. Буду благодарен за попутно указанную толковую литературу по созданию БД. |
13.04.2010, 06:17 | #2 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Я немного не понял: нужно использовать DBGrid или можно StringGrid? Если, например, StringGrid, то тогда вот этим кодом можно сделать выпадающий список в ячейке:
Код:
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
13.04.2010, 23:58 | #3 |
Регистрация: 08.04.2007
Сообщений: 9
|
artemavd, все правильно понял, DBGrid не обязателен, StringGrid замечательно подошел под мою задачу,
благодарю тебя, реально помог, а то думал уже что не успею к выходным код немного потестил, для лучшей работы убрал обработку изменения КомбоБокса(в частности при вводе заработал поиск по комбоБоксу) Код:
Код:
Код:
видимо таблица успевает начать редактироваться artemavd, еще момент, почему-то при срабатывании скроллбара перестаёт отрисовываться ComboBox не могу понять почему, они просто исчезают, если кликнуть там где уже введено значение то ComboBox не появиться что может быть причиной? |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ввод данных через форму | hamlook | Microsoft Office Excel | 9 | 24.03.2013 17:11 |
Можно ли создать таблицу через рhp-страницу?? | xap4o | SQL, базы данных | 11 | 30.01.2010 00:37 |
автоматизировать ввод данных в таблицу пользуясь формой и ВБА | amrnijad | Microsoft Office Excel | 2 | 07.01.2010 06:09 |
Занесение данных в таблицу через DBLookupComboBox | andirock2112 | БД в Delphi | 3 | 18.05.2009 09:51 |
Как скопировать или быстро просмотреть таблицу с LookUp? | Rain9 | Общие вопросы C/C++ | 3 | 28.10.2008 12:33 |