|
|
|
Проблема с DCount
|
|||
|---|---|---|---|
|
#18+
Написал запрос: Код: plaintext 1. 2. 3. С помощью которого подсчитывается количество проведенных обследований. Часть обследований проходят по категории "Счетчики", т.е это такие специальные обследования: сверка показаний счетчиков. Остальные обследования соот. обычные. Часть абонентов по результатам обследований признаны выбывшими (т.е есть выбывшие и вобследованиях-счетчиках и в обычных). Создал на основе этого запроса отчет, где добавил с пом. мастера уровень группировки по выехавшим и поставил итоговые вычисления. Все отлично считатся: общее количество обследований, общие количества выбывших и тех кто на месте, и сколько обследований-счетчиков и обычных, как среди выехавших, так и среди тех кто на месте. Вид: Выехал Обследовано Счетчики ------------------------------------ Да 1 \/ 16 [] Всего выехавших 17 ------------------------------------ Нет 8 \/ 30 [] Всего на месте 38 ------------------------------------ ИТОГО обследований 55 Необходимо также просчитать общее количество обследований по счетчикам, т.е поле где бы складывалось вот в данном случае 1+8 и получалось бы 9 и также 16+30 с соот. 46. Добавлять еще один уровень группировки по счетчикам при создании отчета нельзя, так. как отчет преобретает плохой для понимания вид. Эта задача прекрасно решается с помошью: Код: plaintext 1. Маленькая проблема, это все не работает на периоде . В смысле, конечно, не работают на периоде только 2 последних выражения - они обращаются напрямую к таблице Простынь1 и считают по ВСЕМ записям, а период описан в ЗАПРОСЕ и ессно он по боку этим последним 2-м выражениям. Они подсчитывает по всем записям, даже когда задан период. Подскажите, пожалуйста в каком месте в этих полях поставить Between [Введите начальную дату] And [Введите конечную дату] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2003, 20:38 |
|
||
|
Проблема с DCount
|
|||
|---|---|---|---|
|
#18+
Вы сделайте по простому - получите в переменные через InputBox "начальная_дата" And "конечная_дата =DCount("*";"[Простынь1]";"[Счетчики] = -1 AND myData Between " & начальная_дата & " And " конечная_дата) далее - по аналогии Удачи! - и заглядывайте в хелп... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2003, 11:21 |
|
||
|
Проблема с DCount
|
|||
|---|---|---|---|
|
#18+
Если я правильно понял постановку задачи. А что мешает прямо в отчете сделать поле (на соответствующем уровне группировки) с накоплением и выводить результат? Пример: Поля в разделе данные - код, сумма, признак Поля в разделе группа по признаку - sum(сумма). Необходимо сделать суммирующее поле в зависимости от значения поля признак. Делаем невидимое поле [поле1] в разделе данные в источнике которого =IIF(признак = условие; сумма; 0) поле с накоплением. В разделе группа по признаку делаем поле с источником =report![поле1] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2003, 11:33 |
|
||
|
Проблема с DCount
|
|||
|---|---|---|---|
|
#18+
ошибочку проглядел, извините =DCount("*";"[Простынь1]";"[Счетчики] = -1 AND myData Between " & начальная_дата & " And " & конечная_дата) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2003, 11:35 |
|
||
|
Проблема с DCount
|
|||
|---|---|---|---|
|
#18+
Тут есть одна проблема (из-за которой я не решился ответить на этот вопрос вчера). Функция InputBox может ввести дату очень приблизительно, а именно в том формате, как напишет юзер. И тогда не будет никакого способа распознать программно, какую дату (2 января или 1 февраля) он имел в виду. В качестве решения (не самого хорошего, но лучшее в голову не приходит) можно вводить по отдельности день, месяц и год и потом запускать DateSerial. Или писать на экране формат и просить вводить именно в нем. Или вводить не через InputBox, а через специально созданную форму с 3 полями для дня, месяца и года. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2003, 13:11 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32359575&tid=1677513]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
167ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 192ms |
| total: | 448ms |

| 0 / 0 |
