批量打印票据的控制方法、装置和系统与流程

文档序号:11063321阅读:996来源:国知局
批量打印票据的控制方法、装置和系统与制造工艺

本发明涉及通信领域,具体而言,涉及一种批量打印票据的控制方法、装置和系统。



背景技术:

随着科技的进步,票据的应用范围越来越广,如物流业的面单、零售业的优惠券、餐饮业的代金券等。在进行票据的批量打印时,不仅要求票据要完整的打印,而且还要求票据不能重复打印。基于此,相关技术提供了一种票据打印控制方法,该方法主要包括:打印请求装置在下发打印任务前和发送打印任务中,一直检测打印机的状态,直到检测到打印机正常时进行打印,该控制方法在一定程度上能够保证单个票据打印的可靠性。

在多页票据的连续打印过程中,上述票据打印控制方法只能监控所有票据是否已正常打印,不能实时监控哪些票据已经打印哪些票据还未打印,如果所有票据均正常打印,则可以最终一次性地确认所有票据均已打印,不会出现问题。当在打印过程中发生意外时,如打印机发生故障、通信中断等,由于无法确认哪些票据已正常打印、哪些票据未打印,需要工作人员调整打印装置,完成后续打印任务,这种调整方式受工作人员的影响,容易发生重复打印或丢单打印的现象。

针对相关票据打印控制技术中存在的批量打印多页票据时的可靠性较差问题,目前尚未提出有效的解决方案。



技术实现要素:

有鉴于此,本发明实施例的目的在于提供一种批量打印票据的控制方法、装置和系统,以提高批量打印票据的可靠性。

第一方面,本发明实施例提供了一种批量打印票据的控制方法,包括:在批量打印票据的过程中,接收打印机反馈的状态信息,其中,所述状态信息包括所述打印机的工作信息和已打印票据的标识码;根据所述工作信息判断所述打印机是否发生故障;当所述打印机发生故障时,根据所述已打印票据的标识码统计未打印的票据。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,上述方法还包括:生成包含多页票据的打印任务,其中,所述打印任务中的每页票据的打印数据包含一个标识码;向打印机下发所述打印任务的打印数据。

结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,上述工作信息包括工作状态字段和故障信息字段,根据所述工作信息判断所述打印机是否发生故障包括:检查所述工作信息中的工作状态字段;其中,所述工作状态字段用于标识所述打印机为空闲、正在打印或发生故障;当所述工作状态字段标识为打印机发生故障时,根据所述工作信息中的故障信息字段确定所述打印机的故障类型。

结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,根据所述已打印票据的标识码统计未打印的票据包括:根据所述已打印票据的标识码,从打印任务包含的所有票据的标识码中统计未打印的票据的标识码及数量。

结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,上述方法还包括:当所述打印机正常工作、且所 述打印机反馈的所述状态信息中还包括缓存打印数据的页数时,根据所述缓存打印数据的页数和打印机的缓存能力确定本次要发送的页数,按照确定的所述本次要发送的页数向所述打印机发送打印数据。

结合第一方面的上述实施方式,本发明实施例提供了第一方面的第五种可能的实施方式,其中,在统计所述未打印的票据之后,所述方法还至少包括以下操作之一:发出用于确定所述未打印的票据提示信息;将所述未打印的票据的打印数据发送至备用打印机进行打印;当检测到所述打印机正常后,使用所述打印机对所述未打印的票据的打印数据进行打印。

第二方面,本发明实施例还提供了一种批量打印票据的控制装置,包括:状态信息接收模块,用于在批量打印票据的过程中,接收打印机反馈的状态信息,其中,所述状态信息包括所述打印机的工作信息和已打印票据的标识码;故障判断模块,用于根据所述状态信息接收模块接收的所述状态信息中的工作信息判断所述打印机是否发生故障;故障处理模块,用于当所述故障判断模块判断的结果是所述打印机发生故障时,根据所述已打印票据的标识码统计未打印的票据。

结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,上述装置还包括:打印任务生成模块,用于生成包含多页票据的打印任务,其中,所述打印任务中的每页票据的打印数据包含一个标识码;打印数据下发模块,用于向打印机下发所述打印任务生成模块生成的所述打印任务的打印数据。

结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,上述装置还包括:打印正常处理模块,用于当所述故障 判断模块判断的结果是打印机正常工作、且所述打印机反馈的所述状态信息中还包括缓存打印数据的页数时,根据所述缓存打印数据的页数和打印机的缓存能力确定本次要发送的页数,按照确定的所述本次要发送的页数向所述打印机发送打印数据。

第三方面,本发明实施例提供了一种批量打印票据的控制系统,包括上述控制装置,还包括:打印机,用于接收并打印所述控制装置下发的打印数据,以及向所述控制装置反馈状态信息。

本发明实施例提供的上述方法、装置及系统,在批量打印票据的过程中,通过接收打印机反馈的状态信息,并根据该状态信息判断出打印机是否故障,当打印机发生故障时,能够根据该状态信息中已打印票据的标识码统计未打印的票据,进而实现了在批量打印多页票据时,有效监控每页票据的打印状态,提升了票据的可靠打印,有效防止了丢单现象。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明实施例所提供的一种批量打印票据的控制方法的应用环境示意图;

图2示出了本发明实施例所提供的一种用户终端的结构框图;

图3示出了本发明实施例所提供的一种批量打印票据的控制方法的流程图;

图4示出了本发明实施例所提供的一种批量打印票据的控制装置的结构框图;

图5示出了本发明实施例所提供的批量打印票据的控制装置的另一种结构框图;

图6示出了本发明实施例所提供的批量打印票据的控制装置的第三种结构框图;

图7示出了本发明实施例所提供的一种批量打印票据的控制系统的结构框图;

图8示出了本发明实施例所提供的一种运行于打印机系统中打印请求装置上的控制方法的流程图;

图9示出了本发明实施例所提供的基于图7所示系统的批量打印票据的控制方法的流程图。

具体实施方式

本发明实施例所提供一种批量打印票据的控制方法、装置和系统可应用于如图1所示的应用环境中。如图1所示,用户终端100、打印机200位于无线网络或有线网络300中,通过该无线网络或有线网络300,用户终端100与打印机200进行数据交互,在实际应用中,本发明实施例中提供的批量打印票据的控制方法和装置可以应用于用户终端100内,用以控制打印机200完成批量票据的打印任务。

于本发明实施例中,用户终端100优选为计算机等终端设备,具体可以是智能手机、平板电脑、电子书阅读器、膝上型便携计算机、车载电脑等等。

图2示出了一种可应用于本发明实施例中的用户终端的结构框图。如图2所示,用户终端100包括存储器102、存储控制器104,一个或多个(图中仅示出一个)处理器106、外设接口108、射频模块110、音频模块112、触控屏幕114等。这些组件通过一条或多条通讯总线/信号线116相互通讯。

存储器102可用于存储软件程序以及模块,如本发明实施例中的批量打印票据的控制方法和装置对应的程序指令/模块,处理器106通过运行存储在存储器102内的软件程序以及模块,从而执行各种功能应用以及数据处理,如本发明实施例提供的批量打印票据的控制方法。

存储器102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。处理器106以及其他可能的组件对存储器102的访问可在存储控制器104的控制下进行。

外设接口108将各种输入/输出装置耦合至处理器106以及存储器102。在一些实施例中,外设接口108,处理器106以及存储控制器104可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。

射频模块110用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。

音频模块112向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。

触控屏幕114在用户终端100与用户之间同时提供一个输出及输入界面。具体地,触控屏幕114向用户显示视频输出,这些视频输出的内容可包括文字、图形、视频、及其任意组合。

可以理解,图2所示的结构仅为示意,用户终端100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图3所示的本发明实施例提供的批量打印票据的控制方法流程图,该方法可以应用于上述用户终端中,包括以下步骤:

步骤S302,在批量打印票据的过程中,接收打印机反馈的状态信息,其中,该状态信息包括打印机的工作信息和已打印票据的标识码。

上述打印机的工作信息包括工作状态字段和故障信息字段;工作状态字段用于表示打印机的工作状态,如空闲、正在打印、发生故障等。标识码字段表示打印机已打印票据对应的标识码,例如ID号。

为了能够区分各个票据,本发明实施例每页票据的打印数据中包括有标识码,该标识码在当前的批量打印任务中具有唯一性,可以是序号,如1、2、3、……,也可以是其它形式的编码,打印机通过读取打印数据获取到该标识码。

步骤S304,根据上述工作信息判断打印机是否发生故障。

步骤S306,当打印机发生故障时,根据已打印票据的标识码统计未打印的票据。

统计未打印的票据的具体方式可以包括:根据已打印票据的标识码,从打印任务包含的所有票据的标识码中统计未打印的票据的标识码及数量。该统计方式简单易行,对用户终端的负荷不会产生太大影响,保证了用户终端的正常运行。

本实施例的上述方法在批量打印票据的过程中,通过接收打印机反馈的状态信息,并根据该状态信息判断出打印机是否故障,当打印机发生故障时,能够根据该状态信息中已打印票据的标识码统计未打印的票据,进而实现了在批量打印多页票据时,有效监控每页票据的打印状态,提升了票据的可靠打印,有效防止了丢单现象。

上述方法的每页票据设有唯一标识码(简称票据ID),用户终端实时接收打印机反馈的状态信息,当打印机未发生故障时,根据该状态信息中已打印票据的标识码记录完成打印的票据,当打印机发生故障时,根据已经记录的票据ID统计未打印的票据,进行后续处理。

本发明实施例在进行批量票据打印时,为了能够简化操作,可以将需要打印的多页票据的打印数据设置为一个打印任务,每页票据设有唯一的ID号,打印任务的打印数据以页为单位,一页打印数据生成一页票据。基于此,上述方法还可以包括:(1)生成包含多页票据的打印任务,其中,该打印任务中的每页票据的打印数据包含一个标识码;(2)向打印机下发打印任务中的打印数据。

考虑到打印机的故障情况有多种,在具体实现时,可以在工作信息中给出故障信息字段,用故障信息字段表示打印机已发生的具体故障类型,其可以为2字节数据,每个比特表示一种故障,如比 特1表示打印机是否缺纸、比特2表示上盖是否开启、比特3表示打印头是否温度异常等,基于此,上述根据工作信息判断打印机是否发生故障的步骤可以包括:检查上述工作信息中的工作状态字段;其中,该工作状态字段用于标识打印机为空闲、正在打印或发生故障;当该工作状态字段标识为打印机发生故障时,根据该工作信息中的故障信息字段确定打印机的故障类型;本实施例中的故障信息字段可以用于标识打印机是否缺纸、打印机的上盖是否开启或打印机的打印头是否温度异常等。通过这种故障判断方式,可以有效方便的获知打印机的具体故障类型,有效提示用户进行故障维修处理。

进一步地,上述打印机反馈的状态信息还可以包括未打印数据的页数字段(或称为页数量字段),用于表示打印机的缓冲器中保存的未打印数据的页数,或称为缓存打印数据的页数,简称为页数量。基于此,上述方法还包括:当打印机正常工作、且打印机反馈的状态信息中还包括缓存打印数据的页数时,根据上述缓存打印数据的页数和打印机的缓存能力确定本次要发送的页数,按照确定的本次要发送的页数向打印机发送打印数据。该方式通过打印机当前缓存打印数据的页数和打印机的缓存能力,确定本次要发送的打印数据的页数,可以有效避免打印机由于内存不足导致的处理速度缓慢的问题,保证了打印的速度。

当打印机出现故障后,可以提示报警,也可以转移打印,或者接收到该打印机再次反馈的状态信息,确定其正常后继续打印等。相应地,在统计未打印的票据之后,上述方法还至少包括以下操作之一:

(1)发出用于确定未打印票据的提示信息;例如,提示未打印票据的标识号或文件名,未打印票据的数量等;

(2)将未打印的票据的打印数据发送至备用打印机进行打印;

(3)当检测到打印机正常后,使用该打印机对未打印的票据的打印数据进行打印。

上述多种处理方式,有效提升了批量打印的可靠性,降低了人为参与因素导致的统计错误。

对应于上述方法,本发明实施例还提供了一种批量打印票据的控制装置,该装置可以设置在上述用户终端中,参见图4所示,该装置包括以下模块:

状态信息接收模块42,用于在批量打印票据的过程中,接收打印机反馈的状态信息,其中,状态信息包括打印机的工作信息和已打印票据的标识码;

故障判断模块44,用于根据状态信息接收模块42接收的状态信息中的工作信息判断打印机是否发生故障;

故障处理模块46,用于当故障判断模块44判断的结果是打印机发生故障时,根据已打印票据的标识码统计未打印的票据。

故障处理模块46统计未打印的票据可以根据已打印票据的标识码,从打印任务包含的所有票据的标识码中统计未打印票据的标识码及数量。

当打印机出现故障后,故障处理模块46可以发出用于确定所述未打印票据的提示信息,也可以将未打印的票据的打印数据发送至备用打印机进行打印,或者接收到该打印机再次反馈的状态信息,确定其正常后继续打印等。具体处理方式可以参考上述方法实施例中的处理方式进行,这里不再赘述。

本实施例的上述装置在批量打印票据的过程中,通过接收打印机反馈的状态信息,并根据该状态信息判断出打印机是否故障,当 打印机发生故障时,能够根据该状态信息中已打印票据的标识码统计未打印的票据,进而实现了在批量打印多页票据时,有效监控每页票据的打印状态,提升了票据的可靠打印,有效防止了丢单现象。

本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

参见图5所示的本实施例提供的批量打印票据的控制装置的另一种结构框图,在上述图4的基础上,该装置还包括:

打印任务生成模块52,用于生成包含多页票据的打印任务,其中,该打印任务中的每页票据的打印数据包含一个标识码;

打印数据下发模块54,用于根据每个票据的标识码向打印机下发打印任务生成模块52生成的打印任务的打印数据。

其中,打印数据下发模块54与上述状态信息接收模块42相连,进而实现对上述打印机的控制。

参见图6所示的本实施例提供的批量打印票据的控制装置的另一种结构框图,在上述图5的基础上,该装置还包括:打印正常处理模块62,用于当故障判断模块44判断的结果是打印机正常工作、且打印机反馈的状态信息中还包括缓存打印数据的页数时,根据缓存打印数据的页数和打印机的缓存能力确定本次要发送的页数,按照确定的本次要发送的页数向打印机发送打印数据。

进一步地,上述故障判断模块44可以包括:工作状态字段检查单元,用于检查工作信息中的工作状态字段;其中,该工作状态字段用于标识打印机为空闲、正在打印或发生故障;故障类型判断单元,用于当工作状态字段检查单元检查出工作状态字段标识为上述打印机发生故障时,根据工作信息中的故障信息字段确定打印机的 故障类型;其中,该故障信息字段可以用于标识打印机是否缺纸、打印机的上盖是否开启或打印机的打印头是否温度异常等。

本发明实施例还提供了一种批量打印票据的控制系统,该系统包括上述控制装置和打印机,该打印机用于接收并打印控制装置下发的打印数据,以及向控制装置反馈状态信息(状态信息的内容同上所述)。批量打印票据的控制系统可以简称为打印系统,上述控制装置还可以称为打印请求装置,上述图4至图6所示的控制装置的结构框图仅是一种模块划分的实现方式,在具体实现时,还可以采用其它形式。如图7所示的批量打印票据的控制系统的结构框图,该系统包括打印请求装置70和打印机80。

其中,打印请求装置70包括票据生成器71、票据状态管理器72、票据发送管理器73、状态信息分析器74和数据发送接收单元75。

票据生成器71,用于生成包含多页票据的打印任务,其中,每页票据设有唯一的ID号,打印任务的打印数据以页为单位,一页打印数据生成一页票据。

票据状态管理器72,用于对已打印和未打印票据进行标识管理,将由票据生成器77发送的ID号对应的票据标记为未打印;将来自状态信息分析器74的ID号对应的票据标记为已打印。

票据发送管理器73,用于管理来自票据生成器71生成的打印数据,以页为单位形成打印数据的发送队列,当接收到来自票据状态管理器72的已打印票据的ID号,则从发送队列中删除与该ID号对应的票据的打印数据,并根据来自状态信息分析器74的打印机状态信息决定是否向数据发送接收单元75发送打印数据。进一步,还可以根据打印机状态信息中的未打印数据的页数,确定本次要发 送的打印数据的页数,如打印机返回的未打印数据的页数为k,而打印机可以缓存的打印数据的页数(相当于上述缓存能力)为j,则本次可发送的页数最多为(j-k),把(j-k)页打印数据发送到数据发送接收单元75。其中j和k为正整数,在这里仅仅是示例性的,而不是作为限制,其他示例可以具有不同的值。

状态信息分析器74,用于分析来自打印机的状态信息,并把分析后的状态信息分别传送到不同的模块,如把打印机的工作状态传送到票据发送管理器73,把已打印票据的ID号发送到票据状态管理器72。本实施例中的打印机的状态信息包括工作状态字段、故障信息字段和已打印票据ID号字段,其中,工作状态字段用于表示打印机的工作状态,如空闲、正在打印、发生故障等,故障信息字段表示打印机已发生的具体故障,故障信息字段通常为2字节,每个比特表示一种故障,如比特1表示打印机是否缺纸、比特2表示上盖是否开启、比特3表示打印头是否温度异常等,已打印票据ID号字段表示打印机打印结束的票据对应的ID号;进一步地,打印机状态信息还包括未打印数据的页数字段,用于表示打印机接收缓冲器中保存的未打印数据的页数。

数据发送接收单元75,用于在打印请求装置和打印机之间进行数据传输,将从票据发送管理器73接收到的打印数据发送给打印机,接收来自打印机80的打印机状态信息,并把打印机的状态信息发送到状态信息分析器74,数据的通信方式可以为USB通信,也可以为网络通信。

打印机80包括控制单元81、通信单元82、接收缓冲器83、打印单元84和状态检测器85,其中,控制单元81控制各模块的工作及模块间的配合,如控制通信单元82接收来自打印请求装置70的 打印数据以及发送打印机状态信息,控制打印单元84进行打印,控制状态检测器85实时地和/或周期地检测打印机各组成部分的状况等。

通信单元82,接收来自打印请求装置70发送的打印数据和/或状态查询指令,并把接收的打印数据保存在接收缓冲器83,向打印请求装置70发送来自状态检测器85的状态信息,通信单元82可以为USB接口,也可以为网络接口,还可以为其他类型的通信接口;

接收缓冲器83,缓存来自数据接收发送单元82的打印数据。

打印单元84,把来自接收缓冲器83的打印数据打印在介质上以生成票据,其中,一页打印数据生成一张票据,打印单元84可以为喷墨打印单元,也可以为热打印单元或其他类型的打印单元,当打印数据是以打印机语言表示的数据时,在发送到打印单元84之前,控制器81还对以打印机语言表示的数据进行解析,以生成适合打印单元84的数据。当打印数据是以打印机语言以外的语言表示的数据时,在发送到打印单元84之前,控制器81可以对该打印数据进行格式转换,转换为打印机语言后进行解析等操作。

状态检测器85,用于检测打印机各组成模块的状态,包括多个检测单元,优选地,状态检测器包括用于检测打印单元是否温度过高的温度检测单元、用于检测打印机是否缺纸的缺纸检测单元、用于检测打印机是否打开上盖的上盖检测单元、用于检测当前页的打印数据是否打印结束的票据打印检测单元,优选地,状态检测器还包括用于检测接收缓冲器中未打印数据的页数的接收缓存检测单元,状态检测器85把每个检测单元的检测结果以预定的规则形成打印机的状态信息,当任意一个检测单元检测到故障,控制单元81将状态信息的故障信息字段中与该检测单元对应的比特设置为相应 的故障状态,同时还将状态信息中的工作状态字段标记为发生故障;当所有检测单元均未检测到故障,控制单元81将状态信息的故障信息字段中与该检测单元对应的比特设置为相应的正常状态,同时根据打印机是否打印,将状态信息中的工作状态字段标记为空闲状态或正在打印状态。

图8是根据本发明实施例的打印机系统中运行于打印请求装置上的控制方法的流程图,具体的处理流程如下:

步骤S10,票据生成器生成包含多页票据的打印任务,其中,每页票据设有唯一的ID号。

打印请求装置70的票据生成器71根据实际应用的需要生成包含多页票据的打印任务,其中,每页票据设有唯一的ID号,用于票据的识别、分辨、查询等,该打印任务包括多页打印数据,一页打印数据打印在介质上生成一页票据。打印任务生成后,打印任务的打印数据输出到票据发送管理器73,并把该打印任务包含的所有票据的ID号发送到票据状态管理器72。

步骤S12,向打印机发送多页打印数据;

打印请求装置70的数据接收发送器75向打印机发送多页打印数据,该多页打印数据来自票据发送管理器73。

步骤S14,接收打印机的状态信息;

数据发送接收器75接收来自打印机80的状态信息,并把接收的状态信息发送到状态信息分析器74。

步骤S16,判定打印机是否发生故障;

状态信息分析器74对来自打印机的状态信息进行解析,如果工作状态字段表示打印机正常,即打印机未发生故障,则转到步骤S18;如果工作状态字段表示打印机发生故障,则转到步骤S20。

步骤S18,根据返回的票据ID号确认已打印票据。

票据状态管理器72根据从状态信息分析器74获取的票据ID号把该ID号对应的票据从未打印状态标记为打印状态,然后再把该ID号发送到票据发送管理器73。

步骤S20,统计未打印的票据;

打印请求装置70的票据状态管理器72在打印任务包含的所有票据的ID号中,删除确认为已打印的票据ID号,统计剩余的未打印票据的ID号及其数量。

步骤S22,对未打印票据进行处理;

对票据状态管理器72统计的未打印票据,可以在打印机排除故障后,由票据发送管理器73把未打印票据ID号对应的页数据再发送到打印机进行打印,也可以通过提示信息向使用者进行报警,由使用者决定下一步的操作。

步骤S24,判定打印任务的所有票据是否都已打印;

票据状态管理器72,根据来自票据生成器71的所有票据的ID号以及来自状态信息分析器74的已打印票据的ID号,把该ID号对应的票据从未打印状态标记为打印状态,如果所有ID号对应的票据均标记为打印状态,则打印任务的所有票据都已打印,否则,打印任务的所有票据未都已打印;如果未都打印,则转到步骤S12;如果都已打印,则本流程结束。

图9是根据本发明实施例的基于图7所示系统的批量打印票据的控制方法的流程图,如图9所示,打印请求装置与打印机之间通信过程的程序流程是交互进行的,图中的箭头表示从打印请求装置向打印机发送数据,箭头表示从打印机向打印请求装置发送数据,其中,步骤S40至步骤S54由打印请求装置 70执行,步骤S70至步骤S76由打印机80执行,具体的处理过程如下:

步骤S40,打印请求装置生成包含多页票据的打印任务,其中,每页票据设有唯一ID号;

打印请求装置70的票据生成器71生成设有多页票据并且每页票据设有唯一ID号的打印任务,把该打印任务发送到票据发送管理器73,并把该打印任务包含的所有票据的ID号发送到票据状态管理器72。

步骤S42,打印请求装置向打印机发送多页打印数据;

通过打印请求装置70的数据发送接收器75,向打印机80发送多页打印数据,该打印数据可以为包含打印任务中所有的页的打印数据,也可以包含打印任务中部分的页的打印数据。

步骤S70,打印机接收打印数据;

打印机80通过通信单元82,接收打印请求装置70下发的打印数据,打印机80的接收缓冲器83缓存打印数据。

步骤S72,打印机对打印数据进行打印;

步骤S74,当打印完一页打印数据后,记录该页打印数据对应票据的ID号;

打印机80的打印单元84对一页打印数据进行打印,当状态检测器85的票据打印检测单元检测到打印完一页打印数据后,则在状态信息的已打印票据ID号字段记录该页打印数据对应票据的ID号。

步骤S76,打印机向打印请求装置发送打印机的状态信息;

打印机80的状态检测器85对打印机80各组成部分进行检测,如检测检测上盖是否抬起、检测是否缺纸等,检测方式包括周期性 方式和中断方式,根据各检测单元的检测结果生成打印机的状态信息并把状态信息发送到打印请求装置70。

或者,在打印机80接收到打印请求装置70的打印机状态信息请求指令后,返回打印机80的状态信息,优选地,打印机自动返回状态,返回方式可以选择,如周期性地返回状态信息,或在状态信息发生变化时发送状态信息。

步骤S44,打印请求装置接收打印机的状态信息;

打印请求装置70通过数据发送接收器75接收来自打印机80的状态信息,并把状态信息传送到状态信息分析器74。

步骤S46,打印请求装置判定打印机是否发生故障;

打印请求装置70的状态信息分析器74对来自打印机80的状态信息进行分析,其中,工作状态字段用于表示打印机空闲、打印机正常、打印机故障等状态,如果工作状态字段表示打印机正常,即打印机未发生故障,则转到步骤S48;如果工作状态字段表示打印机发生故障,则转到步骤S52。

步骤S48,打印请求装置根据返回的票据ID号确认已打印票据;

根据状态信息中的已打印票据ID号,打印请求装置70的票据状态管理器72把该ID号对应的票据从未打印状态标记为已打印状态。

步骤S52,统计未打印票据;具体过程同步骤S20,这里不再赘述。

步骤S54,对未打印的票据进行处理,具体过程同步骤S22,这里不再赘述。

步骤S50,判定所有票据是否都已打印;

票据状态管理器72根据来自打印机70的已打印票据ID号,对来自票据生成器71的所有票据的ID号是否已打印进行确认,如果有至少一个ID号对应的票据未打印,即所有票据未都打印,则转到步骤S42;如果所有ID号对应的票据都已打印,则本流程结束。

上述打印机系统,每页票据设有唯一ID号,打印请求装置实时接收打印机反馈的状态信息,当打印机未发生故障时,根据该状态信息中的票据的ID号记录完成打印的票据,当打印机发生故障时,根据已经记录的票据ID统计未打印的票据,从而保证了票据的可靠打印,有效防止了丢单现象。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1