A1sCode библиотека 1С

A1sQ.Where

Назначение: накапливать выражения для секции ГДЕ (WHERE) внутри билдера.
Логика: первое условие — присваивается, последующие добавляются через И.

Сигнатура

Function Where(Builder, Condition) Export

Как работает (по исходнику)

If ValueIsFilled(Builder.WhereClause) Then
		Builder.WhereClause = Builder.WhereClause + " И " + Condition;
	Else
		Builder.WhereClause = Condition;
	EndIf;
	Return Builder;

Параметры

  • Builder — структура билдера из Select().
  • Condition — текст условия (без ключевого слова ГДЕ), может включать параметры вида &Имя.

Возвращает

Builder — тот же объект для продолжения цепочки.

Примеры

B = A1sQ.Select("Ссылка, Наименование")
    .From("Справочник.Номенклатура КАК Ном")
    .Where("НЕ Ном.ПометкаУдаления")
    .Where("Ном.Родитель = &Parent");
// Результат в WhereClause: "НЕ Ном.ПометкаУдаления И Ном.Родитель = &Parent"

Нюансы

✅ Удобно накапливать условия постепенно
❗ Операция объединения — только «И»; для «ИЛИ» сформируйте сложное выражение в одном вызове (или скобки)
❗ Значения параметров задавайте через .WithParam или SetQParams на этапе Build

Связанные функции