Имя: Пароль:
1C
1С v8
СКД расшифровка программная
0 scanduta
 
05.12.14
10:44
Есть отчет на скд.

Есть допустим 4 колонки.

Организация контрагент документ сумма

Хочу чтобы при клике по любой колонке открывался всегда документ. Т.е. значение 3-й колонки.

Делаю программную расшфировку вот так

&НаКлиенте
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
  
   Если ТипЗнч(Расшифровка) <> Тип("ИдентификаторРасшифровкиКомпоновкиДанных") Тогда
      Возврат;
   КонецЕсли;

         СтандартнаяОбработка = Ложь;
   Элемент =  ПолучитьКоллекцию(Расшифровка);
   Если ЗначениеЗаполнено(Элемент) Тогда
      ОткрытьЗначение(Элемент);
   КонецЕсли;

КонецПроцедуры // РезультатОбработкаРасшифровки()


&НаСервере
Функция ПолучитьКоллекцию(Расшифровка)
  
   ДанныеРасшифровкиОтчета = ПолучитьИзВременногоХранилища(ДанныеРасшифровки);
   ЭлементРасшифровки = ДанныеРасшифровкиОтчета.Элементы[Расшифровка];


   Если ТипЗнч(ЭлементРасшифровки) = Тип("ЭлементРасшифровкиКомпоновкиДанныхПоля") Тогда
      Для Каждого ЗначениеПоляРасшифровки Из ЭлементРасшифровки.ПолучитьПоля() Цикл
         Значение = ЗначениеПоляРасшифровки.Значение;
         Если Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(Значение))
          ИЛИ Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(Значение)) Тогда
            Возврат Значение;
         КонецЕсли;
      КонецЦикла;
   КонецЕсли;

   Возврат Неопределено;

КонецФункции

Но здесь могу получить только значение текущей колонки.

Как сделать так чтобы при клике всегда открывалось значение определенной колонки не пойму
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший