powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как изменить данные работы запроса?
13 сообщений из 13, страница 1 из 1
Как изменить данные работы запроса?
    #39418697
Alex37
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.
Есть таблица, из которой запрос выбирает необходимые данные. Кроме того, в запросе выполняются несколько вычислений.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT Заказы.ДатаЗаказа, Заказы.НомерЗаказа, Заказы.ФИО, Заказы.СтоимостьЗаказа, Заказы.Аванс, 
IIf(Заказы.[Оплата100%],0,[СтоимостьЗаказа]-[Аванс]) AS Долг, Заказы.[Оплата100%], 
IIf(Заказы.[Оплата100%],[СтоимостьЗаказа],0) AS Оплачено, Заказы.Менеджер, Заказы.Подтверждение
FROM Заказы
GROUP BY Заказы.ДатаЗаказа, Заказы.НомерЗаказа, Заказы.ФИО, Заказы.СтоимостьЗаказа, Заказы.Аванс, Заказы.[Оплата100%], 
IIf(Заказы.[Оплата100%],[СтоимостьЗаказа],0), Заказы.Менеджер, Заказы.Подтверждение, Заказы.ФормаОплаты
HAVING (((Заказы.ДатаЗаказа)>=[Forms]![Вывод отчетов]![ДатаС] And (Заказы.ДатаЗаказа)<=[Forms]![Вывод отчетов]![ДатаПо])
 AND ((Заказы.НомерЗаказа) Like "11*" Or (Заказы.НомерЗаказа) Like "79*" Or (Заказы.НомерЗаказа) Like "80*") AND ((Заказы.ФормаОплаты)=1))
ORDER BY Заказы.ДатаЗаказа, Заказы.НомерЗаказа;


В итоге, в табличном виде получаю отсортированные и рассчитанные данные. На основе запроса сделана форма. Всё хорошо.
Но возникла необходимость данные в форме, в одном из столбцов, поменять. Это столбец "Подтверждение". В таблице можно подставлять одно из трёх фиксированных значений: "Аванс";"Доплата";"100%", а в данных запроса или в форме - нет. Данные подстановки выбрать можно из списка, но подставить не удается. Раздается короткий звук и никаких сообщений...
Как обойти это ограничение? Картинку прилагаю.
Windows XP. Access 2003 SP3.
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39418706
Alex37
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как-то сообщение вытянулось в ширину, и часть строк текста пропало.

В форме или запросе можно выбрать одно из трех фиксированных значений, но в таблицу они не подставляются - раздается короткий звук и никаких сообщений.
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39418728
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex37,

а что бы вы хотели получить --у вас запрос на группировку и с дополнительными полями,
какую строку в исходной таблице вы хотели исправить

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
SELECT Заказы.ДатаЗаказа, Заказы.НомерЗаказа,
 Заказы.ФИО, Заказы.СтоимостьЗаказа, Заказы.Аванс,
 IIf(Заказы.[Оплата100%],0,[СтоимостьЗаказа]-[Аванс]) AS Долг,
 Заказы.[Оплата100%],
 IIf(Заказы.[Оплата100%],[СтоимостьЗаказа],0) AS Оплачено,
 Заказы.Менеджер,
 Заказы.Подтверждение
FROM Заказы
GROUP BY Заказы.ДатаЗаказа, Заказы.НомерЗаказа,
 Заказы.ФИО, Заказы.СтоимостьЗаказа,
 Заказы.Аванс, Заказы.[Оплата100%],
 IIf(Заказы.[Оплата100%],[СтоимостьЗаказа],0),
 Заказы.Менеджер, Заказы.Подтверждение, Заказы.ФормаОплаты
HAVING (((Заказы.ДатаЗаказа)>=[Forms]![Вывод отчетов]![ДатаС]
 And (Заказы.ДатаЗаказа)<=[Forms]![Вывод отчетов]![ДатаПо])
 AND ((Заказы.НомерЗаказа) Like "11*"
 Or (Заказы.НомерЗаказа) Like "79*"
 Or (Заказы.НомерЗаказа) Like "80*")
 AND ((Заказы.ФормаОплаты)=1))
ORDER BY Заказы.ДатаЗаказа, Заказы.НомерЗаказа;
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39418741
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запрос с группировкой является необновляемым.
HAVING там использован не по назначению (это попутное замечание).
Группировка, похоже, вообще не нужна.
Попробуйте:
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT ДатаЗаказа, НомерЗаказа, ФИО, СтоимостьЗаказа, Аванс, 
       IIf([Оплата100%],0,[СтоимостьЗаказа]-[Аванс]) AS Долг, [Оплата100%], 
       IIf([Оплата100%],[СтоимостьЗаказа],0) AS Оплачено, Менеджер, Подтверждение
FROM Заказы
WHERE (ДатаЗаказа BETWEEN [Forms]![Вывод отчетов]![ДатаС] And [Forms]![Вывод отчетов]![ДатаПо]) AND 
      (НомерЗаказа Like "11*" Or НомерЗаказа Like "79*" Or НомерЗаказа Like "80*") AND ФормаОплаты=1
ORDER BY ДатаЗаказа, НомерЗаказа;
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39419015
Alex37
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА,

Да хотел иметь возможность всего лишь задать одно из трёх значений в столбце подтверждение.
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39419035
Alex37
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__MichelleЗапрос с группировкой является необновляемым.
HAVING там использован не по назначению (это попутное замечание).
Группировка, похоже, вообще не нужна.
Попробуйте:
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT ДатаЗаказа, НомерЗаказа, ФИО, СтоимостьЗаказа, Аванс, 
       IIf([Оплата100%],0,[СтоимостьЗаказа]-[Аванс]) AS Долг, [Оплата100%], 
       IIf([Оплата100%],[СтоимостьЗаказа],0) AS Оплачено, Менеджер, Подтверждение
FROM Заказы
WHERE (ДатаЗаказа BETWEEN [Forms]![Вывод отчетов]![ДатаС] And [Forms]![Вывод отчетов]![ДатаПо]) AND 
      (НомерЗаказа Like "11*" Or НомерЗаказа Like "79*" Or НомерЗаказа Like "80*") AND ФормаОплаты=1
ORDER BY ДатаЗаказа, НомерЗаказа;



Запрос в Вашей редакции производит отбор данных правильно. Но по прежнему не даёт возможность подставлять значения в столбец.

Можно конечно повесить, к примеру, на двойной клик (в форме, на ячейки столбца "Подтверждение") вызов ещё одной формы, из которой уже прямо в таблицу вставлять нужное значение. Но это "длинный" путь. Хотя иногда, "длинный" путь бывает быстрее "короткого". :)
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39419085
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да?
Может, в свойствах формы запрет на редактирование?
А если открыть запрос вне формы, получается правка?
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39419257
Alex37
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__MichelleДа?
Может, в свойствах формы запрет на редактирование?
А если открыть запрос вне формы, получается правка?

Уже в запросе правка невозможна. В форме - аналогично. Поэтому про работу запроса и интересуюсь.
В таблице всё работает.
Кстати, запрос создавался встроенным мастером. Потом уж я его подправил - задал условия, фильтры, сортировку...
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39419267
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И ведь вроде ничего не предвещает.
Во всяком случае, я не вижу.
Видимо, нужно смотреть саму БД.
Хоть я стараюсь обходиться без этого в большинстве случаев.)))
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39419417
MrShin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Начните искать с того, что создайте новый запрос, который просто выбирает все поля безо всяких условий. Если редактируется, упрощайте "рабочий" запрос до тех пор, пока не начнет редактироваться, станет понятна причина. Если простой запрос не позволяет редактировать, проверьте, редактируется ли таблица вообще. Если файл базы только для чтения или лежит в папке, на которую вы не имеете прав на изменения, редактирование будет невозможно.
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39419484
Alex37
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MrShinНачните искать с того, что создайте новый запрос, который просто выбирает все поля безо всяких условий. Если редактируется, упрощайте "рабочий" запрос до тех пор, пока не начнет редактироваться, станет понятна причина. Если простой запрос не позволяет редактировать, проверьте, редактируется ли таблица вообще. Если файл базы только для чтения или лежит в папке, на которую вы не имеете прав на изменения, редактирование будет невозможно.
Так и сделал. Создал новый запрос в конструкторе. Вначале добавил поля, которые не вычисляются. Итоговые данные в запросе редактируются. Потом по одному скопировал в запрос вычисляемые поля - редактируется! Заменил старую версию запроса на новую и проверил его работу в форме. ВСЁ РАБОТАЕТ!!! Применил советы указанные мне в этом топике - работает! Данные в форме теперь редактируются, как и должно было в задумке...

Потом долго искал различия между этими запросами - ничего не обнаружил. Но один работает, другой - нет. Глюк, блин!
Спасибо всем за помощь и терпение! ;)
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39419512
MrShin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сравните еще свойства запроса. Если одинаково, скорее всего глюк. Можно попробовать исправить, сделав копию "плохого" запроса.
...
Рейтинг: 0 / 0
Как изменить данные работы запроса?
    #39420388
Alex37
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MrShinСравните еще свойства запроса. Если одинаково, скорее всего глюк. Можно попробовать исправить, сделав копию "плохого" запроса.
Свойства проверял - одинаковы. На данный момент глючный запрос удален.
Ещё раз спасибо!
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как изменить данные работы запроса?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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