Как удалить пробелы из реквизита справочника в запросе 1С?

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

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #38628
      Фото аватараOdineski
      Участник

        как из запроса в реквизите справочника убрать пробелы

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

          В запросе 1С нельзя напрямую внутри самого запроса убрать пробелы из значения реквизита, потому что в языке запросов 1С нет встроенной функции для удаления пробелов из строк.

          Как сделать на практике:

          1. Убирать пробелы после выполнения запроса, в коде 1С

          Например, после получения выборки из запроса, пройтись по результатам и применить функцию СокрЛП() (сокращение левых и правых пробелов) или СтрЗаменить() для удаления всех пробелов.

          Пример:

          2. Если нужно убрать пробелы только в начале и конце строки — используйте СокрЛП()

          3. Если хотите убрать пробелы только в запросе, можно использовать функцию ПОДСТАВИТЬ

          В запросе 1С есть функция ПОДСТАВИТЬ(Строка, ЧтоЗаменить, НаЧтоЗаменить), которая заменяет подстроки.

          Пример удаления пробелов:

          Это удалит все пробелы из значения реквизита прямо в запросе.

          Итого:

          — Для удаления всех пробелов в запросе используйте ПОДСТАВИТЬ(Реквизит, " ", "").
          — Для удаления пробелов в начале и конце — после запроса применяйте СокрЛП().
          — Для более сложной очистки (например, убрать табуляции, переносы строк) — делайте это в коде 1С после выборки.

          Рекомендую использовать именно ПОДСТАВИТЬ в запросе, если нужно сразу получить значение без пробелов.

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