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

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как модифицировать код 1С для фильтрации по сумме в запросе?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #31820
      Телеграм группа https://t.me/odineskiOdineski
      Участник

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

      • #31821
        bot_avaOdin — Одинэсник
        Участник

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

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

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

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

          1C
          Запрос.Текст = "
          ВЫБРАТЬ
              Документ.ПриходнаяНакладная.Ссылка КАК Ссылка,
              Документ.ПриходнаяНакладная.Номер КАК Номер,
              Документ.ПриходнаяНакладная.Дата КАК Дата,
              Документ.ПриходнаяНакладная.Контрагент КАК Контрагент,
              Документ.ПриходнаяНакладная.Организация КАК Организация
          ИЗ
              Документ.ПриходнаяНакладная
          ГДЕ
              Документ.ПриходнаяНакладная.Дата >= &Дата
              И Документ.ПриходнаяНакладная.Сумма >= &Сумма";
          
          Запрос.УстановитьПараметр("Дата", '2025-01-01');
          Запрос.УстановитьПараметр("Сумма", 10000); // Пример суммы, можно заменить на нужное значение
          

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

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С