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

Откуда:
Сообщений: 34
Друзья, вопрос по вставке данных в таблицу.
Использую запрос на обновление
UPDATE [Складские затраты] SET [Складские затраты].[Сумма затрат] = [СкладскиеЗатратыРаспределить]![СуммаЗатрат]
WHERE (((Month([Складские затраты]![Дата]))=[СкладскиеЗатратыРаспределить]![Месяц]) AND (([Складские затраты].[Номер склада])=[СкладскиеЗатратыРаспределить]![Код]));

В качестве источника данных запрос СкладскиеЗатратыРаспределить:

SELECT Склады.Код, Склады.Склад, Sum([Отгрузки со склада].[Вес]*[Склады].[Ставка за вес]) AS СуммаЗатрат, Month([Отгрузки со склада]![Дата]) AS Месяц
FROM Склады INNER JOIN [Отгрузки со склада] ON Склады.Код = [Отгрузки со склада].[Номер склада]
GROUP BY Склады.Код, Склады.Склад, Month([Отгрузки со склада]![Дата]);


Из готового запроса вставляю данные в таблицу по 2 условиям:
по месяцу и номеру склада.
Как правильно вставить данные в таблицу?

К сообщению приложен файл. Размер - 29Kb
9 окт 21, 21:19    [22381757]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на обновление  [new]
vmag
Member

Откуда: MP
Сообщений: 4229
Guest1985,

Такое ощущение, что можно удалить таблицу Складские затраты за ненадобностью...
А вместо неё тупо использовать сам запрос СкладскиеЗатратыРаспределить
9 окт 21, 21:39    [22381762]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на обновление  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 7584
Guest1985,
Начните со схемы(в таблицах излишествующая информация + есть не нужные,а кое какие надо создать). Я не понял про складские затраты,если они вычисляются,то от чего зависят, если же это нормативная величина,то нужна еще одна таблица.
При такой схеме ничего никуда вставлять не нужно,а любую информацию(типа что,когда,кому, сколько, откуда и т.д и т.п) всегда извлечёте простым запросом на выборку,если надо с параметрами.
Это довольно грубый пример-еще необходимы таблицы [клиенты],наверно и [цены]-короче допиливайте.На Вашей схеме не полетит.

К сообщению приложен файл (tmp.rar - 21Kb) cкачать

Сообщение было отредактировано: 9 окт 21, 23:11
9 окт 21, 23:18    [22381785]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на обновление  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 7584
ПыСЫ:одно из основных правил ACCESS (любой БД гласит:дословно не помню) но своими словами как-то так:если изменения одной из таблиц влечет изменения в другой-схема не верна, за очень редкими исключениями (например добавление в справочник новой записи со значением которого там еще нет)
9 окт 21, 23:41    [22381786]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на обновление  [new]
Кривцов Анатолий
Member

Откуда:
Сообщений: 627
Guest1985, ваш запрос не взлетит, т.к. в нем участвует запрос с группировками. Для запроса на обновление это не допустимо. Решение для Акса - тащить данные для обновления функцией DLookup.
Но будет медленнее.
11 окт 21, 12:58    [22382179]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить