Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Меркулова_Пособие_РазработкаУправляемыхПриложен...doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
17.82 Mб
Скачать

Пример.

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

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

| ОсновныеНачисления.Результат

|ИЗ РегистрРасчета.ОсновныеНачисления КАК ОсновныеНачисления

|ГДЕ

| ОсновныеНачисления.ПериодРегистрации = &Период

| И

| ОсновныеНачисления.ФизЛицо = &ФизЛицо

| И

| ОсновныеНачисления.ВидРасчета = &ВидРасчета";

Запрос.УстановитьПараметр("Период", НачалоМесяца(ВыбПериод));

Запрос.УстановитьПараметр("ВидРасчета", ВидРасчета);

Запрос.УстановитьПараметр("ФизЛицо", ФизЛицо);

  • Таблица фактического периода действия регистра расчета. Определена только для регистров с поддержкой периода действия

Поля таблицы:

    • <Имя измерения>

    • <Имя ресурса>

    • <Имя реквизита>

    • Активность

    • БазовыйПериодНачало

    • БазовыйПериодКонец

    • ВидРасчета

    • НомерСтроки

    • ПериодДействия

    • ПериодДействияНачало

    • ПериодДействияКонец

    • ПериодРегистрации

    • Регистратор

    • Сторно

Параметры:

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

Пример:

"ВЫБРАТЬ

| ФактПериодДействия.ПериодРегистрации,

| ФактПериодДействия.Регистратор.Ссылка,

| ФактПериодДействия.ВидРасчета,

| ФактПериодДействия.БазовыйПериодНачало,

| ФактПериодДействия.БазовыйПериодКонец,

| ФактПериодДействия.Сотрудник.Ссылка,

| ФактПериодДействия.Результат,

| ФактПериодДействия.ПериодДействия,

| ФактПериодДействия.ПериодДействияНачало,

| ФактПериодДействия.ПериодДействияКонец

|ИЗ

|РегистрРасчета. ОсновныеНачисления.ФактическийПериодДействия КАК ФактПериодДействия";

  • Таблица перерасчета. Предназначена для получения записей перерасчета

Поля таблицы:

    • <Имя измерения>

    • ВидРасчета

    • ОбъектПерерасчет

Пример:

"ВЫБРАТЬ

| НачисленияПерерасчет.ОбъектПерерасчета,

| НачисленияПерерасчет.ВидРасчета,

| НачисленияПерерасчет.Сотрудник,

|ИЗ

|РегистрРасчета. ОсновныеНачисления.Перерасчет КАК НачисленияПерерасчет";

  • Таблица данных графика регистра расчета.

Виртуальная таблица "РегистрРасчета.<ИмяРегистра>.ДанныеГрафика" определена для тех регистров расчета, которые поддерживают период действия. При конфигурировании с таким регистром расчета необходимо связать непериодический регистр сведений который и будет поставлять информацию о графике. Для более удобного получения данных графика в системе определена виртуальная таблица, которая помимо прочих полей содержит виртуальные поля: 1. <Имя ресурса графика>БазовыйПериод; 2. <Имя ресурса графика>ПериодДействия; 3. <Имя ресурса графика>ПериодРегистрации; 4. <Имя ресурса графика>ФактическийПериодДействия. У нас в примере таким ресурсом является поле Значение.

То есть для каждого числового ресурса регистра сведений, назначенного регистру расчета в качестве графика, можно получить для строк регистра расчета его сумму с учетом базового периода строки регистра расчета, периода действия, периода регистрации и фактического периода действия. При построении виртуальной таблицы данных графика происходит соединение таблиц регистра расчета, регистра сведений, а в случае получения поля "<Имя ресурса графика>ФактическийПериодДействия" - еще и таблицы фактического периода действия регистра расчета. Так как данные для всех четырех перечисленных полей получаются путем соединения с таблицей регистра сведений по разным условиям, это значит, что в общем случае будет выполнено четыре соединения с таблицей регистра сведений. При получении виртуальных таблиц система старается действовать оптимально, в частности, выполняется только то количество соединений, которое необходимо для получения полей виртуальной таблицы перечисленных в разделе "ВЫБРАТЬ". Параметры:

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

Пример:

(“ВЫБРАТЬ

| НачисленияДанныеГрафика.Сотрудник КАК Сотрудник,

| НачисленияДанныеГрафика.ЗначениеПериодДействия КАК

|ЧислоДнейПоПлану,

|НачисленияДанныеГрафика.ЗначениеФактическийПериодДействия КАК |Факт,

| НачисленияДанныеГрафика.Регистратор как Регистратор,

| НачисленияДанныеГрафика.НомерСтроки КАК НомерСтроки

|ИЗ

|РегистрРасчета.Начисления.ДанныеГрафика(

| Регистратор = &Регистратор И

| ВидРасчета = &ВидРасчета И

| Сотрудник В (&СписокСотрудников))

| КАК НачисленияДанныеГрафика");

  • Таблица получения базовых данных регистра расчета. Какие именно регистры расчета могут выступать в качестве базовых для данного регистра расчета, определяется его планом видов расчета. Если для плана видов расчета задана зависимость по базе от других (базовых) планов видов расчета, то в качестве базового регистра может быть задан любой регистр расчета, которому назначен такой базовый план видов расчета. Записи таблицы определены для каждой записи регистра расчета, у которой вид расчета имеет базовые виды расчета, определены БазовыйПериодНачало и БазовыйПериодКонец, есть записи базовых регистров расчета соответствующего периода. Для каждой записи регистра может быть определена одна или более записей таблицы получения базы в зависимости от того, задан ли параметр виртуальной таблицы Разрезы. Если параметр задан, то базовые данные будут получены в соответствующих разрезах.

Поля таблицы:

    • <Имя измерения>

    • <Имя разреза базового регистра>Разрез. В качестве разреза могут быть заданы измерения базового регистра и реквизиты базового регистра. Поле появляется у виртуальной таблицы только при установке параметра виртуальной таблицы Разрезы для полей, заданных этим параметром.

    • <Имя реквизита>

    • <Имя ресурса базового регистра>База. Сумма соответствующего ресурса базового регистра расчета, заданного в имени таблицы получения базовых данных.

    • <Имя ресурса>

    • <Активность>

    • БазовыйПериодНачало

    • БазовыйПериодКонец

    • ВидРасчета

    • НомерСтроки

    • ПериодДействия

    • ПериодДействияНачало

    • ПериодДействияКонец

    • ПериодРегистрации

    • Регистратор

    • Сторно

Параметры таблицы приведены в таблице 14.2.

Таблица 14.2

Имя параметра

Тип и назначение параметра.

Измерения основного регистра

Тип параметра: Массив, СписокЗначений. Массив строк или список значений, представляющих собой имена измерений основного регистра расчета, по которому строится таблица базовых данных.

Значения перечисленных в данном параметре измерений будут сопоставляться со значениями в соответствующих измерениях базового регистра расчета, заданных параметром <Измерения базового регистра>.

Измерения базового регистра

Тип параметра: Массив, СписокЗначений. Массив строк или список значений, представляющих собой имена измерений базового регистра расчета, по которому производится суммирование базовых данных.

Значения перечисленных в данном параметре измерений будут сопоставляться со значениями соответствующих измерений основного регистра расчета, заданных параметром <Измерения основного регистра>.

Разрезы

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

Условие

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

Пример:

(“

|ВЫБРАТЬ

|НачисленияБазаНачисления.РезультатБаза КАК База,

|НачисленияБазаНачисления.НомерСтроки КАК НомерСтроки

|ИЗ

|РегистрРасчета.Начисления.БазаНачисления(

|&ИзмеренияОсновного,&ИзмеренияБазового,,Регистратор =

| &Регистратор И

|ВидРасчета = &ВидРасчета И Сотрудник В (&СписокСотрудников))КАК

|НачисленияБазаНачисления";

Измер = Новый Массив( 1);

Измер[0] = "Сотрудник";

Запрос.УстановитьПараметр("ИзмеренияОсновного", Измер);

Запрос.УстановитьПараметр("ИзмеренияБазового", Измер);

Запрос.УстановитьПараметр("Регистратор",

НаборЗаписейРегистра.Отбор.Регистратор.Значение);

Запрос.УстановитьПараметр("ВидРасчета", ТребуемыйВидРасчета);

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

14.2. Пример формирования отчета

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

Формируем новый объект-отчет и запускаем СКД. Создаем новый набор данных типа запрос, запускаем конструктор запроса, выбираем первую таблицу-источник (ОсновныеНачисления.БазаОсновныеНачисления), в таблице выбираем необходимые для отчета поля, рис.14.2.:

Рис.14.2. Разработка запроса к виртуальной таблице в СКД

На закладке Объединения/ псевдонимы добавляем новый объединяемый запрос (рис.14.3.),

Рис.14.3. Вызов второго запроса при объединении запросов

Выбираем источник- УдержанияБазаОсновныеНачисления. В

ней выбираем те же поля и в той же последовательности, что и первом запросе. Получаем объединение двух запросов (рис.14.4.)

Рис.14.4. Результат объединения двух запросов

У обоих запросов источник - виртуальная таблица. Поэтому необходимо указать параметры этих таблиц. Структура параметров – см. таблица 2. Запускаем «Параметры виртуальной таблицы» для обеих таблиц-источников.

Завершаем работу конструктора запросов. Получили следующий текст запроса:

ВЫБРАТЬ

ОсновныеНачисленияБазаОсновныеНачисления.ПериодРегистрации,

ОсновныеНачисленияБазаОсновныеНачисления.Сотрудник,

ОсновныеНачисленияБазаОсновныеНачисления.Результат,

ОсновныеНачисленияБазаОсновныеНачисления.РезультатБаза,

ОсновныеНачисленияБазаОсновныеНачисления.ВидРасчета

ИЗ

РегистрРасчета.ОсновныеНачисления.БазаОсновныеНачисления(&ИзмеренияОсновного, &ИзмеренияБазового, , ПериодРегистрации МЕЖДУ &НачПериода И &КонПериода) КАК ОсновныеНачисленияБазаОсновныеНачисления

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ

УдержанияБазаОсновныеНачисления.ПериодРегистрации,

УдержанияБазаОсновныеНачисления.Сотрудник,

УдержанияБазаОсновныеНачисления.Результат,

УдержанияБазаОсновныеНачисления.РезультатБаза,

УдержанияБазаОсновныеНачисления.ВидРасчета

ИЗ

РегистрРасчета.Удержания.БазаОсновныеНачисления(&ИзмеренияОсновного, &ИзмеренияБазового, , ПериодРегистрации МЕЖДУ &НачПериода И &КонПериода) КАК УдержанияБазаОсновныеНачисления

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

Рис.14.5. Настройка ресурсов СКД

На закладке «Параметры» видим 4 параметра наших виртуальных таблиц.(рис.14.6.)

Рис.14.6. Настройка параметров СКД

Первые два параметра должны быть означены в СКД и не должны попасть в пользовательские настройки. Поэтому колонка «Включать в доступные поля» для них неактивна. Тип у этих параметров – массив или список значений. Поэтому активизируем колонку «Доступен список значений» и дополнительно вводим в них по одному значению типа «Строка», а именно, наименование измерения регистра «Сотрудник». Остальные параметры включаем в доступные поля.

На закладке Настройки сначала формируем группировки СКД (рис.14.7.)

Рис.14.8. Настройка группировок СКД

Затем на закладке «Параметры» включаем доступные параметры в пользовательские

настройки (рис.14.9.)

Рис.14.10. Пользовательские настройки в СКД

На закладке «Выбранные поля» окончательно формируем структуру колонок отчета (рис.14.11.)

Рис.14.11. Окончательное формирование колонок отчета

Формируем текст заголовка отчета, рис.14.12.

Выходим из СКД. Отчет готов. Результат:

14.3. Варианты заданий

Для размещения новых объектов задания использовать новую подсистему «Лабораторная работа 11».

Основная часть задания состоит из двух этапов.

Первый этап.

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

Таблица 14.3.

Номер варианта

Название виртуальной таблицы

Таблица получения базовых данных регистра расчета

Таблица данных графика регистра расчета

1

Для всех сотрудников и всех видов расчета

Для выбранного сотрудника и выбранного расчета

2

Для всех сотрудников и выбранного вида расчета

Для всех сотрудников и всех видов расчета

3

Для выбранного сотрудника и всех видов расчета

Для выбранного сотрудника и всех видов расчета

4

Для выбранного сотрудника и выбранного расчета

Для выбранного сотрудника и выбранного расчета

5

Для всех сотрудников и всех видов расчета

Для выбранного сотрудника и выбранного расчета

6

Для всех сотрудников и выбранного вида расчета

Для всех сотрудников и всех видов расчета

7

Для выбранного сотрудника и всех видов расчета

Для выбранного сотрудника и всех видов расчета

8

Для выбранного сотрудника и выбранного расчета

Для выбранного сотрудника и выбранного расчета

9

Для всех сотрудников и всех видов расчета

Для выбранного сотрудника и всех видов расчета

10

Для всех сотрудников и выбранного вида расчета

Для выбранного сотрудника и выбранного расчета

11

Для выбранного сотрудника и всех видов расчета

Для всех сотрудников и всех видов расчета

12

Для выбранного сотрудника и выбранного расчета

Для выбранного сотрудника и всех видов расчета

13

Для всех сотрудников и всех видов расчета

Для выбранного сотрудника и выбранного расчета

14

Для всех сотрудников и выбранного вида расчета

Для всех сотрудников и всех видов расчета

15

Для выбранного сотрудника и всех видов расчета

Для выбранного сотрудника и всех видов расчета

16

Для выбранного сотрудника и выбранного расчета

Для выбранного сотрудника и выбранного расчета

17

Для всех сотрудников и всех видов расчета

Для выбранного сотрудника и выбранного расчета

18

Для всех сотрудников и выбранного вида расчета

Для всех сотрудников и всех видов расчета

19

Для выбранного сотрудника и всех видов расчета

Для выбранного сотрудника и всех видов расчета

20

Для выбранного сотрудника и выбранного расчета

Для выбранного сотрудника и выбранного расчета

21

Для выбранного сотрудника и всех видов расчета

Для выбранного сотрудника и выбранного расчета

22

Для всех сотрудников и всех видов расчета

Для всех сотрудников и всех видов расчета

23

Для всех сотрудников и всех видов расчета

Для выбранного сотрудника и всех видов расчета

24

Для всех сотрудников и выбранного вида расчета

Для выбранного сотрудника и выбранного расчета

25

Для выбранного сотрудника и всех видов расчета

Для всех сотрудников и всех видов расчета

Второй этап.

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

  1. Отчет должен иметь общие итоги по всем числовым полям.

  2. При разработке отчета использовать СКД.

  3. Отчет должен иметь нестандартную расшифровку.

  4. Если для формирования отчета данных в конфигурации недостаточно, сформировать необходимое объекты и (или) вести новые данные.

Вариант 1

ВЕДОМОСТЬ НАЧИСЛЕНИЙ ЗАРПЛАТЫ ПО ТАБЕЛЬHЫМ HОМЕРАМ