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

Вниз

Summa Calculated полей   Найти похожие ветки 

 
Kyn66 ©   (2007-02-09 14:31) [0]

Мастера! Возможно-ли такое? Сабж? В гриде вывожу таблицу, одно из полей которого Calculated. Внизу через Query пытаюсь выводить сумы столбцов. При обращению к этому полю - ошибка.


 
Sergey13 ©   (2007-02-09 14:40) [1]

> При обращению к этому полю - ошибка.

Какому обращению? Какая ошибка?

ЗЫ: В EhLib-овском гриде это реализовано. Есть желание - качай смотри/используй. 3.6 - последняя бесплатная версия.


 
Johnmen ©   (2007-02-09 14:43) [2]


> одно из полей которого Calculated. Внизу через Query пытаюсь выводить сумы столбцов.

Это как это???


 
Kyn66 ©   (2007-02-09 14:56) [3]


procedure TReestrFrm.SumQueryBeforeOpen(DataSet: TDataSet);
....
SqlSumStr = "SELECT SUM(Sum1), SUM(Sum2), SUM(Sum3)," +
                            "SUM(Sum4), SUM(Raznica), COUNT(*)";
  with SumQuery do
   begin
     SQL.Clear;
     SqlSumStr := SqlSumStr + " FROM " + RepTable + " WHERE P_ID = :p1";
     SQL.Add(SqlSumStr);
     Parameters[0].Value := PerID
   end;


Raznica - calculated


procedure TReestrFrm.Rep13OperTblCalcFields(DataSet: TDataSet);
begin
 Rep13OperTblRaznica.Value := Rep13OperTblSum2.Value - Rep13OperTblSum4.Value;
end;



 
Johnmen ©   (2007-02-09 15:03) [4]

О-о-о... Как всё запущено...

Есть ли у тебя в таблице, имя которой есть значение переменной RepTable, поле Raznica, что ты так смело к нему обращаешься в запросе?


 
Kyn66 ©   (2007-02-09 15:16) [5]


> Есть ли у тебя в таблице, имя которой есть значение переменной
> RepTable, поле Raznica, что ты так смело к нему обращаешься
> в запросе?


Ессно


 
Sergey13 ©   (2007-02-09 15:17) [6]

> [5] Kyn66 ©   (09.02.07 15:16)

А почему тогда оно вычисляемое?


 
Johnmen ©   (2007-02-09 15:22) [7]


> Kyn66 ©   (09.02.07 15:16) [5]
> Ессно

С каких пор в Аксесе появились вычисляемые поля?


 
Kyn66 ©   (2007-02-09 15:25) [8]

2 Sergey 13

procedure TReestrFrm.Rep13OperTblCalcFields(DataSet: TDataSet);
begin
Rep13OperTblRaznica.Value := Rep13OperTblSum2.Value - Rep13OperTblSum4.Value;
end;


 
Sergey13 ©   (2007-02-09 15:30) [9]

> [8] Kyn66 ©   (09.02.07 15:25)

У тебя похоже каша в голове про вычисляемые поля. Вычисляемыми обычно называют поля вычисляемые на клиенте (которых нет в физической БД) или вычисляемые на сервере (обычно это указывают специально, ибо реже встречается). Вторые есть в физической БД, но их заполнением ведает сервер. Разберись с терминологией.


 
Kyn66 ©   (2007-02-09 15:45) [10]

Я с этими полями работаю вплотную. В данном случае поле Raznica вычисляемое, ибо физически не существует, а принимает значение в процессе работы с таблицей. В данном случае оно вычисляется, как разница между значением поля Sum2 и Sum4


 
Johnmen ©   (2007-02-09 15:49) [11]

Где это поле? Кому оно принадлежит?
ЗЫ
В общем, букварь тебя зовёт - "Прочти меня" :)))


 
Sergey13 ©   (2007-02-09 15:50) [12]

> [10] Kyn66 ©   (09.02.07 15:45)

Ты уж реши сам - есть оно или нет в физической таблице. Ибо противоеречишь сам себе
> [5] Kyn66 ©   (09.02.07 15:16)

Если его "физически не существует" то почему ты к нему в запросе обращаешься?
> [3] Kyn66 ©   (09.02.07 14:56)


 
Kyn66 ©   (2007-02-09 15:56) [13]


> В общем, букварь тебя зовёт - "Прочти меня" :)))


Насчет букваря наверное те нуно к нему обратиться! Щелкни по Table мышой, затем кликай правой.... -> New Field... Type Fiel - Calculated .....


procedure TReestrFrm.Rep13OperTblCalcFields(DataSet: TDataSet);
begin
 Rep13OperTblRaznica.Value := Rep13OperTblSum2.Value -    
                                          Rep13OperTblSum4.Value;
end;


 
Sergey13 ©   (2007-02-09 16:09) [14]

> [13] Kyn66 ©   (09.02.07 15:56)

Ты как нибудь тыкнешь куда нибудь, не понимая куда и... все, тыкалка и отвалится (в лучшем случае). 8-)


 
Виталий Панасенко ©   (2007-02-09 18:49) [15]


> Kyn66 ©   (09.02.07 15:56) [13]
>
>
> > В общем, букварь тебя зовёт - "Прочти меня" :)))
>
>
> Насчет букваря наверное те нуно к нему обратиться! Щелкни
> по Table мышой, затем кликай правой.... -> New Field...
> Type Fiel - Calculated .....
>
>
> procedure TReestrFrm.Rep13OperTblCalcFields(DataSet: TDataSet);
>
> begin
>  Rep13OperTblRaznica.Value := Rep13OperTblSum2.Value -  
>  
>                                           Rep13OperTblSum4.
> Value;
> end;

Тогда ткни в справку по сиквелу...Потому как тупишь на все 100% и даже больше..

SqlSumStr = "SELECT SUM(Sum1), SUM(Sum2), SUM(Sum3)," +
                           "SUM(Sum4), SUM(Sum2-Sum4), COUNT(*)";
 with SumQuery do
  begin
    SQL.Clear;
    SqlSumStr := SqlSumStr + " FROM " + RepTable + " WHERE P_ID = :p1";
    SQL.Add(SqlSumStr);
    Parameters[0].Value := PerID
  end;


 
Виталий Панасенко ©   (2007-02-09 18:50) [16]

Поле Raznica- фактически ПЕРЕМЕННАЯ...



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

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

Наверх




Память: 0.48 MB
Время: 0.042 c
2-1176286850
hover
2007-04-11 14:20
2007.04.29
ListBox и кнопка


15-1175501662
__DATA__
2007-04-02 12:14
2007.04.29
Правильное отображение русского теста в HTML


2-1176237348
ppcumax
2007-04-11 00:35
2007.04.29
Как сделать паузу в цикле


15-1175416768
Kerk
2007-04-01 12:39
2007.04.29
Захват автозаправки


2-1175879629
Первакласник Вася
2007-04-06 21:13
2007.04.29
Отследить появление окна





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский