1
0
mirror of https://github.com/zerobig/fluent-request-schema-1c.git synced 2025-08-09 21:27:11 +02:00
This commit is contained in:
Ilya Bushin
2024-10-22 16:02:18 +03:00
parent 24e9dc3db1
commit 8bc191fb12
58 changed files with 2935 additions and 1810 deletions

View File

@@ -14,7 +14,7 @@
Библиотека позволяет писать запросы 1С Предприятия в функциональном стиле. Например, вот такой код: Библиотека позволяет писать запросы 1С Предприятия в функциональном стиле. Например, вот такой код:
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура").ВТаблицуЗначений(); ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура").ВТаблицуЗначений();
``` ```
будет аналогичен: будет аналогичен:
```bsl ```bsl
@@ -86,14 +86,14 @@
```bsl ```bsl
Функция ТаблицаАдресныхСокращений(НаименованияАдресныхОбъектов) Функция ТаблицаАдресныхСокращений(НаименованияАдресныхОбъектов)
Запрос = СЗ_Запрос.НовыйЗапрос("РегистрСведений.УровниСокращенийАдресныхСведений") Запрос = СхЗапрос.НовыйЗапрос("РегистрСведений.УровниСокращенийАдресныхСведений")
.Выбрать("Значение КАК Наименование, Сокращение") .Выбрать("Значение КАК Наименование, Сокращение")
.Сгруппировать("Значение, Сокращение") .Сгруппировать("Значение, Сокращение")
.Упорядочить("Наименование"); .Упорядочить("Наименование");
Если ТипЗнч(НаименованияАдресныхОбъектов) = Тип("Массив") И НаименованияАдресныхОбъектов.Количество() > 0 Тогда Если ТипЗнч(НаименованияАдресныхОбъектов) = Тип("Массив") И НаименованияАдресныхОбъектов.Количество() > 0 Тогда
Запрос = Запрос Запрос = Запрос
.Где(СЗ_Запрос.Предикат() .Где(СхЗапрос.Предикат()
.Реквизит("Значение").В(НаименованияАдресныхОбъектов)); .Реквизит("Значение").В(НаименованияАдресныхОбъектов));
КонецЕсли; КонецЕсли;

View File

@@ -10,9 +10,9 @@ tags: [Начало]
Единичное поле можно задать передав методу `Выбрать` структуру с описанием этого поля: Единичное поле можно задать передав методу `Выбрать` структуру с описанием этого поля:
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать(СЗ_Запрос.НовоеПоле("Ссылка",, "СсылкаНоменклатуры")) .Выбрать(СхЗапрос.НовоеПоле("Ссылка",, "СсылкаНоменклатуры"))
.Выбрать(СЗ_Запрос.НовоеПоле("Наименование",, "НаименованиеНоменклатуры")) .Выбрать(СхЗапрос.НовоеПоле("Наименование",, "НаименованиеНоменклатуры"))
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```
@@ -23,7 +23,7 @@ tags: [Начало]
Через тот же метод `Выбрать` возможна передача массива полей или строки, в которой перечислены поля разделённые запятыми: Через тот же метод `Выбрать` возможна передача массива полей или строки, в которой перечислены поля разделённые запятыми:
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Наименование КАК НаименованиеНоменклатуры, ЭтоГруппа .Выбрать("Наименование КАК НаименованиеНоменклатуры, ЭтоГруппа
|НаименованиеПолное, ЕдиницаИзмерения КАК ЕдИзм") |НаименованиеПолное, ЕдиницаИзмерения КАК ЕдИзм")
.ВТаблицуЗначений(); .ВТаблицуЗначений();
@@ -52,7 +52,7 @@ tags: [Начало]
::: :::
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.ВыбратьВсе() .ВыбратьВсе()
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```

View File

@@ -10,14 +10,14 @@ tags: [Начало]
Позволяет задать предельное количество строк в результате запроса. Можно использовать в двух вариантах. При создании запроса: Позволяет задать предельное количество строк в результате запроса. Можно использовать в двух вариантах. При создании запроса:
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура", 10) ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура", 10)
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```
И отдельным методом: И отдельным методом:
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Первые(10) .Первые(10)
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```
@@ -27,12 +27,12 @@ tags: [Начало]
Можно указать, что в результат не должны попадать повторяющиеся строки. Так же доступно два варианта записи: Можно указать, что в результат не должны попадать повторяющиеся строки. Так же доступно два варианта записи:
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура",, Истина) ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура",, Истина)
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Различные() .Различные()
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```
@@ -42,12 +42,12 @@ tags: [Начало]
Ограничение по правам пользователей задаётся соответствующим флагом при создании запроса или при помощи метода `Разрешенные`: Ограничение по правам пользователей задаётся соответствующим флагом при создании запроса или при помощи метода `Разрешенные`:
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура",,, Истина) ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура",,, Истина)
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Разрешенные() .Разрешенные()
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```

View File

@@ -10,7 +10,7 @@ tags: [Начало]
Любой запрос начинается с вызова функции `НовыйЗапрос` в качестве параметра которого необходимо указать источник выбираемых данных Любой запрос начинается с вызова функции `НовыйЗапрос` в качестве параметра которого необходимо указать источник выбираемых данных
```bsl ```bsl
Запрос = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура"); Запрос = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура");
``` ```
На этом этапе, самого запроса, как объекта 1С, не существует. В переменной `Запрос` находится контекст (описание) запроса. По этому описанию будет позже сформирован реальный запрос к базе данных. На этом этапе, самого запроса, как объекта 1С, не существует. В переменной `Запрос` находится контекст (описание) запроса. По этому описанию будет позже сформирован реальный запрос к базе данных.
@@ -20,13 +20,13 @@ tags: [Начало]
Чтобы получить данные по написанному запросу необходимо вызвать функцию материализации. Их две: `ВТаблицуЗначений` и `ВМассив`. При этом происходит выполнение запроса на сервере. Если запрос вызывается с клиента, то соответственно дополнительно происходит вызов сервера. Чтобы получить данные по написанному запросу необходимо вызвать функцию материализации. Их две: `ВТаблицуЗначений` и `ВМассив`. При этом происходит выполнение запроса на сервере. Если запрос вызывается с клиента, то соответственно дополнительно происходит вызов сервера.
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```
Материализация данных в массив требует передачи имени выгружаемой в этот массив колонки запроса Материализация данных в массив требует передачи имени выгружаемой в этот массив колонки запроса
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.ВМассив("Ссылка"); .ВМассив("Ссылка");
``` ```

View File

@@ -10,14 +10,14 @@ tags: [Начало]
Все отборы в библиотеке строятся на предикатах. Предикат это утверждение которое возвращает `Истина` или `Ложь`. Предикаты создаются при помощи специальной функции `Предикат`: Все отборы в библиотеке строятся на предикатах. Предикат это утверждение которое возвращает `Истина` или `Ложь`. Предикаты создаются при помощи специальной функции `Предикат`:
```bsl ```bsl
Предикат = СЗ_Запрос.Предикат() Предикат = СхЗапрос.Предикат()
.Реквизит("ЭтоГруппа").Равно(Ложь); .Реквизит("ЭтоГруппа").Равно(Ложь);
``` ```
Предикаты соединяются между собой при помощи логической функции `И`. Например: Предикаты соединяются между собой при помощи логической функции `И`. Например:
```bsl ```bsl
Предикат = СЗ_Запрос.Предикат() Предикат = СхЗапрос.Предикат()
.Реквизит("ЭтоГруппа").Равно(Ложь) .Реквизит("ЭтоГруппа").Равно(Ложь)
.Реквизит("Родитель").НеРавно(Родитель); .Реквизит("Родитель").НеРавно(Родитель);
``` ```
@@ -60,8 +60,8 @@ tags: [Начало]
Созданный предикат передаётся в функцию `Где`: Созданный предикат передаётся в функцию `Где`:
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Где(СЗ_Запрос.Предикат() .Где(СхЗапрос.Предикат()
.Реквизит("ЭтоГруппа").Равно(Ложь)) .Реквизит("ЭтоГруппа").Равно(Ложь))
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```

View File

@@ -0,0 +1,37 @@
---
sidebar_position: 0
tags: [Функционал]
---
# Выражения
# Встроенные функции языка запросов
:::info
В разработке
:::
# Агрегатные функции
[Можно посмотреть в разделе "Группировка"](./group)
# Операция выбора
```bsl
Предикат = СхЗапрос.Предикат().Реквизит("ЭтоГруппа").Равно(Истина);
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.ВыборКогда(Предикат, 1, 0, "ЭтоГруппа")
.ВТаблицуЗначений();
```
# Операция приведения типов
```bsl
ОписаниеТипа = Новый ОписаниеТипов("Строка",, Новый КвалификаторыСтроки(1024));
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг")
.Выразить("Комментарий", ОписаниеТипа, "СтрокаКомментария")
.ВТаблицуЗначений();
```

View File

@@ -1,19 +1,47 @@
--- ---
sidebar_position: 1 sidebar_position: 2
tags: [Функционал] tags: [Функционал]
--- ---
# Группировка (СГРУППИРОВАТЬ ПО) # Группировка (СГРУППИРОВАТЬ ПО)
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, ЭтоГруппа") .Выбрать("Ссылка, ЭтоГруппа")
.Сгруппировать("ЭтоГруппа, Ссылка") .Сгруппировать("ЭтоГруппа, Ссылка")
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```
:::info ## Агрегатные функции
Остальной функционал группировок и агрегатных функций находится в процессе разработке ```bsl
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("ЭтоГруппа")
.Количество("Ссылка КАК КоличествоСсылок")
.Сгруппировать("ЭтоГруппа")
.ВТаблицуЗначений();
```
::: Так же можно агрегатные функции задавать строкой
```bsl
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("КОЛИЧЕСТВО(Номенклатура.Ссылка) КАК КоличествоСсылок, ЭтоГруппа")
.Сгруппировать("ЭтоГруппа")
.ВТаблицуЗначений();
```
Так же агрегатные функции принимают на вход структуру описывающую поле:
```bsl
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Количество(СхЗапрос.НовоеПоле("Ссылка",, "КоличествоСсылок"))
.Сгруппировать("ЭтоГруппа")
.ВТаблицуЗначений();
```
На данный момент реализованы следующие функции:
* Количество
* Сумма
* Минимум
* Максимум

View File

@@ -1,5 +1,5 @@
--- ---
sidebar_position: 0 sidebar_position: 1
tags: [Функционал] tags: [Функционал]
--- ---
@@ -10,27 +10,27 @@ tags: [Функционал]
### Источник данных строкой ### Источник данных строкой
```bsl ```bsl
ПредикатДляСоединения = СЗ_Запрос.Предикат() ПредикатДляСоединения = СхЗапрос.Предикат()
.Реквизит("НоменклатураСоединение.Ссылка").Равно("Номенклатура.Родитель") .Реквизит("НоменклатураСоединение.Ссылка").Равно("Номенклатура.Родитель")
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура.Ссылка, .Выбрать("Номенклатура.Ссылка,
|НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка") |НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка")
.ЛевоеСоединение("Справочник.Номенклатура КАК НоменклатураСоединение", ПредикатДляСоединения) .ЛевоеСоединение("Справочник.Номенклатура КАК НоменклатураСоединение", ПредикатДляСоединения)
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```
### Источник данных вложенным запросом ### Источник соединения вложенным запросом
```bsl ```bsl
ЗапросДляСоединения = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ЗапросДляСоединения = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Псевдоним("НоменклатураСоединение"); .Псевдоним("НоменклатураСоединение");
ПредикатДляСоединения = СЗ_Запрос.Предикат() ПредикатДляСоединения = СхЗапрос.Предикат()
.Реквизит("Ссылка").Равно("Родитель"); .Реквизит("Ссылка").Равно("Родитель");
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура.Ссылка, .Выбрать("Номенклатура.Ссылка,
|НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка") |НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка")
.ЛевоеСоединение(ЗапросДляСоединения, ПредикатДляСоединения) .ЛевоеСоединение(ЗапросДляСоединения, ПредикатДляСоединения)
@@ -46,11 +46,11 @@ tags: [Функционал]
## Правое соединение ## Правое соединение
```bsl ```bsl
ПредикатДляСоединения = СЗ_Запрос.Предикат() ПредикатДляСоединения = СхЗапрос.Предикат()
.Реквизит("НоменклатураСоединение.Ссылка").Равно("Номенклатура.Родитель") .Реквизит("НоменклатураСоединение.Ссылка").Равно("Номенклатура.Родитель")
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура.Ссылка, .Выбрать("Номенклатура.Ссылка,
|НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка") |НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка")
.ПравоеСоединение("Справочник.Номенклатура КАК НоменклатураСоединение", ПредикатДляСоединения) .ПравоеСоединение("Справочник.Номенклатура КАК НоменклатураСоединение", ПредикатДляСоединения)
@@ -60,11 +60,11 @@ tags: [Функционал]
## Внутреннее соединение ## Внутреннее соединение
```bsl ```bsl
ПредикатДляСоединения = СЗ_Запрос.Предикат() ПредикатДляСоединения = СхЗапрос.Предикат()
.Реквизит("НоменклатураСоединение.Ссылка").Равно("Номенклатура.Родитель") .Реквизит("НоменклатураСоединение.Ссылка").Равно("Номенклатура.Родитель")
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура.Ссылка, .Выбрать("Номенклатура.Ссылка,
|НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка") |НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка")
.ВнутреннееСоединение("Справочник.Номенклатура КАК НоменклатураСоединение", ПредикатДляСоединения) .ВнутреннееСоединение("Справочник.Номенклатура КАК НоменклатураСоединение", ПредикатДляСоединения)

View File

@@ -0,0 +1,20 @@
---
sidebar_position: 5
tags: [Функционал]
---
# Вложенные запросы
:::tip
Для вложенных запросов обязательно использование функции `Псевдоним`
:::
```bsl
ВложенныйЗапрос = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Псевдоним("ВложенныйЗапрос");
ТаблицаЗначений = СхЗапрос.НовыйЗапрос(ВложенныйЗапрос)
.ВТаблицуЗначений();
```

View File

@@ -1,5 +1,5 @@
--- ---
sidebar_position: 2 sidebar_position: 3
tags: [Функционал] tags: [Функционал]
--- ---
@@ -8,7 +8,7 @@ tags: [Функционал]
## Общий вариант ## Общий вариант
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, ЭтоГруппа") .Выбрать("Ссылка, ЭтоГруппа")
.Упорядочить("ЭтоГруппа, Наименование") .Упорядочить("ЭтоГруппа, Наименование")
.ВТаблицуЗначений(); .ВТаблицуЗначений();
@@ -17,7 +17,7 @@ tags: [Функционал]
## С указанием направления ## С указанием направления
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, ЭтоГруппа") .Выбрать("Ссылка, ЭтоГруппа")
.Упорядочить("ЭтоГруппа УБЫВ, Наименование") .Упорядочить("ЭтоГруппа УБЫВ, Наименование")
.ВТаблицуЗначений(); .ВТаблицуЗначений();

View File

@@ -1,12 +1,12 @@
--- ---
sidebar_position: 2 sidebar_position: 4
tags: [Функционал] tags: [Функционал]
--- ---
# Итоги (ИТОГИ ПО) # Итоги (ИТОГИ ПО)
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Итоги("ЭтоГруппа") .Итоги("ЭтоГруппа")
.ВТаблицуЗначений(); .ВТаблицуЗначений();
``` ```

View File

@@ -0,0 +1,12 @@
---
sidebar_position: 6
tags: [Функционал]
---
# Объединение запросов
```bsl
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг")
.ОбъединитьВсе("Документ.РеализацияТоваровУслуг")
.ВТаблицуЗначений();
```

View File

@@ -5,9 +5,19 @@ slug: /
# 1С Предприятие. Fluent запросы # 1С Предприятие. Fluent запросы
## Отказ от повторения функционала
:::warning
Данная библиотека не ставит перед собой цель полностью повторить функционал механизма запросов в 1С Предприятии. Я, как разработчик, даже считаю подобную цель вредной и едва ли достижимой. Ни одна библиотека никогда не сможет повторить полный синтаксис языка запросов так чтобы это было удобно для использования. В противном случае это будет уже не библиотека, а новый язык запросов.
:::
## Описание
Библиотека позволяет писать запросы 1С Предприятия в функциональном стиле. Например, вот такой код: Библиотека позволяет писать запросы 1С Предприятия в функциональном стиле. Например, вот такой код:
```bsl ```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура").ВТаблицуЗначений(); ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура").ВТаблицуЗначений();
``` ```
будет аналогичен: будет аналогичен:
```bsl ```bsl

View File

@@ -1,42 +0,0 @@

#Область ПрограммныйИнтерфейс
// Устанавливает имя реквизита, все последующие условия будут относится к нему
//
// Параметры:
// Предикат -
// ИмяРеквизита - Строка - имя реквизита
//
Процедура УстановитьИмяРеквизита(Предикат, ИмяРеквизита) Экспорт
Если Предикат = Неопределено Тогда
Предикат = Новый Структура("ИмяРеквизита, Условия",
"", Новый Массив);
КонецЕсли;
Предикат.ИмяРеквизита = ИмяРеквизита;
КонецПроцедуры
// Устанавливает вид и значение сравнения для условия
//
// Параметры:
// Предикат - ОбработкаОбъект.СЗ_ПроцессорПредикатов -
// - ФормаКлиентскогоПриложения -
// ВидСравнения - Строка -
// Значение - Производьный -
//
Процедура УстановитьПредикат(Предикат, ВидСравнения, Значение) Экспорт
Если Предикат = Неопределено Или ПустаяСтрока(Предикат.ИмяРеквизита) Тогда
ВызватьИсключение "Ошибочный порядок вызова функций формирования предиката";
КонецЕсли;
Условие = Новый Структура("ИмяРеквизита, ВидСравнения, Значение",
Предикат.ИмяРеквизита, ВидСравнения, Значение);
Предикат.Условия.Добавить(Условие);
КонецПроцедуры
#КонецОбласти

View File

@@ -2,7 +2,7 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<CommonModule uuid="5f1605a0-4e63-4339-b2cc-44e115be6ed7"> <CommonModule uuid="5f1605a0-4e63-4339-b2cc-44e115be6ed7">
<Properties> <Properties>
<Name>СЗ_Запрос</Name> <Name>СхЗапрос</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>

View File

@@ -10,12 +10,12 @@
// Разрешенные - Булево - признак ограничения выборки с применением RLS // Разрешенные - Булево - признак ограничения выборки с применением RLS
// //
// Возвращаемое значение: // Возвращаемое значение:
// - ОбработкаОбъект.СЗ_ПроцессорСхемЗапроса - менеджер для серверного формирования запроса // - ОбработкаОбъект.СхПроцессорСхемЗапроса - менеджер для серверного формирования запроса
// - ФормаКлиентскогоПриложения - менеджер для клиентского формирования запроса // - ФормаКлиентскогоПриложения - менеджер для клиентского формирования запроса
// //
Функция НовыйЗапрос(ИсточникДанных, Первые = 0, Различные = Ложь, Разрешенные = Ложь) Экспорт Функция НовыйЗапрос(ИсточникДанных, Первые = 0, Различные = Ложь, Разрешенные = Ложь) Экспорт
ПроцессорСхемЗапроса = СЗ_ПроцессорыСхемЗапросаКлиентСервер ПроцессорСхемЗапроса = СхПроцессорыСхемЗапросаКлиентСервер
.НовыйПроцессорСхемЗапроса(ИсточникДанных, Первые, Различные, Разрешенные); .НовыйПроцессорСхемЗапроса(ИсточникДанных, Первые, Различные, Разрешенные);
Возврат ПроцессорСхемЗапроса; Возврат ПроцессорСхемЗапроса;
@@ -25,12 +25,12 @@
// Создает структуру нового предиката // Создает структуру нового предиката
// //
// Возвращаемое значение: // Возвращаемое значение:
// - ОбработкаОбъект.СЗ_ПроцессорСхемЗапроса - менеджер для серверного формирования предиката // - ОбработкаОбъект.СхПроцессорСхемЗапроса - менеджер для серверного формирования предиката
// - ФормаКлиентскогоПриложения - менеджер для клиентского формирования предиката // - ФормаКлиентскогоПриложения - менеджер для клиентского формирования предиката
// //
Функция Предикат() Экспорт Функция Предикат() Экспорт
ПроцессорПредикатов = СЗ_ПроцессорыПредикатовКлиентСервер ПроцессорПредикатов = СхПроцессорыПредикатовКлиентСервер
.НовыйПроцессорПредикатов(); .НовыйПроцессорПредикатов();
Возврат ПроцессорПредикатов; Возврат ПроцессорПредикатов;
@@ -49,7 +49,7 @@
// //
Функция НовоеПоле(ИмяПоля, Источник, Псевдоним) Экспорт Функция НовоеПоле(ИмяПоля, Источник, Псевдоним) Экспорт
// TODO: В модуле СЗ_ПроцессорыСхемЗапросаКлиентСерверСлужебный так же регулярно требуетс // TODO: В модуле СхПроцессорыСхемЗапросаКлиентСерверСлужебный так же регулярно требуетс
// такая структура. Рефакторинг! // такая структура. Рефакторинг!
Возврат Новый Структура("ИмяПоля, Источник, Псевдоним", Возврат Новый Структура("ИмяПоля, Источник, Псевдоним",

View File

@@ -2,7 +2,7 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<CommonModule uuid="52ab0c6f-4fa1-4913-b37e-460ab1e44314"> <CommonModule uuid="52ab0c6f-4fa1-4913-b37e-460ab1e44314">
<Properties> <Properties>
<Name>СЗ_ЗапросТест</Name> <Name>СхЗапросТест</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>

View File

@@ -13,12 +13,19 @@
.ДобавитьТест("Разрешенные") .ДобавитьТест("Разрешенные")
.ДобавитьТестовыйНабор("СЗ: Поля") .ДобавитьТестовыйНабор("СЗ: Поля")
.ДобавитьТест("ИсключениеПолеОтсутствует") .ДобавитьТест("ИсключениеПолеОтсутствует")
.ДобавитьТест("ИсключениеПолеОтсутствуетСУказаниемИсточника")
.ДобавитьТест("ДобавитьПоляССинонимами") .ДобавитьТест("ДобавитьПоляССинонимами")
.ДобавитьТест("ДобавитьНесколькоПолей") .ДобавитьТест("ДобавитьНесколькоПолей")
.ДобавитьТест("ДобавитьНесколькоПолейСПереносомСтроки") .ДобавитьТест("ДобавитьНесколькоПолейСПереносомСтроки")
.ДобавитьТест("ДобавитьПоляССинонимамиИСписком") .ДобавитьТест("ДобавитьПоляССинонимамиИСписком")
.ДобавитьТест("ВсеПоляДляНеСсылочногоТипа") .ДобавитьТест("ВсеПоляДляНеСсылочногоТипа")
.ДобавитьТест("ВсеПоляДляСсылочногоТипа") .ДобавитьТест("ВсеПоляДляСсылочногоТипа")
.ДобавитьТест("ДобавиьПолеВыборКогдаСтрокой1")
.ДобавитьТест("ДобавиьПолеВыборКогдаСтрокой2")
.ДобавитьТест("ДобавиьПолеВыборКогдаФункциейЧисла")
.ДобавитьТест("ДобавиьПолеВыборКогдаФункциейСтроки")
.ДобавитьТест("ДобавиьПолеВыразитьФункциейПсевдоним1")
.ДобавитьТест("ДобавиьПолеВыразитьФункциейПсевдоним2")
.ДобавитьТестовыйНабор("СЗ: Условия") .ДобавитьТестовыйНабор("СЗ: Условия")
.ДобавитьТест("ЗапросСУсловиемРавно") .ДобавитьТест("ЗапросСУсловиемРавно")
.ДобавитьТест("ЗапросСУсловиемНеРавно") .ДобавитьТест("ЗапросСУсловиемНеРавно")
@@ -29,6 +36,9 @@
.Перед("Перед_ЗапросСУсловиемВСписке") .Перед("Перед_ЗапросСУсловиемВСписке")
.ДобавитьТест("ЗапросСУсловиемНеВСписке") .ДобавитьТест("ЗапросСУсловиемНеВСписке")
.Перед("Перед_ЗапросСУсловиемНеВСписке") .Перед("Перед_ЗапросСУсловиемНеВСписке")
.ДобавитьТест("ЗапросСУсловиемИВыборКогдаВПолях")
.ДобавитьТест("ИсключениеУсловиеНаПолеБесконечнойДлиныБезВыразить")
.ДобавитьТест("УсловиеНаПолеБесконечнойДлиныСВыразить")
.ДобавитьТестовыйНабор("СЗ: Соединения") .ДобавитьТестовыйНабор("СЗ: Соединения")
.ДобавитьТест("СоединениеПоИсточникуСтроке") .ДобавитьТест("СоединениеПоИсточникуСтроке")
.СПараметрами("Левое") .СПараметрами("Левое")
@@ -52,6 +62,14 @@
.ДобавитьТест("ОбъединитьВсеСПолями") .ДобавитьТест("ОбъединитьВсеСПолями")
.ДобавитьТест("ОбъединитьВсеСРазнымКоличествомПолей") .ДобавитьТест("ОбъединитьВсеСРазнымКоличествомПолей")
.ДобавитьТест("ОбъединитьВсеСВложеннымЗапросом") .ДобавитьТест("ОбъединитьВсеСВложеннымЗапросом")
.ДобавитьТестовыйНабор("СЗ: Группировать")
.ДобавитьТест("Группировать")
.ДобавитьТест("ГруппироватьКоличествоСтрокой")
.ДобавитьТест("ГруппироватьКоличествоФункциейПолеСтрокой")
.ДобавитьТест("ГруппироватьКоличествоФункциейПолеСтруктурой")
.ДобавитьТест("ГруппироватьСуммаФункциейПолеСтрокой")
.ДобавитьТест("ГруппироватьМинимумФункциейПолеСтрокой")
.ДобавитьТест("ГруппироватьМаксимумФункциейПолеСтрокой")
.ДобавитьТестовыйНабор("СЗ: Прочее") .ДобавитьТестовыйНабор("СЗ: Прочее")
.ДобавитьТест("Порядок") .ДобавитьТест("Порядок")
.ДобавитьТест("ПорядокУбывания") .ДобавитьТест("ПорядокУбывания")
@@ -121,7 +139,7 @@
Процедура ИсключениеИсточникОтсутствует() Экспорт Процедура ИсключениеИсточникОтсутствует() Экспорт
Обработка = Обработки.СЗ_ПроцессорСхемЗапроса.Создать(); Обработка = Обработки.СхПроцессорСхемЗапроса.Создать();
ЮТест.ОжидаетЧто(Обработка) ЮТест.ОжидаетЧто(Обработка)
.Метод("ВТаблицуЗначений") .Метод("ВТаблицуЗначений")
@@ -131,7 +149,7 @@
Процедура ИсключениеИсточникПустаяСтрока() Экспорт Процедура ИсключениеИсточникПустаяСтрока() Экспорт
Запрос = СЗ_Запрос.НовыйЗапрос(""); Запрос = СхЗапрос.НовыйЗапрос("");
ЮТест.ОжидаетЧто(Запрос) ЮТест.ОжидаетЧто(Запрос)
.Метод("ВТаблицуЗначений") .Метод("ВТаблицуЗначений")
@@ -141,7 +159,7 @@
Процедура ЗапросВТаблицуЗначений() Экспорт Процедура ЗапросВТаблицуЗначений() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -156,7 +174,7 @@
Процедура ЗапросВМассив() Экспорт Процедура ЗапросВМассив() Экспорт
Массив = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") Массив = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.ВМассив("Ссылка") .ВМассив("Ссылка")
; ;
@@ -171,7 +189,7 @@
Процедура Первые() Экспорт Процедура Первые() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура", 10) ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура", 10)
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -183,7 +201,7 @@
Процедура Различные() Экспорт Процедура Различные() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура",, Истина) ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура",, Истина)
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -198,7 +216,7 @@
Процедура Разрешенные() Экспорт Процедура Разрешенные() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура",,, Истина) ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура",,, Истина)
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -215,28 +233,42 @@
#Область Поля #Область Поля
// TODO: Поля могут быть выражениями
Процедура ИсключениеПолеОтсутствует() Экспорт Процедура ИсключениеПолеОтсутствует() Экспорт
НеправильноеНаименованиеПоля = "йцукен"; НеправильноеНаименованиеПоля = "йцукен";
Запрос = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") Запрос = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать(НеправильноеНаименованиеПоля) .Выбрать(НеправильноеНаименованиеПоля)
; ;
ЮТест.ОжидаетЧто(Запрос) ЮТест.ОжидаетЧто(Запрос)
.Метод("ВТаблицуЗначений") .Метод("ВТаблицуЗначений")
.ВыбрасываетИсключение( .ВыбрасываетИсключение(
СтрШаблон("Поле %1 в источнике не определено", НеправильноеНаименованиеПоля)); СтрШаблон("{(1, 1)}: Поле не найдено ""%1""
|<<?>>%1", НеправильноеНаименованиеПоля));
КонецПроцедуры
Процедура ИсключениеПолеОтсутствуетСУказаниемИсточника() Экспорт
НеправильноеНаименованиеПоля = "йцукен";
Запрос = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура." + НеправильноеНаименованиеПоля)
;
ЮТест.ОжидаетЧто(Запрос)
.Метод("ВТаблицуЗначений")
.ВыбрасываетИсключение(
СтрШаблон("ДобавитьПоля: поле %1 в источнике не определено", НеправильноеНаименованиеПоля));
КонецПроцедуры КонецПроцедуры
Процедура ДобавитьПоляССинонимами() Экспорт Процедура ДобавитьПоляССинонимами() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать(СЗ_Запрос.НовоеПоле("Ссылка",, "СсылкаНоменклатуры")) .Выбрать(СхЗапрос.НовоеПоле("Ссылка",, "СсылкаНоменклатуры"))
.Выбрать(СЗ_Запрос.НовоеПоле("Наименование",, "НаименованиеНоменклатуры")) .Выбрать(СхЗапрос.НовоеПоле("Наименование",, "НаименованиеНоменклатуры"))
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -255,7 +287,7 @@
Процедура ДобавитьНесколькоПолей() Экспорт Процедура ДобавитьНесколькоПолей() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, Наименование, ЭтоГруппа") .Выбрать("Ссылка, Наименование, ЭтоГруппа")
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -276,7 +308,7 @@
Процедура ДобавитьНесколькоПолейСПереносомСтроки() Экспорт Процедура ДобавитьНесколькоПолейСПереносомСтроки() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, Наименование, .Выбрать("Ссылка, Наименование,
|ЭтоГруппа") |ЭтоГруппа")
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -298,8 +330,8 @@
Процедура ДобавитьПоляССинонимамиИСписком() Экспорт Процедура ДобавитьПоляССинонимамиИСписком() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать(СЗ_Запрос.НовоеПоле("Ссылка",, "СсылкаНоменклатуры")) .Выбрать(СхЗапрос.НовоеПоле("Ссылка",, "СсылкаНоменклатуры"))
.Выбрать("Наименование КАК НаименованиеНоменклатуры, ЭтоГруппа") .Выбрать("Наименование КАК НаименованиеНоменклатуры, ЭтоГруппа")
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -320,7 +352,7 @@
Процедура ВсеПоляДляНеСсылочногоТипа() Экспорт Процедура ВсеПоляДляНеСсылочногоТипа() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("РегистрСведений.КурсыВалют") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("РегистрСведений.КурсыВалют")
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -340,7 +372,7 @@
Процедура ВсеПоляДляСсылочногоТипа() Экспорт Процедура ВсеПоляДляСсылочногоТипа() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.ВыбратьВсе() .ВыбратьВсе()
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -359,17 +391,113 @@
КонецПроцедуры КонецПроцедуры
Процедура ДобавиьПолеВыборКогдаСтрокой1() Экспорт
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("ВЫБОР КОГДА Номенклатура.ЭтоГруппа = ИСТИНА ТОГДА 1 ИНАЧЕ 0 КОНЕЦ КАК ЭтоГруппа")
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлинуБольше(0)
;
КонецПроцедуры
Процедура ДобавиьПолеВыборКогдаСтрокой2() Экспорт
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("ВЫБОР
| КОГДА Номенклатура.ЭтоГруппа = ИСТИНА
| ТОГДА 1
| ИНАЧЕ 0
|КОНЕЦ КАК ЭтоГруппа")
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлинуБольше(0)
;
КонецПроцедуры
Процедура ДобавиьПолеВыборКогдаФункциейЧисла() Экспорт
Предикат = СхЗапрос.Предикат().Реквизит("ЭтоГруппа").Равно(Истина);
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.ВыборКогда(Предикат, 1, 0, "ЭтоГруппа")
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлинуБольше(0)
.КаждыйЭлементСоответствуетПредикату(ЮТест.Предикат()
.Реквизит("ЭтоГруппа")
.ИмеетТип("Число")
.МеждуВключаяГраницы(0, 1))
;
КонецПроцедуры
Процедура ДобавиьПолеВыборКогдаФункциейСтроки() Экспорт
Предикат = СхЗапрос.Предикат().Реквизит("ЭтоГруппа").Равно(Истина);
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.ВыборКогда(Предикат, "Это группа", "Это элемент", "ЭтоГруппа")
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлинуБольше(0)
.ЛюбойЭлементСоответствуетПредикату(ЮТест.Предикат()
.Реквизит("ЭтоГруппа")
.ИмеетТип("Строка")
.Равно("Это группа"))
.ЛюбойЭлементСоответствуетПредикату(ЮТест.Предикат()
.Реквизит("ЭтоГруппа")
.ИмеетТип("Строка")
.Равно("Это элемент"))
;
КонецПроцедуры
Процедура ДобавиьПолеВыразитьФункциейПсевдоним1() Экспорт
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг")
.Выразить("Комментарий КАК СтрокаКомментария",
Новый ОписаниеТипов("Строка",, Новый КвалификаторыСтроки(1024)))
.ВТаблицуЗначений()
;
КонецПроцедуры
Процедура ДобавиьПолеВыразитьФункциейПсевдоним2() Экспорт
ОписаниеТипа = Новый ОписаниеТипов("Строка",, Новый КвалификаторыСтроки(1024));
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг")
.Выразить("Комментарий", ОписаниеТипа, "СтрокаКомментария")
.ВТаблицуЗначений()
;
КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область Условия #Область Условия
Процедура ЗапросСУсловиемРавно() Экспорт Процедура ЗапросСУсловиемРавно() Экспорт
Предикат = СЗ_Запрос.Предикат() Предикат = СхЗапрос.Предикат()
.Реквизит("ЭтоГруппа").Равно(Ложь) .Реквизит("ЭтоГруппа").Равно(Ложь)
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, ЭтоГруппа") .Выбрать("Ссылка, ЭтоГруппа")
.Где(Предикат) .Где(Предикат)
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -386,11 +514,11 @@
Процедура ЗапросСУсловиемНеРавно() Экспорт Процедура ЗапросСУсловиемНеРавно() Экспорт
Предикат = СЗ_Запрос.Предикат() Предикат = СхЗапрос.Предикат()
.Реквизит("ЭтоГруппа").НеРавно(Ложь) .Реквизит("ЭтоГруппа").НеРавно(Ложь)
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, ЭтоГруппа") .Выбрать("Ссылка, ЭтоГруппа")
.Где(Предикат) .Где(Предикат)
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -407,11 +535,11 @@
Процедура ЗапросСУсловиемПодобно() Экспорт Процедура ЗапросСУсловиемПодобно() Экспорт
Предикат = СЗ_Запрос.Предикат() Предикат = СхЗапрос.Предикат()
.Реквизит("Наименование").Подобно("Хлеб") .Реквизит("Наименование").Подобно("Хлеб")
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, Наименование") .Выбрать("Ссылка, Наименование")
.Где(Предикат) .Где(Предикат)
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -428,11 +556,11 @@
Процедура ЗапросСУсловиемНеПодобно() Экспорт Процедура ЗапросСУсловиемНеПодобно() Экспорт
Предикат = СЗ_Запрос.Предикат() Предикат = СхЗапрос.Предикат()
.Реквизит("Наименование").НеПодобно("Хлеб") .Реквизит("Наименование").НеПодобно("Хлеб")
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, Наименование") .Выбрать("Ссылка, Наименование")
.Где(Предикат) .Где(Предикат)
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -451,11 +579,11 @@
ДатаНачала = Дата("20230601000000"); ДатаНачала = Дата("20230601000000");
ДатаОкончания = Дата("20230630235959"); ДатаОкончания = Дата("20230630235959");
Предикат = СЗ_Запрос.Предикат() Предикат = СхЗапрос.Предикат()
.Реквизит("Дата").Между(ДатаНачала, ДатаОкончания) .Реквизит("Дата").Между(ДатаНачала, ДатаОкончания)
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Документ.ЗаказКлиента") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.ЗаказКлиента")
.Выбрать("Ссылка, Дата") .Выбрать("Ссылка, Дата")
.Где(Предикат) .Где(Предикат)
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -474,11 +602,11 @@
Контекст = ЮТест.КонтекстТеста(); Контекст = ЮТест.КонтекстТеста();
Предикат = СЗ_Запрос.Предикат() Предикат = СхЗапрос.Предикат()
.Реквизит("Ссылка").ВСписке(Контекст.МассивНоменклатуры) .Реквизит("Ссылка").ВСписке(Контекст.МассивНоменклатуры)
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Где(Предикат) .Где(Предикат)
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -496,11 +624,11 @@
Контекст = ЮТест.КонтекстТеста(); Контекст = ЮТест.КонтекстТеста();
Предикат = СЗ_Запрос.Предикат() Предикат = СхЗапрос.Предикат()
.Реквизит("Ссылка").НеВСписке(Контекст.МассивНоменклатуры) .Реквизит("Ссылка").НеВСписке(Контекст.МассивНоменклатурыНеВСписке)
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Где(Предикат) .Где(Предикат)
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -509,22 +637,73 @@
.ИмеетТип("ТаблицаЗначений") .ИмеетТип("ТаблицаЗначений")
.ИмеетДлинуБольше(0) .ИмеетДлинуБольше(0)
.КаждыйЭлементСоответствуетПредикату(ЮТест.Предикат() .КаждыйЭлементСоответствуетПредикату(ЮТест.Предикат()
.Реквизит("Ссылка").ВСписке(Контекст.МассивНоменклатурыНеВСписке)) .Реквизит("Ссылка").ВСписке(Контекст.МассивНоменклатуры))
; ;
КонецПроцедуры КонецПроцедуры
// Проверяет сквозную нумерацию параметров
//
Процедура ЗапросСУсловиемИВыборКогдаВПолях() Экспорт
Предикат = СхЗапрос.Предикат().Реквизит("ЭтоГруппа").Равно(Истина);
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.ВыборКогда(Предикат, 1, 0, "ЭтоГруппа")
.Где(СхЗапрос.Предикат()
.Реквизит("ЭтоГруппа").Равно(Ложь))
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлинуБольше(0)
.КаждыйЭлементСоответствуетПредикату(ЮТест.Предикат()
.Реквизит("ЭтоГруппа")
.ИмеетТип("Число")
.Равно(0))
;
КонецПроцедуры
Процедура ИсключениеУсловиеНаПолеБесконечнойДлиныБезВыразить() Экспорт
Предикат = СхЗапрос.Предикат().Реквизит("Комментарий").Равно("");
Запрос = СхЗапрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг")
.Где(Предикат)
;
ЮТест.ОжидаетЧто(Запрос)
.Метод("ВТаблицуЗначений")
.ВыбрасываетИсключение("{(6, 37)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
| неограниченной длины и поля несовместимых типов.
|РеализацияТоваровУслуг.Комментарий <<?>>= &Параметр_0");
КонецПроцедуры
Процедура УсловиеНаПолеБесконечнойДлиныСВыразить() Экспорт
ОписаниеТипа = Новый ОписаниеТипов("Строка",, Новый КвалификаторыСтроки(1024));
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг")
.Где(СхЗапрос.Предикат()
.РеквизитВыразить("Комментарий", ОписаниеТипа).Равно(""))
.ВТаблицуЗначений()
;
КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область Соединения #Область Соединения
Процедура СоединениеПоИсточникуСтроке(ТипСоединения) Экспорт Процедура СоединениеПоИсточникуСтроке(ТипСоединения) Экспорт
ПредикатДляСоединения = СЗ_Запрос.Предикат() ПредикатДляСоединения = СхЗапрос.Предикат()
.Реквизит("НоменклатураСоединение.Ссылка").Равно("Номенклатура.Родитель") .Реквизит("НоменклатураСоединение.Ссылка").Равно("Номенклатура.Родитель")
; ;
Запрос = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") Запрос = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура.Ссылка, .Выбрать("Номенклатура.Ссылка,
|НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка") |НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка")
; ;
@@ -559,14 +738,14 @@
Процедура ЛевоеСоединениеПоИсточникуЗапросу() Экспорт Процедура ЛевоеСоединениеПоИсточникуЗапросу() Экспорт
ЗапросДляСоединения = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ЗапросДляСоединения = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Псевдоним("НоменклатураСоединение") .Псевдоним("НоменклатураСоединение")
; ;
ПредикатДляСоединения = СЗ_Запрос.Предикат() ПредикатДляСоединения = СхЗапрос.Предикат()
.Реквизит("Ссылка").Равно("Родитель") .Реквизит("Ссылка").Равно("Родитель")
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура.Ссылка, .Выбрать("Номенклатура.Ссылка,
|НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка") |НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка")
.ЛевоеСоединение(ЗапросДляСоединения, ПредикатДляСоединения) .ЛевоеСоединение(ЗапросДляСоединения, ПредикатДляСоединения)
@@ -588,23 +767,23 @@
Процедура ЛевоеСоединениеСГлубокоВложеннымЗапросом() Экспорт Процедура ЛевоеСоединениеСГлубокоВложеннымЗапросом() Экспорт
ВложенныйЗапрос = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ВложенныйЗапрос = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, Родитель") .Выбрать("Ссылка, Родитель")
.Псевдоним("ВложенныйЗапрос_0") .Псевдоним("ВложенныйЗапрос_0")
; ;
Для Сч = 1 По 9 Цикл Для Сч = 1 По 9 Цикл
ВложенныйЗапрос = СЗ_Запрос.НовыйЗапрос(ВложенныйЗапрос) ВложенныйЗапрос = СхЗапрос.НовыйЗапрос(ВложенныйЗапрос)
.Выбрать("Ссылка, Родитель") .Выбрать("Ссылка, Родитель")
.Псевдоним("ВложенныйЗапрос_" + Сч) .Псевдоним("ВложенныйЗапрос_" + Сч)
; ;
КонецЦикла; КонецЦикла;
ПредикатДляСоединения = СЗ_Запрос.Предикат() ПредикатДляСоединения = СхЗапрос.Предикат()
.Реквизит("Ссылка").Равно("Родитель") .Реквизит("Ссылка").Равно("Родитель")
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура.Ссылка, .Выбрать("Номенклатура.Ссылка,
|ВложенныйЗапрос_9.Ссылка КАК ВложенныйЗапрос_9Ссылка") |ВложенныйЗапрос_9.Ссылка КАК ВложенныйЗапрос_9Ссылка")
.ЛевоеСоединение(ВложенныйЗапрос, ПредикатДляСоединения) .ЛевоеСоединение(ВложенныйЗапрос, ПредикатДляСоединения)
@@ -624,7 +803,7 @@
Процедура ЛевоеСоединениеБезПредиката() Экспорт Процедура ЛевоеСоединениеБезПредиката() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("РегистрСведений.ПримененияЕНВД") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("РегистрСведений.ПримененияЕНВД")
.Выбрать("ПримененияЕНВД.Организация КАК Организация, .Выбрать("ПримененияЕНВД.Организация КАК Организация,
|ПримененияЕНВДСоединение.Склад КАК Склад") |ПримененияЕНВДСоединение.Склад КАК Склад")
.ЛевоеСоединение("РегистрСведений.ПримененияЕНВД КАК ПримененияЕНВДСоединение") .ЛевоеСоединение("РегистрСведений.ПримененияЕНВД КАК ПримененияЕНВДСоединение")
@@ -646,10 +825,10 @@
Процедура ЛевоеСоединениеНесколькоУсловийВПредикате() Экспорт Процедура ЛевоеСоединениеНесколькоУсловийВПредикате() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура.Ссылка, .Выбрать("Номенклатура.Ссылка,
|НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка") |НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка")
.ЛевоеСоединение("Справочник.Номенклатура КАК НоменклатураСоединение", СЗ_Запрос.Предикат() .ЛевоеСоединение("Справочник.Номенклатура КАК НоменклатураСоединение", СхЗапрос.Предикат()
.Реквизит("НоменклатураСоединение.Ссылка").Равно("Номенклатура.Родитель") .Реквизит("НоменклатураСоединение.Ссылка").Равно("Номенклатура.Родитель")
.Реквизит("НоменклатураСоединение.ЭтоГруппа").Равно("ИСТИНА")) .Реквизит("НоменклатураСоединение.ЭтоГруппа").Равно("ИСТИНА"))
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -687,10 +866,10 @@
"Родитель", Выборка.Ссылка)); "Родитель", Выборка.Ссылка));
// Выполнение // Выполнение
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура.Ссылка, .Выбрать("Номенклатура.Ссылка,
|НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка") |НоменклатураСоединение.Ссылка КАК НоменклатураСоединениеСсылка")
.ЛевоеСоединение("Справочник.Номенклатура КАК НоменклатураСоединение", СЗ_Запрос.Предикат() .ЛевоеСоединение("Справочник.Номенклатура КАК НоменклатураСоединение", СхЗапрос.Предикат()
.Реквизит("НоменклатураСоединение.Родитель").Равно("&Родитель")) .Реквизит("НоменклатураСоединение.Родитель").Равно("&Родитель"))
.Параметры(МассивПараметров) .Параметры(МассивПараметров)
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -712,9 +891,9 @@
Процедура ЛевоеСоединениеБезПсевдонимовВСоединении() Экспорт Процедура ЛевоеСоединениеБезПсевдонимовВСоединении() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура.Ссылка, Номенклатура1.Ссылка") .Выбрать("Номенклатура.Ссылка, Номенклатура1.Ссылка")
.ЛевоеСоединение("Справочник.Номенклатура", СЗ_Запрос.Предикат() .ЛевоеСоединение("Справочник.Номенклатура", СхЗапрос.Предикат()
.Реквизит("Ссылка").Равно("Родитель") .Реквизит("Ссылка").Равно("Родитель")
.Реквизит("ЭтоГруппа").Равно("ИСТИНА")) .Реквизит("ЭтоГруппа").Равно("ИСТИНА"))
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -735,12 +914,12 @@
Процедура НесколькоЛевыхСоединений() Экспорт Процедура НесколькоЛевыхСоединений() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Номенклатура.Ссылка, Номенклатура1.Ссылка, Номенклатура2.Ссылка") .Выбрать("Номенклатура.Ссылка, Номенклатура1.Ссылка, Номенклатура2.Ссылка")
.ЛевоеСоединение("Справочник.Номенклатура", СЗ_Запрос.Предикат() .ЛевоеСоединение("Справочник.Номенклатура", СхЗапрос.Предикат()
.Реквизит("Ссылка").Равно("Родитель") .Реквизит("Ссылка").Равно("Родитель")
.Реквизит("ЭтоГруппа").Равно("ИСТИНА")) .Реквизит("ЭтоГруппа").Равно("ИСТИНА"))
.ЛевоеСоединение("Справочник.Номенклатура", СЗ_Запрос.Предикат() .ЛевоеСоединение("Справочник.Номенклатура", СхЗапрос.Предикат()
.Реквизит("Ссылка").Равно("Родитель") .Реквизит("Ссылка").Равно("Родитель")
.Реквизит("ЭтоГруппа").Равно("ИСТИНА")) .Реквизит("ЭтоГруппа").Равно("ИСТИНА"))
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -766,9 +945,9 @@
Процедура ИсключениеВложенныйЗапросБезПсевдонима() Экспорт Процедура ИсключениеВложенныйЗапросБезПсевдонима() Экспорт
ВложенныйЗапрос = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура"); ВложенныйЗапрос = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура");
Запрос = СЗ_Запрос.НовыйЗапрос(ВложенныйЗапрос); Запрос = СхЗапрос.НовыйЗапрос(ВложенныйЗапрос);
ЮТест.ОжидаетЧто(Запрос) ЮТест.ОжидаетЧто(Запрос)
.Метод("ВТаблицуЗначений") .Метод("ВТаблицуЗначений")
@@ -778,11 +957,11 @@
Процедура ВложенныйЗапрос() Экспорт Процедура ВложенныйЗапрос() Экспорт
ВложенныйЗапрос = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ВложенныйЗапрос = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Псевдоним("ВложенныйЗапрос") .Псевдоним("ВложенныйЗапрос")
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос(ВложенныйЗапрос) ТаблицаЗначений = СхЗапрос.НовыйЗапрос(ВложенныйЗапрос)
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -795,17 +974,17 @@
Процедура ОченьГлубокоВложенныйЗапрос() Экспорт Процедура ОченьГлубокоВложенныйЗапрос() Экспорт
ВложенныйЗапрос = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ВложенныйЗапрос = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Псевдоним("ВложенныйЗапрос_0") .Псевдоним("ВложенныйЗапрос_0")
; ;
Для Сч = 1 По 9 Цикл Для Сч = 1 По 9 Цикл
ВложенныйЗапрос = СЗ_Запрос.НовыйЗапрос(ВложенныйЗапрос) ВложенныйЗапрос = СхЗапрос.НовыйЗапрос(ВложенныйЗапрос)
.Псевдоним("ВложенныйЗапрос_" + Сч) .Псевдоним("ВложенныйЗапрос_" + Сч)
; ;
КонецЦикла; КонецЦикла;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос(ВложенныйЗапрос) ТаблицаЗначений = СхЗапрос.НовыйЗапрос(ВложенныйЗапрос)
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -822,7 +1001,7 @@
Процедура Объединить() Экспорт Процедура Объединить() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг")
.Объединить("Документ.РеализацияТоваровУслуг") .Объединить("Документ.РеализацияТоваровУслуг")
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -840,7 +1019,7 @@
Процедура ОбъединитьВсе() Экспорт Процедура ОбъединитьВсе() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг")
.ОбъединитьВсе("Документ.РеализацияТоваровУслуг") .ОбъединитьВсе("Документ.РеализацияТоваровУслуг")
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -858,7 +1037,7 @@
Процедура ОбъединитьВсеНаЧетыреИсточника() Экспорт Процедура ОбъединитьВсеНаЧетыреИсточника() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг")
.ОбъединитьВсе("Документ.РеализацияТоваровУслуг") .ОбъединитьВсе("Документ.РеализацияТоваровУслуг")
.ОбъединитьВсе("Документ.ВозвратТоваровОтКлиента") .ОбъединитьВсе("Документ.ВозвратТоваровОтКлиента")
.ОбъединитьВсе("Документ.ВозвратТоваровПоставщику") .ОбъединитьВсе("Документ.ВозвратТоваровПоставщику")
@@ -882,9 +1061,9 @@
Процедура ОбъединитьВсеСПолями() Экспорт Процедура ОбъединитьВсеСПолями() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг")
.Выбрать("Ссылка, Дата, Номер") .Выбрать("Ссылка, Дата, Номер")
.ОбъединитьВсе(СЗ_Запрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг") .ОбъединитьВсе(СхЗапрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг")
.Выбрать("Ссылка, Дата, Номер")) .Выбрать("Ссылка, Дата, Номер"))
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -905,9 +1084,9 @@
Процедура ОбъединитьВсеСРазнымКоличествомПолей() Экспорт Процедура ОбъединитьВсеСРазнымКоличествомПолей() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг")
.Выбрать("Ссылка, Дата, Номер") .Выбрать("Ссылка, Дата, Номер")
.ОбъединитьВсе(СЗ_Запрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг") .ОбъединитьВсе(СхЗапрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг")
.Выбрать("Ссылка, Дата, Номер, Партнер")) .Выбрать("Ссылка, Дата, Номер, Партнер"))
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -930,14 +1109,14 @@
Процедура ОбъединитьВсеСВложеннымЗапросом() Экспорт Процедура ОбъединитьВсеСВложеннымЗапросом() Экспорт
ВложенныйЗапрос = СЗ_Запрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг") ВложенныйЗапрос = СхЗапрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг")
.Псевдоним("ВложенныйЗапрос") .Псевдоним("ВложенныйЗапрос")
.Выбрать("Ссылка, Дата, Номер, Партнер") .Выбрать("Ссылка, Дата, Номер, Партнер")
; ;
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.ПриобретениеТоваровУслуг")
.Выбрать("Ссылка, Дата, Номер") .Выбрать("Ссылка, Дата, Номер")
.ОбъединитьВсе(СЗ_Запрос.НовыйЗапрос(ВложенныйЗапрос) .ОбъединитьВсе(СхЗапрос.НовыйЗапрос(ВложенныйЗапрос)
.Выбрать("Ссылка, Дата, Номер")) .Выбрать("Ссылка, Дата, Номер"))
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -958,12 +1137,129 @@
#КонецОбласти #КонецОбласти
#Область Группировать
Процедура Группировать() Экспорт
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, ЭтоГруппа")
.Сгруппировать("ЭтоГруппа")
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлинуБольше(0)
;
КонецПроцедуры
Процедура ГруппироватьКоличествоСтрокой() Экспорт
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("КОЛИЧЕСТВО(Номенклатура.Ссылка) КАК КоличествоСсылок, ЭтоГруппа")
.Сгруппировать("ЭтоГруппа")
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлинуБольше(0)
;
КонецПроцедуры
Процедура ГруппироватьКоличествоФункциейПолеСтрокой() Экспорт
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("ЭтоГруппа")
.Количество("Ссылка КАК КоличествоСсылок")
.Сгруппировать("ЭтоГруппа")
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлину(2)
;
КонецПроцедуры
Процедура ГруппироватьКоличествоФункциейПолеСтруктурой() Экспорт
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Количество(СхЗапрос.НовоеПоле("Ссылка",, "КоличествоСсылок"))
.Сгруппировать("ЭтоГруппа")
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлину(2)
;
КонецПроцедуры
Процедура ГруппироватьСуммаФункциейПолеСтрокой() Экспорт
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг.Товары")
.Выбрать("Номенклатура")
.Сумма("Количество КАК КоличествоНоменклатуры")
.Сгруппировать("Номенклатура")
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлинуБольше(0)
;
КонецПроцедуры
Процедура ГруппироватьМинимумФункциейПолеСтрокой() Экспорт
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг.Товары")
.Выбрать("Номенклатура")
.Минимум("Количество КАК МинимальноеКоличествоНоменклатуры")
.Сгруппировать("Номенклатура")
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлинуБольше(0)
.КаждыйЭлементСоответствуетПредикату(ЮТест.Предикат()
.Реквизит("МинимальноеКоличествоНоменклатуры").Меньше(200))
;
КонецПроцедуры
Процедура ГруппироватьМаксимумФункциейПолеСтрокой() Экспорт
ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Документ.РеализацияТоваровУслуг.Товары")
.Выбрать("Номенклатура")
.Максимум("Количество КАК МаксимальноеКоличествоНоменклатуры")
.Сгруппировать("Номенклатура")
.ВТаблицуЗначений()
;
ЮТест.ОжидаетЧто(ТаблицаЗначений)
.ИмеетТип("ТаблицаЗначений")
.ИмеетДлинуБольше(0)
.КаждыйЭлементСоответствуетПредикату(ЮТест.Предикат()
.Реквизит("МаксимальноеКоличествоНоменклатуры").Больше(0))
;
КонецПроцедуры
#КонецОбласти
#Область Прочее #Область Прочее
Процедура Порядок() Экспорт Процедура Порядок() Экспорт
// Выполнение // Выполнение
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, ЭтоГруппа") .Выбрать("Ссылка, ЭтоГруппа")
.Упорядочить("ЭтоГруппа, Наименование") .Упорядочить("ЭтоГруппа, Наименование")
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -997,7 +1293,7 @@
Процедура ПорядокУбывания() Экспорт Процедура ПорядокУбывания() Экспорт
// Выполнение // Выполнение
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Выбрать("Ссылка, ЭтоГруппа") .Выбрать("Ссылка, ЭтоГруппа")
.Упорядочить("ЭтоГруппа УБЫВ, Наименование") .Упорядочить("ЭтоГруппа УБЫВ, Наименование")
.ВТаблицуЗначений() .ВТаблицуЗначений()
@@ -1030,7 +1326,7 @@
Процедура Итоги() Экспорт Процедура Итоги() Экспорт
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура") ТаблицаЗначений = СхЗапрос.НовыйЗапрос("Справочник.Номенклатура")
.Итоги("ЭтоГруппа") .Итоги("ЭтоГруппа")
.ВТаблицуЗначений() .ВТаблицуЗначений()
; ;
@@ -1055,14 +1351,14 @@
НаименованияАдресныхОбъектов.Добавить("Абонентский Ящик"); НаименованияАдресныхОбъектов.Добавить("Абонентский Ящик");
// Выполнение // Выполнение
Запрос = СЗ_Запрос.НовыйЗапрос("РегистрСведений.УровниСокращенийАдресныхСведений") Запрос = СхЗапрос.НовыйЗапрос("РегистрСведений.УровниСокращенийАдресныхСведений")
.Выбрать("Значение КАК Наименование, Сокращение") .Выбрать("Значение КАК Наименование, Сокращение")
.Сгруппировать("Значение, Сокращение") .Сгруппировать("Значение, Сокращение")
.Упорядочить("Наименование"); .Упорядочить("Наименование");
Если ТипЗнч(НаименованияАдресныхОбъектов) = Тип("Массив") И НаименованияАдресныхОбъектов.Количество() > 0 Тогда Если ТипЗнч(НаименованияАдресныхОбъектов) = Тип("Массив") И НаименованияАдресныхОбъектов.Количество() > 0 Тогда
Запрос = Запрос Запрос = Запрос
.Где(СЗ_Запрос.Предикат() .Где(СхЗапрос.Предикат()
.Реквизит("Значение").ВСписке(НаименованияАдресныхОбъектов)); .Реквизит("Значение").ВСписке(НаименованияАдресныхОбъектов));
КонецЕсли; КонецЕсли;

View File

@@ -1,23 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<CommonModule uuid="b37c9dfc-97f9-419e-aef2-d1598bd7f793"> <CommonModule uuid="b37c9dfc-97f9-419e-aef2-d1598bd7f793">
<Properties> <Properties>
<Name>СЗ_ЗапросТестКлиент</Name> <Name>СхЗапросТестКлиент</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Схема запроса: запрос тест клиент</v8:content> <v8:content>Схема запроса: запрос тест клиент</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
<Global>false</Global> <Global>false</Global>
<ClientManagedApplication>true</ClientManagedApplication> <ClientManagedApplication>true</ClientManagedApplication>
<Server>false</Server> <Server>false</Server>
<ExternalConnection>false</ExternalConnection> <ExternalConnection>false</ExternalConnection>
<ClientOrdinaryApplication>false</ClientOrdinaryApplication> <ClientOrdinaryApplication>false</ClientOrdinaryApplication>
<ServerCall>false</ServerCall> <ServerCall>false</ServerCall>
<Privileged>false</Privileged> <Privileged>false</Privileged>
<ReturnValuesReuse>DontUse</ReturnValuesReuse> <ReturnValuesReuse>DontUse</ReturnValuesReuse>
</Properties> </Properties>
</CommonModule> </CommonModule>
</MetaDataObject> </MetaDataObject>

View File

@@ -1,23 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<CommonModule uuid="fd18e525-b216-4cbe-9e5b-3f44fcf6fcf2"> <CommonModule uuid="fd18e525-b216-4cbe-9e5b-3f44fcf6fcf2">
<Properties> <Properties>
<Name>СЗ_ЗапросТестСлужебныйВызовСервера</Name> <Name>СхЗапросТестСлужебныйВызовСервера</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Схема запроса: запрос тест служебный вызов сервера</v8:content> <v8:content>Схема запроса: запрос тест служебный вызов сервера</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
<Global>false</Global> <Global>false</Global>
<ClientManagedApplication>false</ClientManagedApplication> <ClientManagedApplication>false</ClientManagedApplication>
<Server>true</Server> <Server>true</Server>
<ExternalConnection>false</ExternalConnection> <ExternalConnection>false</ExternalConnection>
<ClientOrdinaryApplication>false</ClientOrdinaryApplication> <ClientOrdinaryApplication>false</ClientOrdinaryApplication>
<ServerCall>true</ServerCall> <ServerCall>true</ServerCall>
<Privileged>false</Privileged> <Privileged>false</Privileged>
<ReturnValuesReuse>DontUse</ReturnValuesReuse> <ReturnValuesReuse>DontUse</ReturnValuesReuse>
</Properties> </Properties>
</CommonModule> </CommonModule>
</MetaDataObject> </MetaDataObject>

View File

@@ -1,49 +1,49 @@
 
Функция ПолучитьГруппуНоменклатуры() Экспорт Функция ПолучитьГруппуНоменклатуры() Экспорт
Запрос = Новый Запрос; Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1
| Номенклатура.Ссылка КАК Ссылка | Номенклатура.Ссылка КАК Ссылка
|ИЗ |ИЗ
| Справочник.Номенклатура КАК Номенклатура | Справочник.Номенклатура КАК Номенклатура
|ГДЕ |ГДЕ
| Номенклатура.ЭтоГруппа"; | Номенклатура.ЭтоГруппа";
Выборка = Запрос.Выполнить().Выбрать(); Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий(); Выборка.Следующий();
Возврат Выборка.Ссылка; Возврат Выборка.Ссылка;
КонецФункции КонецФункции
Функция ПолучитьНоменклатуруНеСписке(МассивНоменклатуры) Экспорт Функция ПолучитьНоменклатуруНеСписке(МассивНоменклатуры) Экспорт
Запрос = Новый Запрос; Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ Запрос.Текст = "ВЫБРАТЬ
| Номенклатура.Ссылка КАК Ссылка | Номенклатура.Ссылка КАК Ссылка
|ИЗ |ИЗ
| Справочник.Номенклатура КАК Номенклатура | Справочник.Номенклатура КАК Номенклатура
|ГДЕ |ГДЕ
| Номенклатура.Ссылка НЕ В (&МассивНоменклатуры)"; | Номенклатура.Ссылка НЕ В (&МассивНоменклатуры)";
Запрос.УстановитьПараметр("МассивНоменклатуры", МассивНоменклатуры); Запрос.УстановитьПараметр("МассивНоменклатуры", МассивНоменклатуры);
Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"); Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
КонецФункции КонецФункции
Процедура ПроверитьПодобноПоРегулярномуВыражению(ТаблицаЗначений) Экспорт Процедура ПроверитьПодобноПоРегулярномуВыражению(ТаблицаЗначений) Экспорт
ЮТест.ОжидаетЧто(ТаблицаЗначений) ЮТест.ОжидаетЧто(ТаблицаЗначений)
.КаждыйЭлементСоответствуетПредикату(ЮТест.Предикат() .КаждыйЭлементСоответствуетПредикату(ЮТест.Предикат()
.Реквизит("Наименование").СодержитСтрокуПоШаблону("(Х|х)леб")) .Реквизит("Наименование").СодержитСтрокуПоШаблону("(Х|х)леб"))
КонецПроцедуры КонецПроцедуры
Процедура ПроверитьНеПодобноПоРегулярномуВыражению(ТаблицаЗначений) Экспорт Процедура ПроверитьНеПодобноПоРегулярномуВыражению(ТаблицаЗначений) Экспорт
ЮТест.ОжидаетЧто(ТаблицаЗначений) ЮТест.ОжидаетЧто(ТаблицаЗначений)
.КаждыйЭлементСоответствуетПредикату(ЮТест.Предикат() .КаждыйЭлементСоответствуетПредикату(ЮТест.Предикат()
.Реквизит("Наименование").НеСодержитСтрокуПоШаблону("(Х|х)леб")) .Реквизит("Наименование").НеСодержитСтрокуПоШаблону("(Х|х)леб"))
КонецПроцедуры КонецПроцедуры

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<CommonModule uuid="54eb4132-1b61-4d01-ba96-ff4bfe65f6f8">
<Properties>
<Name>СхОбщегоНазначенийКлиентСервер</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Схема запроса: общего назначений клиент-сервер</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Global>false</Global>
<ClientManagedApplication>true</ClientManagedApplication>
<Server>true</Server>
<ExternalConnection>false</ExternalConnection>
<ClientOrdinaryApplication>false</ClientOrdinaryApplication>
<ServerCall>false</ServerCall>
<Privileged>false</Privileged>
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
</Properties>
</CommonModule>
</MetaDataObject>

View File

@@ -0,0 +1,49 @@

#Область ПрограммныйИнтерфейс
Функция ПодготовиьРеквизитСУчетомФункции(Предикат) Экспорт
Если ПустаяСтрока(Предикат.ИмяФункции) Тогда
Возврат Предикат.ИмяРеквизита;
КонецЕсли;
Если Предикат.ИмяФункции = "Выразить" Тогда
Возврат СтрШаблон("ВЫРАЗИТЬ(%1 КАК %2)",
Предикат.ИмяРеквизита,
ПолучитьТипИзОписания(Предикат.ПараметрыФункции[0]));
ИначеЕсли Предикат.ИмяФункции = "ВыборКогда" Тогда
ВызватьИсключение "ПодготовиьРеквизитСУчетомФункции: не реализовано";
Возврат СтрШаблон("ВЫБОР
| КОГДА %1
| ТОГДА %2
| ИНАЧЕ %3
|КОНЕЦ", , , );
КонецЕсли;
ТекстИсключения = СтрШаблон("ПодготовиьРеквизитСУчетомФункции: неизвестная функция %1",
Предикат.ИмяФункции);
ВызватьИсключение ТекстИсключения;
КонецФункции
Функция ПолучитьТипИзОписания(ОписаниеТипа) Экспорт
Если ОписаниеТипа.СодержитТип(Тип("Строка")) Тогда
Возврат СтрШаблон("СТРОКА(%1)",
Формат(ОписаниеТипа.КвалификаторыСтроки.Длина, "ЧГ=0"))
ИначеЕсли ОписаниеТипа.СодержитТип(Тип("Число")) Тогда
Возврат СтрШаблон("ЧИСЛО(%1.%2)",
Формат(ОписаниеТипа.КвалификаторыЧисла.Разрядность, "ЧГ=0"),
Формат(ОписаниеТипа.КвалификаторыЧисла.Разрядность.ДробнойЧасти, "ЧГ=0"))
ИначеЕсли ОписаниеТипа.СодержитТип(Тип("Дата")) Тогда
Возврат "ДАТА";
Иначе
// TODO: Ссылочные типы данных
КонецЕсли;
ВызватьИсключение "ПолучитьТипИзОписания: неизвестный тип данных для выражения";
КонецФункции
#КонецОбласти

View File

@@ -2,7 +2,7 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<CommonModule uuid="407489b2-2f4b-467b-9594-621de146e468"> <CommonModule uuid="407489b2-2f4b-467b-9594-621de146e468">
<Properties> <Properties>
<Name>СЗ_ПроцессорыПредикатовКлиентСервер</Name> <Name>СхПроцессорыПредикатовКлиентСервер</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>

View File

@@ -4,15 +4,15 @@
// Возвращает обработку с контекстом и методами наполнения контекста предиката // Возвращает обработку с контекстом и методами наполнения контекста предиката
// //
// Возвращаемое значение: // Возвращаемое значение:
// - ОбработкаОбъект.СЗ_ПроцессорПредикатов - менеджер для серверного формирования предиката // - ОбработкаОбъект.СхПроцессорПредикатов - менеджер для серверного формирования предиката
// - ФормаКлиентскогоПриложения - менеджер для клиентского формирования предиката // - ФормаКлиентскогоПриложения - менеджер для клиентского формирования предиката
// //
Функция НовыйПроцессорПредикатов() Экспорт Функция НовыйПроцессорПредикатов() Экспорт
#Если Клиент Тогда #Если Клиент Тогда
ПроцессорПредикатов = ПолучитьФорму("Обработка.СЗ_ПроцессорПредикатов.Форма.Форма"); ПроцессорПредикатов = ПолучитьФорму("Обработка.СхПроцессорПредикатов.Форма.Форма");
#Иначе #Иначе
ПроцессорПредикатов = Обработки.СЗ_ПроцессорПредикатов.Создать(); ПроцессорПредикатов = Обработки.СхПроцессорПредикатов.Создать();
#КонецЕсли #КонецЕсли
Возврат ПроцессорПредикатов; Возврат ПроцессорПредикатов;

View File

@@ -2,7 +2,7 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<CommonModule uuid="19b0625e-9f74-4fba-9350-914066ae1034"> <CommonModule uuid="19b0625e-9f74-4fba-9350-914066ae1034">
<Properties> <Properties>
<Name>СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер</Name> <Name>СхПроцессорыПредикатовСлужебныйКлиентСервер</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>

View File

@@ -0,0 +1,81 @@

#Область ПрограммныйИнтерфейс
// Устанавливает имя реквизита, все последующие условия будут относится к нему
//
// Параметры:
// Предикат -
// ИмяРеквизита - Строка - имя реквизита
//
Процедура УстановитьИмяРеквизита(Предикат, ИмяРеквизита) Экспорт
Если Предикат = Неопределено Тогда
Предикат = Новый Структура("ИмяРеквизита, ИмяФункции, ПараметрыФункции, Условия",
"", "", Новый Массив, Новый Массив);
КонецЕсли;
Предикат.ИмяРеквизита = ИмяРеквизита;
КонецПроцедуры
//
//
Процедура УстановитьРеквизитВыборКогда(Предикат, ИмяРеквизита, ЗначениеИстина, ЗначениеЛожь) Экспорт
Если Предикат = Неопределено Тогда
Предикат = Новый Структура("ИмяРеквизита, ИмяФункции, ПараметрыФункции, Условия",
"", "", Новый Массив, Новый Массив);
КонецЕсли;
ПараметрыФункции = Новый Массив;
ПараметрыФункции.Добавить(ЗначениеИстина);
ПараметрыФункции.Добавить(ЗначениеЛожь);
Предикат.ИмяРеквизита = ИмяРеквизита;
Предикат.ИмяФункции = "ВыборКогда";
Предикат.ПараметрыФункции = ПараметрыФункции;
КонецПроцедуры
//
//
Процедура УстановитьРеквизитВыразить(Предикат, ИмяРеквизита, ОписаниеТипа) Экспорт
Если Предикат = Неопределено Тогда
Предикат = Новый Структура("ИмяРеквизита, ИмяФункции, ПараметрыФункции, Условия",
"", "", Новый Массив, Новый Массив);
КонецЕсли;
ПараметрыФункции = Новый Массив;
ПараметрыФункции.Добавить(ОписаниеТипа);
Предикат.ИмяРеквизита = ИмяРеквизита;
Предикат.ИмяФункции = "Выразить";
Предикат.ПараметрыФункции = ПараметрыФункции;
КонецПроцедуры
// Устанавливает вид и значение сравнения для условия
//
// Параметры:
// Предикат - ОбработкаОбъект.СхПроцессорПредикатов -
// - ФормаКлиентскогоПриложения -
// ВидСравнения - Строка -
// Значение - Производьный -
//
Процедура УстановитьПредикат(Предикат, ВидСравнения, Значение) Экспорт
Если Предикат = Неопределено Или ПустаяСтрока(Предикат.ИмяРеквизита) Тогда
ВызватьИсключение "Ошибочный порядок вызова функций формирования предиката";
КонецЕсли;
Условие = Новый Структура("ИмяРеквизита, ВидСравнения, Значение",
СхОбщегоНазначенийКлиентСервер.ПодготовиьРеквизитСУчетомФункции(Предикат),
ВидСравнения,
Значение);
Предикат.Условия.Добавить(Условие);
КонецПроцедуры
#КонецОбласти

View File

@@ -2,7 +2,7 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<CommonModule uuid="a3e5bf50-2154-477f-9355-29b0930a73c5"> <CommonModule uuid="a3e5bf50-2154-477f-9355-29b0930a73c5">
<Properties> <Properties>
<Name>СЗ_ПроцессорыСхемЗапросаКлиентСервер</Name> <Name>СхПроцессорыСхемЗапросаКлиентСервер</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>

View File

@@ -10,15 +10,15 @@
// Разрешенные - Булево - признак ограничения выборки с применением RLS // Разрешенные - Булево - признак ограничения выборки с применением RLS
// //
// Возвращаемое значение: // Возвращаемое значение:
// - ОбработкаОбъект.СЗ_ПроцессорСхемЗапроса - менеджер для серверного формирования запроса // - ОбработкаОбъект.СхПроцессорСхемЗапроса - менеджер для серверного формирования запроса
// - ФормаКлиентскогоПриложения - менеджер для клиентского формирования запроса // - ФормаКлиентскогоПриложения - менеджер для клиентского формирования запроса
// //
Функция НовыйПроцессорСхемЗапроса(ИсточникДанных, Первые, Различные, Разрешенные) Экспорт Функция НовыйПроцессорСхемЗапроса(ИсточникДанных, Первые, Различные, Разрешенные) Экспорт
#Если Клиент Тогда #Если Клиент Тогда
ПроцессорСхемЗапроса = ПолучитьФорму("Обработка.СЗ_ПроцессорСхемЗапроса.Форма.Форма"); ПроцессорСхемЗапроса = ПолучитьФорму("Обработка.СхПроцессорСхемЗапроса.Форма.Форма");
#Иначе #Иначе
ПроцессорСхемЗапроса = Обработки.СЗ_ПроцессорСхемЗапроса.Создать(); ПроцессорСхемЗапроса = Обработки.СхПроцессорСхемЗапроса.Создать();
#КонецЕсли #КонецЕсли
ПроцессорСхемЗапроса.УстановитьИсточникДанных(ИсточникДанных, Первые, Различные, Разрешенные); ПроцессорСхемЗапроса.УстановитьИсточникДанных(ИсточникДанных, Первые, Различные, Разрешенные);

View File

@@ -2,7 +2,7 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<CommonModule uuid="fd5aeea0-9a03-452d-ba1e-81c816846c6c"> <CommonModule uuid="fd5aeea0-9a03-452d-ba1e-81c816846c6c">
<Properties> <Properties>
<Name>СЗ_ПроцессорыСхемЗапросаСлужебный</Name> <Name>СхПроцессорыСхемЗапросаСлужебный</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>

View File

@@ -59,7 +59,7 @@
// Соединения добавляются раньше всех чтобы к моменту добавления полей у нас // Соединения добавляются раньше всех чтобы к моменту добавления полей у нас
// уже были все возможные источники данных // уже были все возможные источники данных
ДобавитьСоединения(Оператор, Запрос, СтруктураСхемыЗапроса); ДобавитьСоединения(Оператор, Запрос, СтруктураСхемыЗапроса);
ДобавитьПоля(ЗапросПакета, Оператор, СтруктураСхемыЗапроса, ЭтоПоляИзВложенногоЗапроса); ДобавитьПоля(ЗапросПакета, Оператор, Запрос, СтруктураСхемыЗапроса, ЭтоПоляИзВложенногоЗапроса);
ДобавитьУсловия(Оператор, Запрос, СтруктураСхемыЗапроса); ДобавитьУсловия(Оператор, Запрос, СтруктураСхемыЗапроса);
ДобавитьГруппировку(Оператор, СтруктураСхемыЗапроса); ДобавитьГруппировку(Оператор, СтруктураСхемыЗапроса);
ДобавитьПорядок(ЗапросПакета, СтруктураСхемыЗапроса); ДобавитьПорядок(ЗапросПакета, СтруктураСхемыЗапроса);
@@ -124,35 +124,38 @@
КонецФункции КонецФункции
Процедура ДобавитьПоля(ЗапросПакета, Оператор, СтруктураСхемыЗапроса, ЭтоПоляИзВложенногоЗапроса = Ложь) Процедура ДобавитьПоля(ЗапросПакета, Оператор, Запрос, СтруктураСхемыЗапроса, ЭтоПоляИзВложенногоЗапроса = Ложь)
Если СтруктураСхемыЗапроса.Свойство("Поля") И Если СтруктураСхемыЗапроса.Свойство("Поля") И
ТипЗнч(СтруктураСхемыЗапроса.Поля) = Тип("Массив") И ТипЗнч(СтруктураСхемыЗапроса.Поля) = Тип("Массив") И
СтруктураСхемыЗапроса.Поля.Количество() > 0 Тогда СтруктураСхемыЗапроса.Поля.Количество() > 0 Тогда
Для каждого Поле Из СтруктураСхемыЗапроса.Поля Цикл Для каждого Поле Из СтруктураСхемыЗапроса.Поля Цикл
Если Не Поле.Источник = Неопределено Тогда Если Не Поле.Источник = Неопределено Тогда
ИсточникПоля = Оператор.Источники.НайтиПоПсевдониму(Поле.Источник); ИсточникПоля = Оператор.Источники.НайтиПоПсевдониму(Поле.Источник);
Иначе Иначе
ИсточникПоля = Оператор.Источники[0]; ИсточникПоля = Оператор.Источники[0];
КонецЕсли; КонецЕсли;
Если Не ИсточникПоля = Неопределено Тогда ДоступноеПоле = ИсточникПоля.Источник.ДоступныеПоля.Найти(Поле.ИмяПоля);
ДоступноеПоле = ИсточникПоля.Источник.ДоступныеПоля.Найти(Поле.ИмяПоля); Если Не ДоступноеПоле = Неопределено Тогда
Если Не ДоступноеПоле = Неопределено Тогда Если Не ЭтоПоляИзВложенногоЗапроса Тогда
Если Не ЭтоПоляИзВложенногоЗапроса Тогда Оператор.ВыбираемыеПоля.Добавить(ДоступноеПоле);
НовоеПоле = Оператор.ВыбираемыеПоля.Добавить(ДоступноеПоле);
Иначе
НовоеПоле = Оператор.ВыбираемыеПоля.Добавить(ДоступноеПоле,
ИсточникПоля.Источник.ДоступныеПоля.Индекс(ДоступноеПоле));
КонецЕсли;
Если Не Поле.Псевдоним = Неопределено Тогда
ЗапросПакета.Колонки[ЗапросПакета.Колонки.Количество() - 1].Псевдоним = Поле.Псевдоним;
КонецЕсли;
Иначе Иначе
ВызватьИсключение СтрШаблон("Поле %1 в источнике не определено", Поле.ИмяПоля); Оператор.ВыбираемыеПоля.Добавить(ДоступноеПоле,
ИсточникПоля.Источник.ДоступныеПоля.Индекс(ДоступноеПоле));
КонецЕсли; КонецЕсли;
ИначеЕсли Поле.Источник = Неопределено Тогда
Оператор.ВыбираемыеПоля.Добавить(Поле.ИмяПоля);
Иначе
ВызватьИсключение СтрШаблон("ДобавитьПоля: поле %1 в источнике не определено", Поле.ИмяПоля);
КонецЕсли; КонецЕсли;
Если Не Поле.Псевдоним = Неопределено Тогда
ЗапросПакета.Колонки[ЗапросПакета.Колонки.Количество() - 1].Псевдоним = Поле.Псевдоним;
КонецЕсли;
КонецЦикла; КонецЦикла;
Иначе Иначе
ЕстьСсылка = Ложь; ЕстьСсылка = Ложь;
@@ -179,10 +182,13 @@
Если СтруктураСхемыЗапроса.Свойство("Условия") И ТипЗнч(СтруктураСхемыЗапроса.Условия) = Тип("Массив") Тогда Если СтруктураСхемыЗапроса.Свойство("Условия") И ТипЗнч(СтруктураСхемыЗапроса.Условия) = Тип("Массив") Тогда
Для каждого Условие Из СтруктураСхемыЗапроса.Условия Цикл Для каждого Условие Из СтруктураСхемыЗапроса.Условия Цикл
// Такая ситуация может возникнуть когда передают два параметра для функции МЕЖДУ // Такая ситуация может возникнуть когда передают два параметра для функции МЕЖДУ.
// Второй параметр в массиве условий идёт с пустрой строкой в переменной УсловиеСтрокой
Если Не ПустаяСтрока(Условие.УсловиеСтрокой) Тогда Если Не ПустаяСтрока(Условие.УсловиеСтрокой) Тогда
Оператор.Отбор.Добавить(Условие.УсловиеСтрокой); Оператор.Отбор.Добавить(Условие.УсловиеСтрокой);
КонецЕсли; КонецЕсли;
// TODO: Можно Условие.ИмяПараметра и Условие.Значение отсюда убрать
// и перенести это в секцию "Параметры". Рефакторинг!
Запрос.УстановитьПараметр(Условие.ИмяПараметра, Условие.Значение); Запрос.УстановитьПараметр(Условие.ИмяПараметра, Условие.Значение);
КонецЦикла; КонецЦикла;
КонецЕсли; КонецЕсли;

View File

@@ -2,7 +2,7 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<CommonModule uuid="64cc4f13-8ea3-43e0-b530-031a569bfcd0"> <CommonModule uuid="64cc4f13-8ea3-43e0-b530-031a569bfcd0">
<Properties> <Properties>
<Name>СЗ_ПроцессорыСхемЗапросаСлужебныйВызовСервера</Name> <Name>СхПроцессорыСхемЗапросаСлужебныйВызовСервера</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>

View File

@@ -1,53 +1,53 @@
 
#Область ПрограммныйИнтерфейс #Область ПрограммныйИнтерфейс
Функция ПолучитьТаблицуЗначений(СтруктураСхемыЗапроса) Экспорт Функция ПолучитьТаблицуЗначений(СтруктураСхемыЗапроса) Экспорт
ТаблицаЗначений = СЗ_ПроцессорыСхемЗапросаСлужебный ТаблицаЗначений = СхПроцессорыСхемЗапросаСлужебный
.ПолучитьРезультатЗапроса(СтруктураСхемыЗапроса) .ПолучитьРезультатЗапроса(СтруктураСхемыЗапроса)
.Выгрузить(); .Выгрузить();
Возврат ПреобразоватьТаблицуЗначенийВМассивСтруктур(ТаблицаЗначений); Возврат ПреобразоватьТаблицуЗначенийВМассивСтруктур(ТаблицаЗначений);
КонецФункции КонецФункции
Функция ПолучитьМассив(СтруктураСхемыЗапроса, ИмяКолонки) Экспорт Функция ПолучитьМассив(СтруктураСхемыЗапроса, ИмяКолонки) Экспорт
Возврат СЗ_ПроцессорыСхемЗапросаСлужебный Возврат СхПроцессорыСхемЗапросаСлужебный
.ПолучитьРезультатЗапроса(СтруктураСхемыЗапроса) .ПолучитьРезультатЗапроса(СтруктураСхемыЗапроса)
.Выгрузить() .Выгрузить()
.ВыгрузитьКолонку(ИмяКолонки); .ВыгрузитьКолонку(ИмяКолонки);
КонецФункции КонецФункции
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
Функция ПреобразоватьТаблицуЗначенийВМассивСтруктур(ТаблицаЗначений) Функция ПреобразоватьТаблицуЗначенийВМассивСтруктур(ТаблицаЗначений)
Массив = Новый Массив(); Массив = Новый Массив();
СтруктураСтрокой = ""; СтруктураСтрокой = "";
НужнаЗапятая = Ложь; НужнаЗапятая = Ложь;
ОписаниеТаблицыЗначений = Новый ОписаниеТипов("ТаблицаЗначений"); ОписаниеТаблицыЗначений = Новый ОписаниеТипов("ТаблицаЗначений");
Для Каждого Колонка Из ТаблицаЗначений.Колонки Цикл Для Каждого Колонка Из ТаблицаЗначений.Колонки Цикл
Если Колонка.ТипЗначения = ОписаниеТаблицыЗначений Тогда Если Колонка.ТипЗначения = ОписаниеТаблицыЗначений Тогда
Продолжить; Продолжить;
КонецЕсли; КонецЕсли;
Если НужнаЗапятая Тогда Если НужнаЗапятая Тогда
СтруктураСтрокой = СтруктураСтрокой + ","; СтруктураСтрокой = СтруктураСтрокой + ",";
КонецЕсли; КонецЕсли;
СтруктураСтрокой = СтруктураСтрокой + Колонка.Имя; СтруктураСтрокой = СтруктураСтрокой + Колонка.Имя;
НужнаЗапятая = Истина; НужнаЗапятая = Истина;
КонецЦикла; КонецЦикла;
Для Каждого Строка Из ТаблицаЗначений Цикл Для Каждого Строка Из ТаблицаЗначений Цикл
НоваяСтрока = Новый Структура(СтруктураСтрокой); НоваяСтрока = Новый Структура(СтруктураСтрокой);
ЗаполнитьЗначенияСвойств(НоваяСтрока, Строка); ЗаполнитьЗначенияСвойств(НоваяСтрока, Строка);
Массив.Добавить(НоваяСтрока); Массив.Добавить(НоваяСтрока);
КонецЦикла; КонецЦикла;
Возврат Массив; Возврат Массив;
КонецФункции КонецФункции
#КонецОбласти #КонецОбласти

View File

@@ -2,11 +2,11 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<CommonModule uuid="a7341127-4ed0-44b9-b3b2-007ae8f263dc"> <CommonModule uuid="a7341127-4ed0-44b9-b3b2-007ae8f263dc">
<Properties> <Properties>
<Name>СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер</Name> <Name>СхПроцессорыСхемЗапросаСлужебныйКлиентСервер</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Схема запроса: процессоры схем запроса служебный клиент сервер</v8:content> <v8:content>Схема запроса: процессоры схем запроса (служебный) клиент-сервер</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>

View File

@@ -79,7 +79,7 @@
Процедура УстановитьУсловие(СхемаЗапроса, Предикат) Экспорт Процедура УстановитьУсловие(СхемаЗапроса, Предикат) Экспорт
СхемаЗапроса.Вставить("Условия", ПолучитьУсловияОтбора(Предикат)); СхемаЗапроса.Вставить("Условия", ПолучитьУсловияОтбора(СхемаЗапроса, Предикат));
КонецПроцедуры КонецПроцедуры
@@ -213,10 +213,154 @@
Процедура УстановитьПараметры(СхемаЗапроса, Параметры) Экспорт Процедура УстановитьПараметры(СхемаЗапроса, Параметры) Экспорт
СхемаЗапроса.Вставить("Параметры", Параметры); МассивПараметров = Новый Массив;
Если СхемаЗапроса.Свойство("Параметры") И ТипЗнч(СхемаЗапроса.Параметры) = Тип("Массив") Тогда
МассивПараметров = СхемаЗапроса.Параметры;
КонецЕсли;
Для каждого Параметр Из Параметры Цикл
МассивПараметров.Добавить(Параметр);
КонецЦикла;
СхемаЗапроса.Вставить("Параметры", МассивПараметров);
КонецПроцедуры КонецПроцедуры
#Область Функции
Процедура УстановитьВыборКогда(СхемаЗапроса, Предикат, ЗначениеИстина, ЗначениеЛожь, Псевдоним) Экспорт
МассивПолей = Новый Массив;
Если СхемаЗапроса.Свойство("Поля") И ТипЗнч(СхемаЗапроса.Поля) = Тип("Массив") Тогда
МассивПолей = СхемаЗапроса.Поля;
КонецЕсли;
МассивПараметров = Новый Массив;
Если СхемаЗапроса.Свойство("Параметры") И ТипЗнч(СхемаЗапроса.Параметры) = Тип("Массив") Тогда
МассивПараметров = СхемаЗапроса.Параметры;
КонецЕсли;
Условия = ПолучитьУсловияОтбора(СхемаЗапроса, Предикат);
УсловиеСтрокой = "";
Для каждого Условие Из Условия Цикл
Если Не ПустаяСтрока(УсловиеСтрокой) Тогда
УсловиеСтрокой = УсловиеСтрокой + " И ";
КонецЕсли;
УсловиеСтрокой = УсловиеСтрокой + Условие.УсловиеСтрокой;
МассивПараметров.Добавить(Новый Структура("ИмяПараметра, Значение",
Условие.ИмяПараметра, Условие.Значение));
КонецЦикла;
ПриведенноеЗначениеИстина = ПривестиЗначение(ЗначениеИстина);
ПриведенноеЗначениеЛожь = ПривестиЗначение(ЗначениеЛожь);
ШаблонВыборКогда = "ВЫБОР
| КОГДА %1
| ТОГДА %2
| ИНАЧЕ %3
|КОНЕЦ";
МассивПолей.Добавить(Новый Структура("ИмяПоля, Источник, Псевдоним",
СтрШаблон(ШаблонВыборКогда, УсловиеСтрокой, ПриведенноеЗначениеИстина, ПриведенноеЗначениеЛожь),
Неопределено,
Псевдоним));
СхемаЗапроса.Вставить("Поля", МассивПолей);
СхемаЗапроса.Вставить("Параметры", МассивПараметров);
КонецПроцедуры
Процедура УстановитьКоличество(СхемаЗапроса, Поле) Экспорт
МассивПолей = Новый Массив;
Если СхемаЗапроса.Свойство("Поля") И ТипЗнч(СхемаЗапроса.Поля) = Тип("Массив") Тогда
МассивПолей = СхемаЗапроса.Поля;
КонецЕсли;
НовоеПоле = ПолучитьПоле(Поле);
НовоеПоле.ИмяПоля = СтрШаблон("КОЛИЧЕСТВО(%1)", НовоеПоле.ИмяПоля);
МассивПолей.Добавить(НовоеПоле);
СхемаЗапроса.Вставить("Поля", МассивПолей);
КонецПроцедуры
Процедура УстановитьСумму(СхемаЗапроса, Поле) Экспорт
МассивПолей = Новый Массив;
Если СхемаЗапроса.Свойство("Поля") И ТипЗнч(СхемаЗапроса.Поля) = Тип("Массив") Тогда
МассивПолей = СхемаЗапроса.Поля;
КонецЕсли;
НовоеПоле = ПолучитьПоле(Поле);
НовоеПоле.ИмяПоля = СтрШаблон("СУММА(%1)", НовоеПоле.ИмяПоля);
МассивПолей.Добавить(НовоеПоле);
СхемаЗапроса.Вставить("Поля", МассивПолей);
КонецПроцедуры
Процедура УстановитьМаксимум(СхемаЗапроса, Поле) Экспорт
МассивПолей = Новый Массив;
Если СхемаЗапроса.Свойство("Поля") И ТипЗнч(СхемаЗапроса.Поля) = Тип("Массив") Тогда
МассивПолей = СхемаЗапроса.Поля;
КонецЕсли;
НовоеПоле = ПолучитьПоле(Поле);
НовоеПоле.ИмяПоля = СтрШаблон("МАКСИМУМ(%1)", НовоеПоле.ИмяПоля);
МассивПолей.Добавить(НовоеПоле);
СхемаЗапроса.Вставить("Поля", МассивПолей);
КонецПроцедуры
Процедура УстановитьМинимум(СхемаЗапроса, Поле) Экспорт
МассивПолей = Новый Массив;
Если СхемаЗапроса.Свойство("Поля") И ТипЗнч(СхемаЗапроса.Поля) = Тип("Массив") Тогда
МассивПолей = СхемаЗапроса.Поля;
КонецЕсли;
НовоеПоле = ПолучитьПоле(Поле);
НовоеПоле.ИмяПоля = СтрШаблон("МИНИМУМ(%1)", НовоеПоле.ИмяПоля);
МассивПолей.Добавить(НовоеПоле);
СхемаЗапроса.Вставить("Поля", МассивПолей);
КонецПроцедуры
Процедура УстановитьВыразить(СхемаЗапроса, Поле, ОписаниеТипа, Псевдоним) Экспорт
МассивПолей = Новый Массив;
Если СхемаЗапроса.Свойство("Поля") И ТипЗнч(СхемаЗапроса.Поля) = Тип("Массив") Тогда
МассивПолей = СхемаЗапроса.Поля;
КонецЕсли;
НовоеПоле = ПолучитьПоле(Поле);
Если НовоеПоле.Источник = Неопределено Тогда
ШаблонВыражения = "ВЫРАЗИТЬ(%2 КАК %3)";
Иначе
ШаблонВыражения = "ВЫРАЗИТЬ(%1.%2 КАК %3)";
КонецЕсли;
НовоеПоле.ИмяПоля = СтрШаблон(ШаблонВыражения,
НовоеПоле.Источник,
НовоеПоле.ИмяПоля,
СхОбщегоНазначенийКлиентСервер.ПолучитьТипИзОписания(ОписаниеТипа));
Если ПустаяСтрока(НовоеПоле.Псевдоним) Тогда
НовоеПоле.Псевдоним = Псевдоним;
КонецЕсли;
МассивПолей.Добавить(НовоеПоле);
СхемаЗапроса.Вставить("Поля", МассивПолей);
КонецПроцедуры
#КонецОбласти
#КонецОбласти #КонецОбласти
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
@@ -235,15 +379,38 @@
Функция ПолучитьПоле(Поле) Функция ПолучитьПоле(Поле)
// TODO: Строки проверять на корректность синтаксиса - отсутствие пробелов и спец.символов // TODO: Строки проверять на корректность синтаксиса - отсутствие пробелов и спец.символов
// TODO: Не функция, а какая-то жесть получилась. Рефакторить!
Если ТипЗнч(Поле) = Тип("Строка") Тогда Если ТипЗнч(Поле) = Тип("Строка") Тогда
Если СтрНайти(Поле, " КАК ") > 0 Тогда Если СтрНайти(Поле, " КАК ") > 0 Тогда
ИнформацияОПоле = СтрЗаменить(Поле, " КАК ", Символы.ПС); Псевдоним = Прав(Поле, СтрДлина(Поле) - СтрНайти(Поле, " КАК ") - 4);
БезПсевдонима = Лев(Поле, СтрНайти(Поле, " КАК ") - 1);
Если СтрНайти(ВРег(Поле), "ВЫРАЗИТЬ(") > 0 Или
(СтрНайти(ВРег(Поле), "ВЫБОР") > 0 И
СтрНайти(ВРег(Поле), "КОГДА") > 0 И
СтрНайти(ВРег(Поле), "ТОГДА") > 0 И
СтрНайти(ВРег(Поле), "ИНАЧЕ") > 0 И
СтрНайти(ВРег(Поле), "КОНЕЦ") > 0) Тогда
Возврат Новый Структура("ИмяПоля, Источник, Псевдоним",
БезПсевдонима,
Неопределено,
Псевдоним);
КонецЕсли;
// Вырезаю поле из агрегатной функции
Если СтрНайти(БезПсевдонима, "(") > 0 И СтрНайти(БезПсевдонима, ")") > 0 Тогда
БезПсевдонима = Сред(БезПсевдонима,
СтрНайти(БезПсевдонима, "(") + 1,
СтрНайти(БезПсевдонима, ")") - СтрНайти(БезПсевдонима, "(") - 1);
КонецЕсли;
Возврат Новый Структура("ИмяПоля, Источник, Псевдоним", Возврат Новый Структура("ИмяПоля, Источник, Псевдоним",
ПолучитьИмяПоляБезИсточника(СтрПолучитьСтроку(ИнформацияОПоле, 1)), ПолучитьИмяПоляБезИсточника(БезПсевдонима),
ПолучитьИсточникИзИмениПоля(Поле), ПолучитьИсточникИзИмениПоля(БезПсевдонима),
СтрПолучитьСтроку(ИнформацияОПоле, 2)); Псевдоним);
КонецЕсли; КонецЕсли;
Возврат Новый Структура("ИмяПоля, Источник, Псевдоним", Возврат Новый Структура("ИмяПоля, Источник, Псевдоним",
@@ -309,12 +476,14 @@
КонецФункции КонецФункции
Функция ПолучитьУсловияОтбора(Предикат) Функция ПолучитьУсловияОтбора(СхемаЗапроса, Предикат)
// TODO: Нумерация (Сч) сквозная через все запросы
МассивУсловий = Новый Массив; МассивУсловий = Новый Массив;
Сч = 0; Если СхемаЗапроса.Свойство("СчетчикПараметров") И ТипЗнч(СхемаЗапроса.СчетчикПараметров) = Тип("Число") Тогда
Сч = СхемаЗапроса.СчетчикПараметров;
Иначе
Сч = 0;
КонецЕсли;
Для каждого Условие Из Предикат.Условия Цикл Для каждого Условие Из Предикат.Условия Цикл
ИмяПараметра = СтрШаблон("Параметр_%1", Сч); ИмяПараметра = СтрШаблон("Параметр_%1", Сч);
@@ -342,6 +511,8 @@
Сч = Сч + 1; Сч = Сч + 1;
КонецЦикла; КонецЦикла;
СхемаЗапроса.Вставить("СчетчикПараметров", Сч);
Возврат МассивУсловий; Возврат МассивУсловий;
КонецФункции КонецФункции
@@ -368,7 +539,7 @@
Функция ШаблонУсловия(ВидСравнения, Амперсанд = Истина) Функция ШаблонУсловия(ВидСравнения, Амперсанд = Истина)
Выражения = СЗ_ПроцессорыПредикатовКлиентСервер.Выражения(); Выражения = СхПроцессорыПредикатовКлиентСервер.Выражения();
Если ВидСравнения = Выражения.Равно Тогда Если ВидСравнения = Выражения.Равно Тогда
Шаблон = "%1 = " + ?(Амперсанд, "&", "") + "%2"; Шаблон = "%1 = " + ?(Амперсанд, "&", "") + "%2";
@@ -415,4 +586,22 @@
КонецФункции КонецФункции
Функция ПолучитьСтруктуруФункции()
Возврат Новый Структура("Функция, Параметры");
КонецФункции
Функция ПривестиЗначение(Значение)
Если ТипЗнч(Значение) = Тип("Число") Тогда
Возврат Формат(Значение, "ЧН=; ЧГ=0");
ИначеЕсли ТипЗнч(Значение) = Тип("Строка") Тогда
Возврат СтрШаблон("""%1""", Значение);
КонецЕсли;
ВызватьИсключение "ПривестиЗначение: значение неизвестного типа";
КонецФункции
#КонецОбласти #КонецОбласти

View File

@@ -1,43 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<ConfigDumpInfo xmlns="http://v8.1c.ru/8.3/xcf/dumpinfo" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" format="Hierarchical" version="2.18"> <ConfigDumpInfo xmlns="http://v8.1c.ru/8.3/xcf/dumpinfo" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" format="Hierarchical" version="2.18">
<ConfigVersions> <ConfigVersions>
<Metadata name="CommonModule.СЗ_Запрос" id="5f1605a0-4e63-4339-b2cc-44e115be6ed7" configVersion="e2743c37ca1c317bbd7deb62473bdb9c92ce4b3b"/> <Metadata name="CommonModule.СхЗапрос" id="5f1605a0-4e63-4339-b2cc-44e115be6ed7" configVersion="0f166080406b4803d2bed7934bfc40812f1abe1b"/>
<Metadata name="CommonModule.СЗ_Запрос.Module" id="5f1605a0-4e63-4339-b2cc-44e115be6ed7.0" configVersion="2d2c622caa84ff141251af599ce106105240ac02"/> <Metadata name="CommonModule.СхЗапрос.Module" id="5f1605a0-4e63-4339-b2cc-44e115be6ed7.0" configVersion="cadb56f56e948833a14dfc1e5588b4985420427b"/>
<Metadata name="CommonModule.СЗ_ЗапросТест" id="52ab0c6f-4fa1-4913-b37e-460ab1e44314" configVersion="01955255914f2f02da26b7a05ec1ffe713f168e1"/> <Metadata name="CommonModule.СхЗапросТест" id="52ab0c6f-4fa1-4913-b37e-460ab1e44314" configVersion="e4cd1d3ae5b3dfc796a93963e27ac1808ac21bcc"/>
<Metadata name="CommonModule.СЗ_ЗапросТест.Module" id="52ab0c6f-4fa1-4913-b37e-460ab1e44314.0" configVersion="90970161bc2ad87328b3dab31879b1a1934655a9"/> <Metadata name="CommonModule.СхЗапросТест.Module" id="52ab0c6f-4fa1-4913-b37e-460ab1e44314.0" configVersion="ead991640c2583e96d7950d80f10fe68f5f02cdc"/>
<Metadata name="CommonModule.СЗ_ЗапросТестКлиент" id="b37c9dfc-97f9-419e-aef2-d1598bd7f793" configVersion="5359322a8c19378b2e3c1b14d2a9391855efe7df"/> <Metadata name="CommonModule.СхЗапросТестКлиент" id="b37c9dfc-97f9-419e-aef2-d1598bd7f793" configVersion="abddeb6317bbb90599f5d3a6800d916974d522b9"/>
<Metadata name="CommonModule.СЗ_ЗапросТестКлиент.Module" id="b37c9dfc-97f9-419e-aef2-d1598bd7f793.0" configVersion="9effdd33214bfa0c3b4416e435ed56e6bebeaa5a"/> <Metadata name="CommonModule.СхЗапросТестКлиент.Module" id="b37c9dfc-97f9-419e-aef2-d1598bd7f793.0" configVersion="0f4d03e494116e0a169ac79a89449bc6fe8b680c"/>
<Metadata name="CommonModule.СЗ_ЗапросТестСлужебныйВызовСервера" id="fd18e525-b216-4cbe-9e5b-3f44fcf6fcf2" configVersion="e712d7406cf41efebb6cb460b71efc934d7fda79"/> <Metadata name="CommonModule.СхЗапросТестСлужебныйВызовСервера" id="fd18e525-b216-4cbe-9e5b-3f44fcf6fcf2" configVersion="eb43fe5ee123d7869a0578d44bd110f4e29ed798"/>
<Metadata name="CommonModule.СЗ_ЗапросТестСлужебныйВызовСервера.Module" id="fd18e525-b216-4cbe-9e5b-3f44fcf6fcf2.0" configVersion="2996bad07721c51263093d0143fd261dacf6a7e8"/> <Metadata name="CommonModule.СхЗапросТестСлужебныйВызовСервера.Module" id="fd18e525-b216-4cbe-9e5b-3f44fcf6fcf2.0" configVersion="e6a50bf7d3b4661197d11e0031a81a0c411be09b"/>
<Metadata name="CommonModule.СЗ_ПроцессорыПредикатовКлиентСервер" id="407489b2-2f4b-467b-9594-621de146e468" configVersion="d0e776fe2161eadb117e389e6d86e40d8f7927fc"/> <Metadata name="CommonModule.СхОбщегоНазначенийКлиентСервер" id="54eb4132-1b61-4d01-ba96-ff4bfe65f6f8" configVersion="f0ddd8cc8c3ab867a2416783d887754c13bd55fc"/>
<Metadata name="CommonModule.СЗ_ПроцессорыПредикатовКлиентСервер.Module" id="407489b2-2f4b-467b-9594-621de146e468.0" configVersion="fb94599ea596770fca7e3dd00307a498b92e68e6"/> <Metadata name="CommonModule.СхОбщегоНазначенийКлиентСервер.Module" id="54eb4132-1b61-4d01-ba96-ff4bfe65f6f8.0" configVersion="82370929e314ec3d1e0e23f467f2d9dde948a99d"/>
<Metadata name="CommonModule.СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер" id="19b0625e-9f74-4fba-9350-914066ae1034" configVersion="97824f99f8fe96dacf2d8271e35b6b11a89a7f4f"/> <Metadata name="CommonModule.СхПроцессорыПредикатовКлиентСервер" id="407489b2-2f4b-467b-9594-621de146e468" configVersion="375a4cad162b05500d054bbc6a6b2eb5c3c17a89"/>
<Metadata name="CommonModule.СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.Module" id="19b0625e-9f74-4fba-9350-914066ae1034.0" configVersion="cbc9286be5a8856562683b5770cf54b15dd8fba3"/> <Metadata name="CommonModule.СхПроцессорыПредикатовКлиентСервер.Module" id="407489b2-2f4b-467b-9594-621de146e468.0" configVersion="08673b19374f9a17b5f923c53925186c20107924"/>
<Metadata name="CommonModule.СЗ_ПроцессорыСхемЗапросаКлиентСервер" id="a3e5bf50-2154-477f-9355-29b0930a73c5" configVersion="0a1d47680d6c53bcec9c7b566903a863ce26bf77"/> <Metadata name="CommonModule.СхПроцессорыПредикатовСлужебныйКлиентСервер" id="19b0625e-9f74-4fba-9350-914066ae1034" configVersion="cea811bfa991650b7bd13624fbc5b68375f054c1"/>
<Metadata name="CommonModule.СЗ_ПроцессорыСхемЗапросаКлиентСервер.Module" id="a3e5bf50-2154-477f-9355-29b0930a73c5.0" configVersion="549fad0d337d4f6e1888453356a6baefa249ed3b"/> <Metadata name="CommonModule.СхПроцессорыПредикатовСлужебныйКлиентСервер.Module" id="19b0625e-9f74-4fba-9350-914066ae1034.0" configVersion="70057051b2459ccacd30c8b668e219f05c0a7476"/>
<Metadata name="CommonModule.СЗ_ПроцессорыСхемЗапросаСлужебный" id="fd5aeea0-9a03-452d-ba1e-81c816846c6c" configVersion="77f2ed6a2d9924e64f836b9a16c0664b4a5a38e8"/> <Metadata name="CommonModule.СхПроцессорыСхемЗапросаКлиентСервер" id="a3e5bf50-2154-477f-9355-29b0930a73c5" configVersion="d5dc79a29726742dd44754fd1200ed961e5eb47b"/>
<Metadata name="CommonModule.СЗ_ПроцессорыСхемЗапросаСлужебный.Module" id="fd5aeea0-9a03-452d-ba1e-81c816846c6c.0" configVersion="f790a5b56fc31af89af7965da9647d753c06893d"/> <Metadata name="CommonModule.СхПроцессорыСхемЗапросаКлиентСервер.Module" id="a3e5bf50-2154-477f-9355-29b0930a73c5.0" configVersion="0dd0df1608449960758e6e58dd0c3ac8a20a1610"/>
<Metadata name="CommonModule.СЗ_ПроцессорыСхемЗапросаСлужебныйВызовСервера" id="64cc4f13-8ea3-43e0-b530-031a569bfcd0" configVersion="de76e252360ff40f9368c1eec2d95d3aa03b14e7"/> <Metadata name="CommonModule.СхПроцессорыСхемЗапросаСлужебный" id="fd5aeea0-9a03-452d-ba1e-81c816846c6c" configVersion="f8a3be5d8b2e88a3c91aef9302812d9a7843318c"/>
<Metadata name="CommonModule.СЗ_ПроцессорыСхемЗапросаСлужебныйВызовСервера.Module" id="64cc4f13-8ea3-43e0-b530-031a569bfcd0.0" configVersion="d1a3621279ecd64374af1122b787e190dbc22c00"/> <Metadata name="CommonModule.СхПроцессорыСхемЗапросаСлужебный.Module" id="fd5aeea0-9a03-452d-ba1e-81c816846c6c.0" configVersion="01602b4239886aefd28910c38e45db2d9e311bd4"/>
<Metadata name="CommonModule.СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер" id="a7341127-4ed0-44b9-b3b2-007ae8f263dc" configVersion="8a27beba3300dacb51abfc0f6b4c8711bb7b0b06"/> <Metadata name="CommonModule.СхПроцессорыСхемЗапросаСлужебныйВызовСервера" id="64cc4f13-8ea3-43e0-b530-031a569bfcd0" configVersion="8b8a36d52a3c70f6411516282dff44b50709d582"/>
<Metadata name="CommonModule.СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер.Module" id="a7341127-4ed0-44b9-b3b2-007ae8f263dc.0" configVersion="020919068a3ae0c75c8f2505ae82fb4d144c6b9e"/> <Metadata name="CommonModule.СхПроцессорыСхемЗапросаСлужебныйВызовСервера.Module" id="64cc4f13-8ea3-43e0-b530-031a569bfcd0.0" configVersion="096fe94ceada3bba6c783107320609d74a183f00"/>
<Metadata name="CommonModule.СхПроцессорыСхемЗапросаСлужебныйКлиентСервер" id="a7341127-4ed0-44b9-b3b2-007ae8f263dc" configVersion="9ce268ec45c272677facf5c52c5cb09d018d6089"/>
<Metadata name="CommonModule.СхПроцессорыСхемЗапросаСлужебныйКлиентСервер.Module" id="a7341127-4ed0-44b9-b3b2-007ae8f263dc.0" configVersion="9b7bdef1361fe597e1b781a741fb4cf06b7f8984"/>
<Metadata name="CommonPicture.СЗ_Логотип" id="1f46f9f5-7948-4684-80f5-f809aace3848" configVersion="1cd842efa6dbeed87c4bd770ba9fdfea3ffc73c0"/> <Metadata name="CommonPicture.СЗ_Логотип" id="1f46f9f5-7948-4684-80f5-f809aace3848" configVersion="1cd842efa6dbeed87c4bd770ba9fdfea3ffc73c0"/>
<Metadata name="CommonPicture.СЗ_Логотип.Picture" id="1f46f9f5-7948-4684-80f5-f809aace3848.0" configVersion="09958a054a92dc27b186eb0ab627d11bade1f015"/> <Metadata name="CommonPicture.СЗ_Логотип.Picture" id="1f46f9f5-7948-4684-80f5-f809aace3848.0" configVersion="09958a054a92dc27b186eb0ab627d11bade1f015"/>
<Metadata name="Configuration.СхемаЗапроса" id="727bc241-bb6d-418f-b908-1102fbf1bc00" configVersion="cdeb55e8bf69553cdbd1cbf6ab2ab4c2cc585136"/> <Metadata name="Configuration.СхемаЗапроса" id="727bc241-bb6d-418f-b908-1102fbf1bc00" configVersion="3ff15ae99b006940a3d718ecf86f9c166f1ff52a"/>
<Metadata name="DataProcessor.СЗ_КонсольФункциональныхЗапросов" id="67397753-24bc-416c-9dc1-5fe9545ad4b2" configVersion="171dea8f1f823da789fdb06cae08e40365231b49"/> <Metadata name="DataProcessor.СхКонсольФункциональныхЗапросов" id="67397753-24bc-416c-9dc1-5fe9545ad4b2" configVersion="d1a6eb3b0f8a2146c0b618c5edcc7ee007a7e801"/>
<Metadata name="DataProcessor.СЗ_КонсольФункциональныхЗапросов.Form.Форма" id="1f613bcb-34f1-4755-8c5b-734e99a89a03" configVersion="aedcf955fb9b922c1fd72335bb59d9b931015e58"/> <Metadata name="DataProcessor.СхКонсольФункциональныхЗапросов.Form.Форма" id="1f613bcb-34f1-4755-8c5b-734e99a89a03" configVersion="aedcf955fb9b922c1fd72335bb59d9b931015e58"/>
<Metadata name="DataProcessor.СЗ_КонсольФункциональныхЗапросов.Form.Форма.Form" id="1f613bcb-34f1-4755-8c5b-734e99a89a03.0" configVersion="ed93a31df2cc47c65da51be82b3b052f1f6b94e2"/> <Metadata name="DataProcessor.СхКонсольФункциональныхЗапросов.Form.Форма.Form" id="1f613bcb-34f1-4755-8c5b-734e99a89a03.0" configVersion="7c260ad6a11cea96ce61809459a0433bc7815ad1"/>
<Metadata name="DataProcessor.СЗ_ПроцессорПредикатов" id="12d6eb41-70d9-4802-8fde-b6464e23bf0b" configVersion="77365f9ddbe5c04b263b27bebf9b835126f30f67"/> <Metadata name="DataProcessor.СхПроцессорПредикатов" id="12d6eb41-70d9-4802-8fde-b6464e23bf0b" configVersion="4954bfbfc6b8922ac7373146041de0e8311b766a"/>
<Metadata name="DataProcessor.СЗ_ПроцессорПредикатов.Form.Форма" id="9ab75485-6c0a-4548-b3cb-fab32ccd351d" configVersion="12570426f46bd4a3dbb5f4c3b28a92c6db858ede"/> <Metadata name="DataProcessor.СхПроцессорПредикатов.Form.Форма" id="9ab75485-6c0a-4548-b3cb-fab32ccd351d" configVersion="12570426f46bd4a3dbb5f4c3b28a92c6db858ede"/>
<Metadata name="DataProcessor.СЗ_ПроцессорПредикатов.Form.Форма.Form" id="9ab75485-6c0a-4548-b3cb-fab32ccd351d.0" configVersion="2ea90d47439f8f3c9f8eaac893840956ce11928b"/> <Metadata name="DataProcessor.СхПроцессорПредикатов.Form.Форма.Form" id="9ab75485-6c0a-4548-b3cb-fab32ccd351d.0" configVersion="4db6c0d580bf590f3e886c39f9abb7e15029e979"/>
<Metadata name="DataProcessor.СЗ_ПроцессорПредикатов.ObjectModule" id="12d6eb41-70d9-4802-8fde-b6464e23bf0b.0" configVersion="1516d1c432d0edc4aaa776e1bea67d3a47f6523f"/> <Metadata name="DataProcessor.СхПроцессорПредикатов.ObjectModule" id="12d6eb41-70d9-4802-8fde-b6464e23bf0b.0" configVersion="544105e6c8ffbdc2120979764205590420377a16"/>
<Metadata name="DataProcessor.СЗ_ПроцессорСхемЗапроса" id="7008c53a-3e8a-4432-bff6-500c4145bab5" configVersion="dd57e1686ab74914b294900633b6e9245facc435"/> <Metadata name="DataProcessor.СхПроцессорСхемЗапроса" id="7008c53a-3e8a-4432-bff6-500c4145bab5" configVersion="78983226bff2a80bc78dd6a1c83023079ccf2a1a"/>
<Metadata name="DataProcessor.СЗ_ПроцессорСхемЗапроса.Form.Форма" id="04cd8a25-c99d-4da9-ac0f-5703574d079f" configVersion="f910d6e757792c7cdd2137a7213495bba1da1300"/> <Metadata name="DataProcessor.СхПроцессорСхемЗапроса.Form.Форма" id="04cd8a25-c99d-4da9-ac0f-5703574d079f" configVersion="f910d6e757792c7cdd2137a7213495bba1da1300"/>
<Metadata name="DataProcessor.СЗ_ПроцессорСхемЗапроса.Form.Форма.Form" id="04cd8a25-c99d-4da9-ac0f-5703574d079f.0" configVersion="ceba4f9abadf6c05af769406280f0ed87132ceb4"/> <Metadata name="DataProcessor.СхПроцессорСхемЗапроса.Form.Форма.Form" id="04cd8a25-c99d-4da9-ac0f-5703574d079f.0" configVersion="929a1f8363b66e10c17e7b0c9b0bc4c5b2b374d3"/>
<Metadata name="DataProcessor.СЗ_ПроцессорСхемЗапроса.ObjectModule" id="7008c53a-3e8a-4432-bff6-500c4145bab5.0" configVersion="dfa31660d4a70cc120454a237f9ee21b37d835d9"/> <Metadata name="DataProcessor.СхПроцессорСхемЗапроса.ObjectModule" id="7008c53a-3e8a-4432-bff6-500c4145bab5.0" configVersion="d24fca2c93d620a13f2b287e70d3c4325ce07a0a"/>
<Metadata name="Language.Русский" id="390892dc-e75e-45a4-b708-a02f7f2dee5a" configVersion="d36425ed50ec1003a922942173f639c4f459684c"/> <Metadata name="Language.Русский" id="390892dc-e75e-45a4-b708-a02f7f2dee5a" configVersion="d36425ed50ec1003a922942173f639c4f459684c"/>
<Metadata name="Subsystem.СЗ_Обработки" id="d4e271af-1ead-4743-afb5-9c2aa77055ae" configVersion="4706428f4c44e863ecd0652dc681dab80258cd41"/> <Metadata name="Subsystem.СхОбработки" id="d4e271af-1ead-4743-afb5-9c2aa77055ae" configVersion="f110e9f462bd7349a8a18b57db698a5cb4198d4e"/>
<Metadata name="Subsystem.СЗ_Основная" id="a09dece7-9d83-44cb-8463-270875de13d2" configVersion="9c0d5ea3be648246d696789b6fbcc298d59ca152"/> <Metadata name="Subsystem.СхОсновная" id="a09dece7-9d83-44cb-8463-270875de13d2" configVersion="03c18be8084556de42a54ad0474bdd4db01862e8"/>
<Metadata name="Subsystem.СЗ_Тестирование" id="7f3d60db-f984-4399-8d25-86d89b3d3c96" configVersion="504297decc442197b0fdfb5e0c7f8efa146308ef"/> <Metadata name="Subsystem.СхТестирование" id="7f3d60db-f984-4399-8d25-86d89b3d3c96" configVersion="c63518a40af40746734185a227b92268f04de507"/>
</ConfigVersions> </ConfigVersions>
</ConfigDumpInfo> </ConfigDumpInfo>

View File

@@ -43,11 +43,11 @@
<Comment/> <Comment/>
<ConfigurationExtensionPurpose>AddOn</ConfigurationExtensionPurpose> <ConfigurationExtensionPurpose>AddOn</ConfigurationExtensionPurpose>
<KeepMappingToExtendedConfigurationObjectsByIDs>true</KeepMappingToExtendedConfigurationObjectsByIDs> <KeepMappingToExtendedConfigurationObjectsByIDs>true</KeepMappingToExtendedConfigurationObjectsByIDs>
<NamePrefix>СЗ_</NamePrefix> <NamePrefix>Сх</NamePrefix>
<ConfigurationExtensionCompatibilityMode>Version8_3_9</ConfigurationExtensionCompatibilityMode> <ConfigurationExtensionCompatibilityMode>Version8_3_9</ConfigurationExtensionCompatibilityMode>
<ScriptVariant>Russian</ScriptVariant> <ScriptVariant>Russian</ScriptVariant>
<Vendor/> <Vendor/>
<Version>0.0.2</Version> <Version>0.0.3</Version>
<BriefInformation/> <BriefInformation/>
<DetailedInformation/> <DetailedInformation/>
<Copyright/> <Copyright/>
@@ -57,23 +57,24 @@
</Properties> </Properties>
<ChildObjects> <ChildObjects>
<Language>Русский</Language> <Language>Русский</Language>
<Subsystem>СЗ_Основная</Subsystem> <Subsystem>СхОсновная</Subsystem>
<Subsystem>СЗ_Тестирование</Subsystem> <Subsystem>СхТестирование</Subsystem>
<Subsystem>СЗ_Обработки</Subsystem> <Subsystem>СхОбработки</Subsystem>
<CommonPicture>СЗ_Логотип</CommonPicture> <CommonPicture>СЗ_Логотип</CommonPicture>
<CommonModule>СЗ_Запрос</CommonModule> <CommonModule>СхЗапрос</CommonModule>
<CommonModule>СЗ_ЗапросТест</CommonModule> <CommonModule>СхЗапросТест</CommonModule>
<CommonModule>СЗ_ЗапросТестКлиент</CommonModule> <CommonModule>СхЗапросТестКлиент</CommonModule>
<CommonModule>СЗ_ЗапросТестСлужебныйВызовСервера</CommonModule> <CommonModule>СхЗапросТестСлужебныйВызовСервера</CommonModule>
<CommonModule>СЗ_ПроцессорыПредикатовКлиентСервер</CommonModule> <CommonModule>СхОбщегоНазначенийКлиентСервер</CommonModule>
<CommonModule>СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер</CommonModule> <CommonModule>СхПроцессорыПредикатовКлиентСервер</CommonModule>
<CommonModule>СЗ_ПроцессорыСхемЗапросаКлиентСервер</CommonModule> <CommonModule>СхПроцессорыПредикатовСлужебныйКлиентСервер</CommonModule>
<CommonModule>СЗ_ПроцессорыСхемЗапросаСлужебный</CommonModule> <CommonModule>СхПроцессорыСхемЗапросаКлиентСервер</CommonModule>
<CommonModule>СЗ_ПроцессорыСхемЗапросаСлужебныйВызовСервера</CommonModule> <CommonModule>СхПроцессорыСхемЗапросаСлужебный</CommonModule>
<CommonModule>СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер</CommonModule> <CommonModule>СхПроцессорыСхемЗапросаСлужебныйВызовСервера</CommonModule>
<DataProcessor>СЗ_КонсольФункциональныхЗапросов</DataProcessor> <CommonModule>СхПроцессорыСхемЗапросаСлужебныйКлиентСервер</CommonModule>
<DataProcessor>СЗ_ПроцессорПредикатов</DataProcessor> <DataProcessor>СхКонсольФункциональныхЗапросов</DataProcessor>
<DataProcessor>СЗ_ПроцессорСхемЗапроса</DataProcessor> <DataProcessor>СхПроцессорПредикатов</DataProcessor>
<DataProcessor>СхПроцессорСхемЗапроса</DataProcessor>
</ChildObjects> </ChildObjects>
</Configuration> </Configuration>
</MetaDataObject> </MetaDataObject>

View File

@@ -1,81 +0,0 @@
#Область ОписаниеПеременных
Перем Предикат;
#КонецОбласти
#Область ПрограммныйИнтерфейс
Функция Реквизит(ИмяРеквизита) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьИмяРеквизита(Предикат, ИмяРеквизита);
Возврат ЭтотОбъект;
КонецФункции
Функция Равно(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().Равно, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция НеРавно(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().НеРавно, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция Больше(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().Больше, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция Меньше(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().Меньше, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция ВСписке(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().ВСписке, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция НеВСписке(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().НеВСписке, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция Подобно(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().Подобно, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция НеПодобно(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().НеПодобно, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция Между(НачалоИнтервала, ОкончаниеИнтервала) Экспорт
Значения = Новый Массив;
Значения.Добавить(НачалоИнтервала);
Значения.Добавить(ОкончаниеИнтервала);
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().Между, Значения);
Возврат ЭтотОбъект;
КонецФункции
Функция Получить() Экспорт
Возврат Предикат;
КонецФункции
#КонецОбласти

View File

@@ -1,93 +0,0 @@
#Область ОписаниеПеременных
&НаКлиенте
Перем Предикат;
#КонецОбласти
#Область ПрограммныйИнтерфейс
&НаКлиенте
Функция Реквизит(ИмяРеквизита) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьИмяРеквизита(Предикат, ИмяРеквизита);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Равно(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().Равно, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция НеРавно(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().НеРавно, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Больше(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().Больше, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Меньше(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().Меньше, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция ВСписке(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().ВСписке, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция НеВСписке(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().НеВСписке, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Подобно(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().Подобно, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция НеПодобно(Значение) Экспорт
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().НеПодобно, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Между(НачалоИнтервала, ОкончаниеИнтервала) Экспорт
Значения = Новый Массив;
Значения.Добавить(НачалоИнтервала);
Значения.Добавить(ОкончаниеИнтервала);
СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СЗ_ПроцессорыПредикатовКлиентСервер.Выражения().Между, Значения);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Получить() Экспорт
Возврат Предикат;
КонецФункции
#КонецОбласти

View File

@@ -2,17 +2,17 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<DataProcessor uuid="67397753-24bc-416c-9dc1-5fe9545ad4b2"> <DataProcessor uuid="67397753-24bc-416c-9dc1-5fe9545ad4b2">
<InternalInfo> <InternalInfo>
<xr:GeneratedType name="DataProcessorObject.СЗ_КонсольФункциональныхЗапросов" category="Object"> <xr:GeneratedType name="DataProcessorObject.СхКонсольФункциональныхЗапросов" category="Object">
<xr:TypeId>753bd0b9-4226-48e3-8c11-7e4ccd8b855f</xr:TypeId> <xr:TypeId>753bd0b9-4226-48e3-8c11-7e4ccd8b855f</xr:TypeId>
<xr:ValueId>f4b06689-126e-4582-aeac-b95c903df7d2</xr:ValueId> <xr:ValueId>f4b06689-126e-4582-aeac-b95c903df7d2</xr:ValueId>
</xr:GeneratedType> </xr:GeneratedType>
<xr:GeneratedType name="DataProcessorManager.СЗ_КонсольФункциональныхЗапросов" category="Manager"> <xr:GeneratedType name="DataProcessorManager.СхКонсольФункциональныхЗапросов" category="Manager">
<xr:TypeId>0f1adcf6-806a-42a0-8faf-9af5630de7cb</xr:TypeId> <xr:TypeId>0f1adcf6-806a-42a0-8faf-9af5630de7cb</xr:TypeId>
<xr:ValueId>0c6ccdb3-b8e4-4310-9e98-fff187850b11</xr:ValueId> <xr:ValueId>0c6ccdb3-b8e4-4310-9e98-fff187850b11</xr:ValueId>
</xr:GeneratedType> </xr:GeneratedType>
</InternalInfo> </InternalInfo>
<Properties> <Properties>
<Name>СЗ_КонсольФункциональныхЗапросов</Name> <Name>СхКонсольФункциональныхЗапросов</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@@ -21,7 +21,7 @@
</Synonym> </Synonym>
<Comment/> <Comment/>
<UseStandardCommands>true</UseStandardCommands> <UseStandardCommands>true</UseStandardCommands>
<DefaultForm>DataProcessor.СЗ_КонсольФункциональныхЗапросов.Form.Форма</DefaultForm> <DefaultForm>DataProcessor.СхКонсольФункциональныхЗапросов.Form.Форма</DefaultForm>
<AuxiliaryForm/> <AuxiliaryForm/>
<IncludeHelpInContents>false</IncludeHelpInContents> <IncludeHelpInContents>false</IncludeHelpInContents>
<ExtendedPresentation/> <ExtendedPresentation/>

View File

@@ -48,7 +48,7 @@
<Attributes> <Attributes>
<Attribute name="Объект" id="1"> <Attribute name="Объект" id="1">
<Type> <Type>
<v8:Type>cfg:DataProcessorObject.СЗ_КонсольФункциональныхЗапросов</v8:Type> <v8:Type>cfg:DataProcessorObject.СхКонсольФункциональныхЗапросов</v8:Type>
</Type> </Type>
<MainAttribute>true</MainAttribute> <MainAttribute>true</MainAttribute>
</Attribute> </Attribute>

View File

@@ -73,7 +73,7 @@
Оператор = ПакетЗапроса.Операторы[0]; Оператор = ПакетЗапроса.Операторы[0];
МассивСтрокЗапроса = Новый Массив; МассивСтрокЗапроса = Новый Массив;
МассивСтрокЗапроса.Добавить(СтрШаблон("СЗ_Запрос.НовыйЗапрос(""%1"")", МассивСтрокЗапроса.Добавить(СтрШаблон("СхЗапрос.НовыйЗапрос(""%1"")",
Оператор.Источники[0].Источник.ИмяТаблицы)); Оператор.Источники[0].Источник.ИмяТаблицы));
СтрокаПолей = ПолучитьПоля(ПакетЗапроса); СтрокаПолей = ПолучитьПоля(ПакетЗапроса);
@@ -83,7 +83,7 @@
СтрокаОтборов = ПолучитьОтборы(); СтрокаОтборов = ПолучитьОтборы();
Если Не ПустаяСтрока(СтрокаОтборов) Тогда Если Не ПустаяСтрока(СтрокаОтборов) Тогда
МассивСтрокЗапроса.Добавить(СтрШаблон(Символы.Таб + ".Где(СЗ_Запрос.Предикат() МассивСтрокЗапроса.Добавить(СтрШаблон(Символы.Таб + ".Где(СхЗапрос.Предикат()
| %1)", СтрокаОтборов)); | %1)", СтрокаОтборов));
КонецЕсли; КонецЕсли;

View File

@@ -2,26 +2,26 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<DataProcessor uuid="12d6eb41-70d9-4802-8fde-b6464e23bf0b"> <DataProcessor uuid="12d6eb41-70d9-4802-8fde-b6464e23bf0b">
<InternalInfo> <InternalInfo>
<xr:GeneratedType name="DataProcessorObject.СЗ_ПроцессорПредикатов" category="Object"> <xr:GeneratedType name="DataProcessorObject.СхПроцессорПредикатов" category="Object">
<xr:TypeId>20e56103-de11-460e-989e-38009e54630a</xr:TypeId> <xr:TypeId>20e56103-de11-460e-989e-38009e54630a</xr:TypeId>
<xr:ValueId>207e5e5e-fb17-43ad-959f-910b588f6d68</xr:ValueId> <xr:ValueId>207e5e5e-fb17-43ad-959f-910b588f6d68</xr:ValueId>
</xr:GeneratedType> </xr:GeneratedType>
<xr:GeneratedType name="DataProcessorManager.СЗ_ПроцессорПредикатов" category="Manager"> <xr:GeneratedType name="DataProcessorManager.СхПроцессорПредикатов" category="Manager">
<xr:TypeId>e3602dbd-6e64-429f-99f4-b0c9a7b7102f</xr:TypeId> <xr:TypeId>e3602dbd-6e64-429f-99f4-b0c9a7b7102f</xr:TypeId>
<xr:ValueId>facb276b-1229-4f98-960f-86720e17c5c9</xr:ValueId> <xr:ValueId>facb276b-1229-4f98-960f-86720e17c5c9</xr:ValueId>
</xr:GeneratedType> </xr:GeneratedType>
</InternalInfo> </InternalInfo>
<Properties> <Properties>
<Name>СЗ_ПроцессорПредикатов</Name> <Name>СхПроцессорПредикатов</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>С з процессор предикатов</v8:content> <v8:content>Сх процессор предикатов</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
<UseStandardCommands>true</UseStandardCommands> <UseStandardCommands>true</UseStandardCommands>
<DefaultForm>DataProcessor.СЗ_ПроцессорПредикатов.Form.Форма</DefaultForm> <DefaultForm>DataProcessor.СхПроцессорПредикатов.Form.Форма</DefaultForm>
<AuxiliaryForm/> <AuxiliaryForm/>
<IncludeHelpInContents>false</IncludeHelpInContents> <IncludeHelpInContents>false</IncludeHelpInContents>
<ExtendedPresentation/> <ExtendedPresentation/>

View File

@@ -0,0 +1,88 @@
#Область ОписаниеПеременных
Перем Предикат;
#КонецОбласти
#Область ПрограммныйИнтерфейс
Функция Реквизит(ИмяРеквизита) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер
.УстановитьИмяРеквизита(Предикат, ИмяРеквизита);
Возврат ЭтотОбъект;
КонецФункции
Функция РеквизитВыразить(ИмяРеквизита, ОписаниеТипа) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер
.УстановитьРеквизитВыразить(Предикат, ИмяРеквизита, ОписаниеТипа);
Возврат ЭтотОбъект;
КонецФункции
Функция Равно(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().Равно, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция НеРавно(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().НеРавно, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция Больше(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().Больше, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция Меньше(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().Меньше, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция ВСписке(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().ВСписке, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция НеВСписке(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().НеВСписке, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция Подобно(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().Подобно, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция НеПодобно(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().НеПодобно, Значение);
Возврат ЭтотОбъект;
КонецФункции
Функция Между(НачалоИнтервала, ОкончаниеИнтервала) Экспорт
Значения = Новый Массив;
Значения.Добавить(НачалоИнтервала);
Значения.Добавить(ОкончаниеИнтервала);
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().Между, Значения);
Возврат ЭтотОбъект;
КонецФункции
Функция Получить() Экспорт
Возврат Предикат;
КонецФункции
#КонецОбласти

View File

@@ -1,22 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<Form uuid="9ab75485-6c0a-4548-b3cb-fab32ccd351d"> <Form uuid="9ab75485-6c0a-4548-b3cb-fab32ccd351d">
<Properties> <Properties>
<Name>Форма</Name> <Name>Форма</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
<v8:content>Форма</v8:content> <v8:content>Форма</v8:content>
</v8:item> </v8:item>
</Synonym> </Synonym>
<Comment/> <Comment/>
<FormType>Managed</FormType> <FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents> <IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes> <UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value> <v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value> <v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes> </UsePurposes>
<ExtendedPresentation/> <ExtendedPresentation/>
</Properties> </Properties>
</Form> </Form>
</MetaDataObject> </MetaDataObject>

View File

@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/> <AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/>
<Attributes> <Attributes>
<Attribute name="Объект" id="1"> <Attribute name="Объект" id="1">
<Type> <Type>
<v8:Type>cfg:DataProcessorObject.СЗ_ПроцессорПредикатов</v8:Type> <v8:Type>cfg:DataProcessorObject.СхПроцессорПредикатов</v8:Type>
</Type> </Type>
<MainAttribute>true</MainAttribute> <MainAttribute>true</MainAttribute>
</Attribute> </Attribute>
</Attributes> </Attributes>
</Form> </Form>

View File

@@ -0,0 +1,100 @@
#Область ОписаниеПеременных
&НаКлиенте
Перем Предикат;
#КонецОбласти
#Область ПрограммныйИнтерфейс
&НаКлиенте
Функция Реквизит(ИмяРеквизита) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьИмяРеквизита(Предикат, ИмяРеквизита);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция РеквизитВыразить(ИмяРеквизита, ОписаниеТипа) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер
.УстановитьРеквизитВыразить(Предикат, ИмяРеквизита, ОписаниеТипа);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Равно(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().Равно, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция НеРавно(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().НеРавно, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Больше(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().Больше, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Меньше(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().Меньше, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция ВСписке(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().ВСписке, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция НеВСписке(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().НеВСписке, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Подобно(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().Подобно, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция НеПодобно(Значение) Экспорт
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().НеПодобно, Значение);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Между(НачалоИнтервала, ОкончаниеИнтервала) Экспорт
Значения = Новый Массив;
Значения.Добавить(НачалоИнтервала);
Значения.Добавить(ОкончаниеИнтервала);
СхПроцессорыПредикатовСлужебныйКлиентСервер.УстановитьПредикат(Предикат,
СхПроцессорыПредикатовКлиентСервер.Выражения().Между, Значения);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Получить() Экспорт
Возврат Предикат;
КонецФункции
#КонецОбласти

View File

@@ -2,17 +2,17 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<DataProcessor uuid="7008c53a-3e8a-4432-bff6-500c4145bab5"> <DataProcessor uuid="7008c53a-3e8a-4432-bff6-500c4145bab5">
<InternalInfo> <InternalInfo>
<xr:GeneratedType name="DataProcessorObject.СЗ_ПроцессорСхемЗапроса" category="Object"> <xr:GeneratedType name="DataProcessorObject.СхПроцессорСхемЗапроса" category="Object">
<xr:TypeId>8fa76ff0-784b-4ebd-a63a-5bfed72f02c2</xr:TypeId> <xr:TypeId>8fa76ff0-784b-4ebd-a63a-5bfed72f02c2</xr:TypeId>
<xr:ValueId>4b2cbc6f-5517-4354-9cca-09e37ffb6ef4</xr:ValueId> <xr:ValueId>4b2cbc6f-5517-4354-9cca-09e37ffb6ef4</xr:ValueId>
</xr:GeneratedType> </xr:GeneratedType>
<xr:GeneratedType name="DataProcessorManager.СЗ_ПроцессорСхемЗапроса" category="Manager"> <xr:GeneratedType name="DataProcessorManager.СхПроцессорСхемЗапроса" category="Manager">
<xr:TypeId>4c35d9a4-671c-4413-b87e-b984a2286b1e</xr:TypeId> <xr:TypeId>4c35d9a4-671c-4413-b87e-b984a2286b1e</xr:TypeId>
<xr:ValueId>2db60e26-72c2-46c7-adef-d744c9274c32</xr:ValueId> <xr:ValueId>2db60e26-72c2-46c7-adef-d744c9274c32</xr:ValueId>
</xr:GeneratedType> </xr:GeneratedType>
</InternalInfo> </InternalInfo>
<Properties> <Properties>
<Name>СЗ_ПроцессорСхемЗапроса</Name> <Name>СхПроцессорСхемЗапроса</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@@ -21,7 +21,7 @@
</Synonym> </Synonym>
<Comment/> <Comment/>
<UseStandardCommands>true</UseStandardCommands> <UseStandardCommands>true</UseStandardCommands>
<DefaultForm>DataProcessor.СЗ_ПроцессорСхемЗапроса.Form.Форма</DefaultForm> <DefaultForm>DataProcessor.СхПроцессорСхемЗапроса.Form.Форма</DefaultForm>
<AuxiliaryForm/> <AuxiliaryForm/>
<IncludeHelpInContents>false</IncludeHelpInContents> <IncludeHelpInContents>false</IncludeHelpInContents>
<ExtendedPresentation/> <ExtendedPresentation/>

View File

@@ -12,13 +12,13 @@
Если ТипЗнч(ИсточникДанных) = Тип("Строка") Тогда Если ТипЗнч(ИсточникДанных) = Тип("Строка") Тогда
_ИсточникДанных = ИсточникДанных; _ИсточникДанных = ИсточникДанных;
ИначеЕсли ТипЗнч(ИсточникДанных) = Тип("ОбработкаОбъект.СЗ_ПроцессорСхемЗапроса") Тогда ИначеЕсли ТипЗнч(ИсточникДанных) = Тип("ОбработкаОбъект.СхПроцессорСхемЗапроса") Тогда
_ИсточникДанных = ИсточникДанных.Получить(); _ИсточникДанных = ИсточникДанных.Получить();
Иначе Иначе
ВызватьИсключение "Объединить: неверный тип источника данных"; ВызватьИсключение "Объединить: неверный тип источника данных";
КонецЕсли; КонецЕсли;
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьИсточникДанных(СхемаЗапроса, СхПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьИсточникДанных(СхемаЗапроса,
_ИсточникДанных, Первые, Различные, Разрешенные); _ИсточникДанных, Первые, Различные, Разрешенные);
КонецПроцедуры КонецПроцедуры
@@ -26,7 +26,7 @@
// //
// //
Функция Псевдоним(ИмяПсевдонима) Экспорт Функция Псевдоним(ИмяПсевдонима) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьПсевдонимИсточника(СхемаЗапроса, ИмяПсевдонима); .УстановитьПсевдонимИсточника(СхемаЗапроса, ИмяПсевдонима);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -34,7 +34,7 @@
// //
// //
Функция ВТаблицуЗначений() Экспорт Функция ВТаблицуЗначений() Экспорт
ТаблицаЗначений = СЗ_ПроцессорыСхемЗапросаСлужебный ТаблицаЗначений = СхПроцессорыСхемЗапросаСлужебный
.ПолучитьРезультатЗапроса(СхемаЗапроса).Выгрузить(); .ПолучитьРезультатЗапроса(СхемаЗапроса).Выгрузить();
Возврат ТаблицаЗначений; Возврат ТаблицаЗначений;
КонецФункции КонецФункции
@@ -42,7 +42,7 @@
// //
// //
Функция ВМассив(ИмяКолонки) Экспорт Функция ВМассив(ИмяКолонки) Экспорт
ТаблицаЗначений = СЗ_ПроцессорыСхемЗапросаСлужебный ТаблицаЗначений = СхПроцессорыСхемЗапросаСлужебный
.ПолучитьРезультатЗапроса(СхемаЗапроса).Выгрузить(); .ПолучитьРезультатЗапроса(СхемаЗапроса).Выгрузить();
Возврат ТаблицаЗначений.ВыгрузитьКолонку(ИмяКолонки); Возврат ТаблицаЗначений.ВыгрузитьКолонку(ИмяКолонки);
КонецФункции КонецФункции
@@ -50,7 +50,7 @@
// //
// //
Функция Первые(Количество) Экспорт Функция Первые(Количество) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьПервые(СхемаЗапроса, Количество); .УстановитьПервые(СхемаЗапроса, Количество);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -58,7 +58,7 @@
// //
// //
Функция Различные() Экспорт Функция Различные() Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьРазличные(СхемаЗапроса); .УстановитьРазличные(СхемаЗапроса);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -66,7 +66,7 @@
// //
// //
Функция Разрешенные() Экспорт Функция Разрешенные() Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьРазрешенные(СхемаЗапроса); .УстановитьРазрешенные(СхемаЗапроса);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -74,7 +74,7 @@
// //
// //
Функция Выбрать(Поля) Экспорт Функция Выбрать(Поля) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьПоляВыборки(СхемаЗапроса, Поля); .УстановитьПоляВыборки(СхемаЗапроса, Поля);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -82,7 +82,7 @@
// //
// //
Функция ВыбратьВсе() Экспорт Функция ВыбратьВсе() Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьВыборВсехПолей(СхемаЗапроса); .УстановитьВыборВсехПолей(СхемаЗапроса);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -90,7 +90,7 @@
// //
// //
Функция Поместить(ИмяВременнойТаблицы) Экспорт Функция Поместить(ИмяВременнойТаблицы) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьИмяВременнойТаблицы(СхемаЗапроса, ИмяВременнойТаблицы); .УстановитьИмяВременнойТаблицы(СхемаЗапроса, ИмяВременнойТаблицы);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -101,14 +101,15 @@
Если ТипЗнч(Предикат) = Тип("Структура") Тогда Если ТипЗнч(Предикат) = Тип("Структура") Тогда
_Предикат = Предикат; _Предикат = Предикат;
ИначеЕсли ТипЗнч(Предикат) = Тип("ОбработкаОбъект.СЗ_ПроцессорПредикатов") Тогда ИначеЕсли ТипЗнч(Предикат) = Тип("ОбработкаОбъект.СхПроцессорПредикатов") Тогда
_Предикат = Предикат.Получить(); _Предикат = Предикат.Получить();
Иначе Иначе
ВызватьИсключение "Неверный тип предиката в методе ""Где"""; ВызватьИсключение "Неверный тип предиката в методе ""Где""";
КонецЕсли; КонецЕсли;
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьУсловие(СхемаЗапроса, _Предикат); СхПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьУсловие(СхемаЗапроса, _Предикат);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
// //
@@ -135,15 +136,73 @@
// //
// //
Функция Сгруппировать(Поля) Экспорт Функция Сгруппировать(Поля) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьГруппировку(СхемаЗапроса, Поля); .УстановитьГруппировку(СхемаЗапроса, Поля);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
//
//
Функция ВыборКогда(Предикат, ЗначениеИстина, ЗначениеЛожь, Псевдоним = "") Экспорт
Если ТипЗнч(Предикат) = Тип("Структура") Тогда
_Предикат = Предикат;
ИначеЕсли ТипЗнч(Предикат) = Тип("ОбработкаОбъект.СхПроцессорПредикатов") Тогда
_Предикат = Предикат.Получить();
Иначе
ВызватьИсключение "Неверный тип предиката в методе ""ВыборКогда""";
КонецЕсли;
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьВыборКогда(СхемаЗапроса, _Предикат, ЗначениеИстина, ЗначениеЛожь, Псевдоним);
Возврат ЭтотОбъект;
КонецФункции
//
//
Функция Количество(Поле) Экспорт
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьКоличество(СхемаЗапроса, Поле);
Возврат ЭтотОбъект;
КонецФункции
//
//
Функция Сумма(Поле) Экспорт
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьСумму(СхемаЗапроса, Поле);
Возврат ЭтотОбъект;
КонецФункции
//
//
Функция Максимум(Поле) Экспорт
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьМаксимум(СхемаЗапроса, Поле);
Возврат ЭтотОбъект;
КонецФункции
//
//
Функция Минимум(Поле) Экспорт
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьМинимум(СхемаЗапроса, Поле);
Возврат ЭтотОбъект;
КонецФункции
//
//
Функция Выразить(Поле, ОписаниеТипа, Псевдоним = "") Экспорт
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьВыразить(СхемаЗапроса, Поле, ОписаниеТипа, Псевдоним);
Возврат ЭтотОбъект;
КонецФункции
// //
// //
Функция Упорядочить(Поля) Экспорт Функция Упорядочить(Поля) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьПорядок(СхемаЗапроса, Поля); .УстановитьПорядок(СхемаЗапроса, Поля);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -151,7 +210,7 @@
// //
// //
Функция Итоги(Поля) Экспорт Функция Итоги(Поля) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьИтоги(СхемаЗапроса, Поля); .УстановитьИтоги(СхемаЗапроса, Поля);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -162,13 +221,13 @@
Если ТипЗнч(ИсточникДанных) = Тип("Строка") Тогда Если ТипЗнч(ИсточникДанных) = Тип("Строка") Тогда
_ИсточникДанных = ИсточникДанных; _ИсточникДанных = ИсточникДанных;
ИначеЕсли ТипЗнч(ИсточникДанных) = Тип("ОбработкаОбъект.СЗ_ПроцессорСхемЗапроса") Тогда ИначеЕсли ТипЗнч(ИсточникДанных) = Тип("ОбработкаОбъект.СхПроцессорСхемЗапроса") Тогда
_ИсточникДанных = ИсточникДанных.Получить(); _ИсточникДанных = ИсточникДанных.Получить();
Иначе Иначе
ВызватьИсключение "Объединить: неверный тип источника данных"; ВызватьИсключение "Объединить: неверный тип источника данных";
КонецЕсли; КонецЕсли;
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьОбъединение(СхемаЗапроса, _ИсточникДанных); .УстановитьОбъединение(СхемаЗапроса, _ИсточникДанных);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
@@ -180,13 +239,13 @@
Если ТипЗнч(ИсточникДанных) = Тип("Строка") Тогда Если ТипЗнч(ИсточникДанных) = Тип("Строка") Тогда
_ИсточникДанных = ИсточникДанных; _ИсточникДанных = ИсточникДанных;
ИначеЕсли ТипЗнч(ИсточникДанных) = Тип("ОбработкаОбъект.СЗ_ПроцессорСхемЗапроса") Тогда ИначеЕсли ТипЗнч(ИсточникДанных) = Тип("ОбработкаОбъект.СхПроцессорСхемЗапроса") Тогда
_ИсточникДанных = ИсточникДанных.Получить(); _ИсточникДанных = ИсточникДанных.Получить();
Иначе Иначе
ВызватьИсключение "Объединить: неверный тип источника данных"; ВызватьИсключение "Объединить: неверный тип источника данных";
КонецЕсли; КонецЕсли;
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьОбъединениеВсе(СхемаЗапроса, _ИсточникДанных); .УстановитьОбъединениеВсе(СхемаЗапроса, _ИсточникДанных);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
@@ -195,7 +254,7 @@
// //
// //
Функция Параметры(Параметры) Экспорт Функция Параметры(Параметры) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьПараметры(СхемаЗапроса, Параметры); СхПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьПараметры(СхемаЗапроса, Параметры);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -216,7 +275,7 @@
// TODO: ИсточникДанных может быть структурой? Что делать в этом случае? // TODO: ИсточникДанных может быть структурой? Что делать в этом случае?
Если ТипЗнч(ИсточникДанных) = Тип("Строка") Тогда Если ТипЗнч(ИсточникДанных) = Тип("Строка") Тогда
_ИсточникДанных = ИсточникДанных; _ИсточникДанных = ИсточникДанных;
ИначеЕсли ТипЗнч(ИсточникДанных) = Тип("ОбработкаОбъект.СЗ_ПроцессорСхемЗапроса") Тогда ИначеЕсли ТипЗнч(ИсточникДанных) = Тип("ОбработкаОбъект.СхПроцессорСхемЗапроса") Тогда
_ИсточникДанных = ИсточникДанных.Получить(); _ИсточникДанных = ИсточникДанных.Получить();
Иначе Иначе
ВызватьИсключение "ЛевоеСоединение: неверный тип источника данных"; ВызватьИсключение "ЛевоеСоединение: неверный тип источника данных";
@@ -224,13 +283,13 @@
Если ТипЗнч(Предикат) = Тип("Структура") Или Предикат = Неопределено Тогда Если ТипЗнч(Предикат) = Тип("Структура") Или Предикат = Неопределено Тогда
_Предикат = Предикат; _Предикат = Предикат;
ИначеЕсли ТипЗнч(Предикат) = Тип("ОбработкаОбъект.СЗ_ПроцессорПредикатов") Тогда ИначеЕсли ТипЗнч(Предикат) = Тип("ОбработкаОбъект.СхПроцессорПредикатов") Тогда
_Предикат = Предикат.Получить(); _Предикат = Предикат.Получить();
Иначе Иначе
ВызватьИсключение "ЛевоеСоединение: неверный тип предиката"; ВызватьИсключение "ЛевоеСоединение: неверный тип предиката";
КонецЕсли; КонецЕсли;
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер.ДобавитьСоединение( СхПроцессорыСхемЗапросаСлужебныйКлиентСервер.ДобавитьСоединение(
СхемаЗапроса, ТипСоединения, _ИсточникДанных, _Предикат); СхемаЗапроса, ТипСоединения, _ИсточникДанных, _Предикат);
КонецПроцедуры КонецПроцедуры

View File

@@ -4,7 +4,7 @@
<Attributes> <Attributes>
<Attribute name="Объект" id="1"> <Attribute name="Объект" id="1">
<Type> <Type>
<v8:Type>cfg:DataProcessorObject.СЗ_ПроцессорСхемЗапроса</v8:Type> <v8:Type>cfg:DataProcessorObject.СхПроцессорСхемЗапроса</v8:Type>
</Type> </Type>
<MainAttribute>true</MainAttribute> <MainAttribute>true</MainAttribute>
</Attribute> </Attribute>

View File

@@ -15,63 +15,63 @@
_ИсточникДанных = ИсточникДанных.Получить(); _ИсточникДанных = ИсточникДанных.Получить();
КонецЕсли; КонецЕсли;
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьИсточникДанных(СхемаЗапроса, СхПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьИсточникДанных(СхемаЗапроса,
_ИсточникДанных, Первые, Различные, Разрешенные); _ИсточникДанных, Первые, Различные, Разрешенные);
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Функция Псевдоним(ИмяПсевдонима) Экспорт Функция Псевдоним(ИмяПсевдонима) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьПсевдонимИсточника(СхемаЗапроса, ИмяПсевдонима); .УстановитьПсевдонимИсточника(СхемаЗапроса, ИмяПсевдонима);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
Функция ВТаблицуЗначений() Экспорт Функция ВТаблицуЗначений() Экспорт
ТаблицаЗначений = СЗ_ПроцессорыСхемЗапросаСлужебныйВызовСервера ТаблицаЗначений = СхПроцессорыСхемЗапросаСлужебныйВызовСервера
.ПолучитьТаблицуЗначений(СхемаЗапроса); .ПолучитьТаблицуЗначений(СхемаЗапроса);
Возврат ТаблицаЗначений; Возврат ТаблицаЗначений;
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
Функция ВМассив(ИмяКолонки) Экспорт Функция ВМассив(ИмяКолонки) Экспорт
Массив = СЗ_ПроцессорыСхемЗапросаСлужебныйВызовСервера Массив = СхПроцессорыСхемЗапросаСлужебныйВызовСервера
.ПолучитьМассив(СхемаЗапроса, ИмяКолонки); .ПолучитьМассив(СхемаЗапроса, ИмяКолонки);
Возврат Массив; Возврат Массив;
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
Функция Первые(Количество) Экспорт Функция Первые(Количество) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьПервые(СхемаЗапроса, Количество); .УстановитьПервые(СхемаЗапроса, Количество);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
Функция Различные() Экспорт Функция Различные() Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьРазличные(СхемаЗапроса); .УстановитьРазличные(СхемаЗапроса);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
Функция Разрешенные() Экспорт Функция Разрешенные() Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьРазрешенные(СхемаЗапроса); .УстановитьРазрешенные(СхемаЗапроса);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
Функция Выбрать(Поля) Экспорт Функция Выбрать(Поля) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьПоляВыборки(СхемаЗапроса, Поля); .УстановитьПоляВыборки(СхемаЗапроса, Поля);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
Функция ВыбратьВсе() Экспорт Функция ВыбратьВсе() Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьВыборВсехПолей(СхемаЗапроса); .УстановитьВыборВсехПолей(СхемаЗапроса);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -87,7 +87,7 @@
ВызватьИсключение "Неверный тип предиката в методе ""Где"""; ВызватьИсключение "Неверный тип предиката в методе ""Где""";
КонецЕсли; КонецЕсли;
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьУсловие(СхемаЗапроса, _Предикат); СхПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьУсловие(СхемаЗапроса, _Предикат);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -111,21 +111,73 @@
&НаКлиенте &НаКлиенте
Функция Сгруппировать(Поля) Экспорт Функция Сгруппировать(Поля) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьГруппировку(СхемаЗапроса, Поля); .УстановитьГруппировку(СхемаЗапроса, Поля);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
&НаКлиенте
Функция ВыборКогда(Предикат, ЗначениеИстина, ЗначениеЛожь, Псевдоним = "") Экспорт
Если ТипЗнч(Предикат) = Тип("Структура") Тогда
_Предикат = Предикат;
ИначеЕсли ТипЗнч(Предикат) = Тип("ФормаКлиентскогоПриложения") Тогда
_Предикат = Предикат.Получить();
Иначе
ВызватьИсключение "Неверный тип предиката в методе ""ВыборКогда""";
КонецЕсли;
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьВыборКогда(СхемаЗапроса, _Предикат, ЗначениеИстина, ЗначениеЛожь, Псевдоним);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Количество(Поле) Экспорт
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьКоличество(СхемаЗапроса, Поле);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Сумма(Поле) Экспорт
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьСумму(СхемаЗапроса, Поле);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Максимум(Поле) Экспорт
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьМаксимум(СхемаЗапроса, Поле);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Минимум(Поле) Экспорт
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьМинимум(СхемаЗапроса, Поле);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте
Функция Выразить(Поле, ОписаниеТипа, Псевдоним = "") Экспорт
СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьВыразить(СхемаЗапроса, Поле, ОписаниеТипа, Псевдоним);
Возврат ЭтотОбъект;
КонецФункции
&НаКлиенте &НаКлиенте
Функция Упорядочить(Поля) Экспорт Функция Упорядочить(Поля) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьПорядок(СхемаЗапроса, Поля); .УстановитьПорядок(СхемаЗапроса, Поля);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
Функция Итоги(Поля) Экспорт Функция Итоги(Поля) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьИтоги(СхемаЗапроса, Поля); .УстановитьИтоги(СхемаЗапроса, Поля);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -141,7 +193,7 @@
ВызватьИсключение "Объединить: неверный тип источника данных"; ВызватьИсключение "Объединить: неверный тип источника данных";
КонецЕсли; КонецЕсли;
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьОбъединение(СхемаЗапроса, _ИсточникДанных); .УстановитьОбъединение(СхемаЗапроса, _ИсточникДанных);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
@@ -158,7 +210,7 @@
ВызватьИсключение "Объединить: неверный тип источника данных"; ВызватьИсключение "Объединить: неверный тип источника данных";
КонецЕсли; КонецЕсли;
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер СхПроцессорыСхемЗапросаСлужебныйКлиентСервер
.УстановитьОбъединениеВсе(СхемаЗапроса, _ИсточникДанных); .УстановитьОбъединениеВсе(СхемаЗапроса, _ИсточникДанных);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
@@ -166,7 +218,7 @@
&НаКлиенте &НаКлиенте
Функция Параметры(Параметры) Экспорт Функция Параметры(Параметры) Экспорт
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьПараметры(СхемаЗапроса, Параметры); СхПроцессорыСхемЗапросаСлужебныйКлиентСервер.УстановитьПараметры(СхемаЗапроса, Параметры);
Возврат ЭтотОбъект; Возврат ЭтотОбъект;
КонецФункции КонецФункции
@@ -201,7 +253,7 @@
ВызватьИсключение "ЛевоеСоединение: неверный тип предиката"; ВызватьИсключение "ЛевоеСоединение: неверный тип предиката";
КонецЕсли; КонецЕсли;
СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер.ДобавитьСоединение( СхПроцессорыСхемЗапросаСлужебныйКлиентСервер.ДобавитьСоединение(
СхемаЗапроса, ТипСоединения, _ИсточникДанных, _Предикат); СхемаЗапроса, ТипСоединения, _ИсточникДанных, _Предикат);
КонецПроцедуры КонецПроцедуры

View File

@@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<Subsystem uuid="a09dece7-9d83-44cb-8463-270875de13d2">
<Properties>
<Name>СЗ_Основная</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Схема запроса: основная</v8:content>
</v8:item>
</Synonym>
<Comment/>
<IncludeHelpInContents>true</IncludeHelpInContents>
<IncludeInCommandInterface>false</IncludeInCommandInterface>
<UseOneCommand>false</UseOneCommand>
<Explanation/>
<Picture/>
<Content>
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.СЗ_Запрос</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.СЗ_ПроцессорыПредикатовКлиентСервер</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.СЗ_ПроцессорыПредикатовСлужебныйКлиентСервер</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.СЗ_ПроцессорыСхемЗапросаКлиентСервер</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.СЗ_ПроцессорыСхемЗапросаСлужебный</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.СЗ_ПроцессорыСхемЗапросаСлужебныйВызовСервера</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.СЗ_ПроцессорыСхемЗапросаСлужебныйКлиентСервер</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">DataProcessor.СЗ_ПроцессорСхемЗапроса</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">DataProcessor.СЗ_ПроцессорПредикатов</xr:Item>
</Content>
</Properties>
<ChildObjects/>
</Subsystem>
</MetaDataObject>

View File

@@ -2,7 +2,7 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<Subsystem uuid="d4e271af-1ead-4743-afb5-9c2aa77055ae"> <Subsystem uuid="d4e271af-1ead-4743-afb5-9c2aa77055ae">
<Properties> <Properties>
<Name>СЗ_Обработки</Name> <Name>СхОбработки</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@@ -20,7 +20,7 @@
</Picture> </Picture>
<Content> <Content>
<xr:Item xsi:type="xr:MDObjectRef">CommonPicture.СЗ_Логотип</xr:Item> <xr:Item xsi:type="xr:MDObjectRef">CommonPicture.СЗ_Логотип</xr:Item>
<xr:Item xsi:type="xr:MDObjectRef">DataProcessor.СЗ_КонсольФункциональныхЗапросов</xr:Item> <xr:Item xsi:type="xr:MDObjectRef">DataProcessor.СхКонсольФункциональныхЗапросов</xr:Item>
</Content> </Content>
</Properties> </Properties>
<ChildObjects/> <ChildObjects/>

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<Subsystem uuid="a09dece7-9d83-44cb-8463-270875de13d2">
<Properties>
<Name>СхОсновная</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Схема запроса: основная</v8:content>
</v8:item>
</Synonym>
<Comment/>
<IncludeHelpInContents>true</IncludeHelpInContents>
<IncludeInCommandInterface>false</IncludeInCommandInterface>
<UseOneCommand>false</UseOneCommand>
<Explanation/>
<Picture/>
<Content>
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.СхЗапрос</xr:Item>
</Content>
</Properties>
<ChildObjects/>
</Subsystem>
</MetaDataObject>

View File

@@ -2,7 +2,7 @@
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18"> <MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.18">
<Subsystem uuid="7f3d60db-f984-4399-8d25-86d89b3d3c96"> <Subsystem uuid="7f3d60db-f984-4399-8d25-86d89b3d3c96">
<Properties> <Properties>
<Name>СЗ_Тестирование</Name> <Name>СхТестирование</Name>
<Synonym> <Synonym>
<v8:item> <v8:item>
<v8:lang>ru</v8:lang> <v8:lang>ru</v8:lang>
@@ -16,7 +16,7 @@
<Explanation/> <Explanation/>
<Picture/> <Picture/>
<Content> <Content>
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.СЗ_ЗапросТест</xr:Item> <xr:Item xsi:type="xr:MDObjectRef">CommonModule.СхЗапросТест</xr:Item>
</Content> </Content>
</Properties> </Properties>
<ChildObjects/> <ChildObjects/>