powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Крик души -- создание отчёта из двух таблиц
20 сообщений из 20, страница 1 из 1
Крик души -- создание отчёта из двух таблиц
    #32485454
10st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Суть проблемы: есть две таблицы -- Приход, Отгрузка.
В первой поля -- Дата, код клиента, сумма оплаты, во второй -- Дата, код клиента, сумма отгрузки. Суммы в таблицах не совпадают (работаем по предоплате).
Надо сформировать отчёт об обороте средств по каждому клиенту (приход и расход) за определённый период (на отдельном листе), в идеале -- вывести сальдо и распечатать (желательно с минимальным использованием рук за счёт использования головы).
Поиск по форуму не помог (а может не там искал?). Раньше решал проблему (ввиду слабого знания Access) с помощью подчинённого отчёта с, например, приходом, запихнутого в отчёт с расходом.
Когда клиентов стало больше ста, то процесс многократного набивания кода клиента для вывода отчёта и последующей распечатки стал ежемесячным кошмаром.
Если не сложно, помогите пожалуйста!
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485461
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Правильно ли я понимаю, что нужно читать только три последних строчки? Требуется способ обойтись без многократного набивания кода?

Тогда встречный вопрос: отчет по всем клиентам или по одному? Если по всем, то зачем задавать код? А если по одному, то как Аксесс узнает, по какому, если не задавать код?
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485466
10st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как бы поточнее выразиться -- отчёт по всем, по которым есть изменения, но выводится по одному клиенту на страницу, а не скопом.
По поводу набивания кода -- напрямую проистекает из-за извращения с подчинёнными отчётами (вводим код при выводе отчёта, потом второго, потом ещё пару-тройку раз при выводе на печать).
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485467
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Каким образом задается, по каким клиентам печатать отчет? Есть какая-то проверка, где есть изменения? Или это вводится вручную? В любом случае, помимо этого ничего вводиться не должно. Если программа просит что-то вводить - значит в программе есть ошибка.
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485470
10st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проверки изменений нет :(
Отчёты строятся на базе запросов, которые из "больших" таблиц (Код клиента, цена покупки - продажи, суммы, перевозка и т. д.) отбирают только три поля.
В этих запросах содержится условие отбора, т.е. я в конструкторе в условии отбора набрал "Введите код" для кода клиента.
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485473
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Ну так оно и исполняет этот "Введите код". Вопрос-то в чем?
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485476
10st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос -- о возможности сведения данных без создания подчинённого отчёта (избавиться от МНОГОКРАТНОГО введения кода клиента) и об автоматизции процесса распечатки.
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485481
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
В принципе, можно сделать так (если только мне сейчас удастся объяснить это через форум).

Способ 1. Заводим временную таблицу, заносим в нее коды нужных клиентов. В запросе сравниваем в этой таблицей вместо "Введите код". Правда, временная таблица требует особой осторожности, чтобы два юзера одновременно к ней не обращались.

Способ 2. Делаем какой-то интерфейс, который позволил бы составить в пямяти строку типа "7,12,53,14,18", содержащую все нужные коды через запятую. У отчета на Report_Open пишем подмену RecordSource'а, чтобы он принимал примерно такой вид:

...where clientid in (7,12,53,14,18)
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485482
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1.а) (на небольших наборах сгодится) строишь один запрос

Select [код клиента],[Дата],[сумма оплаты] as Приход, 0 as Расход,"П" as Сторона
From Приход
UNION ALL
SELECT [код клиента],[Дата],0 as Приход, [сумма оплаты] as Расход,"Р" as Сторона
From Отгрузка

Отчет по оборотам непосредственно можно строить на этом запросе,
ограничивая его условием

Where [Дата] Between d1 And d2

сам отчет
ORDER BY [код клиента], [Дата],[Сторона],[сумма оплаты]

Входящее сальдо по клиенту опредеить в отчете можно, например так
а) NZ(DSum("[сумма оплаты]","Приход","[Дата]<" & fix(d1)),0)
б) NZ(DSum("[сумма оплаты]","Отгрузка","[Дата]<" & fix(d1)),0)
в) а) - б). - разместить в заголовке группировки по клиентам

Исходящее сальдо
а) NZ(DSum("[сумма оплаты]","Приход","[Дата]<" & fix(d2)),0)
б) NZ(DSum("[сумма оплаты]","Отгрузка","[Дата]<" & fix(d2)),0)
в) а) - б). - разместить в примечании группировки по клиентам
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485483
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А подчиненный отчет ни при чем!!! Если он сделан без ошибок, то он не должен увеличивать количество вводимой информации. Если просит, значит есть ошибка!
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485484
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, вот совсем забыл - в отчете - группировка по клиентам.
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485486
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, и спрашивать ни у кого ничего не надо - он сам построит только по тем у кого "движения" были.
А чтобы по одному на странице - в свойствах группироки - новая страница после группы
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485487
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пардон - в исходящем опшиПка - < заменить на <=
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485488
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Хорошо, что Victosha знает не только Аксесс, но и эту задачу...
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485489
10st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое всем спасибо, попробую все способы.
(Идти, искать, находить, спотыкаться, падать и снова подниматься и находить, и побеждать. -- безбожно преврал классика, но уж больно патетически хотелось)
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485490
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ошибка 2
Условие в DSUM (
должно выглядеть так (если он числовой)
"[Дата]<" & fix(d1) & " AND [код клиента]=" & ctrlClientCode.value
где ctrlClientCode - контрол в отчете, в котором код клиента изобрАжен.

для исходящего < заменить на <= и d1 на d2
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485492
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Владимир Саныч

;))
Эхь, ... задача...
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485494
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А чего? Я смотрю, что в этом форуме все время задают вопросы по бухгалтерии. И отвечают на них так, как будто все действительно в этом разбираются. А я вот ни бум-бум.
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485498
10st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На самом деле бухгалтерия -- геморрой и тихий ужас. Большинство же вопросов, ежели абстрагироваться от денежного измерения их предмета, задаётся на организацию и обработку данных.
Просто ведение учёта в Access имеет ряд неоспоримых преимуществ, особенно если предмет учёта специфичен или требуется особая форма его представления. В бухучёте находит отражение всё, но для того, чтобы свести это воедино уходит куча нервов, Access позоляет решать конкретные практические задачи максимально эффективно с точки зрения соотншения затраты/результат.
Плюс ко всему иногда во главу угла ставиться наглядность представления данных, которой можно добиться и в бухгалтерских программах, но несравненно большими усилиями.
...
Рейтинг: 0 / 0
Крик души -- создание отчёта из двух таблиц
    #32485504
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
про геморрой 1
Некто из классиков "прогграммизма" (Брукс? Бентли? Аллен (Эрик)? - убей не помню) в своей "популярной книжке" рассказывал, как писал программу по расчету зарплаты и нужно было учесть местные налоги, являющиеся функцией возраста, стажа, года издания таблицы и не знаю чего еще. Выкатили людям таблицы расчетов и никак они на эти таблицы алгоритм надеть не могли. И модуль расчета местного налога и корявый и объемный получался. До тех пор, пока один "знающий" бухгалтер не объяснил им, что местный налог, независимо от года издания всегда строгий коеффициент федерального собой представляет, пояснив при этом по какой собственно формуле федеральный вычисляется. Так у них программа и в объеме сократилась во сколько-то разов и считать стала, как помню в 15 раз быстрее.
-)

про геморрой 2

ей богу ребята, пустое это. Интересно - это так люди с приличным образованием оправдаться пытаются, за то, что херней занимаются, или на самом деле не понимают, что для бухгалтеров - квантовая статистика, например, - еще больший геморрой и полное чувство удовлетворения, от того что им этим заниматься не приходится.
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Крик души -- создание отчёта из двух таблиц
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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