При активизации ячейки необходимо чтобы открывалась заданная форма. Как это сделать в событии Обработка расшифровки?
Разжуйте пожалуйста. Макет и форма с табличным документом есть.
---
тогда вот ваш код

&НаКлиенте
Процедура Реквизит1ОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
    СтандартнаяОбработка = Ложь;

    Если Расшифровка = "НадоОткрытьФорму" Тогда
        ОткрытьФорму("ОбщаяФорма.Чекпоинт1");
    КонецЕсли;

КонецПроцедуры
---
при активизации вряд ли, расшифровка делается по двойному клику, а как обработать подскажет ИТС

Обработка расшифровки
После того, как расшифровка заполнена, следует позаботиться об ее обработке.

 Если табличный документ открыт в отдельном окне, никаких действий по обработке расшифровки выполнить нельзя. В этом случае расшифровка будет работать в соответствии со своим поведением по умолчанию – то есть, будет открыто значение расшифровки. Для ссылочных типов будет открыта основная форма объекта, для других типов будет отображена строка, представляющая значение расшифровки.

Если табличный документ отображается в поле табличного документа, возможно переопределение поведения расшифровки. Для этого нужно создать обработчик события ОбработкаРасшифровки поля табличного документа. Это событие будет вызываться при каждой попытке пользователя вызвать расшифровку. В обработчик события будет передано поле табличного документа, для которого вызвана расшифровка, значение расшифровки и флаг стандартной обработки расшифровки. Если стандартная обработка расшифровки не нужна, следует присвоить флагу СтандартнаяОбработка значение "Ложь".

Пример:

Процедура ПолеТабличногоДокумента1ОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
КонецПроцедуры
В тексте обработчика события можно выполнить любые действия по обработке расшифровки. Например, запустить на исполнение некоторый отчет, передав ему в качестве параметра значение расшифровки.
---
Так у меня как раз и есть поле табличного документа с событием обработка расшифровка. 1 или 2 клика срабатывать будет мне не важно.
В макете у меня есть рисунок с заполненым Параметр Расшифровка.
Мне нужно чтобы при нажатии на рисунок открывалась бы заданная мною форма.
---
ну и сделайте как в примере, внутрь процедуры добавьте
Если Расшифровка = МояРасшифровка тогда
открытьФорму...
КонецЕсли;
---
что будет в расшифровка, а что в моя расшифровка ?
насколько я знаю расшифровка это числовой параметр.

```1c
    &НаСервере
    Процедура Реквизит1ОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
    СтандартнаяОбработка = Ложь;

    //Задумывается взаимосвязь через условие: если нажата ячейка с параметром ПунктИ1
    //ОткрытьФорму(");//то откроется форма с небольшой поясняющей информацией. Для каждого пункта своя форма, заданного размера и в ней содержания.
    Если Расшифровка = ПунктИ1 Тогда
    ОткрытьФорму("ОбщаяФорма.Чекпоинт1");
    КонецЕсли;

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

{ОбщаяФорма.ИнтерактивнаяКартаМарафона.Форма(8,21)}: Переменная не определена (ПунктИ1)
 Если Расшифровка = <<?>>ПунктИ1 Тогда (Проверка: Сервер)
{ОбщаяФорма.ИнтерактивнаяКартаМарафона.Форма(9,3)}: Процедура или функция с указанным именем не определена (ОткрытьФорму)
  <<?>>ОткрытьФорму("ОбщаяФорма.Чекпоинт1"); (Проверка: Сервер)
---
Надо делать НаКлиенте, а не на сервере
---
я поставил точку останова, но не могу данных посмотреть, так как сразу выкидывает меня с ошибкой.
 Ошибка инициализации модуля: ОбщаяФорма.ИнтерактивнаяКартаМарафона.Форма
по причине:
{ОбщаяФорма.ИнтерактивнаяКартаМарафона.Форма(8,21)}: Переменная не определена (ПунктИ1)
 Если Расшифровка = <<?>>ПунктИ1 Тогда
В моём примере ПунктИ1 это то что заполнено в параметре расшифровки у рисунка.
---
закомментируйте пока условие, чтобы можно было посмотреть
---
точка останова не активируется.

```1c
    &НаКлиенте
    Процедура Реквизит1ОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
    СтандартнаяОбработка = Ложь;

    //Задумывается взаимосвязь через условие: если нажата ячейка с параметром ПунктИ1
    //ОткрытьФорму(");//то откроется форма с небольшой поясняющей информацией. Для каждого пункта своя форма, заданного размера и в ней содержания.
    //Если Расшифровка = ПунктИ1 Тогда
    // ОткрытьФорму("ОбщаяФорма.Чекпоинт1");
    //КонецЕсли;

    КонецПроцедуры
```
---
да уж... надо эту процедуру вписать в Свойство поля табличного документа
и поставить точку на строку СтандартнаяОбработка = ложь
---
Так она там и есть, поэтому я поставил в другое место точку останова. Проверил Расшифровка и ПунктИ1 по отдельности, в значение выходит: Переменная не определена.
---
жесть! У вас же в профиле программист 1С...
по порядку:
у вас есть Макет, в Макете есть Ячейка, в свойствах ячейки в поле ПараметрРасшифровки должно быть указано имя параметра , например "РасшДляЭтойЯчейки", при заполнении макета вы в коде должны указать
Область.Параметры.РасшДляЭтойЯчейки = "НадоОткрытьФорму";
тогда при клике по этой ячейке
Процедура Реквизит1ОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
в параметре расшифровки вернет "НадоОткрытьФорму"
Попробуйте так сделать и добиться чтобы Процедура передавала в Расшифровка то, что вы задали в коде.
---
НадоОткрытьФорму

А условие надо будет переделать ? Если Расшифровка = ПунктИ1
Вроде я нашёл проблему..
---
непонятно что такое ПунктИ1, это явно не реквизит, если это текстовый параметр, то можно написать
Если Расшифровка = "тоЧтоВПунктИ1"
Суть проста, добиться чтобы в процедуру передавалась не пустая Расшифровка, уникальная для данной ячейки макета, т.е. для других ячеек Расшифровка либо неопределена, либо имеет другие значения, и сравнивать.

Покажите ваш макет и процедуру его заполнения
---
Вот мой макет.
А процедура заполнения где ?
Это всё что связано с макетом.

```1c
    &НаСервере
    Функция ПриОткрытииНаСервере()
    ТабДок = Новый ТабличныйДокумент;
    Макет = Документы.ДокументДляИнтерактивнойКарты.ПолучитьМакет("МакетИнтерактивнойКарты");
    Область1 = Макет.ПолучитьОбласть("Область1");

    Область1.Параметры.ПунктИ1 = "НадоОткрытьФорму";

    Реквизит1.Вывести(Область1); //Это позволит вывести Табличный документ на форме. ИмяТвоегоРеквизитаФормы.Вывести(ИмяПеременнойТабличныйДокумент);
    ТабДок.Вывести(Область1); //Это откроет новое окно. Пригодится, если необходима печать.
    ТабДок.ОтображатьЗаголовки = Ложь;
    Возврат ТабДок;
    КонецФункции

    &НаКлиенте
    Процедура ПриОткрытии(Отказ)
    ТабДок = ПриОткрытииНаСервере();

    ТабДок.Показать(Реквизит1);
    ТабДок.ОтображатьСетку = Ложь;
    КонецПроцедуры
```
---
тогда вот ваш код

&НаКлиенте
Процедура Реквизит1ОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
    СтандартнаяОбработка = Ложь;

    Если Расшифровка = "НадоОткрытьФорму" Тогда
        ОткрытьФорму("ОбщаяФорма.Чекпоинт1");
    КонецЕсли;

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