|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
Мне необходимо создать несколько отчетов по продажам. Буду благодарен, если кто подскажет как в итоге сделать следующее: во-первых, нужен отчет просто по всем продажам (данные из двух таблиц - "продажи" и "проданные услуги"): за последнюю неделю, последний месяц, за последний год. (знаю, что можно указывать так: вывести BETWEEN #dd.mm.yyyy# AND #dd.mm.yyyy#. Но это не то, мне нужно за период перед сегодняшней датой). во-вторых, если пользователю вздумается узнать продажи за другой промежуток времени, например с 01.01.2000 по 22.01.2000, при том, что сегодня 10 сентября 2010 года, отчет на основе такого запроса, где пользователь сам может указывать даты. Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2010, 21:29 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
PetrAnntrue, Ну вроде ты сам себе ответил, вводишь на форма две даты-начало и конец отчетного периода, передаёшь в запрос. Неделя месяц либо сами вычисляют, либо помоги им, например ставят конец отчетного рериода, а в поле со списком, выбирают неделю, две месяц, после выбора которого дата подставляется опять таки в поле начала отчетного периода. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2010, 21:47 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
PetrAnntrueзнаю, что можно указывать так: вывести BETWEEN #dd.mm.yyyy# AND #dd.mm.yyyy#. Это неправильно. Подробнее см. в факах. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2010, 21:53 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
не совсем понял, к сожалению. Это скорее относится к пункту 2 того, что мне нужно. А по поводу отчетов за неделю, и т.д. - хотелось бы просто щелкать на отчете и получать то что нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2010, 21:56 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
Владимир Саныч Это неправильно. Подробнее см. в факах. да вобщем то я это из учебника взял: условие отбора записей, задаваемое в бланке отчета в строке "условие отбора". Between #01.01.2000# And #31.01.2000# задает интервал дат. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2010, 22:02 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
PetrAnntrue задаваемое в бланке отчета. опечатка: д.б. "в бланке запроса" ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2010, 22:04 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
PetrAnntrueВладимир Саныч Это неправильно. Подробнее см. в факах. да вобщем то я это из учебника взял: условие отбора записей, задаваемое в бланке отчета в строке "условие отбора". Between #01.01.2000# And #31.01.2000# задает интервал дат. Значит, либо Вы ошибаетесь, либо учебник. Но это не так важно. Важнее то, что это неправильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2010, 22:15 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
PetrAnntrue, форму - дарю... На неё Вам только останется повесить кнопку, которая будет открывать отчет, а отчет в свою очередь опирается на запрос, где по полю даты прописано следующее: Between Forms![Продажы_за_период]![NP] And Forms![Продажы_за_период]![KP] ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2010, 22:16 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
Wipeout2097, бльшое спасибо!) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2010, 22:41 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
Уважаемый Wipeout2097, я сделал на Вашей форме кнопку, как Вы и сказали, добавил в запрос приведенное Вами условие. Теперь... все работает если я выставляю временной интервал сам в двух полях С и ПО. Но если я выбираю из поля со списком, то почему то не работает, выдает ошибку (на скриншоте), а при нажатии Debug подсвечивает желтым строчку Me.NPP.Value = DateSerial(Year(Date), 7, 1) Это если я в списке выбирал месяц июль. Почему так? Я заметил, что при выборе месяца из поля со списком, в поле "С" ставится первое число этого месяца (ну и затем ошибка показывается). Но в поле "По" так и остается текущая дата. Но ведь если я хотел бы отчет за июль, нужно бы чтобы в полях ставились даты с 1 по 31 июля... И можно ли сделать поля пустыми при открытии формочки (иначе при выборе даты в первом поле приходится в открывшемся календаре листать, так как по умолчанию стоит на 01.01.2010)? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.09.2010, 02:53 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
PetrAnntrue(на скриншоте) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.09.2010, 02:55 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
11.09.2010, 02:55 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
PetrAnntrue, NPP - это элемент ActiveX под названием DateAndTimePicker. В некоторых сервис-паках он отсутствует. Просто у Вас нет библиотеки OCX, на которую ссылается элемент управления NPP. Для решения проблемы сделайте следующее: 1. Закройте Access, если он у Вас открыт. 2. В интернете скачайте файл mscomct2.ocx и закиньте его в C:\Windows\System32. 2. Откройте Аксес, пройдите в Сервис->Макрос->Редактор Visual Basic->Tools->References и в появившемся окне нажимайте Browse (Обзор). В папке System32 найдите и откройте этот MSCOMCT2.OCX... После перезагрузите Аксесс и наслаждайтесь...;);) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.09.2010, 23:09 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
PetrAnntrue, да, забыл сказать DateAndTime Picker - это весьма удобный календарик...;);) Для тех, кому лень писать даты вручную. С помощью этих календариков вы можете выбирать любой диапазон не вводя его с руки. Хоть с 13.01.2010 до 17.03.2010. Очень удобно...;);) Эти календарики прикреплены к "С" и "ПО" по отдельности... Ну, увидите...;);) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.09.2010, 23:12 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
вот старый пример из Борея! Куда проще? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2010, 00:07 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
Сделайте приличную форму, позволяющую выбирать наиболее ходовые периоды (ваши последнюю неделю, месяц, год) но при этом дающую возможность задать дату начала и конца непосредственно вводом с клавиатуры. Таковую форму можно использовать во всех местах программы, требующих задания интервала. Если при ее закрытии запоминать введенные даты и подставлять их при следующем открытии, эргономика программы еще больше улучшится. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2010, 09:12 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
Wipeout2097, сделал как Вы сказали (правда в Аксе 2007 ведь нет меню сервис, поэтому я просто зашел на вкладку "Работа с базами данных" и нажал Visual Basic, а далее в точности по Вашему тексту), но к сожалению ничего не изменилось - все та же ошибка 2683. Она возникает, если выбирать что-то из поля со списком. При использовании полей для ввода дат - все ОК. Насчет календариков. Скажите, а разве их нужно специально создавать? У меня в других формах есть поля с типом данных дат, так я ничего вообще не делал, и все равно после размещения курсора в поле, справа появляется календарик. По-моему обычное дело. Может в предыдущих версиях Акса этого не было (я не работал, с 7-го начал). ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2010, 00:42 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
Программист-Любитель, просто шикарная форма, было бы просто замечательно такую иметь. К сожалению, я без понятия как ее сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2010, 00:46 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
PetrAnntrueWipeout2097, Насчет календариков. Скажите, а разве их нужно специально создавать? У меня в других формах есть поля с типом данных дат, так я ничего вообще не делал, и все равно после размещения курсора в поле, справа появляется календарик. По-моему обычное дело. Может в предыдущих версиях Акса этого не было (я не работал, с 7-го начал). Почитайте здесь , я думаю найдете ответ на свой вопрос! http://sql.ru/forum/actualthread.aspx?tid=766614&pg=-1 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2010, 08:36 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
PetrAnntrueпросто шикарная форма, было бы просто замечательно такую иметь. К сожалению, я без понятия как ее сделать.Она совершенно примитивна. Делается "в лоб" по своему внешнему виду. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2010, 12:33 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
Программист-Любитель, только на 2003 сервере и без тем выглядеть будет не так красиво :( ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2010, 12:42 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
PetrAnntrue, да нет, конечно не обязательно.... Это так, для ленивых...;););) Вобщем можно просто эти два календарика с формы удалить (наверное у Вас они выглядят как два белык квадратика справа от каждого поля для ввода дат), после чего удалить все строчки кода, содержащие NPP и KPP. Тогда все заработает. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2010, 16:25 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
Спасибо Всем ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2010, 16:18 |
|
как сделать выборку за период для отчета
|
|||
---|---|---|---|
#18+
Владимир Саныч, Спасибо Вам за советы по теме "как сделать выборку за период для отчета". Форму, предложенную в теме, использовал и она работает нормально. Один вопрос. Как сделать, чтобы выборка записей осуществлялась не за день или период, а за смену, например с 01.01.2012 с 8.00 до 02.01.2012 8.00, т.е. за какой-то отрезок времени. Если изволите подсказать, то, пожалуйста, поподробней, поскольку я не очень большой специалист в VBA. Заранее благодарен. Сергей. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2012, 13:30 |
|
|
start [/forum/topic.php?fid=45&msg=36841329&tid=1612739]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 148ms |
0 / 0 |