|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.12.2014, 20:45 | #1 |
Пользователь
Регистрация: 05.12.2014
Сообщений: 11
|
Выделить цветом в DBGrid таблицы1 строки, совпадающие со строками таблицы2
Форма:
TDataSource2, TADOQuery2, DBGrid2 - отображение таблицы HourData_2 TDataSource3, TADOQuery3, DBGrid3 - отображение таблицы HourData_3 Структура таблиц аналогичная: поля Data, TimeMs, TStreet, Tinside, DataEdit Необходимо в случае совпадения 2-х и более полей (Data,TimeMs) при сравнении таблиц HourData_2 и HourData_3 выделить эти строки в HourData_2. Ознакомился со многими статьями на форуме, но везде идут отсылки на одно и тоже. Нет ситуации с двумя таблицами. Код:
Последний раз редактировалось Stilet; 18.12.2014 в 10:54. |
18.12.2014, 10:07 | #2 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
для начала ответить на вопрос
С чем сравнивать одну конкретную запись первой таблицы (ту что мы рисуем) - надо сравнить c одной определенной записью другой (и как мы ее можем определить); - надо проверить наличие в другой таблице записи с идентичными значениями указанных полей. после этого 1. перейти от Table к Query 2. использовать SQL 3. получить ОДНУ таблицу (Grid) с нужными данными из разных таблиц БД. Тем самым придя к распространенному варианту раскраски таблицы исключительно по своим данным. Цитата:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 18.12.2014 в 10:20. |
|
18.12.2014, 10:18 | #3 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
И такое сравнение лучше не в DrawDataCell делать. Можно сделать вычисляемое SQL-поле и в запросе поместить в него результат сравнения, похуже, но тоже можно сделать вычисляемое поле в датасете и в OnCalcField провести сравнение. А в DrawDataCell просто на основании значения этого поля раскрашивать. Естественно это поле в гриде не отображать
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
18.12.2014, 13:24 | #4 |
Пользователь
Регистрация: 05.12.2014
Сообщений: 11
|
О ходе решения
To evg_m.
Про сравнение я написал в начале вопроса, перефразирую: наличие в другой таблице записей с одинаковыми значениями указанных полей, например Data и TimeMs. Table не использую. Если SQL, то перестанут отображаться записи с отличающимися строками, либо изменится порядок отображения... To Avatar: спасибо, попробую... |
19.12.2014, 09:05 | #5 | ||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
Если SQL,
Цитата:
Код:
Код:
Цитата:
Код:
программа — запись алгоритма на языке понятном транслятору
|
||
20.12.2014, 20:58 | #6 |
Пользователь
Регистрация: 05.12.2014
Сообщений: 11
|
небольшое пояснение
Суть задачи.
Данные импортируются из файла, другой БД, которые на форме предварительно выгружаются в таблицу 1. Перед загрузкой в БД пользователь должен увидеть какие строки у него будут заменены,для чего и нужно выделение в таблице 1 строк, совпадающих по параметрам Data и TimeMs со строками в таблице 2. Даже лучше, если будет выделение строк, а не закраска. Аватар: загрузка может быть нескольких сотен строк...можно ли уйти от создания доп.столбца? evg_m: не пойму Ваш совет,к сожалению. Мне не нужно получать новую выборку. Мне необходимо в действующем наборе данных выделить строки по условию. Надеюсь на Ваше содействие |
20.12.2014, 21:22 | #7 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задать язык и выделить цветом | caute | Microsoft Office Word | 19 | 30.05.2013 22:37 |
Выделить цветом | СерегаЯ | PHP | 3 | 29.04.2013 16:34 |
Даны строки S и S0. Удалить из строки S все подстроки, совпадающие с S0 . Если совпадающих подстрок нет, | Шпунюся | Помощь студентам | 1 | 16.12.2010 21:02 |
выделить цветом в мемо | iliili | Общие вопросы Delphi | 3 | 01.10.2010 16:57 |
выделить все строки цветом по заданому условию | mars56 | Microsoft Office Excel | 2 | 15.02.2010 07:55 |