Как подставлять актуальную цену и наименование диапазона из регистра сведений "ТарифныеЦены" в документ "Рейс" при вводе "Расстояние число"?
Помогите,пожалуйста, написать запрос.
---
Если правильно понял вопрос, то примерно так:

```1c
    &НаКлиенте
    Функция ВыбСтрока()
    ТекСтрока = Элементы.ВашаТЧ.ТекущаяСтрока;
    Возврат Элементы.ВашаТЧ.ДанныеСтроки(ТекСтрока);
    КонецФункции

    &НаКлиенте
    Процедура ВашаТЧРасстояниеПриИзменении(Элемент)
    ТекСТрока = ВыбСтрока();
    ТекСТрока.Цена = ПолучитьЦенуТарифа (ТекСТрока.Расстояние,Объект.Дата);
    КонецПроцедуры

    &НаСервере
    Функция ПолучитьЦенуТарифа (Расстояние,НаДату)
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ТарифныеЦены.Цена КАК Цена,
    | ТарифныеЦены.ДействуетС КАК ДействуетС
    |ИЗ
    | РегистрСведений.ТарифныеЦены КАК ТарифныеЦены
    |ГДЕ
    | ТарифныеЦены.От <= &Расстояние
    | И ТарифныеЦены.До >= &Расстояние
    | И ТарифныеЦены.ДействуетС <= &НаДату";
    Запрос.УстановитьПараметр("Расстояние",Расстояние);
    Запрос.УстановитьПараметр("НаДату",НаДату);
    Рез = запрос.Выполнить().Выгрузить();
    Рез.Сортировать("ДействуетС Убыв");
    Если Рез.Количество() > 0 тогда
    Возврат Рез[0][0]; // Это ваша цена
    Иначе
    Возврат 0; // Ничего не нашлось...
    КонецЕсли;
    КонецФункции
```
---
В условиях запроса поставьте два условия:

От < Расстояние;

До> Расстояние;
---
Про условия я понимаю. У меня не получается правильно произвести отбор записей.
---
```1c
    Функция ПолучитьЦенуТарифа (Расстояние)
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ТарифныеЦены.Цена КАК Цена
    |ИЗ
    | РегистрСведений.ТарифныеЦены КАК ТарифныеЦены
    |ГДЕ
    | ТарифныеЦены.От <= &Расстояние
    | И ТарифныеЦены.До >= &Расстояние";
    Запрос.УстановитьПараметр("Расстояние",Расстояние);
    Рез = запрос.Выполнить().Выгрузить();

    Если Рез.Количество() > 0 тогда
    Возврат Рез[0][0]; // Это ваша цена
    Иначе
    Возврат 0; // Ничего не нашлось...
    конецЕсли;
    конецФункции
```

Как то так!
---
Но я бы в этот регистр еще бы дату установления цены бы прикрутил, цены то ведь меняться будут явно.

```1c
    Функция ПолучитьЦенуТарифа (Расстояние,НаДату)
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ТарифныеЦены.Цена КАК Цена,
    | ТарифныеЦены.ДействуетС КАК ДействуетС
    |ИЗ
    | РегистрСведений.ТарифныеЦены КАК ТарифныеЦены
    |ГДЕ
    | ТарифныеЦены.От <= &Расстояние
    | И ТарифныеЦены.До >= &Расстояние
    | И ТарифныеЦены.ДействуетС <= &НаДату";
    Запрос.УстановитьПараметр("Расстояние",Расстояние);
    Запрос.УстановитьПараметр("НаДату",НаДату);
    Рез = запрос.Выполнить().Выгрузить();
    Рез.Сортировать("ДействуетС Убыв");
    Если Рез.Количество() > 0 тогда
    Возврат Рез[0][0]; // Это ваша цена
    Иначе
    Возврат 0; // Ничего не нашлось...
    КонецЕсли;
    КонецФункции
```
---
Большое спасибо за ответ. А как можно передать возвращаемое значение этой функции в процедуру Расстояние при изменении?
---
Если правильно понял вопрос, то примерно так:

```1c
    &НаКлиенте
    Функция ВыбСтрока()
    ТекСтрока = Элементы.ВашаТЧ.ТекущаяСтрока;
    Возврат Элементы.ВашаТЧ.ДанныеСтроки(ТекСтрока);
    КонецФункции

    &НаКлиенте
    Процедура ВашаТЧРасстояниеПриИзменении(Элемент)
    ТекСТрока = ВыбСтрока();
    ТекСТрока.Цена = ПолучитьЦенуТарифа (ТекСТрока.Расстояние,Объект.Дата);
    КонецПроцедуры

    &НаСервере
    Функция ПолучитьЦенуТарифа (Расстояние,НаДату)
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ТарифныеЦены.Цена КАК Цена,
    | ТарифныеЦены.ДействуетС КАК ДействуетС
    |ИЗ
    | РегистрСведений.ТарифныеЦены КАК ТарифныеЦены
    |ГДЕ
    | ТарифныеЦены.От <= &Расстояние
    | И ТарифныеЦены.До >= &Расстояние
    | И ТарифныеЦены.ДействуетС <= &НаДату";
    Запрос.УстановитьПараметр("Расстояние",Расстояние);
    Запрос.УстановитьПараметр("НаДату",НаДату);
    Рез = запрос.Выполнить().Выгрузить();
    Рез.Сортировать("ДействуетС Убыв");
    Если Рез.Количество() > 0 тогда
    Возврат Рез[0][0]; // Это ваша цена
    Иначе
    Возврат 0; // Ничего не нашлось...
    КонецЕсли;
    КонецФункции
```