Добрый день, в обычных формах 2.8 есть таблица значений в неё выводятся строки с датой документов как при щелчке по строке открыть нужный документ именно с этой датой.

```1c
    Процедура ПродажиПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)

    ОткрытьФорму("Документ.Продавцы.Форма.ФормаДокумента");
    Закрыть();

    КонецПроцедуры
```

При такой конструкции у меня открывается новый чистый документ, а мне нужен тот который выбрал?
---
не совсем понял почему регистр, если речь про документ и таблицу значений?

```1c
    ТекущаяСтрока = Элементы.ТаблицаЗначений.ТекущиеДанные;
    Запрос = Новый Запрос;
    Запрос.Текст = "
    |Выбрать Первые 1
    | Ссылка
    |из
    | Документ.Продавцы
    |Где Дата = &Дата
    |";

    Запрос.УстановитьПараметр("Дата", ТекущаяСтрока.ДатаИзТЗ);

    Результат = Запрос.Выполнить();
    Выборка = Результат.Выбрать();

    Выборка.Следующий();

    Если НЕ РезультатЗапроса.Пустой() Тогда
    ПоказатьЗначение(, Выборка.Ссылка);
    КонецЕсли
```
---
Связано с тем, что у документов в дате еще есть время, а на скрине в таблице только дата. И если время у документа не 00:00, то такой документ не найдет.
В запросе дату документа надо приводить к началу дня.
---
Используйте событие табличного поля "Выбор":
```1c
    Процедура ПродажиВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
    ОткрытьЗначение(ВыбраннаяСтрока.СсылкаНаДокумент);
    КонецПроцедуры
```
---
у меня обычные формы есть Выбор значения а в нём тогого нет ВыбраннаяСтрока.СсылкаНаДокументь такого нет.
---
А это что?
---
Всё верно есть её описание в помощнике и даже отладчик не ругается при обновлении базы, но вот когда щёлкаешь по строке таблицы ничего не происходит.
---
сделать запрос, который будет находить ссылку документа с такой датой и его открывать. Но тут такой момент, а если на эту дату чисто в теории будет два документа, какой открываться должен?

есть процедура, которая позволяет открыть по ссылке, подробнее про нее в помощнике

```1c
    ПоказатьЗначение(, СсылкаНаДокумент);
```
---
Посмотрел в синтаксисе помощнике про
```1c
    ПоказатьЗначение(, СсылкаНаДокумент);
```
первый параметр не обязателен, а второй не понял что ссылкой будет на нужный документ и как это получить?
---
Ссылкой, на удивление, будет ссылка на документ, который нужно открыть)
---
Вот хоть что, но не вывожу, как её получить я щёлкаю по любой строке таблицы и получаю на неё ссылку?
---
я просто не до конца понимаю куда что вы щелкаете и какие данные у вас там есть, исходя из этого можно будет дать ответ. Скриншот формы
---
тут дата документа, это Дата или ДатаЗакрытия?
---
Дата
---
смотреть мой 4 ответ, запросом получить ссылку по этой дате и ее открывать
---
Двух документов точно не будет, не могу сообразить как этот запрос будет выглядеть? Запрос то должен к регистру обращаться?
---
не совсем понял почему регистр, если речь про документ и таблицу значений?

```1c
    ТекущаяСтрока = Элементы.ТаблицаЗначений.ТекущиеДанные;
    Запрос = Новый Запрос;
    Запрос.Текст = "
    |Выбрать Первые 1
    | Ссылка
    |из
    | Документ.Продавцы
    |Где Дата = &Дата
    |";

    Запрос.УстановитьПараметр("Дата", ТекущаяСтрока.ДатаИзТЗ);

    Результат = Запрос.Выполнить();
    Выборка = Результат.Выбрать();

    Выборка.Следующий();

    Если НЕ РезультатЗапроса.Пустой() Тогда
    ПоказатьЗначение(, Выборка.Ссылка);
    КонецЕсли
```
---
так данные попадают в ТЗ из Регистра. Создаётся документ, заносим в него данные нажимаем ок и они в регистре хранятся.
---
нужен пример кода, чтобы разобраться
---
Всё работает так как нужно, только не могу понять какие то строки открывает какие-то нет это с датам и что то может быть? По отладчику смотрю в цикл выборки входит и открывает нужный документ, а бывает просто перепрыгивает цикл тогда не открывает с чём может быть связано? Пустого значения там нет.

```1c
    ТекущаяСтрока = Элементы.Продажи.ТекущиеДанные;
    Запрос = Новый Запрос;
    Запрос.Текст = "
    |Выбрать Первые 1
    | Ссылка
    |из
    | Документ.Продавцы
    |Где Дата = &Дата
    |";

    Запрос.УстановитьПараметр("Дата", ТекущаяСтрока.ДатаИзТЗ);

    Результат = Запрос.Выполнить();
    Выборка = Результат.Выбрать();

    Пока Выборка.Следующий() Цикл

    ПоказатьЗначение(, Выборка.Ссылка);

    КонецЦыкла;
```
---
возможно по этому
 КонецЦЫкла;

КонецЦИкла;

Поставьте точку остановы где ПоказатьЗначение, запросом находит ссылку?
---
ПоказатьЗначение он перепрыгивает. Тоесть ссылку не находит.
---
в 28 ответе вам написали причину, по которой запрос не находит данные
---
видел логичноно, почему-то не работает, да если время больше 00:00:00 то в цикл заходит, НО документ не открывает.
---
выборка ссылка определен конкретный документ в этот момент? может в ТЧ лучше хранить дату и время, если это соответствует дате и времени документа (отображать можно просто датой - 23.08.2024)
---
Спасибо разобрался у документа есть ещё номер "оказывается")) Вот по нему всё чётко работает.
---
Связано с тем, что у документов в дате еще есть время, а на скрине в таблице только дата. И если время у документа не 00:00, то такой документ не найдет.
В запросе дату документа надо приводить к началу дня.
---
В запросе дату документа надо приводить к началу дня. Не учи детей плохому, такое через попадание между двумя параметрами надо делать.

А хотя не, этого можно.
---
С такими исходными данными попасть можно только в просак...
---
попасть можно только в просакНу, с этим автор темы и сам отлично справляется.
---
Параметры = Новый Структура("Клуч",Элементы.ТаблицаЗначений.ТекущиеДанные.СсылкаНаДокумент);
ОткрытьФорму("Документ.Продавцы.Форма.ФормаДокумента",Параметры);
---
Не могу понять эту запись Элементы.ТаблицаЗначений.ТекущиеДанные.СсылкаНаДокумент таблица значений это ясно моя таблица, а что за Элемент ТекущиеДнные , что за ссылка на документ? Всё пробовал у меня пишет нет таких переменных.
---
это магия управляемых форм.
а тебе как я понял надо для обычных.
в общем не подходит.
---
Всё верно для обычных.
---
вроде судя по описанию - тебе надо открывать документы - все верно?
или даты не соответствуют датам документов и их надо менять?

если все верно, то тебе надо просто переходиьт по ссылке на документ. как это делаеся в обычных формах не подскажу, но не должно быть сложно.
---
Для не УФ. Нужно использовать:

СсылкаНаДокумент = ЭлементыФормы.ТаблицаЗначений.ТекущиеДанные.Ссылка;
Фрм = СсылкаНаДокумент.ПолучитьФорму("ФормаДокумента",ЭтаФорма,СсылкаНаДокумент);
Фрм.Открыть();
---
Почему в таблицу на форме не добавить колонку "СсылкаНаДокумент", и при заполнении тз заполнять так же и Ссылку? (ее, если что, можно не отображать на форме)
Тогда не нужно будет делать велосипед с поиском документа по Дате.