Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Сумма нарастающим итогом по группе 25 $  [new]
Михаил Черняев
Member

Откуда:
Сообщений: 3
Добрый день!

Если кто - то может помочь и решит данную задачу сегодня 23.02.07 г., по Москве, с примером по почте, с пояснениями, то готов перевести 25 WMZ, либо по курсу в Яндекс.Деньгах, либо на телефон ту же сумму. Ответы здесь, либо в асю, либо по почте.
Если задача будет кем - либо решена, здесь будет оставлено сообщение от меня, что она решена.
Без обмана, мой телефон (812) 9-4-9-6-0-8-5

Задача следующая (упрощенно):

В Access-е есть таблица, запрос:
ID Товара | Наименование | дата реализации | Цена |
1 подушка 01.01.07 100
3 кровать 03.01.07 200
9 cтол 02.01.07 150
3 кровать 01.01.07 180
3 кровать 02.01.07 190
9 стол 03.01.07 200

Сортируем по наименованию и дате и НАДО получить цену в запросе НАРАСТАЮЩИМ ИТОГОМ, чтобы иметь на выходе:
ID Товара | Наименование | дата реализации | Цена |
1 подушка 01.01.07 100
3 кровать 01.01.07 180
3 кровать 02.01.07 370
3 кровать 03.01.07 570
9 стол 02.01.07 150
9 стол 03.01.07 350

Условия: Это должно быть реализовано на SQL, а не с помощью модуля типа:

=================================
Function fncRunSum(lngCatID As Long, lngUnits As Long) As Long

'Variables that retain their values.
Static lngID As Long
Static lngAmt As Long

', MyChis As Long
'If lngMyChis <> MyChis Then

If lngID <> lngCatID Then
'If the current ID does not match the last ID, then (re)initialize.
lngID = lngCatID
lngAmt = lngUnits
Else
'If the current ID matches the last, keep a running sum for the ID.
lngAmt = lngAmt + lngUnits
End If

'Pass the running sum back to the query.
fncRunSum = lngAmt

End Function
========================
так как все ужасно глючит при расчете данным способом - дальнейшие расчеты становятся некорректными.


С Уважением, Михаил Черняев
23 фев 07, 11:46    [3826326]     Ответить | Цитировать Сообщить модератору
 Re: Сумма нарастающим итогом по группе 25 $  [new]
Программист-Любитель
Member

Откуда:
Сообщений: 16839
Забесплатно ищите по форуму "нарастающим итогом".
23 фев 07, 12:16    [3826413]     Ответить | Цитировать Сообщить модератору
 Re: Сумма нарастающим итогом по группе 25 $  [new]
Михаил Черняев
Member

Откуда:
Сообщений: 3
To: Программист-Любитель

Я не программист, разобраться смогу не быстро, а по именно моему примеру разобраться будет гораздо проще, экономия времени, если это сделает кто - то другой, знающий, стоит на первом месте.

Нужен пример моей задачи в mdb файле.

Спасибо.
23 фев 07, 12:32    [3826463]     Ответить | Цитировать Сообщить модератору
 Re: Сумма нарастающим итогом по группе 25 $  [new]
BoNiM
Member

Откуда:
Сообщений: 674
SELECT Tab.[ID Товара], Tab.[Наименование], Tab.[дата реализации], 
(SELECT Sum(T.Цена) FROM Tab As T WHERE (Tab.[ID Товара]=T.[ID Товара]) And 
(T.[дата реализации]<=Tab.[дата реализации])) AS Цена FROM Tab
ORDER BY Tab.[ID Товара], Tab.[дата реализации];
По вопросам оплаты прошу не беспокоить
23 фев 07, 12:43    [3826493]     Ответить | Цитировать Сообщить модератору
 Re: Сумма нарастающим итогом по группе 25 $  [new]
Михаил Черняев
Member

Откуда:
Сообщений: 3
Огроменное спасибо, BoNiM. Готов все же перечислить деньгу, если пришлете письмо на mix[dog]mail.ru с Вашего адреса с указанием кошелька.

Еще раз спасибо!!!!!!!!!!
23 фев 07, 12:57    [3826534]     Ответить | Цитировать Сообщить модератору
 Re: Сумма нарастающим итогом по группе 25 $  [new]
bubucha
Member

Откуда:
Сообщений: 5641
2 Михаил Черняев
Ну сходите к церкви и отдейте эти деньги тому, кто в них нуждается.....
23 фев 07, 13:17    [3826581]     Ответить | Цитировать Сообщить модератору
 Re: Сумма нарастающим итогом по группе 25 $  [new]
Дуб-Дубом
Guest
Странно, а у меня не работает...

К сообщению приложен файл (db2.rar - 11Kb) cкачать
24 фев 07, 14:27    [3828206]     Ответить | Цитировать Сообщить модератору
 Re: Сумма нарастающим итогом по группе 25 $  [new]
Пробегал мимо
Guest
Дуб-Дубом
Странно, а у меня не работает...

И не будет работать, поскольку 1 пиво и 3 пиво - это разные позиции. Нужно убрать счетчик и сделать вместо:
ID Товара Наименование дата реализации Цена
1 пиво 10.02.2007 100
2 рыба 10.02.2007 120
3 пиво 12.02.2007 110
4 рыба 13.02.2007 130
так:
ID Товара Наименование дата реализации Цена
1 пиво 10.02.2007 100
2 рыба 10.02.2007 120
1 пиво 12.02.2007 110
2 рыба 13.02.2007 130
и все будет работать.
24 фев 07, 14:40    [3828223]     Ответить | Цитировать Сообщить модератору
 Re: Сумма нарастающим итогом по группе 25 $  [new]
BoNiM
Member

Откуда:
Сообщений: 674
В отличии от задачи автора топика, у Вас товары с одинаковым наименованием имеют разные [ID Товара]
24 фев 07, 14:45    [3828233]     Ответить | Цитировать Сообщить модератору
 Re: Сумма нарастающим итогом по группе 25 $  [new]
Дуб-дубом
Guest
Тьфу ты, не обратил внимание, купился на имя "ID Товара" и автоматом указал - счетчик.
24 фев 07, 14:55    [3828249]     Ответить | Цитировать Сообщить модератору
 Re: Сумма нарастающим итогом по группе 25 $  [new]
madvet
Member

Откуда: Оттуда
Сообщений: 1125
Михаил Черняев
Огроменное спасибо, BoNiM. Готов все же перечислить деньгу, если пришлете письмо на mix[dog]mail.ru с Вашего адреса с указанием кошелька.

Еще раз спасибо!!!!!!!!!!

Неужели 1 запрос стоит 25$?
24 фев 07, 18:36    [3828743]     Ответить | Цитировать Сообщить модератору
 Re: Сумма нарастающим итогом по группе 25 $  [new]
vladK
Member

Откуда: Харьков
Сообщений: 823
"в военное время прямой угол может составлять 60- 70 градусов".
- иногда один запрос может стоить и значительно больше...
26 фев 07, 12:00    [3831601]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить