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-18 10:31:13 +03:00
parent 3e918ac401
commit 5446408b27
2 changed files with 48 additions and 1 deletions

View File

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

View File

@@ -0,0 +1,47 @@
---
sidebar_position: 3
tags: [Начало]
---
# Отбор (поиск) данных
## Предикат
Все отборы в библиотеке строятся на предикатах. Предикат это утверждение которое возвращает `Истина` или `Ложь`. Предикаты создаются при помощи специальной функции `Предикат`:
```bsl
Предикат = СЗ_Запрос.Предикат()
.Реквизит("ЭтоГруппа").Равно(Ложь);
```
Предикаты соединяются между собой при помощи логической функции `И`. Например:
```bsl
Предикат = СЗ_Запрос.Предикат()
.Реквизит("ЭтоГруппа").Равно(Ложь)
.Реквизит("Родитель").НеРавно(Родитель);
```
будет эквивалентно коду:
```bsl
...
ГДЕ
Номенклатура.ЭтоГруппа = &Параметр_0
И Номенклатура.Родитель = &Параметр_1
...
Запрос.УстановитьПараметр("Параметр_0", Ложь);
Запрос.УстановитьПараметр("Параметр_1", Родитель);
```
## Использование предиката в поиске данных
Созданный предикат передаётся в функцию `Где`:
```bsl
ТаблицаЗначений = СЗ_Запрос.НовыйЗапрос("Справочник.Номенклатура")
.Где(СЗ_Запрос.Предикат()
.Реквизит("ЭтоГруппа").Равно(Ложь))
.ВТаблицуЗначений();
```