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

Откуда:
Сообщений: 24
Не получается рассчитать итог по вычисляемому полю при расчете средств на начало месяца и конец. Все считает, тут ступор. Не понимаю...(

=DSum("НаНачало";"OnStart";"ID=" & [Таблица11_ID]) дает только сумму по первому человеку

1.Подскажите, как правильно рассчитать итог по графе "Наличные на начало месяца"?

2.Если делать выборку, например, по августу (а там операция только у одного человека), то выдает тоже только его, соответственно тоже без итога на начала и конец месяца. Как сделать, чтобы остальных тоже выдавал, но с "0" в графах.

Вход в отчет с Forma1 общий отчет

К сообщению приложен файл (pb200_v04.5.rar - 43Kb) cкачать
25 июл 19, 12:59    [21934274]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24


К сообщению приложен файл. Размер - 89Kb
25 июл 19, 12:59    [21934275]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
Кривцов Анатолий
Member

Откуда:
Сообщений: 316
admipost
Не получается рассчитать итог по вычисляемому полю при расчете средств на начало месяца и конец. Все считает, тут ступор. Не понимаю...(

Нельзя применять Sum (Max и т.п.) к вычисляемым полям в форме/отчете. Нужно или повторить внутри Sum выражение вычисляемого поля, или создать вычисляемое поле в источнике и суммировать его, или (как у вас) применить DLookup (DSum и т.п.) с другим условием отбора или без него.
А вообще, мне ваше решение не понравилось (мягко говоря).
Посмотрите мой вариант ("Копия Отчет"). Там переделан источник и удалена группировка в отчете.

К сообщению приложен файл (pb200_v04.5.rar - 62Kb) cкачать
25 июл 19, 15:20    [21934479]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24
Спасибо от всей души! Я недавно стал разбираться в access и делаю все в основном по примерам. Вы очень помогли мне!
А есть какая нибудь возможность в отчете (где нет операций по месяцу) вместо пробелов "0" поставить?

Кривцов Анатолий
admipost
Не получается рассчитать итог по вычисляемому полю при расчете средств на начало месяца и конец. Все считает, тут ступор. Не понимаю...(

Нельзя применять Sum (Max и т.п.) к вычисляемым полям в форме/отчете. Нужно или повторить внутри Sum выражение вычисляемого поля, или создать вычисляемое поле в источнике и суммировать его, или (как у вас) применить DLookup (DSum и т.п.) с другим условием отбора или без него.
А вообще, мне ваше решение не понравилось (мягко говоря).
Посмотрите мой вариант ("Копия Отчет"). Там переделан источник и удалена группировка в отчете.


К сообщению приложен файл. Размер - 62Kb
25 июл 19, 16:05    [21934564]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
Кривцов Анатолий
Member

Откуда:
Сообщений: 316
admipost, варианта два:
1. В источнике добавить NZ в выражениях полей, т.е.
вместо Sum(d.[ПРИХОД СБЕРБАНК]) AS [ПРИХОД СБЕРБАНК]
указать NZ(Sum(d.[ПРИХОД СБЕРБАНК]),0) AS [ПРИХОД СБЕРБАНК]
При формате "Денежный" в поле отчета получите 0.00 р. Как по мне - сильно рябит.
2. Универсальный числовой формат состоит из 4-х разделов: Положительное;Отрицательное;Ноль;Null
Вместо формат "Денежный" можно указать: # ##0,00;-# ##0,00;0;0 или # ##0,00" р.";-# ##0,00" р.";0;0. В результате вместо 0 и пусто будет просто 0. Можно указать и прочерк.
25 июл 19, 16:32    [21934585]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24
Вы имеете в виду поля в отчете?

Кривцов Анатолий
admipost, варианта два:
1. В источнике добавить NZ в выражениях полей, т.е.
вместо Sum(d.[ПРИХОД СБЕРБАНК]) AS [ПРИХОД СБЕРБАНК]
указать NZ(Sum(d.[ПРИХОД СБЕРБАНК]),0) AS [ПРИХОД СБЕРБАНК]
При формате "Денежный" в поле отчета получите 0.00 р. Как по мне - сильно рябит.
2. Универсальный числовой формат состоит из 4-х разделов: Положительное;Отрицательное;Ноль;Null
Вместо формат "Денежный" можно указать: # ##0,00;-# ##0,00;0;0 или # ##0,00" р.";-# ##0,00" р.";0;0. В результате вместо 0 и пусто будет просто 0. Можно указать и прочерк.
25 июл 19, 17:16    [21934632]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 6176
Посмотреть не удалось-почему-то не открылся файл-нераспознаваемый формат
Скажу не глядя.
Может я чё не понимаю:если нет групп,то в примечании отчета,если есть группы в примечании группы разместить свободное поле с данными:=Sum(поле) фиолетово вычисляемое оно или нет
25 июл 19, 20:02    [21934783]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24
Кривцов Анатолий, ВСЁ ПОЛУЧИЛОСЬ! ОГРОМНОЕ (ОТ ВСЕЙ ДУШИ) СПАСИБО!!!!
25 июл 19, 23:55    [21934912]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24
Кривцов Анатолий, тут недавно выяснил, что если передавать с формы на печать, то конечная сумма правильная, а по строкам увеличивается в два раза. Причем в самой форме на мониторе одна сумма, а на бумаге или в PDF другая
13 авг 19, 20:41    [21948567]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24
admipost,

К сообщению приложен файл. Размер - 82Kb
13 авг 19, 20:44    [21948570]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24
admipost,

К сообщению приложен файл. Размер - 105Kb
13 авг 19, 20:45    [21948571]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24
Кривцов Анатолий, а еще если печатать пустой отчет(если в месяце ничего не делалось) получается это:

К сообщению приложен файл. Размер - 75Kb
13 авг 19, 20:47    [21948575]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
Кривцов Анатолий
Member

Откуда:
Сообщений: 316
admipost, дайте свежую версию БД.
14 авг 19, 11:45    [21948977]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24
Кривцов Анатолий, так это скрины с базы с этой ветки. У меня полностью то же самое. А в общем отчете все вроде нормально
14 авг 19, 21:07    [21949635]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24
Кривцов Анатолий, оригинальная

К сообщению приложен файл (orig.v1.rar - 118Kb) cкачать
15 авг 19, 20:47    [21950496]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24
Кривцов Анатолий, вернее вот эта правильная.

К сообщению приложен файл (orig2.rar - 120Kb) cкачать
15 авг 19, 21:40    [21950521]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
Кривцов Анатолий
Member

Откуда:
Сообщений: 316
admipost
если передавать с формы на печать, то конечная сумма правильная, а по строкам увеличивается в два раза.
Вы неправильно сформулировали проблему. Если отчет вывести на экран или сразу на печать - цифры правильные. Если из предварительного просмотра вывести на печать - удваиваются, еще раз - утраивается и т.д.
У вас в вычисляемом поле используется функция Resultat, которая при первом вызове (переменная bDone=False) прибавляет к текущей сумме остаток на начало, а затем просто накапливает для каждой записи. Но bDone вы сбрасываете на Report_Load, когда она итак False и которое не происходит при выводе на печать из предпросмотра. Надо очищать переменные на событии ЗаголовокОтчета_Format. И вообще, если функция используется только в этом отчете, то ее можно смело перенести из общего модуля в модуль отчета.

admipost
а еще если печатать пустой отчет(если в месяце ничего не делалось) получается это:
Я, честно, не въехал, почему выводится на печать область данных, если в источнике нет записей, но #Ошибка в поле "ПРИМЕЧАНИЕ" потому, что в свойстве "Данные" указано не просто "ПРИМЕЧАНИЕ" (поле источника), а =[ПРИМЕЧАНИЕ], т.е. ваше поле вычисляемое.
А #Тип в поле "ИТОГ" из-за того, что в функцию Resultat вместо числа передается какая-то фигня (записи-то нет). Надо вообще не выводить область данных на печать, это делается так:
Private Sub ОбластьДанных_Format(Cancel As Integer, FormatCount As Integer)
    Cancel = Not Me.HasData
End Sub

Ну и в поле ФИО в заголовке пустое при отсутствии записей. Надо брать значение из формы.

Посмотрите "Копия ДЕНЬГИ Запрос1", там вариант со скрытым полем с накоплением вместо функции Resultat.

К сообщению приложен файл (pb200_v04.5.rar - 75Kb) cкачать
16 авг 19, 13:14    [21950977]     Ответить | Цитировать Сообщить модератору
 Re: Рассчитать итог по вычисляемому полю  [new]
admipost
Member

Откуда:
Сообщений: 24
Кривцов Анатолий,извините, что не мог ответить. Больше спасибо! Я во всем разобрался
21 авг 19, 22:46    [21954901]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить