Цель лекции: научиться создавать внешние
Одна из функций учетной системы - предоставление пользователям различной информации. Как правило, делается это с помощью отчетов. Например, в нашем случае вполне логично было бы иметь отчет, который выводит информацию о поступивших и выбывших материалах по отдельным материально-ответственным лицам (а может быть и по всей организации в целом), а так же - об остатках материалов. Подобная функциональность - то есть - выборка данных, осуществляется в 1С:Предприятии с помощью
Поэтому, прежде чем говорить об отчетах, да и прежде чем продолжать изложение дальнейших тем, нам необходимо познакомиться с
Прежде чем переходить к практической работе с
При работе с
В
В
Поля таблицы могут содержать либо какие-то данные, либо -
Перед созданием
Во встроенном языке системы есть объект Запрос. Именно он используется для работы с
После того, как создан текст
Для того, чтобы начать практическую работу с
Внешние отчеты и
Войдем в .
(рис 7.1) Начало создания внешней обработкиВведем в поле имя КонсольЗапросов, для начала редактирования формы
Добавим в форму элемент управления Поле текстового документа, зададим ему имя ТекстЗапроса, установим в параметре Расширение значение Язык запросов. Добавим в список реквизитов формы новый реквизит, зададим ему имя ТекстЗапросов и тип Строка.
Это позволит использовать в данном поле, при работе в режиме 1С:Предприятие, конструктор
(рис 7.2) Добавление в форму внешней обработки поля текстового документаПоле ТекстЗапроса будет содержать текст
Теперь добавим в форму еще один элемент управления - табличное поле. Зададим ему имя - .
(рис 7.3) Добавление в форму внешней обработки табличного поляВ табличное поле мы будем помещать результат выполнения
Теперь зададим обработчик нажатия кнопки Выполнить. Для этого откроем окно свойств кнопки и нажмем на кнопку Открыть в поле Действие. Процедура обработчика события нажатия на кнопку будет выглядеть следующим образом:
Процедура КнопкаВыполнитьНажатие(Кнопка) Запрос = Новый Запрос; Запрос.Текст=ЭлементыФормы.ТекстЗапроса.ПолучитьТекст(); РезультатВыполненияЗапроса = Запрос.Выполнить().Выгрузить(); ЭлементыФормы.РезультатВыполненияЗапроса.СоздатьКолонки(); КонецПроцедуры
Поясним ее команды. Они, в основном, связаны с новым для вас объектом Запрос.
Запрос = Новый Запрос;
Создаем новый объект типа Запрос, записываем ссылку на него в переменную Запрос.
Запрос.Текст=ЭлементыФормы.ТекстЗапроса.ПолучитьТекст();
Записываем в свойство
РезультатВыполненияЗапроса = Запрос.Выполнить().Выгрузить();
Помещаем в поле табличного документа РезультатВыполненияЗапроса результат выполнения Выполнить(). Этот метод выполняет Выгрузить() выгружает результат
ЭлементыФормы.РезультатВыполненияЗапроса.СоздатьКолонки();
Благодаря этой команде в поле РезультатВыполненияЗапроса можно увидеть его содержимое, иначе оно будет выглядеть пустым.
После того, как создание
Файлы внешних обработок имеют расширение *.EPF, рис 7.4.
(рис 7.4) Сохраняем внешнюю обработкуЗапустим систему в режиме 1С:Предприятие. Для того, чтобы работать с внешней
(рис 7.5) Внешняя обработка, открытая в режиме 1С:ПредприятиеСейчас все готово для ваших первых экспериментов с
Пожалуй, самый лучший способ изучения языка
Щелкнем правой кнопкой мыши по свободному пространству в поле ввода текста
(рис 7.6) Конструктор запросаКонструктором
Окно конструктора
Вкладка .
(рис 7.7) Набор таблиц базы данныхСреди таблиц есть
Рабочая область Таблицы окна Конструктор запроса содержит список таблиц, из которых система выбирает данные. Этот список формируется переносом нужных таблиц из рабочей области База данных.
Зададимся следующей целью: нужно сконструировать
Очевидно, что данные для такого
Если вспомнить устройство справочника .
(рис 7.8) Выбор таблиц и полейСобственно говоря,
(рис 7.9) Предварительный просмотр текста запросаЗакроем окно предварительного просмотра
Как вы уже могли понять, в поле ТекстЗапроса попадет следующий текст:
ВЫБРАТЬ Сотрудники.ФизическоеЛицо.Фамилия ИЗ Справочник.Сотрудники КАК Сотрудники
Весь этот текст представляет собой описание
Ключевое слово
Справочник.Сотрудники КАК Сотрудники
Это выражение означает, что источником данных является таблица Справочник.Сотрудники. Для этой таблицы, с помощью ключевого слова
Вернемся к пояснениям области
Сотрудники.ФизическоеЛицо.Фамилия
Этой командой мы обращаемся к таблице ФизическоеЛицо, которая хранится в таблице Сотрудники (напомним, что это - псевдоним) и выбираем из нее фамилию сотрудника. Полям, которые попадают в выборку данных, создаваемую
Если попытаться выразить текст рассматриваемого
Теперь нажмем на кнопку .
(рис 7.10) Результат выполнения запроса Продолжим знакомство с
Получим из справочника ЕдиницыИзмерения коды и наименования единиц измерения. В результатах
Написание
ВЫБРАТЬ
ИЗ
Справочник.ЕдиницыИзмерения как ТабЕдИзм
После того, как источник данных определен, определяем поля для выбора:
ВЫБРАТЬ
ТабЕдИзм.Код,
ТабЕдИзм.Наименование КАК Название
ИЗ
Справочник.ЕдиницыИзмерения как ТабЕдИзм
Исполним
(рис 7.11) Результат выполнения запросаУсложним задачу. Результат предыдущего
Для этого в
ВЫБРАТЬ
ТабЕдИзм.Код,
ТабЕдИзм.Наименование КАК Название
ИЗ
Справочник.ЕдиницыИзмерения как ТабЕдИзм
УПОРЯДОЧИТЬ ПО
Название
На рис 7.12 вы можете видеть результат выполнения
(рис 7.12) Результат выполнения запросаПри составлении
Выберем первые 2 элемента из результатов, модифицировав предыдущий
ВЫБРАТЬ ПЕРВЫЕ 2
ТабЕдИзм.Код,
ТабЕдИзм.Наименование КАК Название
ИЗ
Справочник.ЕдиницыИзмерения как ТабЕдИзм
УПОРЯДОЧИТЬ ПО
Название
Выполним
(рис 7.13) Результат выполнения запросаДля того чтобы в выборку попали лишь различные элементы, можно воспользоваться ключевым словом РАЗЛИЧНЫЕ после слова
Выше мы делали выборки из неиерархического справочника .
ВЫБРАТЬ
*
ИЗ
Справочник.Номенклатура
(рис 7.14) Результат выполнения запроса Как видите, в результат
Для отбора элементов можно использовать ключевое слово
ВЫБРАТЬ ТабНоменклатура.Наименование ИЗ Справочник.Номенклатура КАК ТабНоменклатура ГДЕ НЕ ТабНоменклатура.ЭтоГруппа
(рис 7.15) Результат выполнения запросаРассмотрим еще один вариант отбора результатов
Нам нужно отобрать среди документов поступления материалов лишь те, сумма которых превышает 2000 рублей, и вывести в результаты
Откроем :
(рис 7.16) Конструктор запроса, вкладка Таблицы и поляТеперь нам нужно задать условие отбора. Для этого перейдем на вкладку ) нужно выбрать условие выбором их списка (мы выбрали условие "больше") и заменить выражение СтоимостьМатериалов на число 2000.
(рис 7.17) Конструктор запроса, вкладка Таблицы и поляЗдесь нас подстерегает одна особенность конструктора
ПоступлениеМатериалов.СтоимостьМатериалов > 2000
Символ .
(рис 7.18) Конструктор запроса, вкладка УсловияДля того чтобы упорядочить результат
(рис 7.19) Конструктор запроса, вкладка ПорядокРабота с .
(рис 7.20) Текст запроса и результат выполнения запросаВот, какой текст сгенерировал Конструктор запроса:
ВЫБРАТЬ ПоступлениеМатериалов.Дата, ПоступлениеМатериалов.Номер, ПоступлениеМатериалов.ОтветственныйСотрудник, ПоступлениеМатериалов.СтоимостьМатериалов КАК СтоимостьМатериалов ИЗ Документ.ПоступлениеМатериалов КАК ПоступлениеМатериалов ГДЕ ПоступлениеМатериалов.СтоимостьМатериалов > 2000 УПОРЯДОЧИТЬ ПО СтоимостьМатериалов
Выше мы занимались получением данных из какой-то одной таблицы. Существует и другой вариант получения данных - с использованием нескольких таблиц. В целом порядок работы при использовании в качестве источников нескольких таблиц, как правило, взаимосвязанных по каким-то признакам, очень похож на работу с отдельными таблицами. Однако если
Существуют следующие виды соединения таблиц:
Рассмотрим эти виды соединения таблиц на примере.
В нашей конфигурации есть два взаимосвязанных справочника. А именно, речь идет о справочниках Номенклатура и ЕдиницыИзмерения. Элементам справочника Номенклатура могут быть назначены единицы измерения, взятые из справочника ЕдиницыИзмерения. Причем, в справочнике Номенклатура могут существовать элементы, которым не назначена ни одна единица измерения, а в справочнике ЕдиницыИзмерения могут присутствовать элементы, которые не назначены элементам справочника Номенклатура. В таблице 7.1 представлена таблица справочника Номенклатура - наименования номенклатурных позиций и соответствующие им единицы измерения.
| Номенклатура | Единица измерения | Группа |
|---|---|---|
| Бальзам для волос | ложь | |
| Духи | Штука | ложь |
| Завивка | Час | ложь |
| Лак для волос | Упаковка | ложь |
| Одеколон | Упаковка | ложь |
| Парикмахерские услуги | истина | |
| Парфюмерия | истина | |
| Стрижка | Час | ложь |
| Уход за волосами | истина |
Как видите, Бальзам для волос не имеет установленной единицы измерения, остальным элементам единицы измерения назначены. Группам, естественно, единицы измерения так же не назначены.
В таблице 7.2 вы можете видеть состав справочника ЕдиницыИзмерения.
| Единица измерения |
|---|
| Килограмм |
| Метр |
| Упаковка |
| Час |
| Штука |
При
Воспользуемся вы можете видеть вкладку конструктора Таблицы и поля.
(рис 7.21) Конструктор запроса, вкладка Таблицы и поляВ область Таблицы добавлены таблицы справочников Номенклатура и ЕдиницыИзмерения, в область Поля добавлены поля Номенклатура.Наименование и ЕдиницыИзмерения.Наименование.
Если на вкладке .
(рис 7.22) Конструктор запроса, вкладка СвязиПо умолчанию здесь установлен выбор всех элементов справочника Номенклатура и подбор соответствующих им полей из справочника ЕдиницыИзмерения по следующему условию:
Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка
То есть - условие предполагает выполнение равенства реквизита ЕдиницаИзмерения справочника Номенклатура с элементом справочника ЕдиницыИзмерения.
Обратите внимание на поле Все около поля Таблица1, в котором установлена галочка. Такая настройка соответствует правилам
Сделаем еще некоторые настройки в .
(рис 7.23) Конструктор запроса, вкладка Объединения/ПсевдонимыЗдесь, в поле .
(рис 7.24) Конструктор запроса, вкладка Объединения/ПсевдонимыТеперь настройки .
(рис 7.25) Результат выполнения запросаМы получили следующий текст
ВЫБРАТЬ Номенклатура.Наименование КАК Номенклатура, ЕдиницыИзмерения.Наименование КАК ЕдиницаИзмерения ИЗ Справочник.Номенклатура КАК Номенклатура ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения ПО Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка
Команда
Этот
Правое соединение в точности противоположно левому. Из первой таблицы выбираются только те строки, которым находятся соответствия во второй таблице. А из второй выбираются все строки. Вместо "недостающих" строк первой таблицы подставляется значение Null.
Для того, чтобы модифицировать текст
(рис 7.26) Результат выполнения запросаВот какой текст
ВЫБРАТЬ Номенклатура.Наименование КАК Номенклатура, ЕдиницыИзмерения.Наименование КАК ЕдиницаИзмерения ИЗ Справочник.Номенклатура КАК Номенклатура ПРАВОЕ СОЕДИНЕНИЕ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения ПО Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка
Как видите, таблица ЕдиницыИзмерения представлена здесь в полном объеме, а вот из таблицы Номенклатура выбраны лишь те позиции, которым назначена единица измерения.
Если попытаться добиться такого же эффекта с помощью Конструктора запроса, то он, вместо того, чтобы использовать команду
На рис 7.27 вы можете видеть вкладку Связи Конструктора запросов. Здесь мы сняли галочку из поля Все таблицы Номенклатура и установили ее в поле Все для таблицы ЕдиницыИзмерения.
(рис 7.27) Конструктор запроса, вкладка СвязиВ итоге мы получаем следующий
ВЫБРАТЬ Номенклатура.Наименование КАК Номенклатура, ЕдиницыИзмерения.Наименование КАК ЕдиницаИзмерения ИЗ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура ПО Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка
Выборка осуществляется уже из таблицы , как и от вышеописанного
(рис 7.28) Результат выполнения запроса
При
(рис 7.29) Конструктор запроса, вкладка СвязиТекст
ВЫБРАТЬ Номенклатура.Наименование КАК Номенклатура, ЕдиницыИзмерения.Наименование КАК ЕдиницаИзмерения ИЗ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения ПОЛНОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура ПО (Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка)
На рис 7.30 представлен результат выполнения
(рис 7.30) Результат выполнения запросаПосле того, как мы связывали таблицы правым соединением, наш
Внутреннее соединение позволяет вывести в результаты
(рис 7.31) Конструктор запроса, вкладка СвязиВот какой
ВЫБРАТЬ Номенклатура.Наименование КАК Номенклатура, ЕдиницыИзмерения.Наименование КАК ЕдиницаИзмерения ИЗ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура ПО Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка
А вот - результаты
(рис 7.32) Результат выполнения запроса
Мы не случайно уделили столько внимания
Цель лекции: научиться создавать внешние
Одна из функций учетной системы - предоставление пользователям различной информации. Как правило, делается это с помощью отчетов. Например, в нашем случае вполне логично было бы иметь отчет, который выводит информацию о поступивших и выбывших материалах по отдельным материально-ответственным лицам (а может быть и по всей организации в целом), а так же - об остатках материалов. Подобная функциональность - то есть - выборка данных, осуществляется в 1С:Предприятии с помощью
Поэтому, прежде чем говорить об отчетах, да и прежде чем продолжать изложение дальнейших тем, нам необходимо познакомиться с
Прежде чем переходить к практической работе с
При работе с
В
В
Поля таблицы могут содержать либо какие-то данные, либо -
Перед созданием
Во встроенном языке системы есть объект Запрос. Именно он используется для работы с
После того, как создан текст
Для того, чтобы начать практическую работу с
Внешние отчеты и
Войдем в .
(рис 7.1) Начало создания внешней обработкиВведем в поле имя КонсольЗапросов, для начала редактирования формы
Добавим в форму элемент управления Поле текстового документа, зададим ему имя ТекстЗапроса, установим в параметре Расширение значение Язык запросов. Добавим в список реквизитов формы новый реквизит, зададим ему имя ТекстЗапросов и тип Строка.
Это позволит использовать в данном поле, при работе в режиме 1С:Предприятие, конструктор
(рис 7.2) Добавление в форму внешней обработки поля текстового документаПоле ТекстЗапроса будет содержать текст
Теперь добавим в форму еще один элемент управления - табличное поле. Зададим ему имя - .
(рис 7.3) Добавление в форму внешней обработки табличного поляВ табличное поле мы будем помещать результат выполнения
Теперь зададим обработчик нажатия кнопки Выполнить. Для этого откроем окно свойств кнопки и нажмем на кнопку Открыть в поле Действие. Процедура обработчика события нажатия на кнопку будет выглядеть следующим образом:
Процедура КнопкаВыполнитьНажатие(Кнопка) Запрос = Новый Запрос; Запрос.Текст=ЭлементыФормы.ТекстЗапроса.ПолучитьТекст(); РезультатВыполненияЗапроса = Запрос.Выполнить().Выгрузить(); ЭлементыФормы.РезультатВыполненияЗапроса.СоздатьКолонки(); КонецПроцедуры
Поясним ее команды. Они, в основном, связаны с новым для вас объектом Запрос.
Запрос = Новый Запрос;
Создаем новый объект типа Запрос, записываем ссылку на него в переменную Запрос.
Запрос.Текст=ЭлементыФормы.ТекстЗапроса.ПолучитьТекст();
Записываем в свойство
РезультатВыполненияЗапроса = Запрос.Выполнить().Выгрузить();
Помещаем в поле табличного документа РезультатВыполненияЗапроса результат выполнения Выполнить(). Этот метод выполняет Выгрузить() выгружает результат
ЭлементыФормы.РезультатВыполненияЗапроса.СоздатьКолонки();
Благодаря этой команде в поле РезультатВыполненияЗапроса можно увидеть его содержимое, иначе оно будет выглядеть пустым.
После того, как создание
Файлы внешних обработок имеют расширение *.EPF, рис 7.4.
(рис 7.4) Сохраняем внешнюю обработкуЗапустим систему в режиме 1С:Предприятие. Для того, чтобы работать с внешней
(рис 7.5) Внешняя обработка, открытая в режиме 1С:ПредприятиеСейчас все готово для ваших первых экспериментов с
Пожалуй, самый лучший способ изучения языка
Щелкнем правой кнопкой мыши по свободному пространству в поле ввода текста
(рис 7.6) Конструктор запросаКонструктором
Окно конструктора
Вкладка .
(рис 7.7) Набор таблиц базы данныхСреди таблиц есть
Рабочая область Таблицы окна Конструктор запроса содержит список таблиц, из которых система выбирает данные. Этот список формируется переносом нужных таблиц из рабочей области База данных.
Зададимся следующей целью: нужно сконструировать
Очевидно, что данные для такого
Если вспомнить устройство справочника .
(рис 7.8) Выбор таблиц и полейСобственно говоря,
(рис 7.9) Предварительный просмотр текста запросаЗакроем окно предварительного просмотра
Как вы уже могли понять, в поле ТекстЗапроса попадет следующий текст:
ВЫБРАТЬ Сотрудники.ФизическоеЛицо.Фамилия ИЗ Справочник.Сотрудники КАК Сотрудники
Весь этот текст представляет собой описание
Ключевое слово
Справочник.Сотрудники КАК Сотрудники
Это выражение означает, что источником данных является таблица Справочник.Сотрудники. Для этой таблицы, с помощью ключевого слова
Вернемся к пояснениям области
Сотрудники.ФизическоеЛицо.Фамилия
Этой командой мы обращаемся к таблице ФизическоеЛицо, которая хранится в таблице Сотрудники (напомним, что это - псевдоним) и выбираем из нее фамилию сотрудника. Полям, которые попадают в выборку данных, создаваемую
Если попытаться выразить текст рассматриваемого
Теперь нажмем на кнопку .
(рис 7.10) Результат выполнения запросаПродолжим знакомство с
Получим из справочника ЕдиницыИзмерения коды и наименования единиц измерения. В результатах
Написание
ВЫБРАТЬ
ИЗ
Справочник.ЕдиницыИзмерения как ТабЕдИзм
После того, как источник данных определен, определяем поля для выбора:
ВЫБРАТЬ
ТабЕдИзм.Код,
ТабЕдИзм.Наименование КАК Название
ИЗ
Справочник.ЕдиницыИзмерения как ТабЕдИзм
Исполним
(рис 7.11) Результат выполнения запросаУсложним задачу. Результат предыдущего
Для этого в
ВЫБРАТЬ
ТабЕдИзм.Код,
ТабЕдИзм.Наименование КАК Название
ИЗ
Справочник.ЕдиницыИзмерения как ТабЕдИзм
УПОРЯДОЧИТЬ ПО
Название
На рис 7.12 вы можете видеть результат выполнения
(рис 7.12) Результат выполнения запросаПри составлении
Выберем первые 2 элемента из результатов, модифицировав предыдущий
ВЫБРАТЬ ПЕРВЫЕ 2
ТабЕдИзм.Код,
ТабЕдИзм.Наименование КАК Название
ИЗ
Справочник.ЕдиницыИзмерения как ТабЕдИзм
УПОРЯДОЧИТЬ ПО
Название
Выполним
(рис 7.13) Результат выполнения запросаДля того чтобы в выборку попали лишь различные элементы, можно воспользоваться ключевым словом РАЗЛИЧНЫЕ после слова
Выше мы делали выборки из неиерархического справочника .
ВЫБРАТЬ
*
ИЗ
Справочник.Номенклатура
(рис 7.14) Результат выполнения запросаКак видите, в результат
Для отбора элементов можно использовать ключевое слово
ВЫБРАТЬ ТабНоменклатура.Наименование ИЗ Справочник.Номенклатура КАК ТабНоменклатура ГДЕ НЕ ТабНоменклатура.ЭтоГруппа
(рис 7.15) Результат выполнения запросаРассмотрим еще один вариант отбора результатов
Нам нужно отобрать среди документов поступления материалов лишь те, сумма которых превышает 2000 рублей, и вывести в результаты
Откроем :
(рис 7.16) Конструктор запроса, вкладка Таблицы и поляТеперь нам нужно задать условие отбора. Для этого перейдем на вкладку ) нужно выбрать условие выбором их списка (мы выбрали условие "больше") и заменить выражение СтоимостьМатериалов на число 2000.
(рис 7.17) Конструктор запроса, вкладка Таблицы и поляЗдесь нас подстерегает одна особенность конструктора
ПоступлениеМатериалов.СтоимостьМатериалов > 2000
Символ .
(рис 7.18) Конструктор запроса, вкладка УсловияДля того чтобы упорядочить результат
(рис 7.19) Конструктор запроса, вкладка ПорядокРабота с .
(рис 7.20) Текст запроса и результат выполнения запросаВот, какой текст сгенерировал Конструктор запроса:
ВЫБРАТЬ ПоступлениеМатериалов.Дата, ПоступлениеМатериалов.Номер, ПоступлениеМатериалов.ОтветственныйСотрудник, ПоступлениеМатериалов.СтоимостьМатериалов КАК СтоимостьМатериалов ИЗ Документ.ПоступлениеМатериалов КАК ПоступлениеМатериалов ГДЕ ПоступлениеМатериалов.СтоимостьМатериалов > 2000 УПОРЯДОЧИТЬ ПО СтоимостьМатериалов
Выше мы занимались получением данных из какой-то одной таблицы. Существует и другой вариант получения данных - с использованием нескольких таблиц. В целом порядок работы при использовании в качестве источников нескольких таблиц, как правило, взаимосвязанных по каким-то признакам, очень похож на работу с отдельными таблицами. Однако если
Существуют следующие виды соединения таблиц:
Рассмотрим эти виды соединения таблиц на примере.
В нашей конфигурации есть два взаимосвязанных справочника. А именно, речь идет о справочниках Номенклатура и ЕдиницыИзмерения. Элементам справочника Номенклатура могут быть назначены единицы измерения, взятые из справочника ЕдиницыИзмерения. Причем, в справочнике Номенклатура могут существовать элементы, которым не назначена ни одна единица измерения, а в справочнике ЕдиницыИзмерения могут присутствовать элементы, которые не назначены элементам справочника Номенклатура. В таблице 7.1 представлена таблица справочника Номенклатура - наименования номенклатурных позиций и соответствующие им единицы измерения.
| Номенклатура | Единица измерения | Группа |
|---|---|---|
| Бальзам для волос | ложь | |
| Духи | Штука | ложь |
| Завивка | Час | ложь |
| Лак для волос | Упаковка | ложь |
| Одеколон | Упаковка | ложь |
| Парикмахерские услуги | истина | |
| Парфюмерия | истина | |
| Стрижка | Час | ложь |
| Уход за волосами | истина |
Как видите, Бальзам для волос не имеет установленной единицы измерения, остальным элементам единицы измерения назначены. Группам, естественно, единицы измерения так же не назначены.
В таблице 7.2 вы можете видеть состав справочника ЕдиницыИзмерения.
| Единица измерения |
|---|
| Килограмм |
| Метр |
| Упаковка |
| Час |
| Штука |
При
Воспользуемся вы можете видеть вкладку конструктора Таблицы и поля.
(рис 7.21) Конструктор запроса, вкладка Таблицы и поляВ область Таблицы добавлены таблицы справочников Номенклатура и ЕдиницыИзмерения, в область Поля добавлены поля Номенклатура.Наименование и ЕдиницыИзмерения.Наименование.
Если на вкладке .
(рис 7.22) Конструктор запроса, вкладка СвязиПо умолчанию здесь установлен выбор всех элементов справочника Номенклатура и подбор соответствующих им полей из справочника ЕдиницыИзмерения по следующему условию:
Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка
То есть - условие предполагает выполнение равенства реквизита ЕдиницаИзмерения справочника Номенклатура с элементом справочника ЕдиницыИзмерения.
Обратите внимание на поле Все около поля Таблица1, в котором установлена галочка. Такая настройка соответствует правилам
Сделаем еще некоторые настройки в .
(рис 7.23) Конструктор запроса, вкладка Объединения/ПсевдонимыЗдесь, в поле .
(рис 7.24) Конструктор запроса, вкладка Объединения/ПсевдонимыТеперь настройки .
(рис 7.25) Результат выполнения запросаМы получили следующий текст
ВЫБРАТЬ Номенклатура.Наименование КАК Номенклатура, ЕдиницыИзмерения.Наименование КАК ЕдиницаИзмерения ИЗ Справочник.Номенклатура КАК Номенклатура ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения ПО Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка
Команда
Этот
Правое соединение в точности противоположно левому. Из первой таблицы выбираются только те строки, которым находятся соответствия во второй таблице. А из второй выбираются все строки. Вместо "недостающих" строк первой таблицы подставляется значение Null.
Для того, чтобы модифицировать текст
(рис 7.26) Результат выполнения запросаВот какой текст
ВЫБРАТЬ Номенклатура.Наименование КАК Номенклатура, ЕдиницыИзмерения.Наименование КАК ЕдиницаИзмерения ИЗ Справочник.Номенклатура КАК Номенклатура ПРАВОЕ СОЕДИНЕНИЕ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения ПО Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка
Как видите, таблица ЕдиницыИзмерения представлена здесь в полном объеме, а вот из таблицы Номенклатура выбраны лишь те позиции, которым назначена единица измерения.
Если попытаться добиться такого же эффекта с помощью Конструктора запроса, то он, вместо того, чтобы использовать команду
На рис 7.27 вы можете видеть вкладку Связи Конструктора запросов. Здесь мы сняли галочку из поля Все таблицы Номенклатура и установили ее в поле Все для таблицы ЕдиницыИзмерения.
(рис 7.27) Конструктор запроса, вкладка СвязиВ итоге мы получаем следующий
ВЫБРАТЬ Номенклатура.Наименование КАК Номенклатура, ЕдиницыИзмерения.Наименование КАК ЕдиницаИзмерения ИЗ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура ПО Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка
Выборка осуществляется уже из таблицы , как и от вышеописанного
(рис 7.28) Результат выполнения запроса
При
(рис 7.29) Конструктор запроса, вкладка СвязиТекст
ВЫБРАТЬ Номенклатура.Наименование КАК Номенклатура, ЕдиницыИзмерения.Наименование КАК ЕдиницаИзмерения ИЗ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения ПОЛНОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура ПО (Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка)
На рис 7.30 представлен результат выполнения
(рис 7.30) Результат выполнения запросаПосле того, как мы связывали таблицы правым соединением, наш
Внутреннее соединение позволяет вывести в результаты
(рис 7.31) Конструктор запроса, вкладка СвязиВот какой
ВЫБРАТЬ Номенклатура.Наименование КАК Номенклатура, ЕдиницыИзмерения.Наименование КАК ЕдиницаИзмерения ИЗ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура ПО Номенклатура.ЕдиницаИзмерения = ЕдиницыИзмерения.Ссылка
А вот - результаты
(рис 7.32) Результат выполнения запроса
Мы не случайно уделили столько внимания
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.