Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Подключение торгового оборудования в данной конфигурации реализовано при помощи нескольких специализированных обработок, процедур глобального модуля и модулей форм документов «Чек», «Расходная розничная», «Отчет кассовой смены».
Настройка подключения торгового оборудования на конкретном рабочем месте пользователя целиком реализована в обработке «Настройка торгового оборудования». По результатам работы данной обработки формируется и записывается файл 1stRozn.txt в Windows каталог компьютера. Этот файл настройки считывается и обрабатывается специальной обработкой «ПодключениеТорговогоОборудования», которая производит фактическую загрузку и подключение драйверов торгового оборудования. Вызов обработки файла настройки производится при начале работы системы и после записи файла настройки в обработке «Настройка торгового оборудования».
Подключение сканера штрих-кода, дисплея покупателя и ActiveBarcode в конфигурации отличается от метода подключения ККМ.
Поскольку драйверы сканера штрих-кода, дисплея покупателя и ActiveBarcode являются относительно универсальными, поэтому алгоритм работы со сканером штрих-кода и дисплеем покупателя записан непосредственно в модулях форм документов «Чек» и «Расходная розничная».
Кроме того, алгоритм работы со сканером штрих-кода записан непосредственно в модулях форм справочника «Номенклатура» и «Единицы».
Объект ActiveBarcode использован в общей таблице «Этикетка», которая вызывается из всех мест конфигурации при печати этикетки товара.
Драйверы различных моделей ККМ имеют существенные различия в методах их использования, поэтому процедуры работы с драйверами ККМ вынесены в конфигурации в отдельные специальные обработки (для каждого вида ККМ должна существовать своя собственная обработка). Типы ККМ, доступные для подключения к конфигурации (для которых существуют драйверы и реализованы специальные обработки обслуживания) заносятся в конфигурации в перечисление «ТипыККМ». В глобальном модуле существует специальная функция ИмяОбработкиОбслуживанияККМ(), которая предназначена для определения имени обработки обслуживания для заданного типа ККМ. Текст данной функции должен содержать текст примерно следующего содержания:
Если ККМ.ТипККМ=Перечисление.ТипыККМ.Электроника92 Тогда
Возврат "ОбслуживаниеЭлектроника92";
ИначеЕсли ККМ.ТипККМ=Перечисление.ТипыККМ.Omron2810 Тогда
Возврат "Обслуживание0тгоп2810";
ИначеЕсли
ККМ.ТипККМ=Перечисление.ТипыККМ.Элвес Тогда
Возврат "ОбслуживаниеККМЭлвес";
ИначеЕсли
ККМ.ТипККМ=Перечисление.ТипыККМ.Штрих Тогда
Возврат "ОбслуживаниеККМЭлвес";
ИначеЕсли
ККМ.ТипККМ=Перечисление.ТипыККМ.Samsung Тогда
Возврат "ОбслуживаниеККМSamsung";
ИначеЕсли
ККМ.ТипККМ=Перечисление.ТипыККМ.MemoPlusII Тогда
Возврат "ОбслуживаниеMemoPlusII";
КонецЕсли;
Специальные обработки обслуживания ККМ должны реализовывать следующие процессы: «Подключить», «ПечататьЧек», «ЗагрузкаТоваров», «ЗакрытиеСмены». Примерный текст обработки обслуживания может быть следующим:
//——————————————
Перем ККМ;
Перем Процесс;
Перем Расшифровка;
//——————————————
Процедура ЗакрытиеСмены()
Если ККМ.РежимККМ=ПереЧисление.РежимыККМ.ФР Тогда
// закрытие смены ККМ ХХХХХХХХ в режиме ФР
//....
ИначеЕсли ККМ.РежимККМ=Перечисление.РежимыККМ.OffLine Тогда
// закрытие смены ККМ ХХХХХХХХ в режиме OffLine
//....
ИначеЕсли ККМ.РежимККМ=Перечисление.РежимыККМ.OnLine Тогда
// закрытие смены ККМ ХХХХХХХХ в режиме OnLine
//....
КонецЕсли;
КонецПроцедуры
//——————————————
Процедура ЗагрузкаТоваров()
Если Pa6oтaKKMвOFFLine=0 Тогда
Возврат;
КонецЕсли;
// загрузка товаров в ККМ ХХХХХХХХ в режиме OFFLine
//....
КонецПроцедуры
//——————————————
Процедура ПечататьЧек()
Док=Расшифровка.Получить("Документ");
Если ПустЗнач(Док)=1 Тогда
Возврат;
КонецЕсли;
// печать чека на ККМ ХХХХХХХХ в режиме ФР
//....
Док.ЧекПробитККМ=1;
Док.ККМ=ККМ;
КонецПроцедуры
//——————————————
Процедура Подключить()
Если ККМ.РежимККМ=Перечисление.РежимыККМ.ФР Тогда
// подключение ККМ ХХХХХХХХ в режиме ФР
//....
ИначеЕсли ККМ.РежимККМ=Перечисление.РежимыККМOffLine Тогда
// подключение ККМ ХХХХХХХХ в режиме OffLine
//....
ИначеЕсли ККМ.РежимККМ=Перечисление.РежимыККМOnLine Тогда
// подключение ККМ ХХХХХХХХ в режиме OnLine
//....
КонецЕсли;
КонецПроцедуры
//——————————————
Процедура ПриОткрытии()
Если глФлагРасшифровки=1 Тогда
Расшифровка=глРасшифровка;
Если Расшифровка.РазмерСписка()<>0 Тогда
ККМ=Расшифровка.Получить("ККМ");
Если ПустЗнач(ККМ)=1 Тогда
СтатусВозврата(0);
Возврат;
КонецЕсли;
Если НЕ(ККМ.ТипККМ=Перечисление.ТипыККМ.ХХХХХХХХХ) Тогда
Сообщить("Передан неверный тип ККМ");
СтатусВозврата(0);
Возврат;
КонецЕсли;
Процесс=Расшифровка.Получить("Процесс");
Если Процесс="Подключить" Тогда
Подключить();
ИначеЕсли Процесс="ПечататьЧек" Тогда
ПечататьЧек();
ИначеЕсли Процесс="ЗагрузкаТоваров" Тогда
ЗагрузкаТоваров();
ИначеЕсли Процесс="ЗакрытиеСмены" Тогда
ЗакрытиеСмены();
Иначе
Сообщить("Передан неизвестный процесс");
КонецЕсли;
СтатусВозврата(0);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
//——————————————
Образцы специальных обработок обслуживания ККМ можно посмотреть в поставляемой конфигурации на примере обработок «ОбслуживаниеЭлектроника92» и «Обслуживание Omron2810».
Дата публикования: 2014-11-18; Прочитано: 452 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!