Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.22;
Скачать: CL | DM;

Вниз

3 вопроса про DBgrid и базу данных   Найти похожие ветки 

 
JazY   (2006-01-07 02:45) [0]

1 Вопрос.
Есть DbgridEh (этот компонент похож на обычный DBgrid, но с некоторыми наворотами), который отображает Аксесовскую таблицу (через компонент Adotable). С этой таблицей работают 2 человека. Один человек добавляет информацию о произведенном товаре. Другой человек, должен в поле "Клиент" отметить какому клиенту пойдет те или иные стройматериалы. Проблема в том, что к одного и тоже клиента может быть куча названий: ЧП Пупкин, ЧП Запупыркин, ООО ЗашибисьТрейдинг и.т.д. Необходимо, чтобы человек, который заполняет поле "клиент" мог ориентироваться на определенный список. Это позволит, во-первых, избежать опечаток и во-вторых, в поле клиент указывать актуальную информацию. Вопрос как это сделать? Можно ли чтобы в каждой ячейке столбца "Клиент" появлялся выпадающий список или кнопка. Причем если кнопка, то нажав на нее появляется окно и в этом окне список клиентов и кнопка. Нажав на кнопку выбранный из списка клиент, попадает именно в ту ячейку в которой была нажата кнопка.
2 Вопрос.
Как я уже говорил, с таблицей работаю 2 человека (вернее 3). Очень важно, чтобы одновременно люди не могли работать с одной ячейкой. Т.е если один редактирует ячейку, то другой попытавшись залезить в нее получил сообщение, что мол ячейка блокирована. И еще! Допустим один человек добавил запись. как бы проинформировать другого, что мол была добавлена новая запись. Чтобы он мог нажать на Refresh и просмотреть на записи, которые были добавлены. Идеальный вариант, что программа сама отслеживает изменения и если в таблицу были добавлены новые значения, то происходит этакий автоматический Refresh.
3. Вопрос.
У меня есть поле в Dbgrid "Дата готовности". В это поле попадает информация о планируемой дате готовности. Есть также текущая дата.

Необходимо проверить при загрузке таблицы, если текущая дата равна или больше даты готовности и в поле "готовность" нет текста "Готов", то в поле "контроль" надо добавить текст "Внимание".

3 Вопрос и 1 самые важные. Как положено новичку, очень нужен исходник. Заранее благодарен.


 
Плохиш ©   (2006-01-07 03:29) [1]

1. Создай отдельную таблицу "Клиент", из которой с помощью Lookup-поля будешь вставлять значения в свою таблицу.
2. Сделай кнопку и меняй ей цвет или её активность, после опроса по таймеру на наличие новых данных
3. Решается выполнением запроса типа "UPDATE mytable SET готовность="Внимание" where готовность<>"Готов" and <Дата готовности><=<Текущая дата>"

> Как положено новичку, очень нужен исходник.

Это совершенно не положено ни новичку, ни неновичку.


 
JazY   (2006-01-07 05:03) [2]


> опроса по таймеру на наличие новых данных

А как может выглядеть такой запрос? Я имею ввиду как организовать такой запрос? Через SQL запрос или через компонент Adotable... может у него возможность есть отлавливать изменения в таблице?

> 3. Решается выполнением запроса типа

Опять же извеняюсь за ламерский вопрос, но вы имеете ввиду запрос через SQL? Т.е получается прежде чем открыть таблицу, мне нужно запустить соответсвующий запрос и только за тем открывать таблицу? А нельзя ли выполнить данную задачу через DBgrid? Я просто к чему это говорю. В SQL не силен и мне бы было проще решить эту задачу через изменения в DBgrid.

> Это совершенно не положено ни новичку, ни неновичку.

Я не хотел сказать, что мастера должны новичку указывать код. Конечно, нет. Я хотел сказать, что положено в смысле, что мне как новичку тяжело понять что было сказано без кода или подробных объесняний.

Поэтому, конечно, я благодарен за ответы и вообще спасибо, но если вы или другие участники форума найдут возможным указать код или подробней объяснить это бы очень сильно помогло.


 
app ©   (2006-01-07 12:01) [3]

задавай по одному вопросу за раз, не устраивай помойку.


 
sniknik ©   (2006-01-07 12:40) [4]

> Т.е получается прежде чем открыть таблицу, мне нужно запустить соответсвующий запрос и только за тем открывать таблицу?
идаже больше, таблицу открывать совсем не следует, следует необходимые данные получать следующим запросом.

> В SQL не силен и мне бы было проще решить эту задачу через изменения в DBgrid.
или учи, или бросай заниматься базами. и, еще... в DBgrid-ах данных нет! нечего изменять.


 
JazY   (2006-01-07 13:31) [5]


> задавай по одному вопросу за раз, не устраивай помойку.

Приятно, конечно, что мои вопросы - помойка, но вполне возможно, что действительно не оранжерея. :)))))

Как бы то нибыло 2 простых вопроса и все.... меньше не как.

1. Как работать с Lookup-полями и
2. Как определить, что данные были обновлены

Скажите, а?


 
Плохиш ©   (2006-01-07 13:39) [6]


> JazY   (07.01.06 13:31) [5]

Не пора ли книжку какую прикупить?


 
JazY   (2006-01-07 15:01) [7]

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


 
sniknik ©   (2006-01-07 16:23) [8]

> Но я изучаю Делфи 2 месяца
начни тогда с чего попроще

> но сейчас бы хотелось 2 ответа услышать на эти вопросы
но тебе ответили... -> [1]
ответы были видать не поняты, придется разжовывать основы (и нет гарантии, что с другим вариантом ответа не будет тогоже самого)...
а книги для того  и пишут чтобы разжовывать. одним автором для многих начинающих, а не наоборот под каждого начинающего отдельную книгу (хотя... сколько платиш? при достаточной оплате можно и под одного написать).

не с того начал. имхо. сначала читаеш, потом пишеш. не получается, сначала пытаешся разобраться сам, потом постиш в форум. а у тебя наоборот. (вряд ли кто с нуля тебе согласится все обьяснять)



Страницы: 1 вся ветка

Текущий архив: 2006.01.22;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.043 c
14-1135334743
Vasya Pupkin
2005-12-23 13:45
2006.01.22
Как проверить батарейку?


2-1136591114
JazY
2006-01-07 02:45
2006.01.22
3 вопроса про DBgrid и базу данных


2-1136455542
Жанна
2006-01-05 13:05
2006.01.22
Событие


14-1135598610
ctrl+c
2005-12-26 15:03
2006.01.22
qwertyuiop


2-1135652426
stef
2005-12-27 06:00
2006.01.22
Не правильно работает цикл for