【delphi 触摸收银源码】【行情指标源码大全】【名片侠利润源码】vb crc源码

时间:2024-11-30 15:49:04 来源:西安在线直播系统源码下载 编辑:unittest框架源码

1.IFIX中如何引用CryStal Report
2.VB通信串口与USB口
3.HxD Hex Editor(十六进制磁盘编辑器)v2.5.0.0中文版

vb crc源码

IFIX中如何引用CryStal Report

       åœ¨è¿™é‡Œæˆ‘主要想和大家讨论一下Crystal Report的总体框架模式方面的问题,重点是如何使用VB有效的融合报表和数据,快速的进行报表开发工作。希望抛砖引玉,找到几种最好最快的开发模式。

       æœ¬æ–‡æš‚不涉及技术细节,所以您可能觉得太过简单。但这样的问题的确是我们开发中的第一号大问题。在以后的讨论中,我们可以针对具体的问题讨论具体的技术细节。

       æˆ‘准备了一份源代码,已经发给了部分网友,但是没有做详细的测试。我准备在明后天做完测试,如果各位有需要的话,应该在星期一左右可以发给你们(唉,星期六星期天还要加班!)。

       æ³¨æ„ï¼šæœ‰éœ€è¦çš„朋友请跟帖说明,不要只给我发短消息。

       ç¼©å†™è¯­è¯´æ˜Ž

       RPT Crystal Report Template File. 使用Crystal Report设计器生成的报表样式和模板文件,后缀名为RPT

       RDC Crystal Report Designer Component. Crystal Report的对象模型,用于在VB中操作Crystal Report.

       CRV Crystal Report Viewer. OCX 控件,用于在VB中提供报表预览界面。

       CRC Crystal Report Control. OCX 控件,在Crystal Report 8.0以前用于在VB中提供报表预览界面,现已被CRV取代。

       CDO Crystal Data Source Object. Crystal Report 提供的数据源对象,用于创建与数据库无关的动态数据源。

       ä¸€ï¼Œå¦‚何动态获取数据,生成报表?

       æŠ¥è¡¨çš„一个主要特征就是根据事先设计好的模板样式和运行时的动态数据生成一份可查看与打印的文档。

       ä¸€èˆ¬æ¥è¯´ï¼ŒVB的程序中整个报表流程中的主线,由它来对Crystal Report及其它工具发号施令,实现用户需求。

       VB是通过RDC模型来操作CrystalReport的。通常有如下两种模式生成报表:

       1,VB-RPT-DB

        VB调用RPT文件,RPT文件查询数据库得到数据,生成报表。此方法的详细流程如下:

        1)在Crystal Report 中设计好RPT文件,设计时可在CrystalReport中连接到数据库,得到查询数据,即时预览报表。

        2) 在VB中,通过RDC模型打开RPT文件,并将运行时和数据库连接所需的信息,如数据库名,用户,密码等传给RPT文件,如果RPT文件中有参数,还要传入参数。

        3)RPT文件连接到数据库,执行查询得到数据,生成报表。

        4) 在VB中,通过CRV控件打开报表进行预览或通过RDC模型进行打印,导出等操作。

       2,VB-DB-RPT

        VB先查询数据库得到结果集,再打开RPT文件并传入结果集,生成报表。此方法详细流程如下:

        1)在Crystal Report 中设计好RPT文件。由于此时结果集还未生成,只能使用TTX文件做为虚拟数据源,以便读取字段信息。所以在设计RPT文件之前,还要根据最终的结果集结构生成一个TTX文件。

        2)在VB中,连接到数据库,执行查询,得到结果集。

        3)在VB中,通过RDC模型打开RPT文件,传入结果集和参数,生成报表。

        4)在VB中,通过CRV控件打开报表进行预览或通过RDC模型进行打印,导出等操作。

       æ˜¾ç„¶ï¼ŒVB-RPT-DB模式远优于VB-DB-RPT模式,这体现在如下几个方面:

       1,设计时,VB-DB-RPT模式一般要求生成一个和最终结果集字段结构完全一致的TTX文件做为虚拟数据源,增大的开发和维护的工作量,而且还不能即时预览生成的报表。VB-RPT-DB模式则是直接和数据库相连,无需TTX文件,还能看到最终数据。

       2,运行时,VB-DB-RPT模式在得到结果集后,需要在VB中建立相应的结果集对象,并将其传入RPT文件,与VB-RPT-DB模式相比多了一个很大的对象--结果集对象。

       3,运行时,VB-DB-RPT模式的结果集从DB传到VB,再传到RPT, 而VB-RPT-DB模式的结果集直接从DB传到RPT,少了一次大的数据传递。

       4, 开发时,VB-DB-RPT模式一般每加一个报表,就要加两段代码:查询结果集和生成报表。而VB-RPT-DB模式可以很方便的实现一个接口应对所有的报表,新加报表几乎无需增加VB代码。二者的代码量不可同日而语。

       äºŒã€å¦‚何生成报表模板文件?

       è®¾è®¡æŠ¥è¡¨æ ¼å¼æ˜¯æ‰€æœ‰æŠ¥è¡¨å·¥ä½œçš„第一步。在CrystalReport中,有两个地方可以设计报表,Crystal Report集成设计器和内嵌在VB中的报表设计器。我个人觉得,内嵌报表设计器的做法弊远大于利,不推荐使用。

       ä¸‰ï¼Œå¦‚何查询DB,得到运行时数据。

        通过VB查询DB得到结果集的方式有很多种,大家都很熟悉。通过RPT查询DB的方式主要有:存储过程,视图,表, Crystal Query, 直接SQL查询。

        其中最简单的莫过于直接连接到表,进行表查询。可是一般的报表都不会只涉及到一个表。在RPT文件中进行多表查询并设置查询条件的方法虽然简单,但是分散了整体的查询逻辑,而且操作烦琐,不是一个好办法。视图和存储过程是最好的选择,不过视图在性能上不及存储过程,所以我推荐使用存储过程。

        存储过程和视图是放在数据库中的。如果不允许或不能在数据库中建立视图和存储过程等,还可以利用Crystal Report自已的SQL查询功能,将完整的SQL查询语句写在RPT文件中。

        从Crystal Report自己的说明来看,Crystal Query文件就像是Crystal Report自己的存储过程。不过这个工具不包含在Crystal Report 9中。Crystal Report 官方网站提供了单独的免费下载。这个工具有两个限制:在Crystal Queryk中的每个字段,字段值长度不能超过个字符, 总字段数据也不能超过个。我是从Crystal Report的帮助文件中看到这些信息的。如是真的话,Crystal Query就没有什么竞争力了。Crystal Report 也支持在设计RPT文件时直接写SQL,还可以带参数。这是个不错的功能。不知道是不是也有上述两个限制。

        我没有仔细测试Crystal Report内嵌SQL查询的功能,在此不宜多加评论。但我强烈推荐使用数据库的存储过程和视图。它有效的分离的报表工作中的逻辑和设计工作,利于分工合作,也利于编护和升级。

        使用Oracle的存储过程有如下限制,SQL Server 类似。

        > 要使用本地连接或ODBC连接到Oracle,不能使用OLE DB连接。建议使用本地连接。

        > 存储过程必须放到一个包内。结果集游标必须在包头声明。

        > 存储过程只能有输入参数。

        > 存储过程只能返回一个结果集,以输入输出型(IN OUT)的游标参数形式返回。

        > 结果集中的字段名称和类型通过打开游标的SQL语句直接确定。所以不能使用动态SQL,也不能通过嵌套调用存储过程的方式来将数据装入游标。

       å››ï¼Œå¦‚何传递多个数据源和参数。

        如果所有的数据源都是VB-RPT-DB模式,那么VB要做的连接工作就很简单,将一个动态建立的连接传给RDC就可以了。RDC再将连接传给每一个RPT中存在的数据源。即便在报表包含子报表时也是如此的简单。

        如果数据源是VB-DB-RPT模式,或都是好几种类型混合的。最好在设计报表的时候给每个数据源设定一个唯一名字(包括子报表的数据源),RDC就跟据名字来给每个数据源传递连接信息或结果集。

        事实上,在一个报表中即便存在多个数据源,由于Crystal Report要求互相之间要有主键的对应关系,而不能一个数据源处理完后再处理另一个数据源,所以这些多个的数据源在本质上仍然是一个数据源。我做过很多复杂的报表,很少碰到要用到多个数据源的。使用子报表的情况倒是占了一半左右。

        报表中的所参数都可以从VB中传入,建议也为所有的参数(包括子报表的参数)设定一个唯一的名字,由RDC跟据名字来传值,这样就不用理会报表中有哪些子报表了。

        在处理大量的报表时,将报表的RPT文件路径及其参数信息存入数据库,就可以实现新增报表无须修改VB程序。一般而言,一个系统中的绝大部分报表,其参数都差不多,很容易控制。

       2.1 准备一个通用模板。

       ä¸€ä¸ªé¡¹ç›®ä¸­çš„所有报表,通常有一个统一的格式和标准。准备一个带有最基本格式和标准的RPT文件作为模板是个聪明的做法。不过Crystal Report中的模板向导功能并不是很强,不如直接创建一个RPT文件,然后复制来得快。

       2.2 在Crystal Report 编辑环境中设定字段和数据的缺省模式。

       åœ¨Crystal Report的选项菜单(文件->选项)中设定要不同字段,不同数据类型的显示格式和字体,这一点非常重要。它可以最大程度的保证的模板设计完全符合标准。减少重复劳动。

       åœ¨æ–‡ä»¶ï¼ï¼žæŠ¥è¡¨é€‰é¡¹ä¸­ä¹Ÿæœ‰ä¸‰é¡¹å¾ˆé‡è¦çš„设置:

       1) 将数据库的NULL值转为默认值, 选中。

       2) 将其它NULL值转为默认值, 选中。

       3) 若无记录则取消打印, 不选。

       2.3 选择一个可以同时支持中英文的字体。

       å­—体的选择直接影响版面效果。有的字体不支持中文,显示中文时就会出现乱码。有的中文字体在纯英文下不能使用。有的字体在Windows /XP的中英文环境中大小不同。有的字体不是Windows 自带字体。

       æœ€å¥½åœ¨å„种环境下试过后再决定采用哪种字体。

       2.4 使用公式字段,汇总字段,运行时总计字段,以及变量实现数据的页面逻辑。

       Crystal Report中的公式其实就是一个表达式,它通过使用Crystal Report中的函数和操作符来操作数据源中的数据以得到最终想要显示的字段。在公式中还可以使用变量。

       åœ¨Crystal Report中有两种比较特别的公式:汇总公式和运行时总计公式。这两种公式都可以在公式编辑器(CR称之为公式工作室)中编辑,但比较复杂。CR提供了更简单的方法:在报表中选中要统计的字段,点出右键菜单,选中"插入…"项,就会弹出两个子菜单项:汇总,运行总计。

       æ±‡æ€»å­—段用于对特定的字段进行按组或全局的汇总统计。

       è¿è¡Œæ—¶æ€»è®¡å­—段在汇总字段的基础上加入条伯控制,使得在报表中跟据一个字段的不同取值分别得到另一个字段的总计数据成为可能。

       åœ¨å…¬å¼ç¼–辑器中可以使用变量。按作用域分,有局部变量,全局变量和共享变量。局部变量只在一个公式或函数中有效。全局变量在整个报表(但不包含子报表)中有效,共享变量在一个报表文件,包括子报表中都有效。

       2.5 使用子报表。

       è·Ÿæ®ä»¥å¾€çš„项目经验,有一半左右的报表要用到子报表。在Crystal Report中,一个报表事实上只能处理一个结果集。存在多个结果集,要求互相之间有主键的对应关系,在本质上仍然是一个。如果报表要显示多个部分,就必须使用子报表。除没有单独的页眉和页脚外,子报表具有完整报表的所有特性。

       é¡µé¢æ˜¾ç¤ºçš„时候,子报表的宽度会受到其在主报表中的宽度限制,所以在把子报表放入主报表的时候,一定要给予足够的宽度。

       ä¸»æŠ¥è¡¨å’Œå­æŠ¥è¡¨ä¹‹é—´å¯ä»¥é€šè¿‡å­—段-参数的关系进行链接。即将主报表中的字段作为子报表的参数。

       2.6 使用交叉表。

        设有A,B两个字段,要求在报表中将A的全部值显示在第一列的列头,将B的全部值显示在每一行的行首,在行和列的主体部分显示出跟据相应的A值和B值计算出来的结果,如下图所示。这就是一个交叉表。

        交叉表中Crystal Report 中的一个对象,可以很简单的创建,注意交叉表应放到报表的报表页脚部分(Report Footer),不能放在细节部分或页眉。否则会导致重复显示和数据不全。

        Crystal Report对交叉表的分页功能支持不佳,所以要尽可能的不让数据超过一页。

       2.7 使用分栏表。

       æ‰€è°“分栏表,就是把页面分成几栏来显示结果。这样就可以在同一行显示多条记录。

       åœ¨èŠ‚专家中选中详细资料节,注意只能选详细资料节的总节,不能选子节,就可以发出多栏格式化的选项,选中后界面上会多出一个布局的选项卡。在这个选项卡中就可以设置分栏。

       2.8 最好不要在每页显示总页数。

       æ˜¾ç¤ºæ€»é¡µæ•°ä¼šå¯¼è‡´æŠ¥è¡¨å¤šä¸€æ¬¡å…¨ç¨‹è¿ç®—,严重降低性能,最好不要在每页都显示总页数。

       2.9 把报表打印出来检查格式与数据。

       è¿™æ˜¯ä¸ªè¦è¯€ï¼Œä¸æ‰“印出来检查,你的格式与数据很难保证没有错误。

       2. 设置字段或小节的条件显示条件

       Crystal Report中的所有对象,大到一个小节,小到一个字段,都可限定显示的格式。在这些对象的格式化编辑器中,有个抑制显示的选项,其右有一个公式编辑按钮,点击这个按钮就可以进入公式编辑器,编辑一个逻辑表达式来控制抑制显示的条件。注意,只有勾上抑制显示的选项,条件公式才会起作用。

       2. 对字段进行有条件的格式化

       å¦‚果碰到类似这样要求,就要对字段进行有条件的格式化:将所有值大于的A字段加下划线显示。

       å¯¹å­—段的有条件格式化只能在公式编辑器(公式工作室)中实现。

       2. 在导出为RTF是要注意字段对齐。

       å¦‚果报表的字段是随意放置的,在导出RTF文件是将会出现位置的严重错乱。

VB通信串口与USB口

       是波特率 N是奇偶校验位,8是数据位,1是停止位。它设定的是串口通讯的方式。

       通讯协议可以理解为暗号,以特定的delphi 触摸收银源码格式发出,才会有应答!至于是什么格式,就要看你的串口设备的情况了,有的是自定的协议,也有用公共协议的,比如MODBUS协议,就是行情指标源码大全8为数据位的,例如发送 C4 0B,那么它的意思就是读一号地址串口设备起始地址为零的两个寄存器的数据, 是串口设备地址码,是功能码,读保持寄存器。是寄存器的数量,C4和0B是由前六位数据经过标准CRC计算程序计算出的校验码,目的是防止出错。只要知道了你的串口设备的通讯协议,然后根据协议发出相应的字符串命令,就可以得到回应了,不过你用下面这句发送好像是不行MSComm1.Output = Trim(Text2.Text),

       给你个写个例子试下:

       DIM DATA(7) AS STRING

       DIM I AS INTEGER

       MSCOMM1.INBUFFERCOUNT = 0

       FOR I = 0 TO 7

        DATA(I)=TEXT1(I).TEXT

       NEXT

       MSCOMM1.OUTPUT = DATA

       应该差不多吧!名片侠利润源码

HxD Hex Editor(十六进制磁盘编辑器)v2.5.0.0中文版

       HxDHexEditor十六进制磁盘编辑器是一款功能强大的十六进制编辑器,除了主存储器(RAM)的原始磁盘编辑和修改外,还可以处理任何大小的文件。也使得操作变得快速而有效。

       HxD Hex Editor(十六进制磁盘编辑器)是一款功能强大的十六进制编辑器,除了主存储器(RAM)的原始磁盘编辑和修改外,还可以处理任何大小的文件。也使得操作变得快速而有效。

       基本简介

       HxD Hex Editor(十六进制磁盘编辑器)是精心设计和快速的十六进制编辑器,除了主存储器(RAM)的原始磁盘编辑和修改外,还可以处理任何大小的文件。拥有易于使用的免费狙击主力源码界面提供了搜索和替换,导出,校验和/摘要,插入字节模式,文件碎纸机,连接或分割文件,统计等功能。HxD 编辑工作类似于文本编辑器,重点是简单的面向任务的操作,因为这些功能被简化以隐藏纯技术的差异。与限制可能属于一起的数据的扇区/区域限制视图相比,驱动器和存储器被呈现为类似于文件并且被整体显示。驱动器和内存可以像常规文件一样进行编辑,雅安到眉山源码包括支持撤消。此外,内存部分定义了可折叠区域,默认情况下隐藏了无法访问的部分。而且,由于技术原因或任意限制的文件大小,而且强制您使用专门的功能,也使得操作变得快速而有效。这包括响应界面和长时间操作的进度指标。

       软件特色

       1.可作为便携式和可安装版本使用;

       2.RAM编辑器;

       3.编辑主内存;

       4.内存部分用数据折叠标记;

       5.磁盘编辑器(硬盘,软盘,ZIP磁盘,USB闪存驱动器,CD,…);

       6.RAW读取和写入磁盘和驱动器;

       7.对于Win9x,WinNT和更高版本;

       8.即时打开,无论文件大小;

       9.高达 8EB;打开和编辑非常快;

       .自由但安全的文件共享与其他程序;

       .灵活快速搜索/替换几种数据类型;

       .数据类型:文本(包括Unic ode),十六进制值,整数和浮点数;

       .搜索方向:向前,向后,全部(从头开始);

       .查看Ansi,DOS,EBCDIC和Macintosh字符集中的数据;

       .校验和生成器:校验和,CRC,自定义CRC,SHA-1,SHA-,MD5;

       .将数据导出为多种格式;

       .源代码(Pascal,C,Java,C#,VB.NET);

       .格式输出(纯文本,HTML,Richtext,TeX);

       .十六进制文件(Intel HEX,Motorola S-record);

       功能介绍

       - 文件工具

       1.文件碎,用于安全文件删除;

       2.分割或连接文件;

       3.基本数据分析(统计);

       4.字节/字符分布的图形表示;

       5.有助于识别选择的数据类型;

       - 字节分组

       1.1,2,4,8或个字节打包在一列;

       2.“仅限十六进制”或“仅限文本”模式;

       3.冗长操作的进度窗口;

       4.显示剩余时间;

       5.按钮取消;

       6.修改后的数据突出显示;

       - 无限撤消

       1.“查找更新…” – 功能;

       2.易于使用和现代化界面;

       - 打印

       1.覆盖或插入模式;

       2.剪切,复制,粘贴,粘贴;

       3.剪贴板支持其他十六进制编辑器;

       4.Visual Studio / Visual C ++,WinHex,HexWorkshop;

       - 书签

       1.Ctrl + Shift + Number(0-9)设置书签;

       2.Ctrl + Number(0-9)转到书签;

       3.使用Ctrl + Left或Ctrl + Right导航到半字节;

       4.无闪烁显示和快速绘图;

       常见问题

       1、我想把HxD。我该怎么办?

       翻译很受欢迎!请与我联系,我会寄给你

       必要的语言文件和翻译程序。

       2、RAM编辑器显示了多少?(问号)是什么意思?

       问号代表虚拟内存的不可访问部分。

       发生这种情况可能是因为内存部分没有分配或

       它是受保护的。程序通常只使用少量的4 GB范围

       他们可以使用。数据折叠功能将帮助您浏览:它默认隐藏所有无法访问的内存段。

       3、为什么特克斯出口商有时会产生包含错误的输出?

       很难告诉乳胶设置所有字符的Windows

       字符集是必须的。我试图解决一些问题,但仍有

       不工作的字符。如果你对此有更深的了解。

       随时联系我。

       4、将有更多的打印选项?

       这取决于有多少利息。

       如果你想要更多的功能,请寄给我。

copyright © 2016 powered by 皮皮网   sitemap