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

Отображение всех заказов одного клиента

28.10.2015, 07:33. Просмотров 928. Ответов 6
Метки нет (Все метки)

Доброе утро, форумчане. Нужна ваша незаменимая помощь.
Проблема: Программа отображает только те заказы клиента, где указан один и тот же объект. Хотя заказов, где этот клиент учавствует - больше, разница только в объектах.
Вопрос: Как это исправить? Т.е как сделать так, чтобы клиент отображался со всеми заказами, не зависимо от прикрипленного за ним объекта.

Чтобы понять о какой части БД я говорю, прошу проделать те же действия, которые я сейчас опишу, чтобы увидеть все своими глазами на конкретном примере.
Открываем БД > Все Заказы > Клиенты > пишем в строке поисковика "поиск по клиенту" - ригин > поисковик найдет клиента "Ригин В.И." в трех значениях (т.е у него уже есть три заказа) > обратите внимание на последнею строку данной формы "Название объекта" > как видите объекта два: ИП ригин и магазин Акоре > если вы перейдете по любому из двух заказов с объектом ИП Ригин в досье клиента через кнопку правее "ДосьеКлиента" > вы увидите количество записей будет две и там можно их просмотреть перелестнув.
Если вы перейдете в досье через заказ с магазином Акоре, то увидите что записей всего одна.
Необходимо чтобы все заказы одного клиента можно было листать в этом досье, независимо от объекта.

Эта версия базы для тестов, так что можете делать с данными все что угодно.

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

0
Вложения
Тип файла: 7z БД v3.7.7z (272.6 Кб, 8 просмотров)
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2015, 07:33
Ответы с готовыми решениями:

Создать запрос для расчёта средней стоимости всех заказов
Необходимо создать запрос для расчёта средней стоимости всех заказов

Количество заказов и сортировка заказов
1. Провести сортировку заказов по годам и для каждого года выявить заказчика...

Запрос, использующие в качестве источника данных предыдущий запрос (сумма всех заказов для каждого заказчика)
Здравствуйте! Буду рада любой помощи. Ситуация следующая: имеется запрос,...

Отображение в форме одного поля из разных записей
Здравствуйте! Нужно, чтобы при заполнении левых полей формы ("Дата" и...

Отображение вложенного документа на всех страницах
на 1 стр есть прайс лист а на последующих нет. к каждом добавлять смысла нет!...

6
mobile
Эксперт MS Access
23338 / 13143 / 2754
Регистрация: 28.04.2012
Сообщений: 14,395
28.10.2015, 08:13 2
Если правильно понял, то достаточно закомментировать или удалить часть фильтра в коде вызова формы Клиенты досье из формы Клиенты. На клике Кнопка25 (видимое название ДосьеКлиента):
Visual Basic
1
2
3
Private Sub Кнопка25_Click()
    DoCmd.OpenForm "Клиенты досье", acNormal, , "КодКлиента=" & Me.КодКлиента   ' & " And [Название объекта]=" & Me.[Название объекта]
End Sub
1
Sazabi
4 / 4 / 0
Регистрация: 20.01.2015
Сообщений: 142
28.10.2015, 08:51  [ТС] 3
Благодарю, теперь отображает все заказы, независимо от объекта.
Но к сожалению теперь не работает функция выбора конкретного заказа. Т.е когда выбираешь конкретный заказ через кнопку "ДосьеКлиента", теперь он отображает это досье клиента с самого начала, с первого заказа, а не с того которого ты выбрал изначально. Это можно как нибудь вернуть, не нарушая уже сделанного?
0
shanemac51
Модератор
Эксперт MS Access
8135 / 3096 / 452
Регистрация: 07.08.2010
Сообщений: 8,476
Записей в блоге: 2
28.10.2015, 11:26 4
откинула справочники и решила посмотреть основные таблицы
кандидатов -2

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

 : Заказы---------------- :Клиенты1----------------- 
 КодЗаказаДлинное целое4 кодДлинное целое4
 ВидРаботДлинное целое4 дата приема заказаДата/время8
 Название объектаДлинное целое4 КлиентТ`255
 КлиентДлинное целое4 ответственный ООСТ`255
 ОтвСотрудникДлинное целое4 № клиента порядковыйДлинное целое4
 ДатаПриемаТ`20 адресТ`255
 ДатаНачалаДата/время8 вид работТ`255
 ДатаКонцаДата/время8 телефон/факсТ`50
 СуммаЗаказаТ`50 e-mailТ`50
 ДатаОплатыТ`50 суммаТ`255
 БезналЛогический1 датаТ`50
 ПринялЗаказДлинное целое4 безналичный расчетТ`255
 НомерДоговораТ`50 наличный расчетДлинное целое4
 СчетНаПредоплатуТ`50 принял заказТ`255
 СчетФактураТ`50 произвел расчетыТ`255
 АктВыполненияТ`50 ДоговорДата/время8
 ЭкспертизаТ`50 счет на предоплатуДата/время8
 ПрошедшиеЭксперТ`255 счет на окоч оплатуДата/время8
 РазрешениеТ`50 счет-фактураДата/время8
 ПримечаниеТ`255 акт выполн рабДата/время8
 НомерЗаказаДлинное целое4 прошедшие экспертизуТ`50
 ОбщаяСуммаТ`50 посредникДлинное целое4
 СуммаОплатыТ`50 сданы на экспертизуТ`50
     сданы клиентуТ`50
     разрешениеТ`50
     контрольный срокТ`50
     срок выполнения работТ`50
     примечаниеТ`255
     перенесеноТ`255
0
mobile
Эксперт MS Access
23338 / 13143 / 2754
Регистрация: 28.04.2012
Сообщений: 14,395
28.10.2015, 11:33 5
Лучший ответ Сообщение было отмечено Sazabi как решение

Решение

Цитата Сообщение от Sazabi Посмотреть сообщение
теперь он отображает это досье клиента с самого начала, с первого заказа, а не с того которого ты выбрал изначально. Это можно как нибудь вернуть
Можно. Код на кнопке
Visual Basic
1
2
3
4
5
6
7
Private Sub Кнопка25_Click()
    Dim s
    DoCmd.OpenForm "Клиенты досье", acNormal, , "КодКлиента=" & Me.КодКлиента
    s = "[Название объекта] = " & Me.[Название объекта] _
    & " and [ВидРабот]=" & Me.[ВидРабот]
    Forms![Клиенты досье].Form.Recordset.FindFirst s
End Sub
1
Sazabi
4 / 4 / 0
Регистрация: 20.01.2015
Сообщений: 142
30.10.2015, 08:25  [ТС] 6
Не создавая новой темы, вопрос по этой же бд.
Помогите пожалуйста разобраться с одной проблемой. Появилась необходимость добавить поле с номером клиента (код клиента) в форме "Заказы".
Но после его добавления, почему то перестали отображаться новые записи в этой форме.
0
Вложения
Тип файла: 7z БД v3.7.7z (273.6 Кб, 5 просмотров)
mobile
Эксперт MS Access
23338 / 13143 / 2754
Регистрация: 28.04.2012
Сообщений: 14,395
30.10.2015, 09:13 7
Sazabi, КодКлиента уже есть на форме Заказы. Поле со списком Клиент это и есть КодКлиента. Только числовое значение скрыто. Если хотите видеть его числом в отдельном поле, можно сделать так:
SQL
1
2
SELECT Заказы.*, Clng(Клиенты.КодКлиента) AS КодКлиента
FROM Клиенты INNER JOIN Заказы ON (Клиенты.КодКлиента = Заказы.Клиент)
1
30.10.2015, 09:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.10.2015, 09:13

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

Запрос: выбрать клиента с максимальным количеством заказов
Всем привет. Помогите, пожалуйста, написать запрос. Есть 2 таблицы - Clients...

Страница с формами редактирования заказов + постраничный вывод = пустышки, если кол. заказов < заказов на стр.
Добрый день. Есть у меня страничка обновления заказов с вот таким кодом &lt;? ...


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

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

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