Имя: Пароль:
1C
1С v8
Ошибка при создании сертификата криптографии
0 Alex_MA
 
15.11.11
09:19
Всем доброго дня уважаемые коллеги!

1С:Предприятие 8.2 (8.2.14.537)

Попытка
           ДвоичныеДанныеСертификата  = ДокументОбъект.СертификатКонтрагентаДляШифрования.Получить(); //Получили двоичные данные
           Если ДвоичныеДанныеСертификата <> Неопределено Тогда
               СертификатКриптографии = Новый СертификатКриптографии(ДвоичныеДанныеСертификата); //ОШИБКА
               ПредставлениеСертификата = ЭлектроннаяЦифроваяПодписьКлиентСервер.ПолучитьПредставлениеПользователя(СертификатКриптографии.Субъект);
               ФормаСертификатКонтрагентаДляШифрования = ПредставлениеСертификата;
           КонецЕсли;
           ОпределитьДоступностьСертификатовПодписей();
           ПеречитатьДанныеПоСертификатам(ДокументОбъект);
       Исключение
           //При ошибке сюда даже не заходжит!
       КонецПопытки;

http://gyazo.com/b43eb5955b0173dc03ea91987e30328e

Странно как то работает. В чем тут проблема ?
1 Alex_MA
 
15.11.11
09:55
подниму ?
2 Alex_MA
 
15.11.11
10:48
надеюсь получить ответ
3 Leksus
 
15.11.11
10:50
у тебя в обработке исключения нет ни строчки кода - и куда отладчик должен заходить?
4 Maxus43
 
15.11.11
10:53
на автомате уж надо приучится писать:

      Исключение
 Сообщить(ОписаниеОшибки());
       КонецПопытки;
5 Alex_MA
 
15.11.11
10:54
(3)даже если есть код все равно не заходит
6 Alex_MA
 
15.11.11
10:54
(4)так писал, не отрабатывает
7 Leksus
 
15.11.11
10:55
(6) тонкий клиент?
8 Alex_MA
 
15.11.11
10:55
в том то и дело, что никакого описания ошибки нет, потому что эксепшн не отрабатывает так как ему положено
9 Maxus43
 
15.11.11
10:57
а с чего он должен кстати обработаться если ошибка будет в другой процедуре? отладчиком иди везде, смотри где спотыкается
10 Maxus43
 
15.11.11
10:57
остановку по ошибке в конце концов включить
11 Alex_MA
 
15.11.11
10:59
(7)да, это кусок кода ПриСозданииНаСервере() формы справочника УТ11 "СоглашениеОбИспользованииЭД"
12 Alex_MA
 
15.11.11
11:00
(10)остановку по ошибке ставил - нет ошибки. Еще раз - в болок эксепшн не заходит - выполнение кода прекращается на

СертификатКриптографии = Новый СертификатКриптографии(ДвоичныеДанныеСертификата); //ОШИБКА
13 Maxus43
 
15.11.11
11:04
из файла создаётся?
14 Alex_MA
 
15.11.11
11:06
(13)Из хранилища значения достаются двоичные данные, а затем создается конструктором СертификатКриптографии:
http://gyazo.com/efdb6a343150fcabb57c9f8ff870911a
15 Maxus43
 
15.11.11
11:12
(14) если 3 раза на ф11 нажать что будет?
з.ы. ссылка в (0) битая и не смотрел
16 Alex_MA
 
15.11.11
11:14
(15)>>ссылка в (0) битая и не смотрел - пардон, плохо отобразилось: http://gyazo.com/b43eb5955b0173dc03ea91987e30328e

>>если 3 раза на ф11 нажать что будет? - а три раза никак, только два и http://gyazo.com/b43eb5955b0173dc03ea91987e30328e. В эксепшн не заходит
17 Alex_MA
 
15.11.11
11:18
попробую тот же код на клиенте сделать
18 Alex_MA
 
15.11.11
11:30
&НаКлиенте
Процедура Тест(Команда)
   
   ДвоичныеДанныеСертификата = ПолучитьДвоичныеДанные();
   
   Если ДвоичныеДанныеСертификата <> Неопределено Тогда
       Попытка
           СертификатКриптографии = Новый СертификатКриптографии(ДвоичныеДанныеСертификата);
       Исключение
           Сообщить(ОписаниеОшибки());
       КонецПопытки;
   КонецЕсли;    
   
КонецПроцедуры

&НаСервере
Функция ПолучитьДвоичныеДанные()
   
   ДокументОбъект = РеквизитФормыВЗначение("Объект");
   Возврат ДокументОбъект.СертификатКонтрагентаДляШифрования.Получить();
   
КонецФункции

Та же самая ошибка.
19 Maxus43
 
15.11.11
11:31
сертификат в файл сохрани, погляди на него... сроки действия и т.д.
20 Alex_MA
 
15.11.11
12:20
срок действия - Ок
21 Alex_MA
 
15.11.11
15:04
проверил, все параметры в порядке