Новый comобъект v8 barcod 1

fox_haus
29.05.2011 23:59

Прочитано: 9292
Код 1C v 8.2 УП
При написании обработки возникла проблема, не выводится штри код. Т.е. выводится только пустой . Это кусок :
КомпонентШК = Новый COMОбъект("V8.Barcod.1");
Исключение
Сообщить("Компонента 1С:Печать штрих-кодов не установлена на данном компьютере!"+Символы.ПС+
"Обратитесь к администратору"+Символы.ПС, СтатусСообщения.Важное);
Возврат "";
КонецПопытки;

Если СтрокаТаблицы.Штрихкод = 0 Тогда
Сообщить("Штрихкод не найден! Сгенерируйте штрихкод для номенклатуры!: " + СокрЛП(СсылкаНаОбъект) + """.");
Отказ = Истина;
Иначе КомпонентШК.Сообщение = СтрокаТаблицы.ШтрихКод;
ОбластьЦенника.Рисунки.Штрихкод.Объект.ТипКода = 1; //EAN13
ОбластьЦенника.Рисунки.Штрихкод.Объект.Сообщение = КомпонентШК.Сообщение; //Сам Штрих код берется из табличной части обработки
Сообщить (""+строкаТаблицы.ШтрихКод+" "+ КомпонентШК.Сообщение);

причем последняя строка выдает правильный штрих код .

Рассмотрим ситуацию, когда Вам необходимо распечатать штрихкод, но 1С начинает ругаться следующим образом: “Компонента 1С:Печать штрихкодов не установлена на данном компьютере!”.

Решение такой проблемы будет достаточно логичное и простое – берем диск 1С, находим там недостающую компоненту (она всегда поставляется с лицензионной версией 1С) 1CBarCode.exe. У меня она лежала по адресу 1CItsEXEEQUIPMNT1C1CBarCode, однако, в зависимости от версии поставки 1С, этот путь может отличаться. Далее просто устанавливаем, следуя инструкциям инсталлятора. После чего нам надо будет перезапустить 1С на нашем компьютере.

Все, ошибки "Компонента 1С: Печать штрихкодов не установлена на данном компьютере!" больше возникать не должно.

Рассмотрим несколько ситуаций, когда следование вышеизложенной инструкции не помогло Вам решить проблему.

Случай первый – Вы не нашли компоненту на диске, либо же, по какой-то причине, у Вас нету диска с 1С. Тут есть пару способов – быстрый и не очень. Быстрый заключается в поиске 1CBarCode.exe с помощью великого гугла, последующем скачивании и установке. Не очень быстрый – это обращение в службу поддержки 1С с просьбой выслать необходимые файлы на почту и, собственно, дальнейшее ожидание этих самых файлов.

Читайте также:  Brightness как убрать с экрана компьютера

Случай второй – компоненту Вы установили, но ошибка продолжает появляться. Пробуем установить еще раз, предварительно убедившись что установка происходит с правами администратора. Если же и это не помогло, тогда копируем все файлы *.dll нашей компоненты в папку BIN, нашей системы 1С.

Все, теперь Ваши штрихкоды будут печататься без проблем.

Одна из проблем, возникающих после установки 64-битного сервера 1С, заключается в том, что 64-битные приложения не могут запускать 32-битные DLL , которые, например, инициализируются системой при создании COM -объекта. Таким образом, код вида

на стороне сервера выполнен не будет. Точнее, его выполнение приведет к ошибке: « Class not registered »

Решить данную проблему можно с помощью создания 64-битного приложения COM +. Данное приложение способно взаимодействовать с 32-приложениями.

Итак

  1. Запустим консоль "Службы компонентов" (например:

Пуск — Администрирование — Службы компонентов

  1. Найдем ветку «Приложения COM+» и добавим новое приложение:
  1. На вопрос "Установка или создание нового приложения" – необходимо ответить:"Создать новое приложение".
  2. Зададим имя нового приложения: V8ComConnector App ; способ активаци: "серверное приложение".
  3. Учетная запись для запуска приложения: здесь нам надо выбрать учетную запись под которой работает сервер 1С.
  4. В ветке созданного приложения находим и выделяем ветку "Роли", выбираем роль "CreatorOwner", а затем в разделе "Пользователи" создаем пользователя — учетную запись, под которой работает сервер 1С.
  5. В ветке созданного приложения переходим на ветку "Компоненты" и создаем компонент:
  1. Выбираем "Установка новых компонентов", и находим нашу DLL-компоненту.
  2. Заходим в свойства установленного компонента и на вкладке "Безопасность", списке "Явно установленные для выделенных объектов роли" включаем флажок напротив роли CreatorOwner.

Важно: Мы создали приложение с именем "V8ComConnector App ", а это значит что в коде мы должны создавать COM -объект с аналогичным ProgID . То есть

Читайте также:  Как приклеить линзу на светодиод подсветки матрицы

Это не очень удобно в том случае, если мы предполагаем, что наш код будет исполняться и на сервере, и на клиенте, где может быть установлена 32-битная версия «1С: Предприятие». В этом случае придется использовать подобный код

Ссылка на основную публикацию
Не работает инструмент перемещение в фотошопе
В процессе работы в программе фотошоп постоянно требуется перемещать объекты по рабочему пространству. Для этих целей используется инструмент Перемещение. В...
На какой диск записывают рентген
Архивирование снимков на CD или DVD (веб-PACS) в программе для цифровой рентгенографии Image Suite версии 4.0 Для архивирования снимков из...
Не идет зарядка на телефоне самсунг
Владельцы мобильных телефонов часто сталкиваются с проблемой, когда не заряжается телефон Samsung. Если вы тоже столкнулись с подобной ситуацией и...
Не удалось открыть общий доступ geforce experience
При запуске пишет: не удалось открыть "общий доступ"При нажатии на переключатель общий доступ пишет: Что-то пошло не так. Попробуйте перезагрузить...
Adblock detector