powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Двоятся записи
15 сообщений из 15, страница 1 из 1
Двоятся записи
    #39199425
Евген987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллеги, приветствую !
Задача следующая, есть таблица с продажами клиенту, есть таблица с оплатами от клиента
пытался собрать запрос для получения акта сверки, и всё бы правильно получилось, если бы было не более одной операции в день.
Поясню...
Если две операции по продаже, то напротив каждой правильной операции по продаже проставляет одну и ту же операцию по оплате, т.е. оплата начинает двоиться
Запрос выглядит следующим образом
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT DISTINCT a.opDay, b.operOrder, c.payment
FROM ((SELECT operDate as opDay from operations where cliID=9
union
select payDate as opDay from oplata where cliID=9)  AS a
LEFT JOIN operations AS b ON a.opDay=b.operDate)
LEFT JOIN oplata AS c ON a.opDay=c.payDate
ORDER BY a.opDay;


Вот результат


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

делаю через рабочую таблицу
--очистка таблицы(ид/дата/клиент/операция/касса/товары
--вставка из кассы(дата/клиент/операция/сумма/0
--вставка из накладных(дата/клиент/накладная/0/сумма

затем обычная обработка(отчет или запрос)
...
Рейтинг: 0 / 0
Двоятся записи
    #39199532
Frost_Imp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Операции присваивать ID, оплаты привязывать к операции (а не к клиенту). Не?
...
Рейтинг: 0 / 0
Двоятся записи
    #39199539
Евген987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА,
Сначала ничего не понял, потом тоже ничего не понял ))
У меня нет таких таблиц :( или я не понимаю о чём речь...
...
Рейтинг: 0 / 0
Двоятся записи
    #39199543
Евген987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Frost_Imp,
Это дополнительный функционал надо делать...
оплаты принимаются только по cliID (ID клиента) и отгрузка товара тоже по ID клиента
...
Рейтинг: 0 / 0
Двоятся записи
    #39199545
Frost_Imp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евген987, базу положите
...
Рейтинг: 0 / 0
Двоятся записи
    #39199557
Евген987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Двоятся записи
    #39199571
Frost_Imp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евген987, извините, не понимаю как это работает и что нужно сделать. Можете привести пример с двумя-тремя строчками из разных таблиц, правилом, по которому одно должно "приклеиться" к другому и финальным результатом?
...
Рейтинг: 0 / 0
Двоятся записи
    #39199574
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евген987,

автор таблица с продажами клиенту, есть таблица с оплатами от клиента

Вот эти таблицы
названы только по другому
--касса аналог таблица с оплатами от клиента
--накладная таблица с продажами клиенту
...
Рейтинг: 0 / 0
Двоятся записи
    #39199588
Евген987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА,
Догнал ! ))
Спасибки !!!
Чот сразу меня не прохватило, высыпаться наверное надо получше ))
...
Рейтинг: 0 / 0
Двоятся записи
    #39199597
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евген987,

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

решение придет само, часто даже о нем и не думал
...
Рейтинг: 0 / 0
Двоятся записи
    #39199601
Евген987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА, согласен, так и бывает, но вот видишь - пришло, да не то )))
А твоё даже не сразу и зайти ко мне смогло ))
...
Рейтинг: 0 / 0
Двоятся записи
    #39199678
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евген987А твоё даже не сразу и зайти ко мне смогло ))

увы, это мой недостаток --мои решения не всегда понимают
часто требуется пояснение
...
Рейтинг: 0 / 0
Двоятся записи
    #39199700
Евген987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ИТОГО получилось вот так...
Код: vbnet
1.
2.
3.
4.
5.
Set DBEngine = CreateObject("DAO.DBEngine.36")
set mdb=DBEngine.opendatabase("Z:\DBase\infobase.mdb")
mdb.execute("delete * from aktsverki")
mdb.execute("insert into aktsverki SELECT a.operDate, a.operOrder, SUM(IIF(a.operName='realiz',ROUND(b.prodPrice*a.Quantity*((100-a.Discount)/100),2),0)) AS Realiz, SUM(IIF(a.operName='vozvrat',ROUND(b.prodPrice*a.Quantity*((100-a.Discount)/100),2),0)) AS Vozvrat FROM operations a, products b WHERE a.cliID=9 GROUP BY a.operDate, a.operOrder")
mdb.execute("insert into aktsverki SELECT payDate as operDate, payment FROM oplata where cliID=9")


+ запросик
Код: sql
1.
SELECT operDate, operOrder, Realiz AS Debet, ROUND((payment+Vozvrat),2) AS Kredit FROM aktsverki


в итоге получаем

Все счастливы и довольны ))
Задача выполнена !
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Двоятся записи
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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