![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Привет всем!
Есть такая проблема. У меня вывод в таблицу такой: ID №договора---------Фамилия -------- Дата-------Деньги 1------50-------------Иванов И.И.------12.12.2010------50 2------50 ------------Иванов И.И.------15.02.2011------100 А хочу такой: ID----№договора-------Фамилия--------Дата--------Сумма 1--------50 Иванов И.И.----12.12.2010 -------------------------------------------------------150 2--------50-----------Иванов И.И.-----15.02.2011 -------- Т.е. как сделать объединение строчек определенного столбца и написать там посередине сумму??? Последний раз редактировалось Botaniq, 12.04.2011 в 18:45. |
|
#2
|
|||
|
|||
|
а база какая? хотя в принципе пофиг какая, можно через Calculated поля сделать.
|
|
#3
|
|||
|
|||
|
База Oracle 10g.
Каким образом можно так сделать?? Можно пояснить кодом |
|
#4
|
||||
|
||||
|
Как интересно у вас сумма по двум датам под одной=)
Код:
select SUM(деньги) as сумма group by ID order by id что нибудь в таком духе можно в запросе попробовать написать вместо Код:
select деньги from таблица order by id или у вас по другому база сделана? И вообще что за таблица, что за вывод? ЗЫ .Вам не кажется, что писать сумму отдельной строкой есть смысл только при выводе всех значениий перед ней? Последний раз редактировалось anonymous, 13.04.2011 в 10:22. |
|
#5
|
||||
|
||||
|
Код:
select sum(Деньги), Фамилия
from таблица
group by Фамилия |
|
#6
|
||||
|
||||
|
оО а что мешает просто к выборке добавить поля с датой и айди?
последние 100500 раз когда я писал запросы типа select a,b,c,d,e,f... все работало. Последний раз редактировалось anonymous, 13.04.2011 в 10:40. |
|
#7
|
|||
|
|||
|
Я хочу вывести сумму посередине двух строк, а не отдельной строкой
|
|
#8
|
||||
|
||||
|
ни-чего не понимаю
|
|
#9
|
|||
|
|||
|
Пример во вложении
|
|
#10
|
||||
|
||||
|
В Dbgrid объединить ячейки проблемно, я бы попробовал в stringgrid написать вывод, а еще лучше в генераторе отчетов сделать, если он только для чтения. Ну и форма вывода информации помоему странновата.
|
|
#11
|
|||
|
|||
|
Я согласен что странно)
а как это реализовать в stringgrid? |
|
#12
|
||||
|
||||
|
Цикл который пройдет например по всем фамилиям, выберет для каждой набор полей, которые еще один цикл, из результата запроса по строкам записывает в соответствующие ячейки stringgrid, причем по завершении вывода каждой фамилии пишет в заданную ячейку сумму 1 раз для всего блока.
блин....отдаленно напоминающее Код:
procedure TForm1.drawgraph(j: integer);
var s:string;
ct,i :integer;
begin
sggraph.Cells[0,1]:='заголовок';
sggraph.Cells[0,2]:='заголовок';
sggraph.Cells[0,3]:='сумма';
query.Close;
form1.Query.SQL.Text:='select * FROM таблица WHERE T_id ='+inttostr(j);
form1.query.ExecQuery;
i:=1;
ct:=0;
while not query.eof do
begin
sggraph.cells[i,0]:=inttostr(i);
sggraph.cells[i,1]:=query.fieldbyname('чтото').asstring;
sggraph.cells[i,2]:=query.fieldbyname('чтото_еще').asstring;
ct:=ct+query.fieldbyname('деньги').asinteger;
I:=i+1;
end
sggraph.cells[тут уж надо думать в какую красивше]:=inttostr(ct);
end;
sggraph-имя грида |
|
#13
|
||||
|
||||
|
На мой взгляд у вас противоречие в прилагаемом варианте отчета.
Если вы выводите даты, то по ним нужны суммы и итог уже отдельно. Если вы хотите только сумму выплат, то тогда даты не нужны т.к. без детализации выплат они теряют смысл. |
|
#14
|
|||
|
|||
|
Я так и не понял как объединить строчки(
|
|
#15
|
||||
|
||||
|
http://forum.vingrad.ru/forum/topic-241119.html
там были ссылки на пару гридов, которые это умеют, и пример объединения, хоть это и стремно. |