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

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

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

        &НаСервере
        Процедура ЗаписатьРазделенныеТКПНаСервере()
        Если НЕ ЗначениеЗаполнено(Объект.Ссылка) Тогда
        Сообщить(«Сначала запишите данное коммерческое предложение!»);
        Возврат
        КонецЕсли;

        ТаблицаЗаказовКлиентовЭМИ[ЭМИ_НомерТекущегоЗаказаКлиента-1].ЗаказКлиента.Загрузить(ТоварыЗаказКлиента.Выгрузить());

        Ном = 1;

        Для Каждого Стр Из ТаблицаЗаказовКлиентовЭМИ Цикл
        Если Стр.ЗаказКлиента.Количество()>0 Тогда
        Если ЗначениеЗаполнено(Стр.Ссылка) Тогда
        НовТКП = Стр.Ссылка.ПолучитьОбъект();
        Иначе
        НовТКП = Объект.Ссылка.Скопировать();
        НовТКП.ТКП = Объект.Ссылка;
        НовТКП.Дата = ТекущаяДата();
        КонецЕсли;
        НовТКП.Товары.Загрузить(Стр.ЗаказКлиента.Выгрузить());
        Для Каждого Стр2 Из НовТКП.Товары Цикл
        Ключ = Стр2.КлючСвязи;
        СтрокаТовары = Объект.Товары[Ключ — 1];
        ЗаполнитьЗначенияСвойств(Стр2, СтрокаТовары);
        Стр2.КлючСвязи = Ключ;
        КонецЦикла;

        НовТКП.Комментарий = ?(ПустаяСтрока(НовТКП.Комментарий),»Деление «+Объект.Ссылка,»Деление «+Объект.Ссылка+»
        |»+НовТКП.Комментарий);
        НовТКП.Записать(РежимЗаписиДокумента.Запись);
        Стр.Ссылка = НовТКП.Ссылка;
        Сообщить(«Записан документ «+НовТКП);
        Элементы[«НоваяНадпись»+Ном].Заголовок = Стр.Ссылка;

        КонецЕсли;
        Ном = Ном + 1
        КонецЦикла;
        КонецПроцедуры

        как из этого кода получить ссылку на документ и релизовать процедуру открытия через гиперссылку на форме документа?

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

          Привет, Денис!

          Чтобы получить ссылку на документ из вашего кода и реализовать процедуру открытия через гиперссылку на форме документа, вам нужно сделать следующее:

          1. **Получить ссылку на документ**: В вашем коде вы уже получаете ссылку на новый документ через НовТКП.Ссылка. Это значение можно использовать для создания гиперссылки.

          2. **Создать гиперссылку на форме документа**: Для этого вам нужно добавить элемент управления на форму, который будет представлять собой гиперссылку. Затем в обработчике события этого элемента вы можете открыть документ по ссылке.

          Вот пример, как это можно сделать:

          ### Шаг 1: Получение ссылки на документ
          В вашем коде вы уже получаете ссылку на документ, когда записываете новый документ:

          ### Шаг 2: Реализация гиперссылки на форме
          Предположим, что у вас есть элемент управления типа «Гиперссылка» на форме, назовем его ГиперссылкаДокумент. Вам нужно добавить обработчик события для этого элемента:

          ### Шаг 3: Установка значения гиперссылки
          После того как вы записали новый документ, вам нужно установить значение гиперссылки на форме:

          ### Полный пример
          Объединяя все вместе, ваш код может выглядеть так:

          Теперь, когда вы записываете новый документ, ссылка будет установлена в гиперссылку на форме, и при нажатии на гиперссылку документ будет открываться.

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