• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 10
    • 下载费用:30 金币  

    最高赔率的重庆时时彩: 一种基于XML技术的发票打印方法和装置.pdf

    关 键 词:
    一种 基于 XML 技术 发票 打印 方法 装置
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201210592656.8

    申请日:

    2012.12.30

    公开号:

    CN103914933A

    公开日:

    2014.07.09

    当前法律状态:

    授权

    有效性:

    有权

    法律详情: 授权|||实质审查的生效IPC(主分类):G07G 5/00申请日:20121230|||公开
    IPC分类号: G07G5/00 主分类号: G07G5/00
    申请人: 航天信息股份有限公司
    发明人: 陈懿; 陈皓; 张伟; 曹洪建; 付立库; 江洪; 杨为琛
    地址: 100195 北京市海淀区杏石口路甲18号
    优先权:
    专利代理机构: 北京工信联合知识产权代理事务所(普通合伙) 11266 代理人: 姜丽辉
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201210592656.8

    授权公告号:

    103914933B||||||

    法律状态公告日:

    2017.06.30|||2014.08.06|||2014.07.09

    法律状态类型:

    授权|||实质审查的生效|||公开

    摘要

    本发明实施例提供了一种基于XML技术的发票打印方法,包括以下步骤:生成模板文件,所述模板文件根据发票票样制作,所述模板文件采用XML格式,其中,发票票面上每个数据项,都在所述模板文件中占用一个节点,使用类TTTemplateData表征整个模板文件,使用类TTTemplateAttr表征全局属性,使用TTTemplateText表征每一个数据项;解析所述模板文件,得到一个TTTemplateData对象,包含一个TTTemplateAttr类型的属性对象,和一个TTTemplateText类型的数据项对象的列表List;填充数据,对所述List中每个对象根据其属性插入对应的发票数据值;组装打印数据,把所述TTTemplateData发票数据按照打印机的打印命令及规则组装成打印的数据;打印发票,将发票数据发送到打印机并发送打印命令,发票即被打印出。

    权利要求书

    权利要求书
    1.  一种基于XML技术的发票打印方法,其特征在于,包括以下步骤:
    生成模板文件,所述模板文件根据发票票样制作,所述模板文件采用XML格式,其中,发票票面上每个数据项,都在所述模板文件中占用一个节点,使用类TTTemplateData表征整个模板文件,使用类TTTemplateAttr表征全局属性,使用TTTemplateText表征每一个数据项;
    解析所述模板文件,得到一个TTTemplateData对象,包含一个TTTemplateAttr类型的属性对象,和一个TTTemplateText类型的数据项对象的列表List;
    填充数据,对所述List中每个对象根据其属性插入对应的发票数据值;
    组装打印数据,把所述TTTemplateData发票数据按照打印机的打印命令及规则组装成打印的数据;
    打印发票,将发票数据发送到打印机并发送打印命令,发票即被打印出。

    2.  根据权利要求1所述的基于XML技术的发票打印方法,其特征在于,针对每一个所述数据项,所述模板文件中规定好了其位置,显示内容及显示方式。

    3.  根据权利要求1所述的基于XML技术的发票打印方法,其特征在于,所述模板文件中还定义了公共控制属性,定义了全局的打印设置或默认设置。

    4.  根据权利要求1所述的基于XML技术的发票打印方法,其特征在于,填充数据步骤中,静态数据不需要插入数据值。

    5.  根据权利要求1所述的基于XML技术的发票打印方法,其特征在于,组装打印数据步骤中,按字符数据发送发票数据。

    6.  根据权利要求1所述的基于XML技术的发票打印方法,其特征在于,组装打印数据步骤中,使用ndroid.graphics.Canvas对象的函数drawText(String text,float x,floaty,Paint paint)先将发票数据画成一张图片,然后向打印机发送图片的像素数据。

    7.  根据权利要求1-6任一项所述的基于XML技术的发票打印方法,其特征在于,所述数据项至少包括:购货方识别号、机打代码、机打号码、开票日期、品名规格、商品名称、数量、单价、商品金额、项目/费用明细、合计(小写)、合计(大写)、销货方名称、销货方识别号、备注、防伪码、开票日期、金额小写、金额大写、收款单位/销售单位名称、收款方税号、或付款方税号之一。

    8.  一种基于XML技术的发票打印装置,其特征在于,包括以下??椋?BR>模板文件生成???,用于生成模板文件,所述模板文件根据发票票样制作,所述模板文件采用XML格式,其中,发票票面上每个数据项,都在 所述模板文件中占用一个节点,使用类TTTemplateData表征整个模板文件,使用类TTTemplateAttr表征全局属性,使用TTTemplateText表征每一个数据项;
    模板文件解析???,用于解析所述模板文件,得到一个TTTemplateData对象,包含一个TTTemplateAttr类型的属性对象,和一个TTTemplateText类型的数据项对象的列表List;
    数据填充???,用于对所述List中每个对象根据其属性插入对应的发票数据值;
    数据组装???,用于把所述TTTemplateData发票数据按照打印机的打印命令及规则组装成打印的数据;
    发票打印???,用于将发票数据发送到打印机并发送打印命令,发票即被打印出。

    说明书

    说明书一种基于XML技术的发票打印方法和装置
    技术领域
    本发明涉及一种打印方法,具体地说,涉及一种基于XML技术的发票打印方法。
    背景技术
    XML中文名称为可扩展标记语言(英语:eXtensible Markup Language,简称:XML),是一种标记语言。标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用像XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从标准通用标记语言(SGML)中简化修改出来的。它主要用到的有可扩展标记语言、可扩展样式语言(XSL)、XBRL和XPath等。
    通常一张发票包含很多信息和数据,一般包括纳税户信息,发票头信息,受票方信息,商品明细信息等等。发票打印时,有些数据需要开票员手工录入,有些要在服务器后台下发。如何实现对繁多且来源不同的发票数据的进行有效便捷的组织和管理,是一个令人头痛的问题。
    发明内容
    有鉴于此,本发明提供了一种基于XML技术的发票打印方法,包括以下步骤:生成模板文件,所述模板文件根据发票票样制作,所述模板文件采用XML格式,其中,发票票面上每个数据项,都在所述模板文件中占用一个节点,使用类TTTemplateData表征整个模板文件,使用类TTTemplateAttr表征全局属性,使用TTTemplateText表征每一个数据项;解析所述模板文件,得到一个TTTemplateData对象,包含一个TTTemplateAttr类型的属性对象,和一个TTTemplateText类型的数据项对象的列表List;填充数据,对所述List中每个对象根据其属性插入对应的发票数据值;组装打印数据,把所述TTTemplateData发票数据按照打印机的打印命令及规则组装成打印的数据;打印发票,将发票数据发送到打印机并发送打印命令,发票即被打印出。
    优选地,针对每一个所述数据项,所述模板文件中规定好了其位置,显示内容及显示方式。
    优选地,所述模板文件中还定义了公共控制属性,定义了全局的打印设置或默认设置。
    优选地,填充数据步骤中,静态数据不需要插入数据值。
    优选地,组装打印数据步骤中,按字符数据发送发票数据。
    优选地,组装打印数据步骤中,使用ndroid.graphics.Canvas对象的函数drawText(String text,float x,float y,Paint paint)先将发票数据画成一张图片,然后向打印机发送图片的像素数据。
    优选地,所述数据项至少包括:购货方识别号、机打代码、机打 号码、开票日期、品名规格、商品名称、数量、单价、商品金额、项目/费用明细、合计(小写)、合计(大写)、销货方名称、销货方识别号、备注、防伪码、开票日期、金额小写、金额大写、收款单位/销售单位名称、收款方税号、或付款方税号之一。
    本发明依靠XML技术,将发票数据拆分为一个一个独立的数据项,并用节点对数据项进行详细准确的描述。对整个发票信息进行描述的XML文件就是模板文件。本方案从制作模板文件开始,在软件中对其进行解析并填充发票数据,然后转换成打印机数据流发送到蓝牙打印机进行打印。整个过程简单且有效,使得对繁杂的发票数据的管理变成一件简单的工作。
    附图说明
    图1是利用本发明实施例的基于XML技术的发票打印方法打印的一张发票的示意图;
    图2为本发明实施例提供的一种基于XML技术的发票打印装置,的具体结构图。
    具体实施方式
    下面将结合附图对本发明进行详细地说明,逐一介绍本发明的基于XML技术的发票打印方法所包括的主要步骤。
    1、模板生成:
    模板是根据税局下发的发票票样制作的,模板采用XML格式。 如图1所示票样,票面上每个数据项,比如“机打代码:”、“146001110202”等都在模板文件中占用一个节点。
    比如“机打代码:”的节点描述如下:


    其中,
    <ID>是数据项的唯一标识;
    <nType>是数据项的类型代码,“2”表示该数据项为静态数据,发票中的“机打代码”,“机打号码”,“开票日期”,和“开票人”等都是此类数据。而对应的内容项“146001100202”,“15273444”,“20121030”,“李四”等的类型代码分别为“22”,“23”,“26”,“28”;
    <Name>为此数据项的名称;
    <Class>是此数据项的打印类别;
    <bVisual>表示此数据项是否打??;
    <nX>,<nY>,<nRight>,<nBottom>分别表示此数据项在发票上所占位置的最左,最上,最右,最下坐标;
    <content>为此数据项打印在发票上的内容;
    <background>表示此数据项打印在发票上的背景颜色,<nR>,<nG>,<nB>分别表示颜色的RGB值;
    <nKind>表示打印的类别,表单还是内容;
    <FrameMode>表示边框模式;
    <FrameColor>表示边框颜色;
    <nAlign>表示字体的对齐方式;
    <nFontHeight>表示打印在发票上的字体高度;
    <nFontWidth>表示打印在发票上的字体宽度;
    一般地,发票上存在的数据项大致有“购货方识别号”,“机打代码”,“机打号码:”,“开票日期:”,“品名规格”,“商品名称”,“数量”,“单价”,“商品金额”,“项目/费用明细5”,“项目/费用明细6”,“合计(小写)”,“合计(大写)”,“销货方名称”,“销货方识别号”,“备注”,“防伪码”,“开票日期”,“金额小写”,“金额大写”,“收款单位/销售单位名称”,“收款方税号”,“付款方税号”等等。针对每一项数据,模板文件中规定好了其位置,显示内容及显示方式。
    此外,模板文件中还定义了公共控制信息,其结构描述如下:


    其中,
    <ID>表示发票的唯一标识;
    <Name>发票名称;
    <nPaperLen>发票纸的高度;
    <nPaperWidth>发票纸的宽度;
    <bClockLen>是定长标志;
    <nTextHeight>默认的字体高度;
    <nTextWidth>默认的字体宽度;
    <nDy>行间距;
    <nDx>字间距;
    <nPrntendLen>打印后走纸长度;
    <nPrntBegLen>打印前走纸长度;
    <nxPos>打印针头横向偏移量;
    <nyPos>打印针头纵向偏移量;
    <nPrntType>打印模式,是否套打。
    这些公共属性定义了一些全局的打印设置或默认设置。
    2、模板解析及数据填充:
    软件在打印发票前首先要对模板进行解析。软件中用类TTTemplateData表征整个模板文件,用类TTTemplateAttr表征全局属性,用TTTemplateText表征每一个数据项。把模板文件读入内存,将XML节点值分别读入对应的对象中。解析后的结果是得到一个TTTemplateData对象,包含一个TTTemplateAttr类型的属性对象,和一个TTTemplateText类型的数据项对象的列表List。然后对List中每个对象根据其属性插入对应的发票数据值。显然,数据类型为“2”的不需要插入数据,这类数据可以看做是静态的。其他类型的数据比如“发票代码”,“发票号码”等要填入相应的发票数据。
    3、组装打印数据并打?。?
    下一步就是把TTTemplateData发票数据按照蓝牙打印机的打印命令及规则组装成打印的数据。组装方式有两种,一种是按字符数据发送发票数据,这种方式的优点是发往打印机的数据量少,但是控制相对复杂,这是因为不同的打印机可能对字符有不同的打印格式控制;另一种方式是使用ndroid.graphics.Canvas对象的函数drawText(Stringtext,float x,float y,Paintpaint)先将发票数据画成一张图片,然后向打印机发送图片的像素数据,这种方式对字符控制比较灵活,对不同的打印机适应性也比较好,但是缺点就是数据量大,尤其是当打印机的数据接收缓冲区较小的时候缺点更为明显,很可能出现数据丢失的情况。最后,将发票数据发送到打印机并发送打印命令,发票就可以打印出来了。
    本发明实施例还提供了一种基于XML技术的发票打印装置,其具体结构如图2所示,包括以下??椋?
    模板文件生成???1,用于生成模板文件,所述模板文件根据发票票样制作,所述模板文件采用XML格式,其中,发票票面上每个数据项,都在所述模板文件中占用一个节点,使用类TTTemplateData表征整个模板文件,使用类TTTemplateAttr表征全局属性,使用TTTemplateText表征每一个数据项;
    模板文件解析???2,用于解析所述模板文件,得到一个TTTemplateData对象,包含一个TTTemplateAttr类型的属性对象,和一个TTTemplateText类型的数据项对象的列表List;
    数据填充???3,用于对所述List中每个对象根据其属性插入对 应的发票数据值;
    数据组装???4,用于把所述TTTemplateData发票数据按照打印机的打印命令及规则组装成打印的数据;
    发票打印???5,用于将发票数据发送到打印机并发送打印命令,发票即被打印出。
    本发明已经在手机开票软件中已经得到充分应用,而且效果很好。本发明对大量的发票数据能够进行有效且准确的控制,而且使用方便,简单。这大大简化了数量众多且无序的发票数据的管理工作,使开发人员能够更加专注于业务流程开发,给开发人员带来极大的便利,加快了项目开发进度。
    以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的?;し段е?。

    关于本文
    本文标题:一种基于XML技术的发票打印方法和装置.pdf
    链接地址://www.4mum.com.cn/p-6130628.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
  • 傲人沈阳棋牌大赛 扑克玩法 516捕鱼游戏大厅 中国竞猜网首页 丰禾棋牌娱乐 pc蛋蛋在线预测网站 双色球复式计算 福彩双色球中奖规则 排列三走势图排列五 20181102四川金7乐开奖 北京pk10手机版走势图 体彩老11选5最新开奖信息 杰克棋牌手机端 斗地主棋牌游戏赚钱 分分彩漏洞获利2000万 pk10牛牛