|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.07.2009, 11:13 | #1 |
Форумчанин
Регистрация: 03.05.2007
Сообщений: 247
|
как в связанной таблице разукрасить DBGrid
if (DBGrid3.DataSource.DataSet.FieldBy Name('qw').AsInteger=DBGrid3.DataSo urce.DataSet.FieldByName('n').AsInt eger) and (DBGrid3.DataSource.DataSet.FieldBy Name('God').AsInteger=DBGrid3.DataS ource.DataSet.FieldByName('g').AsIn teger) then begin
with DBGrid3.Canvas do begin Brush.Color:=clgreen; Font.Color:=clWhite; FillRect(Rect); TextOut(Rect.Left+2,Rect.Top+2,Colu mn.Field.Text); end; end Else if dBGrid3.DataSource.DataSet.FieldByN ame('dsuv').AsDateTime<>Null then begin with DBGrid3.Canvas do begin Brush.Color:=clblue; Font.Color:=clWhite; FillRect(Rect); TextOut(Rect.Left+2,Rect.Top+2,Colu mn.Field.Text); end; end Else if DBGrid3.DataSource.DataSet.FieldByN ame('FIOPV').AsString=null then begin with DBGrid3.Canvas do begin Brush.Color:=clyellow; Font.Color:=clBlue; FillRect(Rect); TextOut(Rect.Left+2,Rect.Top+2,Colu mn.Field.Text); end; end; end; FIOPV-поле из связанной таблицы! когда используешь родные поля, все получается, как из связанного поля так не получается. В чем ошибка? |
22.07.2009, 13:16 | #2 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
И тут же - Код:
|
|
23.07.2009, 03:50 | #3 | |
Форумчанин
Регистрация: 03.05.2007
Сообщений: 247
|
Цитата:
вот запрос SELECT Dprv, FIOuv, drv, adrsuv, raion, kod11, diagn, muv, 1, 2,grr,qw,n,g,god,dsuv,r,DTalonV,F IOPV FROM dbo.GNKV Dbo_gnkv Where Dprv between 1 and 2 |
|
23.07.2009, 08:07 | #4 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Тут нужно пошагам тестить чтоб сказать однозначно.
I'm learning to live...
|
|
23.07.2009, 09:38 | #5 | |
Форумчанин
Регистрация: 03.05.2007
Сообщений: 247
|
Цитата:
SELECT TOP 100 PERCENT dbo.SUV.Dprv, dbo.SUV.drv, dbo.SUV.adrsuv, SpRaion_1.raion, dbo.SpDiagn.kod11, dbo.SpDiagn.diagn, dbo.SUV.muv, dbo.SUV.dsuv, dbo.SUV.NpV, dbo.SUV.godrv, dbo.SpPol.NPol, dbo.SpDiagn.upr, dbo.SUV.DZV, dbo.SpAn.NAn, dbo.SUV.DiagnV, dbo.SUV.an, YEAR(dbo.SUV.Dprv) AS God, { fn QUARTER(dbo.SUV.Dprv) } AS qw, YEAR({ fn NOW() }) - YEAR(dbo.SUV.Dprv) AS r, { fn QUARTER({ fn NOW() }) } AS n, YEAR({ fn NOW() }) AS g, dbo.SUV.FIOuv, dbo.TalonV.FIOPV, dbo.TalonV.DRPV, YEAR({ fn NOW() }) - YEAR(dbo.TalonV.DTalonV) AS grr, dbo.TalonV.adresv, SpRaion_1.raion AS Expr2, dbo.TalonV.DTalonV, YEAR(dbo.SUV.Dprv) - YEAR(dbo.TalonV.DTalonV) AS asd FROM dbo.SpRaion SpRaion_1 RIGHT OUTER JOIN dbo.SUV INNER JOIN dbo.SpPol ON dbo.SUV.Poluv = dbo.SpPol.Id_pol INNER JOIN dbo.SpDiagn ON dbo.SUV.DiagnV = dbo.SpDiagn.ID_Diagn ON SpRaion_1.ID_raion = dbo.SUV.Raionv LEFT OUTER JOIN dbo.TalonV ON dbo.SUV.FIOuv = dbo.TalonV.FIOPV LEFT OUTER JOIN dbo.SpAn ON dbo.SUV.an = dbo.SpAn.IdAn WHERE (dbo.SUV.DiagnV = 14) AND (dbo.SUV.an IS NULL) OR (dbo.SUV.DiagnV = 15) AND (dbo.SUV.an = 2) OR (dbo.SUV.DiagnV = 16) OR (dbo.SUV.DiagnV = 17) OR (dbo.SUV.DiagnV = 18) OR (dbo.SUV.DiagnV = 19) OR (dbo.SUV.DiagnV = 20) OR (dbo.SUV.DiagnV = 21) OR (dbo.SUV.DiagnV = 35) ORDER BY dbo.SUV.FIOuv |
|
23.07.2009, 10:11 | #6 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Может совсем не то что ты ожидаешь... В общем я бы именно так сделал.
I'm learning to live...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как сделать чтобы во время поиска по таблице не было видно перемещения по dbgrid? | alxsev | БД в Delphi | 4 | 10.04.2009 19:03 |
Помогите с задачкой связанной со строками | DemonGod | Помощь студентам | 7 | 31.03.2009 14:25 |
Слияние шаблона с данными из таблице, и как подсичтать значение количества полей в таблице | n4ela | Microsoft Office Access | 3 | 07.03.2009 12:04 |
Как создать таблицу в таблице?? | Ntlegend | Помощь студентам | 1 | 14.05.2007 07:37 |