Внешняя компонента "1C:Фискальный регистратор OPOS" для платформы "1С:Предприятие 8.1"

Обновлено: 17.01.2008

Для работы "1С:Предприятия" с фискальными регистраторами, подключаемыми через OPOS драйвер "Фискальный регистратор "Мебиус" от компании "Терлис", применяется внешняя компонента (ВК) системы 1С:Предприятие "1С:Фискальный регистратор OPOS". Текущая версия ВК - 8.0.1.1.

Основные возможности

Внешняя компонента, используя драйвер фискального регистратора, позволяет настроить регистратор, подготовить чек для печати и напечатать его, а также возвращает текущее состояние и информацию об ошибках для обработки в 1С:Предприятие. Компонента поддерживает стандарт OPOS для типа устройств «Фискальный регистратор» и может использоваться для работы с другими устройствами, драйвера которых также поддерживают стандарт OPOS для типа устройств «Фискальный регистратор».

Работа с внешней компонентой

ВК позволяет зарегистрировать кассира (открыть смену), снять промежуточный итог (Х-отчет), закрыть смену (Z-отчет), а также формировать и выводить на печать товарные чеки следующих типов:

В чеках продажи (простой) и возврата (простой) отображается следующая информация:

Свойства

Название (alias) Тип R W Описание
Порт (Port) Число + + Один из параметров настройки последовательного порта (номер COM-порта).
Скорость (Speed) Число + + Один из параметров настройки последовательного порта (скорость передачи данных).
Результат (ResultCode) Число + - Свойство содержит код результата последней операции.
ДопРезультат (ResultCodeExtended) Число + - Свойство содержит расширенный код результата последней операции.
УстройствоЗанято (ClaimedDevice) Число + - Свойство содержит признак монопольного использования устройства.
УстройствоВключено (DeviceEnabled) Число + + Свойство, указывающее, что устройство используется. Должно быть установлено в «Истина»(1) после занятия устройства и в «Ложь»(0) перед освобождением.
ОписаниеКонтролОбъекта (ControlObjectDescription) Строка + - Свойство содержит описание управляющего объекта (Control Object - CO) (объект верхнего уровня в архитектуре OPOS).
ВерсияКонтролОбъекта (ControlObjectVersion) Число + - Свойство содержит версию OPOS, поддерживаемую управляющим объектом.
ОписаниеСервисОбъекта (ServiceObjectDescription) Строка + - Свойство содержит описание исполняющего объекта (Service Object - SO) (объект нижнего уровня архитектуры OPOS).
ВерсияСервисОбъекта (ServiceObjectVersion) Число + - Свойство содержит версию OPOS, поддерживаемую исполняющим объектом.
ИмяУстройства (DeviceName) Строка + - Свойство содержит строку, идентифицирующую устройство. Эта строка устанавливается в момент открытия устройства.
ОписаниеУстройства (DeviceDescription) Строка + + Свойство содержит текстовое описание устройства, которое может быть изменено пользователем.
НомерФискальнойСмены (RemainingFiscalMemory) Число + - Номер смены, хранящейся в памяти регистратора (увеличивается на 1 при очередном открытии смены).
ТипФискальногоЧека (FiscalReceiptType) Число + + Свойство, в котором устанавливается тип чека. Необходимо установить до вызова метода НачалоФискальногоЧека(…).
ПоложениеЦеновойДесЗапятой (AmountDecimalPlaces) Число + - Свойство содержит указание вида передачи денежных сумм.
 0 - для передачи суммы копеек отводится только целая часть, оно соответствует значениям от 0 до 2147483647.00 и совпадает с реальными передаваемыми в этом поле данными от 0 до 2147483647 копеек;
 2 - для передачи суммы копеек отводится не только целая часть, но и два разряда после запятой от 0 до 21474836.47, оно соответствует значениям копеек от 0 до 2147483647.
ПоложениеКоличДесЗапятой (QuantityDecimalPlaces) Число + - Свойство содержит указание вида передачи количества.
 0 - в количестве все отводится только для целой части товара;
 3 - в количестве передается целая часть товара и еще три разряда под дробное значение.

Примечание: если после вызова метода Управление(8, ПозицияЗапятойПоУмолчанию, "") переменная ПозицияЗапятойПоУмолчанию = 1, то количество товара передается как при значении свойства равном 0.

СтрокаПередТП (PreLine) Строка + + Свойство используется в следующих случаях:
  1. При вызове метода ПечатьТП(…) в этом свойстве может передаваться бар-код товара;
  2. При вызове методов ПечатьПодитога(…) и ПечатьСкидкиНаТП(…) печатается содержимое этого параметра перед результатом выполнения этих методов;
  3. При формировании чека возврата или продажи с помощью метода ПечатьИтога(…) в этом свойстве могут передаваться код кредитной карточки или код купона в зависимости от типа платежа;
  4. При формировании чеков внесения и выемки перед вызовом функции ПечатьВнесенияВыемки(…) в параметре можно передавать текстовый комментарий к проводимой операции.
СтрокаПослеТП (PostLine) Строка + + Свойство используется в следующих случаях:
  1. При вызове метода ПечатьТП(…) в этом свойстве передается тип товара, «1»-дробный(весовой) и «0»-целый(обычный, не весовой);
  2. При вызове методов ПечатьПодитога(…), ПечатьСкидкиНаТП(…) печатается содержимое этого параметра после результата выполнения этих методов;
  3. При формировании любого чека возврата или продажи с помощью метода ПечатьИтога(…) в этом свойстве могут передаваться наименование кредитной карточки или наименование купона в зависимости от типа платежа.
СменаОткрыта (DayOpened) Булево + - Показывает реальное состояние смены.
СостояниеПринтера (PrinterState) Число + - Свойство содержит код текущего состояния устройства.
СостояниеПитания (PowerState) Число + - Свойство содержит текущее состояние питания устройства.

Методы

Название (alias) Параметры Возвращаемое значение Описание
Открыть (Open) ИмяУстройства (Строка, соответствующая имени устройства) Результат в формате OPOS Открыть устройство.
Закрыть (Close) - Результат в формате OPOS Метод завершает работу с устройством.
ЗанятьУстройство (ClaimDevice) Таймаут (Число, максимальное время ожидания) Результат в формате OPOS Метод осуществляет попытку получения монопольного доступа к устройству (устройство должно быть открыто).
ОсвободитьУстройство (ReleaseDevice) - Результат в формате OPOS Метод освобождает устройство (метод выполняет действия, противоположные «ЗанятьУстройство»).
Управление (DirectIO) Команда (Число, код команды), ЧислПарам (Число, числовой параметр), СтрокПарам (Строка, строковой параметр) Результат в формате OPOS Общий метод OPOS. Используется для взаимодействия с сервис-объектом напрямую.
ПечатьОтчетаБезГашения
(XReport)
- Результат в формате OPOS Печать Х-отчета.
ПечатьОтчетаСГашением
(ZReport)
- Результат в формате OPOS Печать Z-отчета.
НачалоФискальногоЧека
(BeginFiscalReceipt)
ПечатьЗаголовка (Булево) Результат в формате OPOS Открывает фискальный чек (смена должна быть открыта).
КонецФискальногоЧека
(EndFiscalReceipt)
ПечатьЗаголовка (Булево) Результат в формате OPOS Завершение фискального чека (если печать чека не была окончена, то произойдет сброс чека).
ПечатьВнесенияВыемки
(PrintRecCash)
Сумма (Число, вносимая сумма, вид в соотв. с параметром ПоложениеЦеновойДесЗапятой) Результат в формате OPOS Печать в чеке строки внесения или выемки суммы (чек должен быть открыт, необходимо указать тип чека).
ПечатьТП
(PrintRecItem)
Наименование (Строка, наименование товара с возможным указанием единиц измерения количества)
Сумма (Число, вид в соотв. с параметром ПоложениеЦеновойДесЗапятой, без скидок/наценок)
Количество (Число, вид в соответствии с параметром ПоложениеКоличДесЗапятой)
НалоговаяСтавка ()
Цена (Число, вид в соотв. с параметром ПоложениеЦеновойДесЗапятой)
СтрокПараметр (Строка, не используется, передавать пустую строку)
Результат в формате OPOS Печать товарной позиции в чеке (чек должен быть открыт).
ПечатьСкидкиНаТП
(PrintRecItemAdjustment)
ТипСкидки (Число, определяет какой тип скидки печается: скидка/наценка, процентная/абсолютная)
Описание (Строка, инф. строка, выводится после печати скидки)
Скидка (Число, процентная или абсолютная)
НалоговаяСтавка (Число, индекс в таблице НС)
Результат в формате OPOS Печать скидки на товарную позицию (вызывается после ПечатьТП(…)).
АннулироватьЧек
(PrintRecVoid)
СтрокПараметр (Строка, не используется, передавать пустую строку) Результат в формате OPOS Сброс чека.
ПечатьПодытога
(PrintRecSubtotal)
Сумма (Число, подытоговая сумма с учетом всех скидок/наценок) Результат в формате OPOS Метод служит для формирования подытога в чеках продажи и возврата.
ПечатьИтога
(PrintRecTotal)
ИтоговаяСумма (Число, вид в соотв. с параметром ПоложениеЦеновойДесЗапятой, сумма, с учетом всех скидок)
Оплата (Число, вид в соотв. с параметром ПоложениеЦеновойДесЗапятой)
СтрокПараметр (Строка, передается либо только тип чека, либо тип чека и тип платежа, а код кредитной карточки или код купона и наименование кредитной карточки или купона идут в этом же параметре после второго символа, но между кодом и наименованием должен быть текстовый разделитель "-/-")
Результат в формате OPOS Метод служит для формирования итога в чеках (обязательный вызов в конце любого чека перед закрытием чека).
РегистрацияКассира
(SetPOSID)
НомерКассы (Число, может быть от 0 до 2147483647)
НомерКассира (Число, должен состоять из «XXX-/-N…N», где XXX это номер кассира строка от 1 до 255, «-/-» – разделитель, N…N – строка имя кассира длиной до 23 символов)
Результат в формате OPOS Регистрация нового кассира (если смена открыта, то просто происходит смена кассира, в противном случае сначала происходит открытие смены).
УстановитьНС
(SetVatValue)
ИндексНС (Число)
ЗначениеНС (Число)
Результат в формате OPOS Данную команду необходимо вызывать после открытия и перед первым чеком продажи, чтобы таблица налоговых ставок была сформирована до начала продаж. Свойство СменаОткрыта не влияет.
ИндексНС – от 1 до 15, налоговая ставка 0 всегда имеет ЗначениеНС = 0 (используетcя для продажи безналогового товара);
ЗначениеНС – от 0(0.0%) до 999(99.9%)
ЗаполнитьТаблицуНС
(SetVatTable)
- Результат в формате OPOS При вызове этого метода происходит сохранение таблицы налоговых ставок в реестре в параметре VatTable, для того чтобы ее не инициализировать повторно после выхода из программы. При следующем запуске, OPOS-драйвер автоматически считает из реестра таблицу налоговых ставок. Внутри ФР налоговые ставки очищаются только при закрытии смены.

ПРИМЕЧАНИЕ
Свойства и методы также описаны в справочной системе элемента управления

Примеры работы с внешней компонентой

Копировать в буфер обмена
Перем Драйвер;
Попытка
	ПрогИД = "AddIn.OPOS.FiscalPrinter";
	ПодключитьВнешнююКомпоненту(ПрогИД);
	Драйвер = Новый (ПрогИД);
Исключение
	Результат = мОшибкаЗагрузкиДрайвера;
КонецПопытки;
Если Результат = мНетОшибки Тогда
	Драйвер.Порт     = <Порт>;
	Драйвер.Скорость = <Скорость>;
КонецЕсли;
Копировать в буфер обмена
Драйвер.Открыть("MbsFiscalPrinter");
Драйвер.УстройствоАктивно = Истина/Ложь; // (при подключении/отключении)
Драйвер.Закрыть();
Копировать в буфер обмена
Драйвер.НачалоФискальногоЧека(Истина);
Драйвер.КонецФискальногоЧека(Истина);
Копировать в буфер обмена
Драйвер.ПечатьТП("", <Сумма>, <Количество>, <НомерНС>, <Цена>, "");
Драйвер.ПечатьВнесенияВыемки(<Сумма>);
Драйвер.ПечатьИтога(<ИтоговаяСумма>, <ИтоговаяСумма>, "");

Установка внешней компоненты

Вы можете прямо сейчас установить драйвер для работы с фискальным регистратором

Начать установку

ПРИМЕЧАНИЕ
Файл установки драйвера для работы со сканером штрихкода FiscalPrinterOPOS.exe находится на CD-ROM в каталоге 1CITS\EXE\TradeWare\1C\FiscalPrinterOPOS