Имя: Пароль:
1C
1С v8
Установлен безопасный режим. Выполнение операции завершено.
0 Lesha1C
 
27.03.12
11:08
&НаСервере
Функция ПолучитьТабДокНаСервере()
.....
КартинкаШтрихкода=ПолучитьКартинкуШтрихкода(ШтрихКод);
Если НЕ КартинкаШтрихкода = Неопределено Тогда
   Область.Рисунки.Картинка.Картинка= КартинкаШтрихкода;
КонецЕсли;
....
КонецФункции

Функция ПолучитьКартинкуШтрихкода(ШтрихКод)
     
   // В зависимости от типа платформы подключим соответствующую внешнюю компоненту
   ИнформацияОСистеме = Новый СистемнаяИнформация;
   Если ИнформацияОСистеме.ТипПлатформы = ТипПлатформы.Windows_x86 Тогда
       ПодключитьВнешнююКомпоненту("ОбщийМакет.КомпонентаПечатиШтрихкодовWindows32", "КартинкаШтрихкода", ТипВнешнейКомпоненты.Native);
   ИначеЕсли ИнформацияОСистеме.ТипПлатформы = ТипПлатформы.Windows_x86_64 Тогда
       ПодключитьВнешнююКомпоненту("ОбщийМакет.КомпонентаПечатиШтрихкодовWindows64", "КартинкаШтрихкода", ТипВнешнейКомпоненты.Native);
   ИначеЕсли ИнформацияОСистеме.ТипПлатформы = ТипПлатформы.Linux_x86 Тогда
       ПодключитьВнешнююКомпоненту("ОбщийМакет.КомпонентаПечатиШтрихкодовLinux32", "КартинкаШтрихкода", ТипВнешнейКомпоненты.Native);        
   Иначе
       ПодключитьВнешнююКомпоненту("ОбщийМакет.КомпонентаПечатиШтрихкодовLinux64", "КартинкаШтрихкода", ТипВнешнейКомпоненты.Native);
   КонецЕсли;

   // Создадим объект внешней компоненты
   Компонент = Новый("AddIn.КартинкаШтрихкода.Barcode");

   // Если нет возможности рисовать
   Если НЕ Компонент.ГрафикаУстановлена Тогда
       // То картинку сформировать не сможем
       Возврат Неопределено;
   КонецЕсли;

   // Если в системе установлен шрифт Tahoma
   Если Компонент.НайтиШрифт("Tahoma") = Истина Тогда
       // Выбираем его как шрифт для формирования картинки
       Компонент.Шрифт = "Tahoma";
   Иначе

       // Шрифт Tahoma в системе отсутствует

       // Обойдем все доступные компоненте шрифты
       Для Сч = 0 По Компонент.КоличествоШрифтов -1 Цикл

           // Получим очередной шрифт, доступный компоненте
           ТекущийШрифт = Компонент.ШрифтПоИндексу(Сч);

           // Если шрифт доступен
           Если ТекущийШрифт <> Неопределено Тогда

               // Они и будет шрифтом для формирования штрихкода
               Компонент.Шрифт = ТекущийШрифт;
               Прервать;

           КонецЕсли;

       КонецЦикла;

   КонецЕсли;
   
   

   
   // Установим размер шрифта
   Компонент.РазмерШрифта = 8;

   // Зададим размер картинки
   Компонент.Ширина = 100;
   Компонент.Высота = 90;

   // Разрешим компоненте самой определять тип кода
   Компонент.АвтоТип = Истина;
   // ИЛИ установим код EAN-13
   // Компонент.ТипКода = 1;
   Компонент.ТипКода = 2;
   
   //
   // Тип смотрим в документации на внешнюю компоненту

   Компонент.ОтображатьТекст=Ложь;
   // Если код содержит контрольный символ, обязательно указываем
   Компонент.СодержитКС = СтрДлина(Штрихкод) = 13;

   // Если отображать контрольный символ не нужно
   // Компонент.ВидимостьКС = Ложь;

   // Формируем картинку штрихкода
   Компонент.ЗначениеКода = Штрихкод;

   // Если установленная нами ширина меньше минимально допустимой для этого штрихкода
   Если Компонент.Ширина < Компонент.МинимальнаяШиринаКода Тогда

       // Скорректируем ширину
       Компонент.Ширина = Компонент.МинимальнаяШиринаКода + 10;

   КонецЕсли;

   // Сформируем картинку
   ДвоичныеДанныеКартинки = Компонент.ПолучитьШтрихкод();

   // Если картинка сформировалась
   Если НЕ ДвоичныеДанныеКартинки = Неопределено Тогда

       // Формируем из двоичных данных
       Возврат Новый Картинка(ДвоичныеДанныеКартинки);

   КонецЕсли;

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

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



выдет ошибку
{Форма.Форма.Форма(263)}: Ошибка при вызове метода контекста (ПодключитьВнешнююКомпоненту)
       ПодключитьВнешнююКомпоненту("ОбщийМакет.КомпонентаПечатиШтрихкодовWindows32", "КартинкаШтрихкода", ТипВнешнейКомпоненты.Native);
по причине:
Установлен безопасный режим. Выполнение операции запрещено


на версии 8.2.13.199 работало нормально, после обновления на 8.2.14.540 появилась такая ошибка...
1 Lesha1C
 
27.03.12
11:21
Ребят, может есть какие мысли..

читал можно УстановитьБезопасныйРежим(Ложь);
если так, куда его поставить?
2 zak555
 
27.03.12
11:22
обновить компоненту ?
3 Жан Пердежон
 
27.03.12
11:23
Описание:

При выполнении на сервере или в файловом варианте информационной базы устанавливает или отменяет безопасный режим.
В других случаях не вызывает никаких действий.
В безопасном режиме:
- игнорируется привилегированный режим;
- запрещены внешние по отношению к платформе 1С:Предприятия действия: COM; загрузка внешних компонент; запуск внешних приложений и команд операционной системы; доступ к файловой системе, кроме временных файлов; доступ к интернет.
Платформа обеспечивает равенство значений счетчика безопасного режима при вызове произвольного метода встроенного языка и после возврата из него.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс