事件探查器讲解(1).ppt
SQL SERVER事件探查器初探,U8产品支持部XX号工程师 XXXX年XX月XX日,简单的SQL语句select,查询语句语法:select 列名|表达式 from 表|视图 where 条件实例:表authors中有三个字段name(姓名 字符型),sex(性别 字符型),age(年龄 整型),现在要查询姓名是张三的记录,那么查询语句为:Select*from authors where name=张三说明:*表示所有字段,字符型字段要用单引号括起来,简单的sql语句update,更新语句语法:update 表名 set 字段=值 where 条件实例:以authors表为例,现在要将张三的名字改为李四,那么语句为:Update authors set name=李四 where name=张三,简单的sql语句insert,插入语句语法:insert into 表名(字段名,)values(字段值,)实例:在表authors中插入一条记录,姓名为王二,性别为男,年龄为28,那么语句为:Insert into authors(name,sex,age)values(王二,男,28),简单的sql语句delete,删除语句语法:delete from 表名 where 条件实例:删除表authors中姓名为张三的记录,那么删除语句为:Delete from authors where name=张三,整体概念,SQL 事件探查器是图形工具,使我们得以监视 Microsoft SQL Server 实例中的事件。可以捕获有关每个事件的数据并将其保存到文件或 SQL Server 表中供以后分析。例如,我们可以对生产环境进行监视,了解执行速度太慢而妨碍性能的存储过程;了解到哪些SQL语句或者存储过程产生了异常错误导致程序中断等等。,我们可以使用 SQL 事件探查器只监视感兴趣的事件,什么情况下如何决定那些事件是我们感兴趣的,我们将会在后面提到。要运行事件探查器,系统所在硬盘可用空间至少要大于等于10M,否则跟踪将会自动停止。如果跟踪变得太大,可以基于需要的信息进行筛选,以便只收集事件数据的子集。监视太多事件类会增加服务器和监视进程的开销,并且可能导致跟踪文件或跟踪表变得很大,尤其是在进行长时间监视时。,SQL 事件探查器术语,模板模板定义想要使用 SQL 事件探查器监视的每个事件的准则。每次启动事件探查器监视时都会让您选择一个模板来进行跟踪,默认是一个标准模板(SQLProfilerStandard)。里面有事先定义好的的事件和数据列,没有筛选。我们可以创建一个模板以指定使用哪些事件、数据列和筛选。然后可以保存该模板,并用当前的模板设置启动跟踪。捕获的跟踪数据基于模板中指定的选项。模板不执行且必须用.tdf 扩展名保存到文件。,我们也可以创建一个自己的模板,并设置成每次启动自动运行该模板,具体操作如下:点“工具”菜单下的“选项”,弹出如下窗口(请注意红色区域):,模板,模板,【使用下列默认跟踪模板】:您可以在这里选择一个默认的跟踪模板,这样每次新建一个跟踪时就以该模板为默认模板;【进行连接后立即启动跟踪】:选择该选项,连接上对应的服务器后立即运行默认跟踪模板进行跟踪;【显示】页签下您可以设置所使用的跟踪窗体显示的字体、字体的大小,这里就不在赘述。,模板,我们还可以保存模板以减少我们的重复劳动。保存模板涉及保存跟踪定义,比如指定的数据列、事件和筛选。跟踪定义包括事件类、数据列、事件准则(筛选)和所有其它用来创建跟踪的属性(捕获的事件数据除外)。使用 SQL 事件探查器创建的模板保存在运行 SQL 事件探查器的计算机上的文件中。如果经常监视 SQL Server,则保存模板以便分析性能。模板每次捕获相同的事件数据,并使用相同的跟踪定义监视同一事件,因而无须在每次创建跟踪时都定义事件类和数据列。另外,可以将模板提供给其他用户,供其监视特定的 SQL Server 事件。例如,支持提供商可提供给客户一个模板。客户使用这个模板捕获所需的事件数据,然后将这些数据发送给支持提供商供其分析。我们可以在“文件”菜单下“新建”下的“跟踪模板”里建立一个新的模板,选择好对应的事件类和数据列后将其保存,建议按应用场景取名以便是使用,如“存储过程跟踪模板”、“错误定位跟踪模板”等。,模板,同样我们也可以修改保存在运行 SQL 事件探查器的本地计算机上的文件中的模板以及从文件导出的模板。如果没有记住当初用于创建跟踪的模板,或希望以后再次运行同一跟踪,则可能需要从跟踪文件导出模板。修改模板属性(如事件类和数据列)的方法与当初设置该属性的方法相同。可以添加和删除事件类和数据列,也可以对筛选进行更改。修改模板后,以同一名称保存它将重写原来的模板。当处理现有跟踪时,可以查看属性,但不能修改。警告:使用相同的名称保存跟踪文件将重写原来的跟踪文件,这将导致任何当初捕获的事件或已删除或筛选的数据列丢失,SQL 事件探查器术语,跟踪跟踪基于选定的事件、数据列和筛选捕获数据。例如,可创建模板监视异常错误。为此,应选择跟踪 Exception 事件类以及 Error、State 和 Severity 数据列,这些都是为了使跟踪结果提供有意义的数据而需收集的。保存模板后,便可将其作为跟踪运行,并且可收集关于服务器中发生的任何 Exception 事件的数据。可保存此跟踪数据,然后稍后重播或立即用于分析。,SQL 事件探查器术语,筛选 当创建跟踪或模板时,可以定义筛选由事件收集的数据的准则。如果跟踪变得太大,可以基于想要的信息进行筛选,以便只收集事件数据的子集。如果没有设置筛选,跟踪输出中将返回选定事件类的所有事件。例如,可以将跟踪中的 Microsoft Windows 2000 用户名限制为特定用户,以将输出数据减少到感兴趣的那些用户。也可以只跟踪对特定数据库的操作的信息,这样在多帐套的服务器上就可以更快的收集到我们感兴趣的信息。,SQL 事件探查器术语,事 件事件是在 Microsoft SQL Server 引擎中生成的操作。例如:登录连接、失败和断开。Transact-SQL SELECT、INSERT、UPDATE 和 DELETE 语句。远程过程调用(RPC)批处理状态。存储过程的开始或结束。SQL 批处理的开始或结束。存储过程内的语句的开始或结束。写入 SQL Server 错误日志的错误。在数据库对象上获取或释放的锁。打开的游标。安全权限检查。由事件生成的所有数据显示在单个行中的跟踪内。该行包含详细描述事件的数据列,称为事件类。,SQL 事件探查器术语,事件类事件类是描述由服务器生成的事件的列。事件类确定收集的数据类型,因此并不是所有数据列都适用于所有事件类。事件类示例包括:SQL:BatchCompleted,表示已完成 SQL 批处理。运行客户端的计算机的名称。受事件影响的对象 ID(如表名)。发出语句的用户的 SQL Server 名称。正在执行的 Transact-SQL 语句文本或存储过程文本。事件开始和结束的时间。,SQL 事件探查器键盘快捷方式,快捷键,SQL 事件探查器方案,通常情况下,我们使用 SQL 事件探查器可以:1、查找执行最差的查询:例如,可以创建跟踪来捕获与 TSQL 和 Stored Procedure 事件类(尤其是 RPC:Completed 和 SQL:BatchCompleted)相关的事件。在这个跟踪内包含所有数据列,按 Duration 分组并指定事件准则。例如,如果指定事件的 Duration 至少为 1,000 毫秒,则可以跟踪中排除运行时间短的事件。根据需要可以增大 Duration 的最小值。如果想一次只监视一个数据库,为 Database ID 事件准则指定一个值。单这个用途对我们来说不是主要的,对测试和开发人员这应该是常需要用到的。,SQL 事件探查器方案,2、监视存储过程的性能:例如,可以创建一个跟踪来捕获与 Stored Procedure 事件类(SP:Completed、SP:Starting、SP:StmtCompleted 和 SP:StmtStarting)和 TSQL 事件类(SQL:BatchStarting 和 SQL:BatchCompleted)相关的事件。在这个跟踪内包含所有数据列并按 ClientProcessID 分组。如果想一次只监视一个数据库,为 Database ID 事件准则指定一个值。同样,如果想一次只监视一个存储过程,为 Object ID 事件准则指定一个值。同样,这个用途对于我们也不是常用的。,SQL 事件探查器方案,3、审核 Microsoft SQL Server 活动 可以使用 SQL 事件探查器审核 SQL Server 中的活动。例如,如果安全管理员需要随时了解谁登录到了服务器,可以创建 SQL 事件探查器跟踪,提供已登录到服务器或从服务器注销的用户的完整视图。之后,可出于法律目的使用这些信息记录活动,和出于技术目的使用这些信息跟踪违反安全策略的行为。4、监视每个用户的 Transact-SQL 活动可以创建跟踪来捕获与 Sessions 事件类、ExistingConnection 和 TSQL 事件类相关的事件。将所有数据列包含在此跟踪内,不要指定任何事件准则,并按 DBUserName 将捕获的事件分组。这两项内容对系统管理员比较实用。,SQL 事件探查器方案,5、分析程序业务流程和数据库内数据流向可以创建一个跟踪来捕获与 Stored Procedure 事件类(SP:Completed、SP:Starting、SP:StmtCompleted 和 SP:StmtStarting)和 TSQL 事件类(SQL:BatchStarting 和 SQL:BatchCompleted)相关的事件。用以分析程序的流程以及数据库内的表间关系。这是一个对我们非常有用的用途,他可以帮助我们理解程序的业务流程,数据流等。我们在学习一个新的产品,新的模块、新的功能时,可以利用这个功能来了解其使用到那些表,涉及到那些表。甚至我们可以知道这些表的各个字段的具体涵义是什么。经常接到询问某张单据的某项内容具体对应那张表的那个字段具体的电话。其实您只要在界面上制作一张单据,然后在保存前运行一个跟踪,然后分析跟踪里面的插入语句就可以清楚的知道以上信息了。,SQL 事件探查器方案,6、定位出错语句使用事件类错误和警告下的ERRORLOG、EVENTLOG、EXCEPTION等相关事件,可以在程序发生异常的时候快速定位具体位置。这个方案对我们处理数据,特别是处理一些由于数据库里存放的数据由于某种原因导致有异常数据时引发的一些错误有意想不到的功效。,SQL 事件探查器监控事件分类,常用的事件分类:,TSQL 事件类,TSQL 事件类是一个常用的事件,其对应的常用事件解释如下:,TSQL事件对应数据列:,存储过程事件类,存储过程事件类是执行存储过程所产生的事件的集合,也是一个常用的事件类,其对应的常用事件解释如下:,存储过程事件类,SP:Starting-表明存储过程已被启动的时间,其监视到的结果是整个存储过程的调用,结果形式如:exec Sa_MoveSaleDetail Sa_TempSaleDetail_GCCXL0,其中Sa_MoveSaleDetail 为存储过程名称;exec为SQL的一个命令,可以理解为执行;Sa_TempSaleDetail_GCCXL0,传递给该存储过程的参数;SP:Completed、RPC:Starting、RPC:Completed 返回的结果都与此类似。,存储过程事件类,SP:StmtStarting-表明正在启动存储过程内的某语句的时间,其监视到的结果是一个存储过程内部的一条语句的执行,结果形式如:-Sa_MoveSaleDetailif ltrim(rtrim(chrwhere1)=newReport_ParameterFromTempTable 其中:-Sa_MoveSaleDetail指明该语句所属的存储过程;if ltrim(rtrim(chrwhere1)=newReport_ParameterFromTempTable 指的是执行的具体的SQL语句;SP:StmtCompleted返回的结果与此类似。,存储过程事件类,以上两部分的事件您可以理解为整体和局部的概念,也就是说一个是跟踪整体的结果,一个是跟踪明细的结果。如果是希望了解程序的流程,可以跟踪整体,知道其使用了那些存储过程即可。然后再具体查看该存储过程,了解其内部处理流程;此处插入说明一点,要查看某个存储过程的具体内容,可以直接到企业管理器里找到该存储过程双击打开;也可以在查询分析器里利用系统存储过程SP_HelpText来查看,如前面说到的存储过程Sa_MoveSaleDetail,我们可以在查询分析器对应的数据库下执行如下命令:SP_HelpText Sa_MoveSaleDetail来查看其明细内容。但是要注意的一点是:必须该存储过程没有加密,否则无法查看。如果是跟踪错误,建议选择明细的跟踪,这样可以具体的定位到某个存储过程里的某条语句出的错。,错误和警告事件类,错误和警告是在发生SQL Server错误或警告时产生的事件类集合(例如,一个在编译存储过程中产生的错误,或者一个SQL Server中的异常错误),其对应的常用事件解释如下:,错误和警告事件类,该事件类里面又以Exception 事件类为主要,基本上只要是SQL里面发生的错误其都能跟踪得到,这为我们快速定位错误提供了简便而准确的方法,我们来看下面的错误展示。首先我们在运行一个跟踪,挑选出要跟踪的事件类为SQL:BatchStarting;SQL:BatchCompleted;Exception;数据列为默认的,我们再在查询分析器里执行一条SQL语句:Updaterdrecord setid=11报错如下:服务器:消息 2601,级别 14,状态 3,行 1不能在具有唯一索引 aaRdRecord_PK 的对象 RdRecord 中插入重复键的行。语句已终止。,错误和警告事件类,停止跟踪,看看是否正确跟踪出错误:,错误和警告事件类,我们看到,没有任何问题,错误得以跟踪到,注意其上我以蓝色表注的语句,其TEXTDATA的内容都是一致的,只是对应的事件类分别为SQL:BatchStarting和SQL:BatchCompleted,正好把EXCEPTION事件类对应的事件给包在中间,那么我们就可以知道,引起错误的语句就是Updaterdrecord setid=11了。怎么样,定位错误就是这么简单!我们把图再放在这里给大家对比一下看看:,跟踪详解,启动、暂停和停止跟踪在使用 SQL 事件探查器创建了模板后,可以使用新跟踪启动、暂停或停止捕获数据。当启动跟踪且将服务器定义为源时,Microsoft SQL Server 将创建一个队列,以便为捕获的服务器事件提供一个临时存放位置。每个跟踪可以有多个发生器。发生器收集特定的事件分类内的事件,并将数据发送到队列。事件按其放入队列内的顺序读取。这种读取方法称为先进/先出(FIFO)。使用 SQL 事件探查器时,启动跟踪将打开一个新的跟踪窗口(如果没有窗口打开),并立即捕获数据。当使用 SQL Server 系统存储过程时,每次启用 SQL Server 实例时可手工或自动启动跟踪。一启跟踪,就会立即捕获数据。启动跟踪后,只能修改跟踪的名称。暂停跟踪可防止捕获更多的事件数据,直到重新启动。重新启动跟踪将继续执行跟踪操作。先前捕获的所有数据都不丢失。重新启动跟踪时,从启动的那一点起继续捕获数据。当暂停跟踪时,可以更改名称、事件、列和筛选。但是不能更改要将跟踪发送到的目的地或服务器连接。停止跟踪将停止捕获数据。一旦停止了跟踪,除非已将数据捕获到了跟踪文件或跟踪表中,否则重新启动该跟踪将丢失以前捕获的数据。当停止跟踪时,将保留以前选择的所有跟踪属性。当停止跟踪时,可以更改名称、事件、列和筛选。,跟踪详解,查看和分析跟踪使用 SQL 事件探查器可以查看跟踪内捕获的事件数据。SQL 事件探查器基于定义的跟踪属性显示数据。分析 Microsoft SQL Server 数据的一个方法是将数据复制到另一个程序,如 SQL 查询分析器或索引优化向导。索引优化向导可以使用包含 SQL 批处理和远程过程调用(RPC)事件(以及 Text 数据列)的跟踪文件。使用此向导时,通过指定服务器和数据库名称,可以对不同的服务器和数据库分析捕获的数据。使用 SQL 事件探查器打开跟踪时,如果跟踪文件是由 SQL 事件探查器或事件探查器存储过程创建的,则该文件不需要带.trc 文件扩展名。说明SQL 事件探查器还可以读取 SQL 跟踪日志文件(.log)和类属 SQL 脚本文件。打开不带.log 文件扩展名的 SQL 跟踪程序.log 文件(如 trace.txt)时,将文件格式指定为 SQLTrace_Log。可以用自定义的字体、字体大小、预览线和客户端缓冲区大小来配置 SQL 事件探查器的显示,以便有助于分析跟踪。,跟踪详解,分析数据以解决问题使用 SQL 事件探查器时,可以按 Duration、CPU、Reads 或 Writes 数据列将跟踪或跟踪文件分组以解决与数据有关的问题,如性能差或逻辑读取数特别高的查询。通过将跟踪保存到表和使用 Transact-SQL 查询事件数据,可以找到附加的信息。例如,若要确定哪些 SQL:BatchCompleted 事件有过长的等待时间,可执行:SELECT TextData,Duration,CPU FROM trace_table_name WHERE EventClass=12-SQL:BatchCompleted events AND CPU(.4*Duration),跟踪详解,我们先来看一张图片,注意红色标注:,跟踪详解,说明我们可以将跟踪的结果保存到文件里或者保存到数据库的表里。需要说明一点的是,如果保存在文件里,那么您在使用查询功能时需要注意一点:大小写敏感,也就是说查询区分大小写,如RDRECORD与rdrecord是不同的内容。而如果保存在表里的话则没有这种缺点,但是如果您希望保存在表里,最好选择其他服务器上的数据库来保存,特别是一些对数据库操作频繁的动作,如果保存在同一服务器上,也最好不要将结果表建立在目标数据库里,否则将会严重影响效率。,跟踪详解,查找跟踪内的特定事件下面是查找和分组跟踪内事件的基本步骤:1、创建跟踪。定义跟踪时,除了要捕获的任何其它数据列外,还要捕获 Event Class、ClientProcessID 和 Start Time 数据列。按 Event Class 数据列将捕获的数据分组,并将跟踪捕获到文件或表。2、查找目标事件。打开跟踪文件或表,并展开想要的事件类的节点(如 Deadlock Chain)。(可以在跟踪写入文件时打开文件进行查看,除非跟踪位于运行 Microsoft Windows 98 的计算机上。使用查看菜单中的刷新命令显示新行。)在跟踪内搜索直到找到正在查找的事件(可以使用 SQL 事件探查器的“编辑”菜单上的“查找”选项帮助查找跟踪内的值)。记下所需事件的 ClientProcessID 和 Start Time 数据列中的值。,跟踪详解,3、在上下文中显示事件。显示跟踪数据列属性,并按 ClientProcessID 而不是 Event Class 分组。展开要查看的每个客户端进程 ID 的节点。手工搜索跟踪,或使用查找选项,直到找到前面记下的目标事件的 Start Time 值。这些事件与其它属于每个所选客户端进程 ID 的事件一起按时间顺序显示。例如,跟踪内捕获的 Deadlock 和 Deadlock Chain 事件紧接在展开的客户端进程 ID 中的 SQL:BatchStarting 事件之后显示。可以使用同样的技巧查找按 Server Name、Database ID 和 Object ID 分组的事件。一旦找到要查找的事件,按 ClientProcessID、Application Name 或其它事件类分组,按时间顺序查看相关活动。如果跟踪文件位于运行 Microsoft Windows 95/98 的计算机上,则 SQL 事件探查器不能在跟踪文件正用于捕获事件时打开它。此外:运行在 Windows NT 4.0 上的 SQL 事件探查器不能打开位于 Windows 95/98 共享目录的跟踪或脚本文件。SQL 事件探查器访问远程计算机上的跟踪或脚本文件时,如果这些文件后来变得不可用,则 SQL 事件探查器会引起问题。,跟踪详解,重播跟踪在创建或编辑跟踪时,可以保存跟踪供以后重播。SQL 事件探查器的特色是有一个多线程播放引擎,它能模拟用户连接和 SQL Server 身份验证,使用户得以重新产生跟踪内捕获的活动。因此,重播对解决应用程序或进程的问题很有帮助。识别出问题并进行了纠正后,对纠正后的应用程序或进程运行找到了潜在问题的那个跟踪,然后重播原来的跟踪并比较结果。跟踪重播支持使用重播到断点和游标的方式进行调试,这在分析长脚本时尤为有用。,跟踪详解,说明:对捕获数据以进行重播的跟踪使用样本跟踪模板 SQLProfilerTSQL_Replay。为了在运行 Microsoft SQL Server 的(目标)计算机上,而不是在当初跟踪的(源)计算机上重播跟踪:必须在目标上与源相同的数据库中创建跟踪内包含的所有登录和用户。目标上的所有登录和用户必须具有与它们在源中相同的权限。所有登录的密码必须与执行重播的用户密码相同。重播与丢失的或不正确的登录相关的事件会导致重播错误,但重播操作会继续。为了在 SQL Server 实例(目标),而不是在当初跟踪的(源)计算机上重播跟踪,需满足下列任一条件:目标上的数据库 ID 必须与源上的数据库 ID 相同。这可以通过从源创建 master 数据库的备份以及跟踪内所引用的任何用户数据库,然后在目标上还原这些数据库来实现。必须将跟踪内包含的每个登录的默认数据库在目标上设置成登录各自的目标数据库。例如,在源上,要重播的跟踪包含数据库 Fred_Db 内的登录 Fred 的活动。因此在目标上,必须将登录 Fred 的默认数据库设置成与 Fred_Db 相匹配的数据库(即使数据库名称不同)。若要设置登录的默认数据库,请使用 sp_defaultdb 系统存储过程。,跟踪详解,单步跟踪SQL 事件探查器使您得以不必从头至尾全部重播跟踪内的所有事件,而按下面的方式重播跟踪:一次重播一个事件 通过一次一个事件地重播跟踪,可以检查每个事件发生后的效果。使用单步跟踪继续重播跟踪时,重播下一个事件后跟踪再次暂停。重播到断点 通过在跟踪内指定一个或多个断点,可以按重播选项指定的设置,重播带断点标记的事件之前的所有事件,无须用户干预,播完后跟踪重播将暂停。跟踪重播可以继续按一次一个事件、到下一个断点(若有)、到游标或到跟踪的结束处等方式重播跟踪。如果在重播跟踪时不想检查断点前的每个事件,则重播跟踪到断点的方式很有用。例如,已经调试了代码并确定了断点前的所有事件都按预期执行,不需要进一步检查这些事件。重播到游标 通过重播跟踪到游标(跟踪内的突出显示事件),可重播突出显示事件前的所有事件,无须用户干预。但是,如果在跟踪内标记了一个断点,而这个断点位于游标和跟踪内下一个执行点之间,重播将在这个断点处停止,而不会继续重播到游标。删除跟踪内的所有断点以重播跟踪到游标。与断点一样,如果在重播跟踪时不想检查游标前的每个事件,重播跟踪到游标很有用。单步跟踪有助于调试跟踪内捕获的事件。例如,可以创建一个跟踪,监视所有提交的批处理的执行。通过一次一个事件地(单步)重播跟踪内的事件,可以确定每个批处理发生时的效果,使您得以调试代码。这比在批处理间放置大量的调试代码有效得多。调试代码通常会产生更多需要从生成的实际结果中分离出来的输出,完成调试后必须正确地删除这些输出。,SQL 事件探查器性能考虑下面是一些有助于更有效地使用 SQL 事件探查器的提示和技巧。运行的跟踪过多如果 Microsoft SQL Server 实例运行得过慢,则表明可能 SQL 事件探查器运行的跟踪过多或正在运行复杂的跟踪。停止任何运行的跟踪以观察性能是否有所提高。如果停止跟踪可使性能提高,则请仔细检查跟踪以确保只跟踪必要的信息。确保没有同时运行过多的复杂跟踪。管理大跟踪文件大跟踪文件会占用大量磁盘空间,在网络上发送时会很慢,也很昂贵。通过删除不必要的事件类型和/或数据列,并应用筛选将跟踪限制为特定的跟踪事件准则(如 ClientProcessID 或 SPID,或 Application Name 的值的集合),减小保存的跟踪文件的大小。使用相同的名称或新的名称保存跟踪文件。警告使用相同的名称保存跟踪文件将重写原来的文件,这将导致任何当初捕获的事件或已删除或筛选的数据列丢失。,结束,谢谢大家,分子公司销售用友华表公司产品100%记入业绩考核,用友华表公司及产品介绍,用友华表公司:冯大鹏,公司介绍,公司产品中国报表技术第一品牌CELL组件、插件中国票据打印技术第一品牌用友票据通,唐爱平卖“表”,王文京买“表”,用友华表公司的诞生,Cell组件、插件产品介绍,Cell组件、插件,产品特性,产品定位:开发工具软件,Microsoft ActiveX;客户群体:软件开发公司,具有软件开发能力的企事业单位,部队高校;使用人群:程序员;功能亮点:报表展示与打印;购买行为:解决开发难题,降低开发成本,提高软件质量;应用范围:开发财务软件,ERP软件,WEB报表软件等;产品价格:4800,7800,10800,14800,50000,用友票据通 产品介绍,市场背景,信息化社会,各种票据仍没有信息化,票据书写不规范,书写任务繁重,手工操作保密性差,效率低下浪费人力,引起银行与单位出纳人员的纠纷,影响银行等业务部门的工作效率,对经济的发展造成了滞后作用,票据处理现状及导致的问题,解决方法,票据打印机、支票打印机硬件解决方案;数据输入不灵活。不能批量打印,无法减轻工作量。打印数据不能记录。重复固定资产投入,占用办公空间。价格昂贵。其他票据打印软件的解决方案;无模板设计功能。无汇总查询功能。无批量打印功能,票据、支票打印机的终结者票据打印完美解决方案-票据打印新时代票据打印专家,产品定位,1、无行业特征,主要应用于各行业的财务部门,商务部门等;2、解决各类票据打印、设计、管理等功能于一体;3、工具类型软件,可普及型销售。,目标客户,客户群体:以票据打印、设计、管理和出纳功能为核心,有多种票据打印需求和出纳电算化要求的企业、学校、医院、政府等。购买行为特征:1、出纳人员工作繁忙,票据量大;2、除支票外有其他多种票据打印需求;3、对价格不很敏感;4、出纳电算化需求强烈;5、批量打印一些常用票据;,应用范围,一、常用票据1、支票、银行所有票据(银行进账单、汇款凭证等);各单位实体都有需求2、商务票据(信封、EMS单、包裹单等);邮政、快递公司及有发货需求的单位实体3、证卡票据(学生证、毕业证、工商执照等);学校,工商系统4、金融票据(存折、存单、保险合同);银行、保险系统5、票务票据(机票、汽车票、火车票、船票、地铁票等);航空、铁路、公路运输业二、其他所有票据因有模板设计功能,用户可以自己设计票据模板进行打印,产品特性,1、产品成熟,简单易用,无需培训及可轻松上手;2、所见即所打,所打既所得;3、打印速度和质量远超其他同类产品;4、开放的数据接口能够导入导出EXCEL、ACCESS、华表等文件格式;5、票据统计和查询一键生成,简单明了;6、解决手工书写误差性大,效率低下,浪费人力等问题;,典型功能,精确的票据打印功能创新的模板设计功能强大的支票管理功能快捷的批量套打功能完善的账务处理功能实用的导入导出功能全面兼容任何打印机全智能化的录入功能,产品形态,用友票据通(¥2000)1、标准产品,单机EXE程序;直接到用友华表公司订购2、与财务通标准版捆绑销售;直接到集团商务部订购。用户只有购买财务通时,才可以购买,不能单独购买票据通模块3、与U8捆绑销售;直接到集团商务部订购。用户只有购买u8时,才可以购买,不能单独购买票据通模块4、打印机厂商OEM;用友支票通(¥850)标准产品,单机EXE程序;票据通与支票通的区别:支票通只能打印支票,票据通能设计打印所有票据;,产品规划,用友票据通5.1测试更多打印机,加强产品易用性,用友票据通,用友票据通5.2解决U8打印问题,05年5月份,用友票据通网络版数据共享、模板共享,05年10月份,05年2月份,用友票据通ActiveX提供接口扩大产业模式,06年1月份,产品之最,用友软件集团各产品线中价格最低的产品(产品小)用友软件集团各产品线中应用范围最广的产品(市场需求最大)用友软件集团各产品线中最易销售的产品(产品简单)用友软件集团各产品线中最易普及销售的产品(工具类型软件),如何销售,1、打探客户,赢取客户价值;2、销售U8、NC时,顺便销售;3、对老客户服务时,二次销售;4、大客户进行行业推广销售;5、赠品价值,作为打单工具,进行销售,渠道支持,1、渠道人员,每月会给各位沟通销售方法,随时提供销售案例。2、全国统一市场宣传支持。3、网络宣传支持,定期群发邮件。,谢谢大家!,谢谢大家!,