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

Вниз

Выбор значений в gride ?   Найти похожие ветки 

 
kirov_igor ©   (2003-12-30 00:38) [0]

Вопрос такой есть таблица со значениями
pole1 pole2 pole3
123 123 222
344 233 234
2 3 4
хочется пометить запись 1 и 3 и добавить в другую таблицу(конечно необходимо учесть , что при следующем выборе данных, оставались какие либо пометки, которые показывали, что запись перенесена, добавлена в другой тэйбл), каким образом это обрисовать это дело - помогите !!!


 
Ильш ©   (2003-12-30 06:21) [1]

Как понимать Ваше "хочется пометить"? Грид кстати тут вообще ни при чем. Грижд отображает данные, но ничего с ними не делает.
Решение: щелк на запись 1, щелк на кнопку "Перенести"... с записью 3 тоже самое. А потом составляешь запрос в котором как раз и скрещиваешь две таблицы и выясняешь какие записи совпадают. Получив результат бежишь с ним к мистеру Гриду и у него уже обрабатываешь OnDrawCell или что-то типа в этом роде.


 
Andriano   (2003-12-30 08:42) [2]

Не знаю как DBGrid-е, но в DBGrideEh можно выделять несколько записей (хоть подряд, хоть в разброс). Потом пробежаться по ним (не помню как; когда мне это нужно помню, потом опять не помню) и сделать любые действия с записями в DataSet.

Так что тут вопрос: Какие действия? А это как фантазия работает и каким DataSet-ом пользуешься.

Например в FIB-ах можно работать с внутр. буфером TpFIBDataSet напрямую и т.д.


 
Sergey13 ©   (2003-12-30 09:09) [3]

2kirov_igor © (30.12.03 00:38)
>конечно необходимо учесть , что при следующем выборе данных, оставались какие либо пометки, которые показывали

Так заведи какое нить спец. поле, где будешь хранить признак сделанной операции. Теоретически наверное более прав Ильш © (30.12.03 06:21) [1], но мой вариант проще. Если его еще повесить на тригер/ХП (какая БД?) - вааще хорошо.


 
kirov_igor ©   (2003-12-30 23:53) [4]

...."Грижд отображает данные, но ничего с ними не делает. "...
речь о гриде не шла, вопрос поставлен иначе, ясное дело , что грид отображает значения, но ...." котором как раз и скрещиваешь две таблицы и выясняешь какие записи совпадают." Тут речь не шла о выборе данных из двух таблиц :) Хочется понять механизм, понятно: пишем обработчик на OnDrawColumnCell ,но каким образом мы отмечаем , что записи перемещены в другой тэйбл ???? Т.есть в тэйбле1 должены стоять символ , ну а в тэйбле2 те записи , которые пернесены . Вот неясно, каким образом мы показываем, что помеченные записи уже добавлены (((


 
kirov_igor ©   (2003-12-30 23:53) [5]

...."Грижд отображает данные, но ничего с ними не делает. "...
речь о гриде не шла, вопрос поставлен иначе, ясное дело , что грид отображает значения, но ...." котором как раз и скрещиваешь две таблицы и выясняешь какие записи совпадают." Тут речь не шла о выборе данных из двух таблиц :) Хочется понять механизм, понятно: пишем обработчик на OnDrawColumnCell ,но каким образом мы отмечаем , что записи перемещены в другой тэйбл ???? Т.есть в тэйбле1 должены стоять символ , ну а в тэйбле2 те записи , которые пернесены . Вот неясно, каким образом мы показываем, что помеченные записи уже добавлены (((


 
Ильш ©   (2003-12-31 06:17) [6]

Ну как как?
Для примера создаем таблички:
CREATE TABLE TBL1
(
ID NUMERIC(9,0),
NAME CHAR(9),
KOL NUMERIC(9,0)
)
CREATE TABLE TBL2
(
ID NUMERIC(9,0),
TBL1_ID NUMERIC(9,0),
BLABLA CHAR(20)
)

И фигачим запрос:
select tbl1.id,tbl1.name,iif(tbl1.id=tbl2.tbl1_id,1,0) from tbl1
left outer join tbl2
on (tbl1.id=tbl2.tbl1_id)

В итоге в последнем поле получаем 1, если есть совпадения. Ну и обрабатываешь это поле в OnDraw...



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

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

Наверх




Память: 0.48 MB
Время: 0.015 c
1-93568
Mazer
2004-01-16 14:40
2004.01.29
Корректное отображение формы, вызванной из dll...


7-93720
ponyol
2003-11-09 07:39
2004.01.29
Delphi и сканер.


8-93588
SPeller
2003-09-17 07:56
2004.01.29
Что за формат?


1-93491
Shc
2004-01-12 18:47
2004.01.29
Поиск по XML схеме


1-93574
mixa
2004-01-17 04:43
2004.01.29
Как изменить дату на компьютере?