Самостоятельная работа №7

· Получите данные о контактных лицах их телефонах, полном наименовании контрагентов.

· Получите список пяти наиболее дорогих (по ценам продажи) товаров

· Получите данные о том, какой контрагент, на какую сумму поставил нашей компании товара. В результате запроса должны присутствовать итоги и по группам справочника «Контрагенты».

· В задании №3 данные, о каком либо контрагенте должны встречаться один раз.

· Получите список из 5 самых продаваемых (по количеству) товаров.

3.12.5. Работа с временными таблицами

Использование временных таблиц помогает повысить скорость выполнения запросов, сделать процесс построения сложных запросов более простым и организовать исполнение таких запросов «поэтапно».

Возможность использования временных таблиц определяется наличием:

· Объекта «МенеджерВременныхТаблиц»

· Свойства «МенеджерВременныхТаблиц» объекта «Запрос»

· Расширением языка запросов по работе с временными таблицами

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

· Поместить

· Индексировать По

· Уничтожить

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

// Создание менеджера временной таблицы МенеджерВТ=Новый МенеджерВременныхТаблиц;

Запрос = Новый Запрос;

Запрос.МенеджерВременныхТаблиц = МенеджерВТ;

Запрос.Текст = "ВЫБРАТЬ

| ПродажаТоваров.Номенклатура,

| СУММА(ПродажаТоваров.Количество) КАК Количество,

| СУММА(ПродажаТоваров.Сумма) КАК Сумма

|ПОМЕСТИТЬ ТЧР

|ИЗ

| Документ.ПродажаТоваров.Товары КАК ПродажаТоваров

|ГДЕ

| ПродажаТоваров.Ссылка = &ЗначениеСсылки

|

|СГРУППИРОВАТЬ ПО

| ПродажаТоваров.Номенклатура";

Запрос.УстановитьПараметр("ЗначениеСсылки", ПродажаТоваров);

//Создание временной таблицы

Результат = Запрос. Выполнить();

ЭлементыФормы.ТПРезультатЗапроса.Значение = Результат.Выгрузить(); ЭлементыФормы.ТПРезультатЗапроса.СоздатьКолонки();

Использование временной таблицы:

Запрос = Новый Запрос;

// в свойство "МенеджерВременныхТаблиц" записываем менеджер,

// в контексте которого была создана временная таблица

Запрос. МенеджерВременныхТаблиц = МенеджерВТ;

Запрос.Текст = "ВЫБРАТЬ

| ТЧР.Номенклатура Как Товар,

| Остатки.КоличествоОстаток, ТЧР.Количество

|ИЗ

| ТЧР

| Левое Соединение

| РегистрНакопления.ОстаткиНоменклатуры.Остатки(,Номенклатура В (Выбрать Номенклатура Из ТЧР)) КАК Остатки

| По ТЧРасходной.Номенклатура=Остатки.Номенклатура";

Результат = Запрос. Выполнить();

ЭлементыФормы.ТПРезультатЗапроса.Значение = Результат. Выгрузить();

ЭлементыФормы.ТПРезультатЗапроса.СоздатьКолонки();

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

· Таблица значений

· Табличная часть

· Результат запроса

Пример использования данной возможности

Запрос=Новый Запрос;

Запрос. МенеджерВременныхТаблиц = МенеджерВТ;

Запрос.Текст= "ВЫБРАТЬ

| Товар,

| Количество

|ПОМЕСТИТЬ ТЧРеализацииИОстатки

|ИЗ

| &ВнешнийИсточник Как Внешний";

Запрос.УстановитьПараметр("ВнешнийИсточник",ЭлементыФормы.ТП

РезультатЗапроса.Значение);

Результат = Запрос.Выполнить();

ЭлементыФормы.ТПРезультатЗапроса.Значение = Результат.Выгрузить(); ЭлементыФормы.ТПРезультатЗапроса.СоздатьКолонки();

Для удаления всех временных таблиц, созданных в контексте экземпляра объекта «МенеджерВременныхТаблиц» нужно использовать метод «Закрыть()»

МенеджерВТ.Закрыть();

Для удаления одной таблицы:

Запрос = Новый Запрос;

Запрос. МенеджерВременныхТаблиц = МенеджерВТ;

Запрос.Текст = "Уничтожить ТЧРасходной";

Результат = Запрос.Выполнить();

3.12.6. Пакетные запросы

Определим первую закладку конструктора, как это сделано на рисунке:

На закладке «Дополнительно» отметим флаг «Без повторяющихся» и укажем что в результате исполнения этого запроса должна создаться временная таблица с именем «ТЧР».

На закладке «Пакет запросов» добавим еще один запрос.

Второй запрос пакета определим в соответствии с рисунком:

Определим параметр виртуальной таблицы «Условие» следующим образом:

В результате получился текст запроса следующего вида:

3.13. Отчеты

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

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

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

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

Система компоновки данных позволяет реализовать следующие возможности:

· Создание отчета без программирования

· Использование автоматически генерируемых форм просмотра и настройки отчета

· Разбиение исполнения отчета на этапы

· Исполнение отдельных этапов построения отчета на различных компьютерах

· Независимое использование отдельных частей компоновки данных

· Программное влияние на процесс выполнения отчета

· Настройки структуры отчета

· Совмещение в отчете нескольких таблиц

· Создание вложенных отчетов

· И д.р.

Использовать систему компоновки данных можно по-разному. Рассмотрим простейший вариант. Создадим отчет о закупках товара.

Создадим новый отчет и на первой закладке («Основные») нажмем на кнопку «Открыть схему компоновки данных»

В открывшемся конструкторе схемы компоновки данных добавим новый набор данных (тип «Запрос») и определим запрос следующего вида:

· На закладке «Ресурсы» в качестве ресурсов нужно определить поля «Количество» и «Сумма».

· На закладке «Настройка» определим предварительный вид формируемой выходной формы. Из контекстного меню строчки «Отчет» выберем команду по созданию таблицы. В таблице по строкам определим группировку «Номенклатура» (с иерархией), в колонках определим «Серии». Спозиционироваться на строке «Таблица». В выводимых полях таблицы указать «Количество», «Сумма».

Что должно получиться, приведено на рисунке.

Создадим у этого отчета еще один вариант (на последней закладке конструктора схемы компоновки)

Для организации более простого доступа к настройкам можно использовать так называемые «пользовательские настройки»


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: