powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / как в отчете сослаться на предыдущую строку?
3 сообщений из 3, страница 1 из 1
как в отчете сослаться на предыдущую строку?
    #32136273
denisn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
привет all.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
как в отчете сослаться на предыдущую строку?
           а    б    в
строка1     1      2      3 
строка2     4      5     ?
 
если вопрос (?) расчитывается как ( 1 )-( 4 )+( 5 ) то как сослаться в отчете на ( 1 ), ведь ( 1 ) стоит в предыдущей строке. 



может запрос переделать??? если не трудно то поподробнее, в access я новичек
...
Рейтинг: 0 / 0
как в отчете сослаться на предыдущую строку?
    #32136293
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прийдется стать новичком и в VBA. Обрабатывай событие Печать, запоминай состояние нужной переменной.

Можно было бы наверное сделать и проще, только надо по-подробнее сообщить условия по которым ты считаешь. Всегда ли колнка В расчитывается как колонка А из предыдущей строки - колнка А из текущей+ колонка Б из текущей. Т.е. если есть алгоритм можно будет с помощью запросов (в т.ч. и вложенных) расчитывать колнку Б, а в отчет подставлять тока резульат этого запроса. Короче -чем больше информации ты даш, тем больше вероятность, что тебе правильно ответят
...
Рейтинг: 0 / 0
как в отчете сослаться на предыдущую строку?
    #32136366
denisn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Senin Viktor спасибо за ответ
в этом то все и дело колонка В всегда расчитывается по выше названной формуле а запрос выглядит так:
Код: plaintext
1.
2.
3.
4.
5.
SELECT Balance.aDate, Balance.Val, Int(Sum(IIf(Balance.sh= 47411 ,Balance.in_rub/ 1000 , 0 ))) AS Sum_in_rub, Int(Sum(IIf(Balance.sh= 47411 ,Balance.in_val/ 1000 , 0 ))) AS Sum_in_val, Int(Sum(IIf(Balance.sh= 47411 ,(Balance.in_rub+Balance.in_val)/ 1000 , 0 ))) AS Итого, Int(Sum(IIf(Balance.sh<> 47411 ,Balance.in_rub/ 1000 , 0 ))) AS sRub, Int(Sum(IIf(Balance.sh<> 47411 ,Balance.in_val/ 1000 , 0 ))) AS sVal, Int(Sum(IIf(Balance.sh<> 47411 ,(Balance.in_rub+Balance.in_val)/ 1000 , 0 ))) AS rest, OurPrDeposit.r3, OurPrDeposit.v3, OurPrDeposit.i3, sh70203.Rest AS sh70203
FROM (Balance INNER JOIN OurPrDeposit ON Balance.aDate = OurPrDeposit.aDate) INNER JOIN sh70203 ON Balance.aDate = sh70203.aDate
WHERE (((Day([Balance].[aDate]))= 1 ) AND ((Balance.Filial)<> 757 ))
GROUP BY Balance.aDate, Balance.Val, OurPrDeposit.r3, OurPrDeposit.v3, OurPrDeposit.i3, sh70203.Rest
HAVING (((Balance.Val)= 810 ));


в таком виде колонка В получается потем суммирования в отчете колонки ИТОГО и sh70203 или Int(Sum(IIf(Balance.sh=47411,(Balance.in_rub+Balance.in_val)/1000,0))) AS Итого и sh70203.Rest AS sh70203 соответственно

а нужно чтобы ИТОГО (из текущей строки) вычеталось из ИТОГО (из предыдущей строки) и прибавлялось к sh70203

вот такая задачка как победить??
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / как в отчете сослаться на предыдущую строку?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]