access добавить в форму подчиненную форму

Добавление подчиненной формы в главную форму

Подчиненная форма является элементом управления и, как и все остальные элементы, может быть добавлена в главную форму с помощью Мастера подчиненных форм. При этом ее можно создать заранее, и тогда мастеру нужно будет только указать имя добавляемой формы. Если подчиненная форма еще не создана, мастер поможет ее создать.

В качестве примера добавим в форму «Поставщики» (Suppliers) подчиненную форму, которая будет содержать список товаров текущего-поставщика (в исходной версии базы данных «Борей» товары поставщика отображаются в отдельной связанной форме при нажатии кнопки Просмотр товаров (Review Products)):

37

Рис. 9.35. Второе диалоговое окно Мастера подчиненных форм

38

Рис. 9.36. Третье диалоговое окно Мастера подчиненных форм

Результат работы мастера представлен на рис. 9.37.

Мастер подчиненных форм удобен тогда, когда подчиненная форма еще не создана. Если подчиненная форма уже существует, можно просто разместить рядом окно базы данных с раскрытой страницей Формы (Forms) и главную форму, открытую в режиме Конструктора и просто перетащить мышью нужную форму из окна базы данных в главную форму. При этом главная становится подчиненной формой и автоматически устанавливается связь между формами.

35

Рис. 9.37. Подчиненная форма «Товары» внутри формы «Поставщики»

Источник

Создание формы, содержащей подчиненную форму (форма с отношением «один-ко-многим»)

При работе с реляционными данными (т. е. связанными данными, которые хранятся в разных таблицах) нередко требуется просматривать несколько таблиц или запросов в одной форме. Например, может потребоваться одновременно просмотреть данные клиента из одной таблицы и сведения о его заказах из другой. Подчиненные формы — удобный инструмент для подобных задач, и в Access их можно быстро создать несколькими способами.

В этой статье

Сведения о подчиненных формах

Подчиненной называют форму, вставленную в другую форму. Главная форма называется основной, а форма, вложенная в нее, — подчиненной. Комбинацию формы и подчиненной формы иногда также называют иерархической формой, сочетанием основной формы и формы подробностей или комбинацией родительской и дочерней форм.

Подчиненные формы особенно удобны для отображения данных из таблиц или запросов с отношением «один-ко-многим». Отношение «один-ко-многим» представляет собой связь между двумя таблицами, при которой значение первичного ключа каждой записи в главной таблице соответствует значению в соответствующем поле или полях нескольких записей в связанной таблице. Например, можно создать форму, в которой отображаются сведения о сотрудниках и которая содержит подчиненную форму с заказами каждого сотрудника. Данные в таблице «Сотрудники» являются в отношении стороной «один». Данные в таблице «Заказы» являются в отношении стороной «многие» — для каждого сотрудника может быть несколько заказов.

8d712f52 0c4e 4a04 9ffa 7c04cfd75905

1. В основной форме отображаются данные на стороне отношения «один».

2. В подчиненной форме выводятся данные на стороне отношения «многие».

Основная и подчиненная формы взаимодействуют таким образом, что в подчиненной выводятся только те записи, которые связаны с текущей записью в основной. Например, если в основной форме отображаются данные Ольги Зуевой, то в подчиненной отображаются только ее заказы. Если связь между основной и подчиненной формами была разорвана, то в подчиненной форме будут отображаться заказы всех сотрудников, а не только Ольги.

В таблице ниже определены некоторые термины, связанные с подчиненной формы. Access будет обрабатывать большинство сведений, если вы используете процедуры, которые вы используете в этой статье, но полезно знать, какие изменения происходят в дальнейшем.

Элемент управления подчиненной формы

Элемент управления, который служит для внедрения одной формы в другую. Его можно рассматривать как «представление» другого объекта в базе данных, будь то другая форма, таблица или запрос. Элемент управления подчиненной формы обладает свойствами, которые позволяют связывать данные, отображаемые в нем, с данными в основной форме.

Свойство элемента управления подчиненной формы, определяющее, какой объект в нем отображается.

Простое отображение данных в строках и столбцах, как в электронной таблице. В элементе управления подчиненной формы отображается таблица, когда объектом-источником является таблица или запрос, либо форма, для свойства «Режим по умолчанию» которой задано значение «Режим таблицы». В этих случаях подчиненную форму иногда называют таблицей или подтаблицей.

Свойство «Подчиненные поля»

Свойство элемента управления подчиненной формы, которое задает поле или поля в подчиненной форме, которые будут связывать ее с основной.

Свойство «Основные поля»

Свойство элемента управления подчиненной формы, которое задает поле или поля в основной форме, которые будут связывать ее с подчиненной.

Перед тем, как выполнить описанные в этой статье действия, мы рекомендуем настроить связи между таблицами. Это позволит Access автоматически создать связи между основными и подчиненными формами. Чтобы просмотреть, добавить или изменить связи между таблицами в базе данных, на вкладке Работа с базами данных в группе Показать или скрыть нажмите кнопку Схема данных.

Когда элемент управления подчиненной формы имеет в качестве объекта-источника форму, он содержит поля, помещенные в нее и его можно просмотреть как одиночную форму, ленточную форму или таблицу. Одним из преимуществ создания подчиненной формы на основе формы является возможность добавления вычисляемых полей в подчиненную форму, например: [Количество] * [Цена].

Можно также вставить в форму таблицу или сводное представление путем создания элемента управления подчиненной формы, объектом-источником для которого служит таблица или запрос. Дополнительные сведения см. в разделе Добавление связанных данных в форму без создания подчиненной формы.

Создание или добавление подчиненной формы

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

Нужно создать в приложении Access основную и подчиненную формы и связать их.

Нужно использовать существующую форму в качестве основной, но при этом создать в Access новую подчиненную форму и добавить ее в основную.

Нужно использовать существующую форму в качестве основной и добавить в нее одну или несколько существующих форм в качестве подчиненных.

Создание формы, содержащей подчиненную форму, с помощью мастера форм

Данная процедура позволяет создать новую комбинацию формы и подчиненной формы с помощью мастера форм. Это также самый быстрый способ начать работу, если еще не были созданы формы, которые планируется использовать в качестве основной или подчиненной формы.

На вкладке Создание в группе Формы нажмите кнопку Мастер форм.

На первой странице мастера в раскрывающемся списке Таблицы и запросы выберите таблицу или запрос. Например, чтобы создать форму «Сотрудники» для отображения в подчиненной форме списка заказов для каждого сотрудника, выберите пункт Таблица: Сотрудники (сторона «один» отношения «один-ко-многим»).

Примечание: Порядок выбора таблиц и запросов не имеет значения.

Дважды щелкните поля таблицы или запроса, которые нужно включить в форму.

На той же странице мастера в раскрывающемся списке Таблицы и запросы выберите другую таблицу или запрос. В данном примере мы выберем таблицу «Заказы» (сторона «многие» связи «один-ко-многим»).

Дважды щелкните поля таблицы или запроса, которые нужно включить в форму.

При нажатии кнопки «Далее» предполагается, что связи настроены правильно до начала работы мастера, мастер спросит, как вы хотите просмотреть данные? — по какой таблице или запросу. Выберите таблицу на стороне «один» связи «один-к-многим». В этом примере для создания формы «Сотрудники» будет щелкнуть «Сотрудники». Мастер отобразит небольшую схему формы. Страница должна иметь следующий рисунок:

d18bb973 23a7 4d6c ad8f 577c10db0482

Поле в нижней части изображения формы обозначает подчиненную форму.

Примечание: Если запрос Выберите способ представления данных не отображается, это означает, что приложению Access не удалось обнаружить связь «один-ко-многим» между выбранными таблицами или запросами. Мастер продолжит работу, но в форму не будет добавлена подчиненная форма. Если вы хотите сначала проверить связи между таблицами, нажмите кнопку Отмена.

Установите в нижней части страницы мастера переключатель Подчиненные формы и нажмите кнопку Далее.

На странице Выберите внешний вид подчиненной формы: выберите нужный вариант макета и нажмите кнопку Далее. В макетах обоих стилей данные подчиненной формы располагаются в виде строк и столбцов, но ленточный макет имеет больше возможностей настройки. В ленточной подчиненной форме можно добавлять цвет, изображения и другие элементы форматирования, однако табличный макет компактнее, как и табличное представление таблицы.

На следующей странице мастера выберите стиль форматирования для формы и нажмите кнопку Далее. Если на предыдущей странице вы выбрали значение Табличный, выбранное форматирование стиля также применяется к подчиненной форме.

На последней странице мастера введите заголовки форм. Имена автоматически присваиваются формам на основе введенных заголовков, а надписи подчиненных форм — на основе введенных заголовков подчиненных форм.

Укажите режим, в котором вы хотите открывать форму: режим формы (чтобы можно было просмотреть или ввести данные) или Конструктор (чтобы можно было изменить ее структуру). Затем нажмите кнопку Готово.

Access создаст две формы — основную форму, которая содержит подчиненную, и саму подчиненную форму.

Добавление одной или нескольких подчиненных форм в существующую форму с помощью мастера подчиненных форм

Используйте эту процедуру для добавления одной или нескольких подчиненных форм в существующую форму. Для каждой подчиненной формы можно создать новую форму или использовать существующую.

В области навигации щелкните существующую форму правой кнопкой мыши и выберите пункт Конструктор.

На вкладке Конструктор в группе Элементы управления щелкните стрелку вниз, чтобы открыть коллекцию Элементы управления, и убедитесь в том, что установлен флажок Использовать мастера.

На вкладке Конструктор в группе Элементы управления выберите элемент Подчиненная форма/отчет.

В форме щелкните место, куда нужно поместить подчиненную форму.

Следуйте указаниям мастера.

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

Создание подчиненной формы путем перетаскивания одной формы в другую

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

В области навигации щелкните правой кнопкой мыши форму, которую нужно использовать в качестве основной, и выберите пункт Конструктор.

Перетащите форму, которую вы хотите использовать в качестве подчиненной, из области навигации на основную форму.

Access добавит в основную форму элемент управления подчиненной формы, который будет связан с формой, добавленной путем перетаскивания из области навигации. Он также попытается связать подчиненную форму с основной на основе отношений, определенных в базе данных.

Повторите этот шаг, чтобы добавить другие подчиненные формы в основную.

Чтобы проверить, успешно ли создана связь, на вкладке Главная в группе Режимы нажмите кнопку Режим, выберите команду Режим формы и с помощью селектора записей основной формы просмотрите несколько записей. Если в подчиненной форме правильно отображаются данные для каждого сотрудника, это означает, что процедура завершена успешно.

Если проверка не работает, это означает, что программе Access не удалось создать связь подчиненной формы с основной и свойства Подчиненные поля и Основные поля элемента управления подчиненной формы остались пустыми. Задайте значения для этих свойств вручную, выполнив указанные ниже действия.

В области навигации щелкните основную форму правой кнопкой мыши и выберите пункт Конструктор.

Щелкните элемент управления подчиненной формы один раз, чтобы выделить его.

Если область задач «Окно свойств» не отображается, нажмите клавишу F4.

В окне свойств откройте вкладку Данные.

Нажмите кнопку «Построить» d5f9f47b bca3 42bd 9772 96ff011602bdрядом с полем свойства «Ребенку полей».

Будет открыто диалоговое окно Связь с полями подчиненной формы.

В списках «Поля и потомки» выберите поля, с помощью которые вы хотите связать формы, и нажмите кнопку «ОК». Если вы не знаете, какие поля использовать, нажмите кнопку «Предложить», чтобы Access попытается определить связующие поля.

Совет: Если не отображается поле, которое требуется использовать для связывания форм, возможно, придется так отредактировать источник записей основной или подчиненной формы, чтобы данное поле в нем присутствовало. Например, если форма основана на запросе, следует убедиться, что связывающее поле присутствует в результатах запроса.

Сохраните основную форму и переключитесь в режим формы, а затем проверьте, правильно ли она работает.

Открытие подчиненной формы в новом окне в Конструкторе

Если вы хотите внести изменения в структуру подчиненной формы во время работы над основной формой в Конструкторе, вы можете открыть ее в отдельном окне:

Щелкните подчиненную форму, чтобы выбрать ее.

На вкладке Конструктор в группе Сервис нажмите кнопку Подчиненная форма в новом окне.

Изменение представления по умолчанию для подчиненной формы

При добавлении подчиненной формы в форму элемент управления подчиненной формы (или отчета) отображает подчиненную форму в соответствии с ее свойством Режим по умолчанию. Ниже перечислены значения, которые можно установить для этого свойства.

При создании подчиненной формы для этого свойства может быть установлено значение Ленточные формыили Простая форма. Однако если для свойства Режим по умолчанию подчиненной формы установить значение Режим таблицы, она будет отображаться как таблица в основной форме.

Чтобы задать значение свойства Режим по умолчанию подчиненной формы, выполните указанные ниже действия.

Закройте все открытые объекты.

В области навигации щелкните подчиненную форму правой кнопкой мыши и выберите пункт Конструктор.

Если окно свойств не отображается, нажмите клавишу F4.

Убедитесь в том, что в раскрывающемся списке в верхней части окна свойств выбран пункт Форма.

На вкладке Формат окна свойств задайте для свойства Режим по умолчанию нужное значение.

Примечание: Если нужный режим отсутствует в списке, убедитесь в том, что для свойства «Режим. » установлено значение Да. Например, если нужно выбрать вариант Режим таблицы, убедитесь, что для свойства Режим таблицы установлено значение Да.

Сохраните и закройте подчиненную форму, а затем откройте основную форму, чтобы проверить результаты.

Добавление связанных данных в форму без создания подчиненной формы

Не всегда требуется создавать отдельный объект формы для отображения связанных данных. Например, если вы работаете с формой в конструкторе или макете и перетаскивайте в нее таблицу или запрос из области навигации, в Access создается набор подчиненной формы или подчиненного с данными в этом объекте. Отображение данных определяется свойством «Режим по умолчанию» объекта. Обычно для этого используется режим таблицы, но для свойства «Режим по умолчанию» таблицы или запроса можно установить значение «Одна форма», «Разделенная форма» или «Лентообразная форма», что обеспечивает большую гибкость при отображке связанных данных в формах.

Примечание: Изменение свойства Режим по умолчанию для таблицы или запроса влияет на способ их отображения при открытии из области навигации или при просмотре в элементе управления подчиненной формы или отчета. Поскольку изменение параметров отображения таблицы иногда может привести к путанице при ее открытии из области навигации, в этой процедуре рекомендуется вместо таблицы использовать запрос.

Источник

Создание и использование подчиненных отчетов

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

В этой статье

Общие сведения о подчиненных отчетах

Подчиненный отчет — это отчет, который вставляется в другой отчет. При сочетании отчетов один из них должен служить основным отчетом, содержа другим. Основной отчет является связанным или связанным. Связанный отчет может отображать данные, в нем есть таблица, запрос или SQL, указанная в его свойстве «Источник записей». Это отчет, который не основан на таблице, запросе или SQL (то есть свойство «Источник записей» отчета пусто).

Свободный основной отчет с двумя несвязанными подчиненными отчетами

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

835d1490 e53b 468f 8930 8830dff9dc64

1. Свободный основной отчет содержит два подчиненных отчета.

2. В одном подчиненном отчете отображаются совокупные продажи сотрудника.

3. Во втором подчиненном отчете продажи отображаются по категориям.

Основной и подчиненный отчеты, привязанные к одному источнику записей

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

b6b2d180 088a 474a acc1 c84b1a7aeda9

1. В подчиненном отчете отображаются совокупные продажи за год по кварталам.

2. Основной отчет содержит продажи за каждый день.

Основной и подчиненный отчеты, привязанные к связанным источникам записей

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

1b6123a9 a107 4b54 92c4 11c75da5b8bc

1. Основной отчет содержит названия всех ярмарок и города, в которых они проводятся.

2. Подчиненный отчет содержит сведения о представителях компании на каждой из ярмарок.

Подчиненные формы в отчетах

Основной отчет может включать в себя не только подчиненные формы, но и сколько угодно подчиненных форм и отчетов. Кроме того, основной отчет может содержать до семи уровней подчиненной формы и отчетов. Например, отчет может содержать подчиненный отчет, в котором может быть подчиненная форма или отчет и так далее — до семи уровней.

Если добавить подчиненную форму в отчет, а затем открыть отчет в представлении отчета, можно использовать подчиненную форму для сортировки записей и перемещения по ним. Код Visual Basic для приложений (VBA) и внедренные макросы, связанные с формой и ее элементами управления, будут выполняться и в этом контексте, хотя некоторые события при этом будут отключены. Добавлять, изменять или удалять записи с помощью подчиненных форм в отчете нельзя.

Связывание отчета с подчиненной формой или отчетом

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

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

Вы определяете связи для выбранных таблиц или для базовых таблиц выбранных запросов.

Основной отчет основан на таблице с первичный ключ, а подчиненнаяформа или отчет — на основе таблицы, содержаной поле с тем же именем, что и первичный ключ, и с таким же или совместимым тип данных. Например, если первичным ключом таблицы, которая является основным отчетом, является поле «Автонумер», а его свойство FieldSize имеет значение «Длинное integer»,соответствующее поле в таблице, соответствующей подчиненной формы или отчета, должно быть числом, свойство FieldSize имеет значение «Длинное integer». При выборе запроса или запроса в качестве источника записей подчиненной формы или подчиненного отчета таблицы, в которых они находятся, должны соответствовать одинаковым условиям.

Создание подчиненных отчетов

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

Создание подчиненных отчетов с помощью мастера

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

В области навигации щелкните правой кнопкой мыши отчет, в который нужно добавить подчиненный отчет, и выберите пункт Конструктор.

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

720bce33 37b7 47d3 aa65 1e729a4a0df3

В открывшемся меню установите параметр Использовать мастера.

Снова откройте коллекцию элементов управления и выберите элемент Подчиненная форма/отчет.

Щелкните отчет в том месте, где нужно добавить подчиненный отчет.

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

Если вы хотите создать подчиненную форму или отчет и привязать их к таблице или запросу, на первой странице мастера подчиненных отчетов установите переключатель в положение Имеющиеся таблицы и запросы. Если у вас уже есть отчет или форма, которые вы хотите использовать в качестве подчиненного отчета, установите переключатель в положение Имеющиеся отчеты и формы, выберите в списке отчет или форму и нажмите кнопку Далее.

1107b910 4f80 4d14 961b fd7163edb32c

Примечание: Если в базе данных нет других отчетов и форм, поле списка будет пустым, а параметр Имеющиеся отчеты и формы будет недоступен.

Если на предыдущей странице мастера вы выбрали параметр Имеющиеся отчеты и формы, пропустите это действие и перейдите к действию 9. В противном случае выберите в списке Таблицы и запросы таблицу или запрос с полями, которые нужно включить в подчиненный отчет, а затем дважды щелкните нужные поля в списке Доступные поля, чтобы добавить их в подчиненный отчет.

47f9c645 785c 45d2 9e8a 4872bc00dbf3

Если вы планируете привязать подчиненный отчет к основному отчету, добавьте поля, которые будут использоваться для создания связи, пусть даже отображать их не требуется. Как правило, связанным полем является поле «ИД». На приведенном выше рисунке таблица «Заказы» является источником записей для подчиненного отчета, а таблица «Клиенты» — источником записей для основного отчета. Поскольку таблица «Заказы» связана с таблицей «Клиенты» полем «ИД клиента», оно добавлено в список Выбранные поля.

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

Чтобы продолжить, нажмите кнопку Далее.

На этой странице мастера определяется способ связывания подчиненного и основного отчетов. Если Access обнаружит поля, подходящие для связи подчиненного и основного отчетов, мастер отобразит список предлагаемых вариантов.

61e3d2e5 beae 4cf9 a65d 7fd6123a3e47

Вы можете выбрать вариант, который лучше всего подходит для вашей ситуации, или, если вы не хотите, чтобы отчет был связан с основным отчетом, выберите вариант «Нет». Если вы хотите связать подчиненный и основной отчеты, но ни один из предложений не подходит, нажмите кнопку «Определить собственные».

Примечание: Если мастер не сможет найти подходящие для связи поля, список предлагаемых вариантов не появится и автоматически будет выбран параметр Самостоятельное определение.

6ff7f598 63a7 41c2 8c94 0b95fccbea0f

Когда выбран параметр Самостоятельное определение, мастер отображает два набора списков.

В списке Поля формы или отчета выберите поля основного отчета, с помощью которых нужно связать его с подчиненной формой или отчетом. Можно выбрать до трех полей, при этом каждое выбранное поле должно соответствовать полю в источнике данных подчиненной формы или отчета.

В списке Поля подчиненной формы или отчета выберите соответствующие поля подчиненной формы или отчета, связанные с выбранным основным отчетом.

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

Чтобы продолжить, нажмите кнопку Далее.

На последней странице мастера введите имя подчиненной формы или отчета или просто нажмите кнопку Готово, чтобы принять имя по умолчанию.

14d8ddae 9a86 4a81 a473 d81bda70e223

Access добавит в отчет элемент управления подчиненного отчета и привяжет его (то есть установит для него свойство Объект-источник) одним из описанных ниже способов.

Если на первой странице мастера был выбран параметр Имеющиеся отчеты и формы, Access привяжет элемент управления подчиненного отчета к указанному вами отчету или форме.

Если на первой странице мастера был выбран параметр Имеющиеся таблицы или запросы, Access создаст новый объект отчета в области навигации и привяжет к нему элемент управления подчиненного отчета. Новому объекту отчета будет назначено имя, которое вы ввели на последней странице мастера.

Добавление подчиненных отчетов в виде таблиц, запросов, форм или отчетов

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

В области навигации щелкните правой кнопкой мыши отчет, который нужно использовать как основной, и выберите в контекстном меню пункт Режим макета или Конструктор.

Перетащите таблицу, запрос, форму или другой отчет из области навигации в ту часть главного отчета, где должен находиться подчиненный отчет.

Access выполнит одно из описанных ниже действий.

Если Access удастся определить, как связать эти два объекта, в отчет будет добавлен элемент управления подчиненного отчета. Если вы добавляете форму или отчет, Access свяжет элемент управления подчиненного отчета с этим объектом. Если вы добавляете таблицу или запрос, Access сначала создаст объект отчета, а затем свяжет его с элементом управления подчиненного отчета.

Если Access не удастся определить, как связать эти два объекта, откроется мастер подчиненных отчетов. Чтобы продолжить работу, выполните действия, описанные в разделе Создание подчиненного отчета с помощью мастера, начиная с действия 9.

После выполнения всех этапов мастера Access добавит подчиненный отчет в отчет.

Чтобы проверить связь подчиненной формы или отчета с основным отчетом, выполните приведенные ниже инструкции.

Щелкните элемент управления подчиненного отчета, чтобы выделить его.

Если окно свойств не отобразится, нажмите клавишу F4.

На вкладке Данные окна свойств обратите внимание на свойства Основные поля и Подчиненные поля.

Для несвязанных подчиненных форм или отчетов оставьте поля обоих свойств пустыми.

Для связанных подчиненных форм или отчетов убедитесь в том, что свойства Основные поля и Подчиненные поля содержат поля, которые связывают два объекта. Например, если в основном отчете отображаются сведения из таблицы «Сотрудники», а в подчиненной форме или отчете — сведения из таблицы «Заказы», свойство Основные поля должно содержать поле «ИД» из таблицы «Сотрудники», а свойство Подчиненные поля — поле «ИД сотрудника» из таблицы «Заказы».

Возможно, эти свойства придется изменить, чтобы подчиненная форма или отчет работали должным образом. Для этого выполните описанные ниже действия.

На вкладке Данные окна свойств щелкните поле Основные поля, а затем нажмите кнопку Построить b20be472 bfe9 4961 be17 36a8cbc0f807.

Откроется диалоговое окно Связь с полями подчиненной формы.

2a3865fc b58c 4466 92c3 553527c84dd5

В списках «Master Fields» и «Child Fields» (Поля master и Child Fields) выберите поля, с помощью которые вы хотите связать отчеты. Если вы не знаете, какие поля использовать, нажмите кнопку «Предложить», чтобы Access попытается определить связующие поля. По окончании нажмите кнопку ОК.

Если поле, которое вы хотите использовать для связывания отчета, не отображается, возможно, источник записей основного отчета либо подчиненной формы или отчета придется изменить так, чтобы это поле в них присутствовало. Например, если отчет основан на запросе, убедитесь в том, что связующее поле присутствует в результатах запроса.

Сохраните основной отчет, перейдите в представление отчета и проверьте работу отчета.

Добавление таблицы или запроса в отчет в качестве таблицы данных

Таблица данных — это простое визуальное представление данных, похожее на электронную таблицу. Каждый столбец в таблице данных представляет поле в исходной таблице или запросе, а каждая строка — запись. Для отображения таблицы данных в отчете можно использовать элемент управления «Подчиненная форма/отчет». Этот способ хорош, если нужно просмотреть данные в сжатой форме, но при этом вы не хотите использовать возможности форматирования формы или отчета. Чтобы добавить таблицу данных в отчет, выполните указанные ниже действия.

В области навигации щелкните правой кнопкой мыши отчет, который нужно использовать как основной, а затем выберите в контекстном меню пункт Конструктор.

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

720bce33 37b7 47d3 aa65 1e729a4a0df3

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

Снова откройте коллекцию элементов управления и выберите элемент Подчиненная форма/отчет.

Щелкните отчет в том месте, где нужно добавить подчиненный отчет.

Если запустится мастер подчиненных форм, нажмите кнопку Отмена, чтобы закрыть его.

Если окно свойств не отобразится, нажмите клавишу F4.

В отчете щелкните элемент управления подчиненного отчета, чтобы выбрать его.

На вкладке Данные окна свойств щелкните стрелку вниз в поле Объект-источник и выберите таблицу или запрос, которые нужно отобразить в элементе управления подчиненного отчета. Например, чтобы отобразить таблицу «Заказы», выберите пункт Таблица.Заказы.

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

На вкладке Данные окна свойств обратите внимание на свойства Основные поля и Подчиненные поля.

Для несвязанных таблиц данных оставьте поля этих свойств пустыми.

Для связанных таблиц данных убедитесь в том, что в свойствах Основные поля и Подчиненные поля отображаются те поля, которые связывают основной отчет с этими таблицами данных. Например, если в основном отчете отображаются сведения из таблицы «Сотрудники», а в таблице данных — сведения из таблицы «Заказы», свойство Основные поля должно содержать поле «ИД» из таблицы «Сотрудники», а свойство Подчиненные поля — поле «ИД сотрудника» из таблицы «Заказы».

Иногда вам может потребоваться настроить связующие поля самостоятельно. Для этого выполните указанные ниже действия.

На вкладке Данные окна свойств щелкните поле Основные поля, а затем нажмите кнопку Построить b20be472 bfe9 4961 be17 36a8cbc0f807.

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

Откроется диалоговое окно Связь с полями подчиненной формы.

2a3865fc b58c 4466 92c3 553527c84dd5

В списках «Основные поля» и «Основные поля» выберите поля, которые вы хотите использовать для связываия основного отчета с таблицой. Если вы не знаете, какие поля использовать, нажмите кнопку «Предложить», чтобы Access попытается определить связующие поля. По окончании нажмите кнопку ОК.

Если связующее поле не отображается, источник записей основного отчета или таблицы данных нужно изменить так, чтобы это поле в них присутствовало. Например, если таблица данных основана на запросе, убедитесь в том, что связующее поле присутствует в результатах запроса.

Сохраните основной отчет, перейдите в представление отчета и проверьте работу отчета.

Изменение макета подчиненного отчета

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

Открытие подчиненной формы или отчета в новом окне в режиме конструктора

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

Щелкните подчиненную форму или отчет.

На вкладке Конструктор в группе Сервис нажмите кнопку Подчиненная форма в новом окне.

Примечание: Эта команда недоступна, если элемент управления подчиненной формы или отчета привязан к таблице или запросу.

Отображение итогов из подчиненного отчета в основном отчете

Предположим, что вы используете в подчиненном поле «Заказы» текстовое поле «Суммарная стоимость доставки», которое вычисляет сумму столбца «Стоимость доставки». Чтобы отобразить сумму из подчиненного отчета в основном отчете, необходимо добавить в основной отчет текстовое поле, а затем использовать выражение для ссылки на текстовое поле «Суммарная стоимость доставки» в подчиненном отчете. Для этого выполните указанные ниже действия.

В области навигации щелкните основной отчет правой кнопкой мыши и выберите в контекстном меню пункт Конструктор.

На вкладке Конструктор в группе Элементы управления выберите элемент Поле.

Щелкните основной отчет там, где нужно добавить новое поле.

Если окно свойств не отобразится, нажмите клавишу F4.

В окне свойств на вкладке Данные введите в поле свойства Данные следующее выражение:

=IIf(IsError([Orders subreport].[Report]![Shipping Fee Total]),0,[Orders subreport].[Report]![Shipping Fee Total])

В этом примере можно использовать более простое выражение =[Orders subreport].[Report]![Shipping Fee Total], но, если в подчиненном отчете не будет данных, его элемент управления в основном отчете отобразит значение #Error. Использование функции IsError в функции IIf (в первом выражении), гарантирует, что, если подчиненный отчет не возвратит никаких данных, в текстовом поле в основном отчете отобразится значение «ноль» (0).

Чтобы создать выражение с помощью построителя выражений, нажмите кнопку Построить b20be472 bfe9 4961 be17 36a8cbc0f807в поле свойства Данные.

На вкладке Макет окна свойств назначьте свойству Формат соответствующее значение (в данном случае Денежный).

Сохраните основной отчет, перейдите в представление отчета и проверьте правильность вычислений.

Источник

Понравилась статья? Поделить с друзьями:
Добавить комментарий
  • Как сделать успешный бизнес на ритуальных услугах
  • Выездной кейтеринг в России
  • Риски бизнеса: без чего не обойтись на пути к успеху
  • access ввод данных через форму
  • access база данных договоров