Устройство управления печатью, система печати и способ управления печатью
Иллюстрации
Показать всеИзобретение относится к устройству управления печатью, которое содержит принимающий модуль, выполненный с возможностью принимать данные печати, включающие в себя информацию о режиме; модуль получения состояния, выполненный с возможностью получать состояние устройства печати; модуль принятия решения, выполненный с возможностью определять, являются ли информация о режиме, содержащаяся в данных печати, и состояние устройства печати, полученное модулем получения состояния, условием исполнения; и модуль управления устройством печати, выполненный с возможностью посылать команду, сгенерированную на основании информации о режиме и данных печати, устройству печати, когда модуль принятия решения определяет, что условие исполнения удовлетворено. Технический результат заключается в обеспечении возможности использования одинаковых элементов в многочисленных режимах. 3 н. и 17 з.п. ф-лы, 9 ил.
Реферат
Область техники
Настоящее открытие относится к устройству управления печатью, системе печати и способу управления печатью, которые преобразуют данные печати, принятые от узла, в команды и посылают эти команды устройству печати.
Уровень техники
ESC/POS® команды являются де-факто индустриальным стандартом команд управления печатью для управления устройствами печати (устройствами печати чеков) из терминалов POS (торговых точек) (см., например, JP-A-2005-343028).
Однако ESC/POS® команды предполагают 1:1 соединение между POS-терминалом и устройством печати. В результате возникает проблема, когда имеется взаимоотношение "многие к одному" или "многие к многим" между POS-терминалами и устройствами печати, соединенными посредством сети. Например, если ошибка возникает во время печати, обусловленной командой печати от POS-терминала A, и команда печати принята от POS-терминала B до того, как эта ошибка будет устранена, команда печати от POS-терминала B не может быть обработана нормально. И наоборот, команды обслуживания от POS-терминала A могут не быть нормально обработаны, когда команда печати принята от POS-терминала B.
В схеме по предшествующему уровню техники, устройство печати может принимать команды управления печатью только в интерактивном режиме. Более конкретно, устройство печати не может принимать отдельные команды управления (команды в реальном масштабе времени, такие как команда очистки данных печати, команда устранения сбоя и команда сигнала начала/окончания), которые были использованы когда устройство печати находилось в автономном режиме или произошла ошибка.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Устройство управления печатью, система печати и способ управления печатью в соответствии с настоящим открытием позволяют исполнение желаемых операций в соответствии с состоянием устройства печати.
Устройство управления печатью в соответствии с данным раскрытием включает в себя принимающий модуль, выполненный с возможностью принимать данные печати, включающие в себя информацию о режиме; модуль получения состояния, выполненный с возможностью получать состояние устройства печати; модуль принятия решения, выполненный с возможностью решать, являются ли информация о режиме, содержащаяся в данных печати, и состояние устройства печати, полученное модулем получения состояния, условием исполнения; и модуль управления устройством печати, выполненный с возможностью посылать команду, сгенерированную на основании информации о режиме, и данные печати устройству печати, когда модуль принятия решения определяет, что условие исполнения удовлетворено.
Система печати в соответствии с данным раскрытием включает в себя узел, выполненный с возможностью посылать данные печати, включающие в себя информацию о режиме; устройство печати, выполненное с возможностью печатать; и устройство управления печатью, включающие в себя принимающий модуль, выполненный с возможностью принимать данные печати, посланные узлом, модуль получения состояния, выполненный с возможностью получать состояние устройства печати, модуль принятия решения, выполненный с возможностью решать, являются ли информация о режиме, содержащаяся в данных печати, и состояние устройства печати, полученное модулем получения состояния, условием исполнения, модуль управления устройством печати, выполненный с возможностью посылать команду, сгенерированную на основании информации о режиме, и данные печати устройству печати, когда модуль принятия решения определит, что условие исполнения удовлетворено.
Способ управления печатью в соответствии с данным раскрытием включает в себя прием данных печати, включающих в себя информацию о режиме, и получение состояния устройства печати; определение, удовлетворено ли условие исполнения на основании информации о режиме, содержащейся в данных печати и состоянии устройства печати; и, когда условие исполнения удовлетворено, посылку команды, сгенерированной исходя из информации о режиме и данных печати, устройству печати.
Когда данные печати приняты от узла, эти аспекты данного раскрытия решают, удовлетворяют ли информация о режиме и состояние устройства печати условию исполнения, и может исполнить желаемую операцию, если решено, что условие исполнения удовлетворено. Например, если условие исполнения установлено в соответствии с автономным состоянием или автономным состоянием и информацией о режиме, соответствующем состоянию ошибки, желаемые команды (отдельные команды управления, которые используются в автономном состоянии или при возникновении ошибки) могут быть исполнены, даже когда устройство печати находится в автономном режиме.
Следует отметить, что команды включают в себя как команды исполнения печати, которые заставляют устройство печати исполнять операцию печати, так и управляющие команды, которые заставляют устройство печати исполнять отдельные операции, отличные от печати (такие как отмена ошибки или управление внешними устройствами).
Данные печати являются предпочтительно написанными на языке разметки (таком как XML, HTML, XHTML). Эта схема может быть применена к различным платформам по причине высокой гибкости подобных языков. Узел может быть планшетным компьютером, встраиваемым устройством или другим устройством, функционирующим на платформе без программ управления устройством.
Устройство управления печатью также содержит модуль получения результатов исполнения, который получает результаты исполнения команд от принтера; и модуль отклика, выполненный с возможностью посылать результат исполнения.
Так как эта схема возвращает результат исполнения устройством печати команды узлу, узел может знать, что данная команда была выполнена.
Когда модуль принятия решения устройства управления печатью определяет, что условие исполнения не удовлетворено, модуль управления устройством печати не посылает команду этому устройству печати, а модуль отклика посылает ответные данные, указывающие, что условие исполнения не удовлетворено
Так как эта схема не посылает команду устройству печати, когда условие исполнения не удовлетворено, ошибочная работа устройства печати может быть предотвращена. Дополнительно, так как ответные данные, указывающие, что условие исполнения не удовлетворено, посылаются узлу, этот узел также может знать то же самое.
В устройстве управления печатью, описанном выше, информация о режиме является информацией первого режима, заставляющего устройство печати исполнять команды исполнения печати, находясь в подключенном состоянии, или информацией второго режима, который посылает команды управления печатью устройству печати, находясь в автономном режиме.
Посредством задания информации о режиме и состояния устройства печати в качестве условия исполнения эта схема может заставлять устройство печати исполнять команды реального режима времени, которые были использованы во время автономного режима, и когда случилась ошибка, даже когда это устройство печати находится в автономном режиме. Когда установлена информация о первом режиме, данное устройство печати сначала переходит к режиму исполнения команд реального времени, и эта команда посылается, а данное устройство печати затем возвращается к обычному режиму исполнения команд, и обработка последующих команд печати, таким образом, не затрагивается.
В описанном выше устройстве управления печатью, модуль управления устройством печати генерирует команды из данных печати на основании информации о режиме.
Этот аспект данного раскрытия может генерировать команды, подходящие информации о режиме. Например, обычные команды могут быть сгенерированы, когда установлена информация о втором режиме, а команды реального времени генерируются, когда установлен первый режим передачи. В результате, одинаковые элементы могут быть широко использованы в многочисленных режимах, когда эти данные печати написаны на языке разметки, например.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 является схемой системной конфигурации системы печати в соответствии с предпочтительным вариантом осуществления данного раскрытия.
Фиг. 2A является управляющей функциональной схемой сервера Web-приложений, а Фиг. 2B является управляющей функциональной схемой узла.
Фиг. 3 является управляющей функциональной схемой интеллектуального устройства печати.
Фиг. 4 показывает уровни реализации устройства управления печатью.
Фиг. 5 является функциональной схемой системы печати.
Фиг. 6 является блок-схемой, показывающей работу устройства управления печатью.
Фиг. 7 (a) показывает пример данных печати, которые посылают во время режима обычной передачи данных, (b) показывает пример данных печати, которые посылают во время режима принудительной передачи, (c) показывает пример данных печати, когда выводящие команды соответствуют информации о режиме, и (d) показывает пример данных печати, содержащих команды, которые пригодны в автономном состоянии.
Фиг. 8 (a) показывает последовательность операций, когда возникает ошибка, а (b) показывает последовательность операций, когда ошибка не была устранена.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Система печати SY в соответствии с настоящим раскрытием описана ниже со ссылкой на прилагаемые чертежи. Приложение печати и программа управления устройством печати, написанная для операционной системы терминального устройства, обычно требуется для каждой OS с тем, чтобы печатать с планшетного компьютера или смартфона. В отличие от этого, система печати SY в соответствии с данным раскрытием устанавливает XML (Расширяемый Язык Разметки) web-службу функции печати (устройство управления печатью), которая эквивалентна программе управления устройством печати в устройстве печати, и, таким образом, позволяет печать независимо от OS. Более конкретно, устройство печати может работать, используя web-обозреватель, без установки выделенной программы управления устройством печати на данном узле. Ниже, устройство печати, имеющее XML web-службу функции печати, называется "интеллектуальным устройством печати". В отличии от этого, устройство печати, не имеющее этой XML web-службы функции печати, называется просто устройством печати.
Сначала описана общая конфигурация системы печати SY ниже со ссылкой на Фиг. 1-4. Фиг. 1 является схемой системной конфигурации системы печати SY. Эта система печати SY содержит сервер 10 web-приложения, множество узлов 20 (узел a, узел b), устройство 31 управления печатью и множество устройств 32 печати (устройство печати A, устройство печати B). Следует отметить, что устройство 31 управления печатью и одно устройство 32 печати (устройство печати A) входят в систему печати SY как интеллектуальное устройство 30 печати. В результате, устройство печати A и устройство печати B находятся в отношении "ведущий-ведомый".
Сервер 10 web-приложения и узлы 20 соединены через Интернет или другую сеть. Узлы 20 и устройство 31 управления печатью соединены посредством проводной или беспроводной локальной вычислительной сети (LAN) или другой сети. Узел 20 является терминалом POS (торговых точек), установленным в расчетной кассе в предприятии розничной торговли, или терминалом заказов, используемым в торговом зале ресторана, например. Интеллектуальное устройство 30 печати и устройство 32 печати являются, например, чековыми устройствами печати, которые печатают кассовые чеки, или кухонными устройствами печати, установленными на кухне.
Схемы управления сервера 10 web-приложения, узлов 20 и интеллектуального устройства 30 печати описаны далее со ссылкой на Фиг. 2 и Фиг. 3. Фиг. 2(А) показывает схему управления сервера 10 web-приложения. Сервер 10 web-приложения включает в себя модуль 11 управления, модуль 12 связи, модуль 13 хранения и другие непоказанные аппаратные компоненты, которые обычно содержатся в компьютере. Модуль 11 управления воплощается посредством CPU (центрального процессора), ROM (постоянного запоминающего устройства) и RAM (оперативного запоминающего устройства). Модуль 13 хранения является HDD (жестким диском), например, и хранит HTTP (протокол передачи гипертекста) сервер 15 и web-приложение.
Модуль 12 связи является интерфейсом для поддержания связи с узлом 20 (web-обозревателем 27). Обмен данными между сервером 10 web-приложения и узлом 20 управляется посредством HTTP сервера 15, используя HTTP (протокол передачи гипертекста). Более конкретно, сервер 10 web-приложения принимает HTTP-запрос от узла 20 (web-обозревателя 27) и на основании URL (унифицированного указателя ресурсов), содержащегося в HTTP-запросе, посылает web-страницу 40 (см. Фиг. 1), предоставленную web-приложением 16, узлу 20.
Сценарий управления страницей (JavaScript®), который управляет web-страницей 40, и сценарий управления печатью для управления печатью встроены в web-страницу 40. Узел 20 исполняет процесс печати посредством запуска сценария управления печатью через web-обозреватель 27 (на web-странице 40).
Фиг. 2(В) показывает схему управления узла 20. Узел 20 содержит модуль 21 управления, модуль 22 отображения, модуль 23 связи, модуль 24 хранения и функциональный модуль 25. Модуль 21 управления включает в себя CPU и управляет работой узла 20.
Модуль 22 отображения отображает web-страницу 40, полученную (загруженную) web-обозревателем 27 в web-обозревателе 27, и отображает области просмотра для оповещения о событиях, сопровождающих действия, выполняемые web-обозревателем 27, и области просмотра для настройки параметров. Функциональный модуль 25 используется для действий, включающих в себя издание команд печати на web-странице 40, отображаемой web-обозревателем 27. Например, когда узел 20 является POS-терминалом, а web-приложение 16 является приложением POS, результаты чтения штрих-кодов (название, цена и количество покупаемых продуктов, например) и результаты транзакции отображаются как web-страница 40. Команда печати также издается посредством нажатия клавиши ввода на узле 20 (работа функционального модуля 25). Следует отметить, что модуль 22 отображения и функциональный модуль 25 могут быть скомпонованы как отдельные аппаратные устройства или вместе как сенсорный экран.
Модуль 23 связи является интерфейсом для поддержания связи с сервером 10 web-приложения и устройством 31 управления печатью. Как описано выше, узел 20 обменивается данными с сервером 10 web-приложений и устройством 31 управления печатью посредством HTTP.
Модуль 24 хранения является накопителем на жестком диске, например, и хранит web-обозреватель 27. В этом варианте осуществления, простой обозреватель (стандартный обозреватель), который не поддерживает подключаемые модули, используется в качестве web-обозревателя 27. Модуль 21 управления использует этот web-обозреватель 27 для доступа к серверу 10 web-приложения через модуль 23 связи и получения web-страницы 40, предоставляемой web-приложением 16.
Web-страница 40 включает в себя сценарий управления страницей (JavaScript®) и сценарий управления печатью (JavaScript®), как описано выше. Когда web-обозреватель 27 принимает команду печати от пользователя через сценарий управления страницей, встроенный в web-странице 40, web-обозреватель 27 исполняет сценарий управления печатью, встроенный в ту же web-страницу 40, и генерирует и посылает данные печати, написанные на XML (язык разметки), устройству 31 управления печатью.
Следует отметить, что узел 20 является компьютером, на котором запущен web-обозреватель 27, и может быть POS-терминалом, планшетным компьютером, смартфоном, персональным компьютером или другим видом устройств. Кроме того, поскольку узел 20 является схемой без программы управления, как описано выше, может быть использована любая операционная система. Множество узлов 20, которые работают на разных платформах, таким образом, могут сосуществовать в одной и той же системе печати SY.
Фиг. 3 показывает схему управления интеллектуального устройства 30 печати. Как описано выше, интеллектуальное устройство 30 печати объединяет устройство 31 управления печатью 31 и устройство 32 печати. Устройство 31 управления печатью в этом варианте осуществления является интерфейсной платой, которая съемно установлена в устройстве печати 32. Устройство 31 управления печатью может, в качестве варианта, быть отдельным пультом управления, который присоединен снаружи (подключен) к устройству печати 32.
Устройство 31 управления печатью содержит модуль 41 управления, плату интерфейса 42, модуль 43 хранения и модуль 44 связи. Модуль 41 управления включает CPU и управляет работой устройства 31 управления печатью. Плата интерфейса 42 обменивается данными с устройством 32 печати (интерфейс 55 устройства печати). Модуль 43 хранения является энергонезависимым запоминающим устройством (таким как флэш-ПЗУ), например, и хранит HTTP сервер 46 и список 47 устройств печати. Список 47 устройств печати является списком информации 57 об устройствах печати для каждого устройства печати 32. Устройство 31 управления печатью обменивается данными с каждым подключенным устройством 32 печати (устройство печати A, устройство печати B) и получает и сохраняет информацию 57 об устройствах печати, такую как модель, и установленную кодировку в списке 47 устройств печати.
Модуль 44 связи обменивается данными с узлом 20 и другим устройством 32 печати (устройство печати B) и включает в себя интерфейсы, такие как интерфейс LAN и интерфейс USB, например. Обмен данными между устройством 31 управления печатью и узлом 20 (web-обозревателем 27) осуществляется HTTP сервером 46, используя протокол HTTP. Более конкретно, когда данные печати посланы от узла 20 адресу оконечной точки услуги (URL такой, как http://x.x.x.x/) уникально назначенному устройству 31 управления печатью, устройство 31 управления печатью принимает эти данные печати.
Устройство 31 управления печатью преобразует данные печати (документ XML) в команды управления печатью (команды ESC/POS®) для устройства 32 печати и выводит на устройства 32 печати. Идентификационная информация (ID) устройства печати для устройства 32 печати, выбираемого для печати, также включена в адрес оконечной точки услуги. Устройство 31 управления печатью посылает команды управления печатью, адресованные устройству 32 печати, идентифицированному посредством ID устройства печати. Следует отметить, что когда междоменный (crossOrigin) запрос принят от сценария управления печатью, запущенного на web-обозревателе 27 узла 20, устройство 31 управления печатью 31 откликается (документом XML) чтобы позволить этот запрос.
Устройство 32 печати содержит модуль 51 управления, модуль 52 хранения, печатающее устройство 53, буфер 54 и интерфейс 55 устройства печати. Модуль 51 управления включает в себя CPU и управляет работой устройства 32 печати. Модуль 52 хранения хранит информацию 57 об устройстве печати (включающую в себя модель устройства 32 печати и установленную кодировку). Печатающее устройство 53 включает в себя печатающую головку, устройство подачи бумаги и устройство резки бумаги и выполняет операции печати под управлением модуля 51 управления. Следует отметить, что способ печати может быть струйным, лазерным или другим видом способа печати.
Буфер 54 является приемным буфером, который временно хранит принятые данные (команды управления печатью). Устройство печати 53 последовательно читает и печатает данные, хранящиеся в буфере 54, в ответ на обычные команды. Команды реального времени исполняются немедленно, независимо от любых данных, хранящихся в буфере 54. Интерфейс 55 устройства печати обменивается данными с устройством 31 управления печатью (плата интерфейса 42). Устройство 32 печати выполняет определенные действия на основании команд управления печатью, принятых от устройства 31 управления печатью через интерфейс 55 устройства печати. Устройство 32 печати также выводит результат выполнения команд через интерфейс 55 устройства печати на устройство 31 управления печатью. Когда команда получения состояния послана как команда управления печатью, устройство 32 печати обнаруживает и посылает внутренний режим (состояние) устройства печати устройству 31 управления печатью. Устройство 31 управления печатью затем преобразует результат исполнения команды, состояние или другой отклик на команду в документ XML и возвращает этот документ XML узлу 20.
Уровни реализации устройства 31 управления печатью описаны далее со ссылкой на Фиг. 4. Снизу вверх, уровни реализации устройства 31 управления печатью включают в себя аппаратный уровень, операционную систему, web-сервер (HTTP сервер 46) и множество функций печати web-службы (XML функции печати web-службы) и web-приложение регистрации устройства на верхнем уровне.
Web-служба печати является функцией, которая включает в себя преобразование из документа XML в команды управления печатью, и составляет важную часть этого варианта осуществления. Посредством предоставления множества web-служб печати множество процессов может быть исполнено параллельно, включая прием данных печати от множества узлов 20, печати на множестве устройств 32 печати и возвращения результатов печати от каждого устройства 32 печати узлу 20, который послал эти данные печати. Например, так как здесь десять web-служб печати в этом примере показаны на чертеже, десять процессов (потоков) может быть обработано одновременно. Однако, когда данные для многочисленных заданий на печать посылают на одиночное устройство 32 печати, эти задания на печать обрабатываются в том порядке, в котором приняты разрешения на печать (порядок, в котором порт устройства печати был получен).
Web-приложение регистрации устройства является приложением для регистрации идентификационной информации (ID) устройства печати, модели и информации о порте (IP адреса) устройства 32 печати. Эта информация регистрируется посредством представления страницы настройки (web-страницы), предоставляемой HTTP сервером 46 в web-обозревателе 27 для ввода пользователем информации, используя функциональный модуль 25. Зарегистрированная информация затем сохраняется в списке 47 устройств печати (см. Фиг. 3).
Функциональная схема системы печати SY описана далее со ссылкой на Фиг. 5. Основные функциональные компоненты узла 20 включают в себя модуль 71 управления обозревателем, модуль 72 генерации данных печати, модуль 73 передачи данных печати и модуль 74 приема отклика.
Модуль 71 управления обозревателем управляет web-обозревателем 27. Модуль 72 генерации данных печати генерирует данные печати, написанные на XML, используя сценарий управления печатью, который запущен в web-обозревателе 27. Модуль 73 передачи данных печати посылает сгенерированные данные печати устройству 31 управления печатью. Модуль 74 получения отклика принимает ответные данные (включающие в себя результаты принятия решения от устройства 31 управления печатью 31, результаты исполнения команд устройством 32 печати и отчеты о состоянии) от устройства 31 управления печатью 31 в виде документа XML.
Основные функциональные компоненты устройства 31 управления печатью включают в себя модуль 81 приема данных печати (принимающий модуль), модуль 82 получения состояния, модуль 83 принятия решения, модуль 84 управления устройством, модуль 85 получения результата и модуль 86 отклика.
Модуль 81 приема данных печати принимает данные печати от узла 20. Информация о режиме включена в эти данные печати. Информация о режиме в этом варианте осуществления является информацией, идентифицирующей или режим обычной передачи или режим принудительной передачи. Режим обычной передачи является режимом для посылки обычных команд (таких, как команды исполнения печати) устройству 32 печати в подключенном состоянии. Режим принудительной передачи является режимом для безусловной посылки команд управления печатью устройству 32 печати, находящемуся в автономном режиме или сообщившему об ошибке. Данные печати включают в себя команды восстановления после ошибки, команды толчка кассового ящика и другие команды, в дополнение к командам печати. Следует отметить, что команда толчка кассового ящика является командой для открытия кассового ящика (не показанного на данном чертеже), подключенного к устройству 32 печати. Когда устройство 32 печати принимает команду толчка кассового ящика, оно выводит команду открытия ящика кассовому ящику. Следует отметить, что схема, в которой кассовый ящик подключен к устройству 31 управления печатью, и устройство 31 управления печатью выводит команду открытия кассового ящика кассовому ящику, также является возможной.
Модуль 82 получения состояния получает режим (состояние) устройства 32 печати посредством посылки команды получения состояния устройству 32 печати. В этом варианте осуществления, сигнал, обозначающий автономное состояние или подключенное состояние, получают как состояние устройства печати. Модуль 83 принятия решения определяет, удовлетворяет ли информация о режиме, содержащаяся в данных печати, и состояние устройства 32 печати условиям исполнения. Более конкретно, если информация о режиме обозначает режим принудительной передачи и устройство 32 печати находится в автономном режиме, модуль 83 принятия решения определит, что первое условие исполнения (называемое в формуле изобретения как "условие исполнения") удовлетворено. Если информация о режиме обозначает режим обычной передачи, и устройство 32 печати находится в подключенном режиме, модуль 83 принятия решения определит, что второе условие исполнения удовлетворено.
Когда модуль 83 принятия решения определяет, что первое условие исполнения удовлетворено, модуль 84 управления устройством печати переводит устройство 32 печати в указанный режим и затем посылает команду управления печатью (ESC/POS® команду), сгенерированную из данных печати, устройству 32 печати. В этом варианте осуществления, устройство 32 печати переводят в режим исполнения команд реального времени, в качестве указанного режима. Команда реального времени является командой, требующей немедленного исполнения устройством 32 печати. Следует отметить, что в этом примере устройство 32 печати можно переключить в режим исполнения команд реального времени или режим нормального исполнения команд. Когда модуль 83 принятия решений определяет, что второе условие исполнения удовлетворено, модуль 84 управления устройством печати посылает команду управления печатью, сгенерированную из данных печати, устройству 32 печати без изменения режима устройства 32 печати. Дополнительно, если модуль 83 принятия решений определяет, что и первое и второе условия исполнения не удовлетворены, модуль 84 управления устройством печати не посылает команду управления печатью устройству 32 печати.
Модуль 85 получения результата исполнения получает результат исполнения (отклик) команды управления печатью от устройства 32 печати. Модуль 86 отклика посылает результат исполнения узлу 20. Когда модуль 83 принятия решений определяет, что как первое условие выполнения, так и второе условие выполнения не удовлетворены, модуль 86 отклика посылает ответные данные, докладывающие об этом узлу 20.
Как описано выше, эти части с 81 по 86 устройства 31 управления печатью реализованы в виде web-служб. Поскольку имеется множество web-служб печати (см. Фиг. 4), устройство 31 управления печатью может обрабатывать данные печати для нескольких заданий параллельно. Следует отметить, что данные печати для множества заданий могут быть данными печати, посланными множеством узлов, или данными печати для множества заданий (множество запросов от одной и той же программы), посланными от одного узла.
Основные функциональные блоки устройства 32 печати включают в себя модуль 91 передачи состояния, модуль 92 изменения режима, модуль 93 приема команд, модуль 94 исполнения команд и модуль 95 передачи результата исполнения.
Модуль 91 передачи состояния посылает сигнал, обозначающий состояние устройства 32 печати, устройству 31 управления печатью в ответ на команду получения состояния, посланную устройством 31 управления печатью. Модуль 92 изменения режима изменяет режим устройства 32 печати в режим исполнения команд реального времени или режим нормального исполнения команд.
Модуль 93 приема команд принимает команды управления печатью, посланные устройством 31 управления печатью (модулем 84 управления устройством печати). Модуль 94 исполнения команд исполняет принятую команду управления печатью. Исполнение команды управления печатью включает в себя операции печати и операции восстановления после ошибки. Таким образом, если команда управления печатью является командой выполнения печати, модуль 94 исполнения команды работает как модуль печати. Модуль 95 передачи результата выполнения посылает результат выполнения команды управления печатью устройству 31 управления печатью.
Работа устройства 31 управления печатью представлена далее со ссылкой на Фиг. 6. Когда устройство 31 управления печатью принимает данные печати от узла 20 (S01), устройство 31 управления печатью посылает команду получения состояния устройству 32 печати и получает состояние устройства 32 печати (S02). На основании принятого состояния устройство 31 управления печатью определяет, находится ли устройство 32 печати в подключенном состоянии или нет (S03), и, если устройство 32 печати находится в подключенном состоянии (S03 возвращает ДА), определяет, обозначает ли информация о режиме, содержащаяся в данных печати, режим обычной передачи (S04). Если режим обычной передачи обнаружен (S04 возвращает ДА), устройство 31 управления печатью генерирует и посылает обычные команды, на основании данных печати, устройству 32 печати (S05) и получает состояние от устройства 32 печати (S06). Это состояние включает в себя информацию, указывающую была ли печать успешной или неудавшейся. Устройство 31 управления печатью затем посылает результат исполнения команды (печать успешна или печать не удалась) в качестве ответных данных узлу 20 (S07).
Если режим обычной передачи не обнаружен на этапе S04 (S04 возвращает НЕТ), устройство 31 управления печатью посылает сигнал, указывающий, что условие исполнения не удовлетворено (что устройство 32 печати находится в подключенном состоянии) узлу 20, не посылая команду устройству 32 печати (S07).
Если на этапе S03 устройство печати определено как не находящееся в подключенном состоянии (S03 возвращает НЕТ), устройство 31 управления печатью определяет, обозначает ли информация о режиме, содержащаяся в данных печати, режим принудительной передачи (S08). Если режим принудительной передачи обнаружен (S08 возвращает ДА), устройство 31 управления печатью сначала посылает команду переключения режима (команду для переключения в режим исполнения команд реального времени) устройству 32 печати (S09) и, после завершения устройством 32 печати изменения режима, генерирует и посылает команду реального времени (такую как команду восстановления после ошибки) на основании данных печати устройству 32 печати (S10). Путем такого переключения устройства 32 печати в режим исполнения команд реального времени, устройство 32 печати может исполнять команды управления печатью даже в автономном режиме. Когда состояние затем получено от устройства 32 печати (S11), устройство 31 управления печатью повторно посылает команду переключения режима (команду для переключения в режим обычного исполнения команд) устройству 32 печати (S12). Устройство 31 управления печатью затем посылает результат исполнения команды (было ли восстановление после ошибки успешным или неудавшимся, например) в качестве ответных данных узлу 20 (S07).
Если режим принудительной передачи не обнаружен на этапе S08 (S08 возвращает Нет), устройство 31 управления печатью посылает сигнал, указывающий узлу 20, что условие исполнения не удовлетворено (что устройство 32 печати не находится в автономном режиме), не посылая команду устройству 32 печати (S07).
Отдельные примеры данных печати описаны далее со ссылкой на фиг. 7. Следует отметить, что как отмечено выше, эти данные печати написаны на XML. Дополнительно следует отметить, что текст, сопровождаемый жирной меткой (•) является пояснительным текстом и является информацией, которая не включена в фактические данные печати. Блок (a) на Фиг. 7 показывает пример данных печати, посланных во время обычной передачи. Ярлык <print> используется в режиме обычной передачи. В примере, показанном на данном чертеже, команды толчка кассового ящика, печати текста, перевода строки, печати штрихкода и обрезки бумаги содержатся в данных печати. На основании этих данных печати устройство 31 управления печатью генерирует команды управления печатью, соответствующие каждой команде.
Блок (b) на Фиг. 7 показывает пример данных печати, которые посылают в режиме принудительной передачи. В режиме принудительной передачи используют ярлык <print force="true">. В этом примере, команда восстановления после ошибки включена в данные печати. На основании этой команды восстановления после ошибки устройство 31 управления печатью генерирует команды управления печатью восстановления после ошибки и очищения буфера (удаление данных печати в буфере 54 устройства 32 печати).
Блок (c) Фиг. 7 показывает пример данных печати, когда выводятся команды в соответствии с информацией о режиме. В этом примере на чертеже и ярлык <print> и ярлык <print force="true"> включены в данные печати. В этом случае, если устройство 32 печати находится в подключенном состоянии, то устройство 31 управления печатью преобразует и пошлет команду толчка кассового ящика в элементе <print> как обычную команду устройству 32 печати и проигнорирует команды в элементе <print force="true">. Если устройство 32 печати находится в автономном состоянии, то устройство 31 управления печатью преобразует команду толчка кассового ящика в <print force="true"> элементе в команду реального времени и пошлет команду реального времени устройству печати 32, и проигнорирует команды в элементе <print>.
В блоке (d) на Фиг. 7 показан пример данных печати, содержащих команды, которые применимы в автономном режиме. В примере, показанном на чертеже, команды толчка кассового ящика, восстановления после ошибки и остановки зуммера содержатся в данных печати. На основании этих данных печати устройство 31 управления печатью генерирует команды управления печатью соответствующие каждой из этих команд (команды управления печатью включают в себя команды толчка кассового ящика, включения зуммера, восстановления после ошибки и очистки буфера, и остановку зуммера).
Последовательность операций при возникновении ошибки описана со ссылкой на Фиг. 8. В блоке (a) на Фиг. 8 показана последовательность операций при возникновении ошибки. В этом примере команда печати исполняется от узла A, и ошибка возникла во время печати. В этом случае, устройство 32 печати посылает сигнал состояния, обозначающий, что произошла ошибка, устройству 31 управления печатью, и устройство 31 управления печатью посылает ответные данные, обозначающие ошибку, узлу 20. Даже если команда печати будет предъявлена узлом B в этом состоянии, устройство 32 печати находится в автономном режиме, и ответные данные, сообщающие, что условие исполнения не удовлетворено, посылается узлу 20 без посылки команды управления печатью от устройства 31 управления печатью устройству 32 печати. В результате, узел B ожидает печати.
Фиг. 8(b) показывает последовательность операций во время восстановления от ошибки. Когда происходит ошибка в устройстве 32 печати, узел A выбирает режим принудительной передачи и заявляет команду восстановления после ошибки. Устройство 31 управления печатью генерирует команду восстановления после ошибки (команду реального времени) на основании команды восстановления после ошибки от узла. В результате, устройство 32 печати восстановлено, и ошибка очищена. Эти этапы позволяют печать в ответ на другую команду печати от узла B.
Как описано выше, когда данные печати приняты от узла 20, устройство 31 управления печатью, в приведенном выше варианте осуществления, оценивает условие исполнения, что информация о режиме установлена в режим принудительной передачи и устройство 32 печати находится в автономном режиме, и если условие исполнения удовлетворено, переключает устройство 32 печати в режим исполнения команд реального времени, и посылает команды реального времени, сгенерированные из данных печати. В результате, даже если устройство 32 печати находится в автономном режиме, желаемые команды управления печатью, такие как команда восстановления после ошибки, могут быть исполнены. Если условие исполнения не удовлетворено, ус