Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сортировка в запросе / 8 сообщений из 8, страница 1 из 1
24.05.2017, 14:32
    #39458909
tasha klemer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в запросе
Добрый день, уважаемые знатоки.
Прошу помощи по поводу установки сортировки в запросе.

вариант 1: Динамическое пересоздание запроса( источника данных)

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
rivate Sub Report_Load()

Dim db As DAO.Database
Dim ds As DAO.Recordset
Set db = CurrentDb
Dim rsQuery As DAO.QueryDef

Dim strSQL As String

strSQL = " SELECT Отказы.Время, Отказы.ID, Отказы.[Наименование отказавшего оборудования], Отказы.[Описание отказа ], Отказы.СЗМН, НПС.НПС, Отказы.[Дата ], Отделы.NameOtdel" _
& " FROM (НПС INNER JOIN Отказы ON НПС.ID = Отказы.ID) INNER JOIN Отделы ON Отказы.IDOtdel = Отделы.IDOtdel"

If Forms![УсловияПечати].Группа10 = 1 Then
    strSQL = strSQL + " order by [Дата]"
ElseIf Forms![УсловияПечати].Группа10 = 2 Then
     strSQL = strSQL + " order by [НПС]"
End If
   
For Each rsQuery In CurrentDb.QueryDefs
        If rsQuery.Name = "Запрос_" Then
              CurrentDb.QueryDefs.Delete "Запрос_"
           Exit For
        End If
    Next


Set rsQuery = CurrentDb.CreateQueryDef("Запрос_", strSQL)

Me.Requery
'Me.Filter = "Отказы.[Дата ]>=#" & Format(Forms![УсловияПечати].Dat1_, "mm\/dd\/yy") & "# And Отказы.[Дата ]<=#" & Format(Forms![УсловияПечати].Dat2_, "mm\/dd\/yy") & "#"
'Me.FilterOn = True

End Sub



Вариант 2: Использование запроса через свойства отчета. Установка фильтра и попытка сортировки результата по полю


Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Private Sub Report_Load()


Me.Filter = "Отказы.[Дата ]>=#" & Format(Forms![УсловияПечати].Dat1_, "mm\/dd\/yy") & "# And Отказы.[Дата ]<=#" & Format(Forms![УсловияПечати].Dat2_, "mm\/dd\/yy") & "#"
Me.FilterOn = True

Me.OrderByOn = False
If Forms![УсловияПечати].Группа10 = 1 Then
    Me.OrderBy = "Отказы.[Дата ] DESC"
ElseIf Forms![УсловияПечати].Группа10 = 2 Then
    Me.OrderBy = "НПС.НПС DESC"
End If
 Me.OrderByOn = True
Debug.Print Me.OrderBy;
 Me.Requery

End Sub



Оба результата сортировку не делают.
в варианте 1 после отработки загрузки отчета в свойствах прописывается и полу сортировки и условия фильтрации( фильтрация работает)

во варианте 2 после отработки загрузки отчета "Запрос_" меняется на селект с выбраным условием отбора.
Но результат обоих вариантов - это выгрузка отчета без сортировки.
Прошу помощи знатоки, разьясните как организовать сортировку в отчете
...
Рейтинг: 0 / 0
24.05.2017, 14:56
    #39458922
Сортировка в запросе
tasha klemer, если в самом отчете используются группировки/сортировки (Конструктор-Группировки), то сортировка в источнике игнорируется. Может это ваш случай?
Если угадал, то имя поля для сортировки нужно менять в соответствующем Me.GroupLevel.

ЗЫ. А почему вы в Me.OrderBy = " Отказы. [Дата ] DESC" и Me.OrderBy = " НПС. НПС DESC" добавляете имя таблицы? И почему в конце имени "Дата " (и не только) у вас пробел?
...
Рейтинг: 0 / 0
24.05.2017, 14:57
    #39458924
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в запросе
tasha klemerкак организовать сортировку в отчете
увы, отчеты не наследуют сортировку из таблицы или запроса

только собственная сортировка или мастером или кнопкой Группировка
...
Рейтинг: 0 / 0
24.05.2017, 15:15
    #39458940
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в запросе
Источник данных отчёта определяет только то, КАКИЕ данные будут в нём отображены. Однако не определяет, КАК (в т.ч. в каком порядке) они будут отражены - это определяет сам отчёт (ну или его настройки).
...
Рейтинг: 0 / 0
24.05.2017, 15:16
    #39458947
tasha klemer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в запросе
ПЕНСИОНЕРКА,

А как можно программное изменять это свойство группировка? я имею ввиду через код программы, а не через предварительную установку в отчете.
...
Рейтинг: 0 / 0
24.05.2017, 15:19
    #39458951
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в запросе
tasha klemer,
...
Рейтинг: 0 / 0
24.05.2017, 15:38
    #39458973
tasha klemer
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в запросе
Панург, Спасибо большое.
...
Рейтинг: 0 / 0
24.05.2017, 16:19
    #39459010
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в запросе
точно не понял Вашу "хотелку"-посмотрите еще и это
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сортировка в запросе / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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