С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
MS Access
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Joker_NN
0 / 0 / 0
Регистрация: 18.12.2015
Сообщений: 4
1

Сложный запрос. Не могу разобраться!

28.01.2016, 22:33. Просмотров 882. Ответов 7

Доброго времени суток форумчане.
Суть вопроса - нужно получить данные из какого контейнера сколько взять товара.
Есть 2 таблицы: остатки и накладные
1.Остатки в контейнерах
КонтейнерКод_товараНазваниеСГКол-воПартия
CNT001123AAA10/10/201630987
CNT001234BBB10/10/201620876
CNT001345CCC10/10/201610765
CNT002456DDD10/10/20165654
CNT002567EEE10/10/20166543
CNT003123AAA10/10/201610987


2. Накладные

Накладная Код_товараНазваниеСГКол-воПартия
101123AAA10/10/201640987
101234BBB10/10/201620876
102345CCC10/10/201610765
102567EEE10/10/20166543
103456DDD10/10/20165654

Как с помощью запроса или VBA получить что-то наподобие:

ТТНКонтейнерКод_товараНазваниеСГКол-воПартия
101CNT001123AAA10/10/201630987
101CNT003123AAA10/10/201610987
101CNT001234BBB10/10/201620876
102CNT001345CCC10/10/201610765
102CNT002567EEE10/10/20166543
103CNT003123AAA10/10/201610987


С количествами, которые нужно взять из контейнеров.
При этом строка накладной может разбиться на несколько контейнеров, если в контейнере было недостаточное кол-во.
Извините если что не понятно.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.01.2016, 22:33
Ответы с готовыми решениями:

сложный запрос (для меня сложный)
Есть таблица с продажами услуг от разных фирм, есть таблица с оплатой за...

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

Не могу составить сложный Sql запрос
Добрый день Есть 4 связанные таблицы: в бд "ТУРФИРМА" Договоры номер код...

SQL запрос не могу разобраться
В какой то теме нашел запрос организовал в своей бд что типа поиска. Что...

Последний запрос в курсовой c IIF, Не могу разобраться с IIF
Суть вопроса такова Фирма продает автомобили 3-х фирм chevrolet,daewoo,kia...

7
odbcsql
359 / 78 / 6
Регистрация: 14.08.2012
Сообщений: 226
28.01.2016, 22:52 2
выложи базу с несколькими данными для экспериментов. Самому вбивать смысла нет
0
mobile
Эксперт MS Access
23338 / 13143 / 2754
Регистрация: 28.04.2012
Сообщений: 14,395
28.01.2016, 23:07 3
Надо описать предпочтения. Если на складе товара ААА есть или только на самый большой заказ или на остальные маленькие. Какие заполнять в первую очередь?

Вообще это задача из серии задач о наполнении рюкзака или оптимальном раскрое. Точное решение только при полном переборе вариантов. При большом числе данных может не хватить ни времени, ни ресурсов. Но есть приближенные методы, они могут давать удовлетворительные результаты за приемлемое время.
0
Joker_NN
0 / 0 / 0
Регистрация: 18.12.2015
Сообщений: 4
29.01.2016, 09:07  [ТС] 4
Прикладываю базу-пример. Да, еще одно условие, возможно поможет - общее кол-во товара во всех накладных и во всех контейнерах всегда совпадает.
0
Вложения
Тип файла: zip База данных1.zip (33.3 Кб, 3 просмотров)
ltv_1953
Эксперт MS Access
12906 / 5867 / 1140
Регистрация: 21.06.2012
Сообщений: 10,568
29.01.2016, 09:28 5
Лучший ответ Сообщение было отмечено Joker_NN как решение

Решение

Цитата Сообщение от Joker_NN Посмотреть сообщение
общее кол-во товара во всех накладных и во всех контейнерах всегда совпадает.
В выложенном примере условие не выполнено.
В остатках
Код_товараПартияSum-Кол-во
12398780
В накладных
Код_товараПартияSum-Кол-во
12398740
Не, самое главное что в остатках больше. Но тогда для разных стратегий распределения остатки по контейнерам получаться разные.
0
Joker_NN
0 / 0 / 0
Регистрация: 18.12.2015
Сообщений: 4
29.01.2016, 09:52  [ТС] 6
Прошу прощения за испорченный пример , это я видимо экспериментировал
Поправил.
0
Вложения
Тип файла: zip База данных1.zip (33.3 Кб, 2 просмотров)
ltv_1953
Эксперт MS Access
12906 / 5867 / 1140
Регистрация: 21.06.2012
Сообщений: 10,568
29.01.2016, 11:05 7
Предпочитаю делать такие распределения в наборах данных. Распределение по контейнерам в таблице Накладные1. Количества в остатках корректируются. Остатки не нулевые в контейнерах с большим начальным количеством товаров-партий. Смотрите функцию FFFF в модуле1. Перед запуском восстановите остатки (сохранены в Копия "Остатки").
1
Вложения
Тип файла: 7z РПН.7z (22.0 Кб, 1 просмотров)
Joker_NN
0 / 0 / 0
Регистрация: 18.12.2015
Сообщений: 4
29.01.2016, 12:05  [ТС] 8
Цитата Сообщение от mobile Посмотреть сообщение
Надо описать предпочтения. Если на складе товара ААА есть или только на самый большой заказ или на остальные маленькие. Какие заполнять в первую очередь?
Кол-во в контейнерах и кол-во в накладных совпадает, поэтому приоритетов нет.
0
29.01.2016, 12:05
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2016, 12:05

Сложный запрос
Помогите сделать запрос, в котором участвует несколько таблиц. Я объединяю с...

Сложный запрос на БД
Привет всем. Возник вопрос которые сам не смог решить. Есть запрос t7 в этой...

Сложный запрос
SELECT * FROM facts WHERE DATE(date) BETWEEN date1 AND date2 Использую вот...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru