---
title: Схемы запросов
slug: erp-uh/схемы-запросов
---


## ЗапросПакетаЗапросов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает схему запроса по значению переданного индекса в пакете запросов.
//
// Параметры:
//  СхемаЗапроса - СхемаЗапроса - схема запроса.
//  ИндексЗапросаВПакете - Число - индекс запроса в пакете запросов. Если не задано, то последний запрос в пакете.
//
// Возвращаемое значение:
//  ЗапросВыбораСхемыЗапроса, ЗапросУничтоженияТаблицыСхемыЗапроса - измененный текст запроса или запрос.
//
Функция ЗапросПакетаЗапросов(Знач СхемаЗапроса, ИндексЗапросаВПакете = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.ЗапросПакетаЗапросов(СхемаЗапроса, ИндексЗапросаВПакете);
```
</details>

## ДобавитьПолеВыборкиВЗапрос
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Добавляет новое поле в конец секции выборки переданного запроса
//
// Параметры:
//  Запрос - Строка, Запрос - текст запроса или запрос.
//  ВыражениеПоля - Строка - выражение поля для секции выборки.
//  ПсевдонимПоля - Строка - псевдоним поля для секции выборки.
//  ИндексЗапросаВПакете - Число - индекс запроса в пакете запросов. Если не задано, то последний запрос в пакете.
//  РасширениеЯзыкаЗапросовСКД - Булево - Истина, когда требуется дополнительно добавить поле в секцию
//  				ВЫБРАТЬ расширения языка запросов СКД.
//  ЗаменятьСуществующееПоле - Булево - Истина, когда требуется дополнительно добавить поле в запрос даже
//  				если оно было добавлено ранее. Прежнее поле будет удалено.
//
// Возвращаемое значение:
//  Строка, Запрос - измененный текст запроса или запрос.
//
Функция ДобавитьПолеВыборкиВЗапрос(Знач Запрос, ВыражениеПоля, ПсевдонимПоля = "", Знач ИндексЗапросаВПакете = Неопределено, РасширениеЯзыкаЗапросовСКД = Ложь, ЗаменятьСуществующееПоле = Ложь) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.ДобавитьПолеВыборкиВЗапрос(Запрос, ВыражениеПоля, ПсевдонимПоля, ИндексЗапросаВПакете, РасширениеЯзыкаЗапросовСКД, ЗаменятьСуществующееПоле);
```
</details>

## УстановитьКоличествоПолучаемыхЗаписей
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Устанавливает в секцию ВЫБРАТЬ ключевые слова "ПЕРВЫЕ N".
//
// Параметры:
//  Запрос - Строка, Запрос - текст запроса или запрос.
//  КоличествоПолучаемыхЗаписей - Число - количество первых записей, которые необходимо выбрать.
//  							- Неопределено - ключевые слова "ПЕРВЫЕ N" будут исключены из секции ВЫБРАТЬ.
//  ИндексЗапросаВПакете - Число - индекс запроса в пакете запросов. Если не задано, то последний запрос в пакете.
//
// Возвращаемое значение:
//  Строка, Запрос - измененный текст запроса или запрос.
//
Функция УстановитьКоличествоПолучаемыхЗаписей(Знач Запрос, Знач КоличествоПолучаемыхЗаписей, Знач ИндексЗапросаВПакете = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.УстановитьКоличествоПолучаемыхЗаписей(Запрос, КоличествоПолучаемыхЗаписей, ИндексЗапросаВПакете);
```
</details>

## УстановитьВыборкуРазрешенныхЗаписей
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Устанавливает в секцию ВЫБРАТЬ ключевое слово "РАЗРЕШЕННЫЕ".
//
// Параметры:
//  Запрос - Строка, Запрос - текст запроса или запрос.
//  ВыбиратьРазрешенные - Булево - признак, выбирать ли только разрешенные записи.
//  			Истина - будет добавлено ключевое слово "РАЗРЕШЕННЫЕ" в секцию ВЫБРАТЬ.
//  			Ложь   - будет исключено ключевое слово "РАЗРЕШЕННЫЕ" в секцию ВЫБРАТЬ.
//  ИндексЗапросаВПакете - Число - индекс запроса в пакете запросов. Если не задано, то последний запрос в пакете.
//
// Возвращаемое значение:
//  Строка, Запрос - измененный текст запроса или запрос.
//
Функция УстановитьВыборкуРазрешенныхЗаписей(Знач Запрос, Знач ВыбиратьРазрешенные, Знач ИндексЗапросаВПакете = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.УстановитьВыборкуРазрешенныхЗаписей(Запрос, ВыбиратьРазрешенные, ИндексЗапросаВПакете);
```
</details>

## УстановитьВыборкуРазрешенныхЗаписейВоВсемЗапросе
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

Функция УстановитьВыборкуРазрешенныхЗаписейВоВсемЗапросе(Знач Запрос, Знач ВыбиратьРазрешенные) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.УстановитьВыборкуРазрешенныхЗаписейВоВсемЗапросе(Запрос, ВыбиратьРазрешенные) 
```
</details>

## УстановитьПомещениеВоВременнуюТаблицу
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Устанавливает ключевое слово ПОМЕСТИТЬ и имя временной таблицы в текст запроса.
//
// Параметры:
//  Запрос - Строка, Запрос - текст запроса или запрос.
//  ИмяВременнойТаблицы - Строка - имя временной таблицы, соответствует ключевому слову ПОМЕСТИТЬ языка запросов,
//  			если передана пустая строка, то секция ПОМЕСТИТЬ будет удалена из запроса.
//  ИндексЗапросаВПакете - Число - индекс запроса в пакете запросов. Если не задано, то последний запрос в пакете.
//
// Возвращаемое значение:
//  Строка, Запрос - измененный текст запроса или запрос.
//
Функция УстановитьПомещениеВоВременнуюТаблицу(Знач Запрос, Знач ИмяВременнойТаблицы, Знач ИндексЗапросаВПакете = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.УстановитьПомещениеВоВременнуюТаблицу(Запрос, ИмяВременнойТаблицы, ИндексЗапросаВПакете);
```
</details>

## УстановитьИндексациюПолейЗапроса
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Устанавливает индексацию в выборке запроса.
//
// Параметры:
//  Запрос - Строка, Запрос - текст запроса или запрос.
//  ПсевдонимыИндексируемыхПолей - Строка - имена полей, которые будут включены в индекс запроса
//  ИндексЗапросаВПакете - Число - индекс запроса в пакете запросов. Если не задано, то последний запрос в пакете.
//
// Возвращаемое значение:
//  Строка, Запрос - измененный текст запроса или запрос.
//
Функция УстановитьИндексациюПолейЗапроса(Знач Запрос, Знач ПсевдонимыИндексируемыхПолей, Знач ИндексЗапросаВПакете = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.УстановитьИндексациюПолейЗапроса(Запрос, ПсевдонимыИндексируемыхПолей, ИндексЗапросаВПакете);
```
</details>

## ДобавитьУсловиеВЗапрос
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Добавляет выражение условия в параметры виртуальных таблиц
//
// Параметры:
//  Запрос - Строка, Запрос - текст запроса или запрос.
//  ВыражениеУсловия - Строка - выражение условия для секции параметров виртуальной таблицы.
//  ИндексЗапросаВПакете - Число - индекс запроса в пакете запросов. Если не задано, то последний запрос в пакете.
//
// Возвращаемое значение:
//  Строка, Запрос - измененный текст запроса или запрос.
//
Функция ДобавитьУсловиеВЗапрос(Знач Запрос, ВыражениеУсловия, Знач ИндексЗапросаВПакете = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.ДобавитьУсловиеВЗапрос(Запрос, ВыражениеУсловия, ИндексЗапросаВПакете);
```
</details>

## ИзменитьПсевдонимПоляВыборкиВЗапросе
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Изменяет псевдоним поля в тексте переданного запроса
//
// Параметры:
//  Запрос - Строка, Запрос - текст запроса или запрос.
//  ПсевдонимПоля - Строка - текущий псевдоним поля.
//  НовыйПсевдонимПоля - Строка - новый псевдоним поля.
//  ИндексЗапросаВПакете - Число - индекс запроса в пакете запросов. Если не задано, то последний запрос в пакете.
//
// Возвращаемое значение:
//  Строка, Запрос - измененный текст запроса или запрос.
//
Функция ИзменитьПсевдонимПоляВыборкиВЗапросе(Знач Запрос, ПсевдонимПоля, НовыйПсевдонимПоля, Знач ИндексЗапросаВПакете = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.ИзменитьПсевдонимПоляВыборкиВЗапросе(Запрос, ПсевдонимПоля, НовыйПсевдонимПоля, ИндексЗапросаВПакете);
```
</details>

## ДобавитьСоединениеВЗапрос
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Добавляет новое соединение с источником данных.
//
// Параметры:
//  Запрос - Строка, Запрос - текст запроса или запрос.
//  ПсевдонимИсточника - Строка - псевдоним источника, к которому необходимо присоединить таблицу.
//  ОписаниеСоединения - см. ОписаниеСоединения
//  ИндексЗапросаВПакете - Число - индекс запроса в пакете запросов. Если не задано, то последний запрос в пакете.
//  ЗаменятьСуществующееСоединение - Булево - если Истина, то существующее соединение удаляется, если Ложь - вызывается исключение.
//
// Возвращаемое значение:
//  Строка, Запрос - измененный текст запроса или запрос.
//
Функция ДобавитьСоединениеВЗапрос(Знач Запрос, ПсевдонимИсточника, ОписаниеСоединения, Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.ДобавитьСоединениеВЗапрос(Запрос, ПсевдонимИсточника, ОписаниеСоединения, );
```
</details>

## УдалитьПоляИзЗапроса
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Удаляет поля из запроса.
//
// Параметры:
//  Запрос - Строка, Запрос - текст запроса или запрос.
//  ПсевдонимыПолей - Строка, Массив - строка псевдонимов полей, разделенных запятой, либо массив псевдонимов полей.
//  ИндексЗапросаВПакете - Число - индекс запроса в пакете запросов. Если не задано, то удаляется во всех запросах пакета.
//
// Возвращаемое значение:
//  Строка, Запрос - измененный текст запроса или запрос.
//
Функция УдалитьПоляИзЗапроса(Знач Запрос, ПсевдонимыПолей, Знач ИндексЗапросаВПакете = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.УдалитьПоляИзЗапроса(Запрос, ПсевдонимыПолей, ИндексЗапросаВПакете);
```
</details>

## ОписаниеСоединения
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает описание добавляемого соединения.
//
// Параметры:
//  ОписаниеТаблицы - см. ОписаниеТаблицы
//  Условие - Строка - условие соединения
//  ТипСоединения - Неопределено, ТипСоединенияСхемыЗапроса - тип соединения
//
// Возвращаемое значение:
//  Структура:
//  *ОписаниеТаблицы - см. ОписаниеТаблицы
//  *Условие - Строка
//  *ТипСоединения - ТипСоединенияСхемыЗапроса
//
Функция ОписаниеСоединения(ОписаниеТаблицы, Условие, ТипСоединения = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.ОписаниеСоединения(ОписаниеТаблицы, Условие, ТипСоединения);
```
</details>

## ОписаниеТаблицы
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Описание таблицы схемы запроса
//
// Параметры:
//  ТипТаблицы - Тип
//  ИмяТаблицы - Строка
//  ПсевдонимТаблицы - Строка
//  ДоступныеПоля - Строка, Массив из Строка - доступные поля
//  ТекстЗапроса - Строка
//
// Возвращаемое значение:
//  Структура - Описание таблицы:
//  *ТипТаблицы - Тип
//  *ИмяТаблицы - Строка
//  *ПсевдонимТаблицы - Строка
//  *ДоступныеПоля - Массив из Строка
//  *ТекстЗапроса - Строка
//
Функция ОписаниеТаблицы(ТипТаблицы, ИмяТаблицы, ПсевдонимТаблицы, ДоступныеПоля = Неопределено, ТекстЗапроса = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = СхемыЗапросов.ОписаниеТаблицы(ТипТаблицы, ИмяТаблицы, ПсевдонимТаблицы, ДоступныеПоля, ТекстЗапроса);
```
</details>

---

© 2024, **ООО 1С-Софт**  
Все права защищены. Эта программа и сопроводительные материалы предоставляются  
в соответствии с условиями лицензии [Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/legalcode).

---
