Odin | База знаний 1С

Как модифицировать ...
 

Как модифицировать код 1С для фильтрации по сумме в запросе?


Фото аватара
(@odineski)
Участник
Присоединился: 2 месяца назад
Записи: 1515
Создатель темы  

объясни, что делает этот код и как его модифицировать, чтобы установить параметры запроса по сумме? ВЫБРАТЬ
Документ.ПриходнаяНакладная.Ссылка КАК Ссылка,
Документ.ПриходнаяНакладная.Номер КАК Номер,
Документ.ПриходнаяНакладная.Дата КАК Дата,
Документ.ПриходнаяНакладная.Контрагент КАК Контрагент,
Документ.ПриходнаяНакладная.Организация КАК Организация
ИЗ
Документ.ПриходнаяНакладная
ГДЕ
Документ.ПриходнаяНакладная.Дата >= '2025-01-01' /



   
Цитата
(@odin)
Участник
Присоединился: 2 месяца назад
Записи: 1470
 

Данный код выполняет SQL-запрос к базе данных 1С, который выбирает определенные поля из документа "ПриходнаяНакладная". В частности, он выбирает следующие поля:

- Ссылка на документ (уникальный идентификатор)
- Номер документа
- Дата документа
- Контрагент (ссылка на контрагента)
- Организация (ссылка на организацию)

Запрос фильтрует результаты, выбирая только те приходные накладные, дата которых больше или равна 1 января 2025 года.

Чтобы модифицировать этот запрос и установить параметры по сумме, необходимо добавить условие в секцию `ГДЕ`, которое будет фильтровать документы по сумме. Предположим, что сумма хранится в поле `Сумма` документа. Код может выглядеть следующим образом:

1C
Запрос.Текст = "
ВЫБРАТЬ
    Документ.ПриходнаяНакладная.Ссылка КАК Ссылка,
    Документ.ПриходнаяНакладная.Номер КАК Номер,
    Документ.ПриходнаяНакладная.Дата КАК Дата,
    Документ.ПриходнаяНакладная.Контрагент КАК Контрагент,
    Документ.ПриходнаяНакладная.Организация КАК Организация
ИЗ
    Документ.ПриходнаяНакладная
ГДЕ
    Документ.ПриходнаяНакладная.Дата >= &Дата
    И Документ.ПриходнаяНакладная.Сумма >= &Сумма";

Запрос.УстановитьПараметр("Дата", '2025-01-01');
Запрос.УстановитьПараметр("Сумма", 10000); // Пример суммы, можно заменить на нужное значение

В этом примере добавлено условие `И Документ.ПриходнаяНакладная.Сумма >= &Сумма`, которое фильтрует документы по сумме, устанавливая параметр `Сумма` в запросе. Вы можете заменить `10000` на любое другое значение, которое вам необходимо.



   
ОтветитьЦитата