Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2009.04.26;
Скачать: [xml.tar.bz2];

Вниз

заполнение ListView, используя функцию max   Найти похожие ветки 

 
Finjy   (2008-08-28 15:14) [0]

ListView  заполняю следующим образом
Статус        Деталь      Версия  
Создан        Корпус   Версия1
Изменен       Корпус   Версия2
Изменен       Корпус   Версия3  
Создан        Плита    Версия1  
Столцы Статус, Имя выбираются из запроса

Столбец Статус имеет значение "Создан",если в столбце Версия значение Версия1, в противном случае "Изменен".

Вот код

var
n:String;
begin
          SQL.Clear;
          SQL.Add("select prj_name,prj_ver, from prjver_previews

                  left join prjversion on prjver_previews.prjver_id = prjversion.prjver_id

                  group by prj_name" );

                  n:=FieldByName("prj_ver");
                 
                  Open;
                  while not Eof do
                  begin
                       with ListView1.Items.Add do
                       begin
                                 if n: ="Версия1" then Caption :="Создан" else

                                         Caption :="Изменен";

                                 

                                  with SubItems do
                                  begin
                                       Add(FieldByName("prj_name").AsString);
                                       Add(FieldByName("prj_ver").AsString);

                                  end;
                            end;

                       Next;
                       end;
                  Close;
          end;

Задача заключается в следующем: в таблице должна отображаться только последняя версия для каждой детали.С этим то проблем
нет,в запросе пишу вместо prj_ver max(prj_ver),вместо Add(FieldByName("prj_ver").AsString) Add(FieldByName("max").AsString);
Но колонка Статус уже не формируется получается ошибка. Как сформировать этот столбец?


 
Ega23 ©   (2008-08-28 15:20) [1]

Начни с того, что все with поубирай и посмотри, что получается.


 
Сергей М. ©   (2008-08-28 16:37) [2]


> колонка Статус уже не формируется получается ошибка


Возьми отладчик в зубы да пройдись по своему творению пошагово.
В чем проблема-то ?


 
Sergey13 ©   (2008-08-28 16:40) [3]

> [0] Finjy   (28.08.08 15:14)
> Столбец Статус имеет значение "Создан",если в столбце Версия
> значение Версия1, в противном случае "Изменен".

Ну и какой тогда в нем смысл?


 
Finjy   (2008-08-28 16:44) [4]

Строка n:=FieldByName("prj_ver"); уже заведомо не правильная, отладчик тут не поможет. Как раз и нужно изменитьэту стоку и условие
                                                                 
if n: ="Версия1" then Caption :="Создан" else

                                        Caption :="Изменен";


Вот я и не знаю как это сделать


 
Finjy   (2008-08-28 16:46) [5]

Должна получаться следующая таблица

Статус        Деталь    Версия  
Изменен      Корпус   Версия3  
Создан        Плита    Версия1  


 
Виталий Панасенко ©   (2008-08-28 16:50) [6]


> Finjy   (28.08.08 16:44) [4]


> Finjy   (28.08.08 16:46) [5]

Кто-нибудь что-нибудь понял?


 
Sergey13 ©   (2008-08-28 16:51) [7]

> group by prj_name"

зачем это в запросе, если нет агрегатов?


 
Виталий Панасенко ©   (2008-08-28 16:52) [8]

тебе нужно по последней версии написать создан или изменен?


 
Ega23 ©   (2008-08-28 17:09) [9]


> Кто-нибудь что-нибудь понял?


не-а. Но with - слишком дофига.


 
Finjy   (2008-08-29 08:38) [10]

Нужно по последней версии написать Создан или Изменен, именно этого я и хочу.


 
Виталий Панасенко(дом)   (2008-08-29 09:27) [11]

for
select iif(max(vers_no)=1,"Создан","Изменен") from table_name into :var do suspend;


 
Виталий Панасенко(дом)   (2008-08-29 09:30) [12]

сорри, ИБ6, там нету IIF...
for
select max(vers_no) from table_name into :var do
begin
if var=1 then
  var_str = "Создан";
else
  var_str = "Изменен"
suspend;
end;
var_str - выходной параметр



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

Форум: "Базы";
Текущий архив: 2009.04.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.005 c
15-1235259659
Nic
2009-02-22 02:40
2009.04.26
TWebBrowser


15-1235651214
Ega23
2009-02-26 15:26
2009.04.26
Подскажите, как понять


2-1237276895
igorntk
2009-03-17 11:01
2009.04.26
Как сделать, чтобы при наборе в TEdit текст записывался


6-1199630362
WebSQLNeederr
2008-01-06 17:39
2009.04.26
отключить в ТВебБроузер звук щелчка при переходе по линку


2-1237192533
petvv
2009-03-16 11:35
2009.04.26
Отслеживание изменений ФС





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский