Синтаксис и применение Условие в платформе 1С:Предприятие. Описание и примеры кода.
Полное описание, параметры и ограничения
Условие
Условие (необязательный)
Конструкция языка запросов. Условие, по которому отбираются данные. Можно использовать СубконтоДт<Номер субконто>, СубконтоКт<Номер субконто>, <Имя измерения>, <Имя измерения>Дт, <Имя измерения>Кт.
Значение по умолчанию: Неопределено.
Методическая информация
Практические примеры
Прочитать ОборотыДтКт собственного бухгалтерского регистра
Таблица ОборотыДтКт выбирает именованные поля своей схемы.
Где и как запускать
Тело серверной команды собственной учебной обработки; отдельный обработчик проведения размещается только в модуле учебного документа.
Подготовка
В собственной пустой учебной конфигурации создайте план счетов УчебныеСчетаЗапросов: строковый код 10, максимум субконто 0. В предопределенных данных добавьте Актив (код УЧ-А, вид Активный) и Пассив (код УЧ-П, вид Пассивный), оба не забалансовые. Обновление учебной базы должно создать их как данные.
Создайте регистр бухгалтерии УчебныйУчетЗапросов с планом УчебныеСчетаЗапросов и включенной Корреспонденцией. Длина уточнения периода 3, итоги включены. Измерения: Организация (Строка 20, Балансовый Истина), Подразделение (Строка 20, Балансовый Ложь).
Ресурсы регистра: Сумма (Число 15.2, Балансовый Истина), Количество (Число 10.0, Балансовый Ложь). Признаки учета для ресурсов не назначайте: в этой учебной схеме они используются для обоих счетов. Реквизит регистра Комментарий (Строка 100). Общие реквизиты и субконто для этой партии не нужны.
Создайте документ УчебнаяПроводкаЗапросов с разрешенным проведением и автонумерацией. Реквизиты: СчетДебета и СчетКредита (ПланСчетовСсылка.УчебныеСчетаЗапросов), Организация (Строка 20), ПодразделениеДебета и ПодразделениеКредита (Строка 20), Сумма (Число 15.2), КоличествоДебета и КоличествоКредита (Число 10.0), Комментарий (Строка 100).
У документа включите движение по УчебныйУчетЗапросов. Обработчик из дополнительного блока вставьте в модуль объекта документа на уровне модуля. Обновите только учебную базу; не используйте рабочие счета или регистры БП/КА2.
Вручную создайте и проведите документ 01.10.2026 12:00:00: дебет Актив, кредит Пассив, Организация Урок, подразделение дебета А, кредита Б, сумма 600, оба количества 3, комментарий Первая проводка.
Второй документ 02.10.2026 12:00:00: дебет Пассив, кредит Актив, Организация Урок, подразделение дебета Б, кредита А, сумма 100, оба количества 1, комментарий Обратная проводка. В обоих документах одна активная запись и уточнение периода 0.
Основной код запроса вставьте в тело серверной команды собственной учебной обработки. Запрос только читает две проведённые учебные записи; показанный HTML не исполняет BSL.
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| Данные.Организация, Данные.ПодразделениеКт, Данные.ПодразделениеДт,
| Данные.СчетДт, Данные.КоличествоОборотДт, Данные.СуммаОборот,
| Данные.КоличествоОборотКт, Данные.Период, Данные.СчетКт
|ИЗ РегистрБухгалтерии.УчебныйУчетЗапросов.ОборотыДтКт(&Начало, &Конец, День, СчетДт = &Счет, , СчетКт = &КорСчет, , Организация = &Организация) КАК Данные";
Запрос.УстановитьПараметр("Начало", Дата(2026, 10, 1));
Запрос.УстановитьПараметр("Конец", Дата(2026, 10, 2, 23, 59, 59));
Запрос.УстановитьПараметр("Организация", "Урок");
Запрос.УстановитьПараметр("Счет", ПланыСчетов.УчебныеСчетаЗапросов.Актив);
Запрос.УстановитьПараметр("КорСчет", ПланыСчетов.УчебныеСчетаЗапросов.Пассив);
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
Для Каждого Колонка Из Результат.Колонки Цикл
Сообщить(Колонка.Имя + ": " + Строка(Выборка[Колонка.Имя]));
КонецЦикла;
КонецЦикла;Проведение собственной учебной проводки
Документы → УчебнаяПроводкаЗапросов → Модуль объекта
Этот отдельный обработчик вызывается только при ручном проведении подготовленного документа.
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
Движения.УчебныйУчетЗапросов.Записывать = Истина;
Проводка = Движения.УчебныйУчетЗапросов.Добавить();
Проводка.Период = Дата;
Проводка.УточнениеПериода = 0;
Проводка.Активность = Истина;
Проводка.СчетДт = СчетДебета;
Проводка.СчетКт = СчетКредита;
Проводка.Организация = Организация;
Проводка.ПодразделениеДт = ПодразделениеДебета;
Проводка.ПодразделениеКт = ПодразделениеКредита;
Проводка.Сумма = Сумма;
Проводка.КоличествоДт = КоличествоДебета;
Проводка.КоличествоКт = КоличествоКредита;
Проводка.Комментарий = Комментарий;
КонецПроцедурыРазбор по шагам
Два проведённых учебных документа создали именно записи базы: незаписанный набор не попал бы в виртуальные таблицы.
Таблица ОборотыДтКт выбирает именованные поля своей схемы.
Поля указаны явно, результат действительно обходится и показывает имя и значение каждой выбранной колонки.
Как проверить результат
Для пары дебет Актив / кредит Пассив отобрана только первая проводка: СуммаОборот = 600, КоличествоОборотДт = 3, КоличествоОборотКт = 3.
Обратная проводка имеет другую пару счетов и сюда не входит; оборот пары не является остатком счета 500.
Ожидаемый результат
Прочитать ОборотыДтКт собственного бухгалтерского регистра по собственной подготовленной схеме бухгалтерского регистра.
На что обратить внимание
Балансовые и небалансовые измерения и ресурсы создают разные поля. Сумма — балансовая, Количество — небалансовое; нельзя заменять имя одного ресурса другим без проверки схемы.
Планы счетов этой партии без субконто. Пустые позиции параметров субконто сохранены намеренно; пример не объявляет покрытыми неиспользованные поля субконто.
Ограничение Организация = Урок применяется внутри виртуальной таблицы, а не после получения всех рабочих проводок.
Ссылка регистратора обозначает собственный учебный документ. Запрос не перепроводит и не удаляет документы.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.