Foxtable是广东狐表软件公司开发的软件。它将Excel、Access、Foxpro以及易表的优势融合在一起,无论是数据录入、查询、统计,还是报表生成,都前所未有的强大和易用,使得普通用户无需编写任何代码,即可轻松完成复杂的数据管理工作,真正做到拿来即用。
Foxtable提供了四大报表设计工具,既有可视化的,也有使用模板和代码的,不仅能快速设计和输出各种复杂报表,还可轻松开发各种票据套打程序。
备注图片
Foxtable提供了备注列和图片列,而且可以单独打开窗口进行编辑:
列表项目
通过设置列表项目,可以提高某些数据的录入速度,并能减少录入错误。例如在人事管理系统中,可以将学历列的列表项目设为“博士|硕士|本科|大专|高中|初中|小学”,这样一旦选择学历列,将出现一个下拉列表框,可以从中选择学历:
目录列表
目录列表能够更加高效地输入数据,例如下图的大类列就设置了目录列表,在大类列单击下拉按钮,会出现一个目录树,单击目录树中的某个节点,能够同时输入大类、二类、三类这三列的数据:
再例如下面的目录列表,只需在省列的目录树选择某个县市,即可同时输入省、县市、邮编、区号四列的内容:
多值字段
Foxtable提供了多值字段,多值字段可以同时选择多个值输入,例如下面的负责人列:
图形字典
通过设置图形字典,可以用图形这种更直观的形式来表示数据,例如下面的国家列就设置了图形字典:
图形字典也可以下拉输入:
记录窗口
如果一个表有很多列,我们将不得不左右滚动才能查看全部数据,以至经常顾此失彼,而Foxtable的记录窗口可以轻松解决这个问题。
记录窗口以垂直方式显示数据,每次只显示一条记录,如下图所示:
内置输入器
对于数值列和日期列,可以选择使用内置输入器。
例如下面的入职日期列使用了内置输入器,单击其下拉按钮,会出现一个日历,用于选择输入日期:
下面的月薪列也是用了内置输入器,单击下拉按钮,会出现一个计算器,用于简单的计算和输入:
代码项目
通过设置代码项目,可以用代码快速输入数据,例如下面的岗位列,输入1,会被替换为资深专家,输入2,会被替换为高级专家,输入4,会被替换为业务经理。
在候选值比较多的时候,用代码项目能更有效地输入,例如你还可以用bj表示北京,用gz表示广州等等。
数据字典
下面的协调人列设置了数据字典,单击下拉按钮,会出现一个表格用于选择人员:
长文本编辑
Foxtable可以直接在单元格右边显示一个按钮,单击此按钮,即可编辑和显示长文本:
此外,还可以以备注列的形式,单独开一个停靠窗口,用来显示和编辑长文本:
文件管理器
Foxtable提供的多文件型列,可以高效便捷地管理各种类型的文档:
文件管理器:
图片管理器
Foxtable提供的图片型列,可以高效便捷地管理多个图片。
图片管理器:
插入行
Foxtable作为一个纯数据库软件,却提供了电子表格的插入行、移动行功能,更加贴近普通用户的需要。即使使用SQL Server、Oracle、Access作为Foxtable的数据源,也同样可以启用插入行、移动行功能。
修改标记
Foxtable具备修改标记功能,能够以红底白字标出那些单元格已经被修改过。
例如订单表原来为:
修改订单数据后,按下菜单中的标记按钮,即可以红底白字标出所有已经修改过的单元格:
而且你可以单独选择任何一个已经修改过的单元格,将其值还原到修改前。
行视图
行视图是Foxtable一个独特的功能,能够快速列出不同状态的行。
这样你随时可以找出刚刚修改了哪些行,哪些行又是新增加的。
行视图浏览按钮位于“日常工作”功能区“排序与筛选”功能组:
该按钮是一个下拉菜单,包括以下命令:
显示新增行显示自上次保存以来新增加的行。
显示已修改行显示自上次保存以来修改过的行。
显示未修改行显示自上次保存以来没有修改过的行。
显示所有行回到正常状态,也就是各种状态的行全部显示,这也是默认的状态。
原始视图
显示除新增行的所有行,不过内容是修改前的,而不是现在的。
原始视图(仅修改行)
显示已经修改过的行,不过内容是修改前的,而不是现在的。
冻结和锁定
在Foxtable中,行和列都可以被锁定,被锁定的行和列将不能被编辑。例如下图前5行以及库存列已经被锁定,在解锁之前不能被编辑,注意被锁定的行,其行号的颜色和其他行是不同的:
对于一个有很多列的表,可以冻结左边的部分列,左右滚动表时,被冻结的列不会随其它列滚动,而是一直显示在表的最左边。
例如下图最左边的两列已经被冻结,这样左右滚动的时候,此二列始终可见:
汇总模式
利用Foxtable的汇总模式,你只需单击几次鼠标,即可得到各种各样的统计结果:
分段统计
汇总模式能够根据日期分段统计,例如按天、按周、按月、按季、按年分组统计。
按月汇总:
按季汇总:
截止统计
汇总模式不仅能够按时间分组统计,而且可以统计截止到某个时间的累计数量。
例如下面不仅统计出了每个月的销量和金额,还统计出了截止到每个月为止的累计销量和金额:
多种统计
汇总模式可以对同一列进行多种统计,例如下面的汇总模式,同时统计出了各个科目的最低分,最高分和平均分:
框架模式
在设置汇总模式的时候,可以在表格左侧显示一个目录树,通过这个目录树,我们可以用类似于Windows资源管理器的方式来显示和管理表中数据:
自定义汇总
Foxtable可以自定义汇总模式,用以满足一些特殊的要求,如下图所示的汇总模式:
分组统计
利用分组统计,只需单击几次鼠标,即可得到任何你想要的统计结果。和汇总模式不同,分组统计单独生成一个统计表来显示统计结果,而且统计能力更强大。
不同产品的销售数量和金额:
各月销售数量和金额:
多种统计
分组统计可以对同一列进行多种统计,例如下图同时统计出了各个科目的最低分,最高分和平均分:
环比分析
分组统计可以进行环比分析,例如下图不仅统计出了各月的销售数量,还计算出了相对上月的环比增长率:
按周、按月,按季、按年都可以进行环比分析,也可以同时对多列进行环比分析,例如下图按季度统计销售数量和金额 ,并各自计算了环比增长率:
同比分析
分组统计可以进行同比分析,例如下图不仅统计出了各月的销售数量,还计算出了相对去年同期的同比增长率:
按周、按月,按季、按年都可以进行同比分析,也可以同时对多列进行同比分析,例如下图按季度统计销售数量和金额 ,并各自计算了同比增长率:
占比分析
分组统计可以进行占比分析,例如下图不仅统计出了各月的销量,还计算出了每月销量占全年销量的比例:
综合分析
分组统计可以同时进行环比、同比、占比分析,这样我们就可以进行更为复杂的统计分析工作。例如下图按月统计销量和金额,并计算各月销量和金额的环比和同比增长率:
截止统计
分组统计也可以进行截止统计,例如下图统计出各月销量,以及截止到某月为止的累计销量:
截止统计还可以进行占比分析,例如下图统计出了各季度销量,以及截止到此季度的累计销量;并计算出该季度销量在全年销量中所占的比例,以及截止到该季度为止的累计销量在全年销量中所占的比例:
交叉统计
交叉统计可以同时设置水平和垂直分组列,是一种更为高级的分组统计。下图是通过交叉统计得到的不同客户订购不同产品的数量:
日期统计
交叉统计也可以根据日期分段统计。下图统计的是每种产品在各个季度的销量,日期列作为垂直分组:
下图是每个产品在各月的销量,日期列作为水平分组:
多个分组
不管是是交叉统计的水平分组,还是垂直分组,都可以设置多个分组列。例如下图统计的是不同客户在每年订购各种产品的数量,有两个垂直分组,分别是年和产品:
多列统计
交叉统计也可以同时对多列进行统计,例如下图按季度统计不同产品的销售数量和金额:
下图统计的是不同客户订购各种产品的数量和金额:
数据分析
交叉统计也有很强的数据分析功能。
各客户订购不同产品的数量,以及每个产品在该客户总订购量中所占的比例:
按月统计不同产品的销售数量,以及某月某产品的销量在该产品的年销量中所占的比例:
表达式列
除常规的数据列外,你还可以增加表达式列,表达式列可以设置计算公式,其内容由其它列计算得出。例如下面的订单表,其金额列就是一个表达式列,其计算公式为:数量 * 单价 * (1 - 折扣),这样只要输入数量、单价和折扣,金额即可自动计算得出:
自动计算
在默认情况下,选定连续的多个数值单元格,状态栏右侧会出现选定单元格的数量、累计值和平均值:
生成图表
Foxtable提供了功能强大、使用简单的图表生成功能,生成的图表还可以插入到报表中,这样就可以生成图文并茂的报表。
票据设计
Foxtable提供了可视化的票据设计功能,任何人都可以轻松设计出各种票据:
票据套打
Foxtable可以很轻松地设计出各种票据套打程序,下面是两个例子。
进账单套打:
支票套打:
Excel报表
Foxtable可以直接利用Excel生成报表,你只需根据指定的规则设计好一个模板文件即可;Excel报表功能灵活强大,几乎可以设计出任意复杂的报表,而且使用简单、便捷,即使不会Excel的用户,也能熟练掌握并自如应用。
例如你要打印工资条,只需利用Excel定义一个工资条模板:
Foxtable即可根据工资条模板自动批量生成和打印工资条:
更多例子:
示例二
标签打印
Excel报表还可以很方便地批量打印标签。
例如只需按下图定义一个模板:
即可批量打印标签:
专业报表
Foxtable还提供了一个专业报表工具,这是一个功能非常强大的报表开发工具,如果能够掌握的话,我们设计出的报表,可以达到很多专业报表开发软件的水准:
筛选树
Foxtable可以根据任意列的内容自动生成筛选树,只需单击筛选树的某个节点,即可自动筛选出对应的行:
按值筛选
在任何一列,执行菜单中的“选择”命令,即可自动列出该列所有值供选择筛选。例如选择订单表的客户列,执行选择命令,会列出所有客户供选择,如果选择客户CS01和CS02:
即可自动筛选出CS01和CS02两个客户的订单:
字符列筛选
假定我们在客户列中,选择一个单元格,单元格的内容为“CS03”,单击“筛选”按钮,出现的下拉菜单为:
1、如果你要筛选出“CS03”客户的所有订单,那么单击“等于CS03”即可。
2、如果你要筛选出非“CS03”客户的所有订单,那么单击“不等于CS03”即可。
3、指向“文本筛选”,会列出很多命令,例如等于、包含、类似等等,几乎囊括了任何可能的文本筛选命令。
4、例如你要筛选的是客户名称中包括“联想”二字的记录,可以单击“包含”命令,出现下图所示的窗口,输入“联想”,单击“确定”即可:
日期列筛选
假定我们在日期列中,选择一个单元格,单元格的内容为“1999-01-04”。
1、单击“筛选”按钮,首先出现的是一些和选定单元格的日期进行比较的命令,假如你要筛选出1999年1月4日的所有订单,单击命令“等于 1999-01-04”即可。
2、指向“指定时段”命令,会出现下图所示的菜单,利用这些命令,你可以筛选出指定月份或季度的数据,例如你要筛选出3月份的所有订单,只需单击命令“三月”即可:
数值列筛选
假定我们在数量列中,选择一个单元格,单元格的内容为400,单击“筛选”按钮,出现的下拉菜单为:
1、首先是一些和选定单元格的值进行比较的命令,例如你要筛选出订货数量超过400的订单,单击命令“大于400”即可。
2、指向数值筛选,会列出很多命令,例如等于、小于、大于等等,几乎囊括了所有可能的数值筛选命令。
3、 例如你要筛选出订货数量在600到800之间的订单,可以单击命令“范围之内”,出现下图所示的窗口,分别输入起始值和终止值,单击“确定”即可:
高级筛选
Foxtable提供了高级筛选功能,可以同时输入多个筛选条件,例如在订单表筛选客户CS01订购产品PD01的订单:
重复值筛选
在输入数据的时候,难免会因为某些原因出现重复输入的数据。
Foxtable的菜单提供三个重复值筛选命令,可以快速找出重复值或冗余值:
显示重复值
如果当前列中某一个单元格的内容是唯一的,那么该单元格所在行将被隐藏。
也就是说单元格的内容至少在当前列中出现两次,该单元格所在的行才会显示。
排除重复值
如果当前列中有多个单元格具备某一相同的值,将只显示其中一个单元格所在的行。
显示冗余值
如果当前列中有n(n>1)个单元格具备某一相同的值,将只显示其中n-1行。
例如表的初始状态:
显示第一列的重复值:
排除第一列的重复值:
显示第一列的冗余值:
关联筛选
有的时候需要在两个表之间进行关联性的筛选,例如在一个人事管理系统中,希望找出在基本信息表中有记录而在工资表中没有记录的员工。
Foxtable提供了关联筛选功能,可以轻松完成这样的筛选任务,你可以在基本信息表中执行关联筛选,按下图所示设置即可:
其它筛选
手工隐藏行
Foxtable提供了直接隐藏选定行(或未选定行)的功能,这样可以完成一些并无明确逻辑关系的筛选任务。
锁定状态筛选
Foxtable可以筛选出已经被锁定的行,或筛选出未被锁定的行。
表达式筛选
你也可以直接输入一个条件表达式进行筛选,来完成一个逻辑复杂,无法使用上述方式完成的筛选任务。
高效开发
Foxtable不仅是一个优秀的应用软件,同时又是一个高效的.net平台开发工具,专门针对数据管理软件的开发作了大量的优化,使得用户在开发过程中只需关注商业逻辑, 无需纠缠于具体功能的实现,这样Foxtable不仅开发效率十倍于其他专业开发工具,而且更加易用,几乎人人都能掌握。
让普通人开发出专业水准的软件,以前是一个不可思议的想法,而Foxtable的出现,让这成为可能。
下面我们用一个简单的例子来说明Foxtable是如何高效的。假定我们要根据订单表得到每月销售数量和金额,并计算出销量和金额环比增长率和同比增长率,这样的统计任务,即使是资深的程序员,也需要花相当长的时间才能完成编码工作,而且必须具备深厚的SQL语言基础:
可是在Foxtable中,这样的任务是再简单不过了,只需简单几行代码即可:
Dim g As New GroupTableBuilder("统计表2", DataTables("订单"))
g.Groups.AddDef("日期", DateGroupEnum.Year, "年")
g.Groups.AddDef("日期", "月")
g.Totals.AddDef("数量", "", "数量_值")
g.Totals.AddDef("金额", "", "金额_值")
g.SamePeriodGrowth = True
g.CircleGrowth = True
g.Build()
上面的代码不仅简单,而且逻辑清晰,任何人在帮助的指导下,都可以在几分钟内掌握,不需要任何专业背景。你甚至不需要编写一行代码,只需通过菜单操作,单击几次鼠标,即可得到上面这种统计结果。
你还可以利用菜单自动生成代码,总之Foxtable在方方面面都为用户考虑周到,让普通用户也能设计出让专业程序员目瞪口呆的软件来。
菜单设计
Foxtable提供了一个功能强大,使用简单的菜单设计器:
Foxtable的菜单设计很灵活,既可以设计传统风格的菜单:
也可以设计Ribbon风格的菜单:
实际上,Foxtable的系统菜单也是使用菜单设计器设计出来的,这也间接说明了这个菜单设计器是非常强大的 。
窗口设计
Foxtable提供了一个功能强大的窗口设计器,有了35个控件,不少控件是专门针对数据管理而研发的。这个窗口设计器使用很简单,大多数时候,只需将字段或者控件直接拖入窗口合适位置,并适当设置其属性即可:
有了窗口设计器,普通用户,可以轻松设计出各种专业的界面,例如下面这些窗口就是用窗口设计器设计出来的:
海量数据
Foxtable不仅内建数据库,同时还支持Access、SQL Server、Oracle等主流数据库。
同一个管理项目,支持多个数据源,数据源可以预先通过菜单设置好,也可以在运行过程中动态创建和切换。
此外Foxtable还支持数据动态加载和分页加载,可以在运行过程中根据需要加载数据。
不管是分组统计还是交叉统计,不仅可以统计已经加载的数据,还可以直接统计后台数据。
这些特性使得Foxtable可以轻松应付海量数据的管理。
下图是Foxtable自动生成的一个加载树,单击某个节点,即可加载对应的数据,同时利用目录树下方的导航按钮,可以实现分页加载:
上述这些特性,不仅可以让Foxtable管理海量数据,还可以设计基于互联网的应用,使得相距千里之外的电脑,也能协同处理数据。
无限扩展
Foxtable可以添加DLL引用,包括第三方的DLL,还可以定义命名空间。
Foxtable可以定义API函数。
Foxtable支持通过VBA直接操控Excel,这样资深的Excel用户可以充分结合利用Foxtable和Excel的各自优势。
Foxtable支持直接运行SQL语句。
所有这些,可以让你无限扩展Foxtable的功能。
系统迁移
Foxtable提供了系统迁移工具,你可以将设计好的管理项目,随时在Access、SQL Server、Oracle和Foxtable内置数据库之间迁移,而你要做的只是单击几次鼠标那么简单。
发布项目
Foxtable的开发版提供了发布功能,设计好的程序经过发布之后,可以生成可执行文件,脱离Foxtable,直接复制到其它电脑运行。
下面是一个基于Foxtable开发的仓管软件,已经编译成可执行文件,并做成了安装程序,已经没有任何Foxtable的痕迹了:
短信收发
Foxtable内置短信收发功能,可以方便地通过短信实现远程数据的采集和查询,以及远程审批功能 ,还可以直接以网页形式将查询结果返回到用户手机上。
权限管理和工作流
Foxtable的权限管理非常细致,不仅可以控制某个表、某一行、某一列或某个单元格的内容能被那些用户编辑或查看;
还可以伪装数据,使某单元格的数据在某些用户前面可以真实显示,例如0.8,而另一些用户看到的却是伪装后的数据,例如0.5,或者空白;
不仅如此,任何一个菜单命令,任何一个按钮,任何一项操作,小到移动行,调整列宽这些细微的操作,都可以设置为必须经过授权才能执行;
可以说,在Foxtable中, 没有一项操作是可以脱离授权控制的。不仅如此,Foxtable还可以随心所欲地定义工作流,远比那些所谓的工作流软件更为简洁和灵活, 对于内部通讯的需求和并发冲突的处理,也能轻松应付。
我们见到不少用户,以为权限管理、工作流、远程上报有多复杂,多专业,需要花费大价钱购买专业软件才能实现,其实这些都是很基本的功能,有了Foxtable,任何用户都可以轻松解决。
融合B/S和C/S架构优势
我们知道,B/S结构的软件易于部署,而C/S结构的软件则能提供更好的交互性。虽然鱼和熊掌不可兼得,但Foxtable却较好地融合了二者的优势,既可像B/S软件一样易于部署,同时又具备C/S软件良好的用户体验和交互性。
合并模式
合并模式是一种清晰诱人的数据显示方式,在普通的电子表格软件中,也许要经过无数次合并单元格操作才能得到类似的效果,而在Foxtable中,这一切都是自动的。
你只需单击几次鼠标,即可任意选择要合并的列,随意进入和退出合并模式。
下图就是一个处在合并模式的表格:
多层表头
对于一些结构复杂的数据,传统的数据库软件往往束手无策,而用普通的电子表格软件,却又会失去很多灵活性;而Foxtable作为一个纯粹的数据库软件,其表头可以像电子表格一样分层显示,从而让您鱼与熊掌兼得。
即使你采用Access、Sql Server、Oracle作为Foxtable的数据源,表头同样可以分多层显示,而且不需要对原来的表结构做任何的修改,只需在Foxtable中为各列重新指定一个列标题即可。
表间关联
Foxtable可以在表与表之间建立关联,而且具有一些其他数据管理软件所不具备的特性。
例如在订单管理系统中,通常包括客户、产品、订单三个表,显然订单表中的每一个订单,都分别在客户表和产品表中有对应的行,也就是说,每一个订单都会对应有一个客户和一个产品;
同样,客户表或者产品表中每一行,会在订单表中对应有若干行(也就是订单),而且订单表中的单价列是需要从产品表中提取的;
如果我们能够在客户表与订单表、产品表与订单表之间建立关联,那么这些表就可以相互引用数据进行计算, 或快速查阅关联数据。
例如:
1、订单表可以引用产品表中的单价数据来计算金额。
2、在订单表中选择一个订单,即可用关联表的形式列出该订单所属的产品和客户。
3、在产品表中选择一个产品,即可用关联表的形式列出该产品所有的订单,而在该关联表中选择一个订单,会用另一个关联表列出该订单所属客户的资料。
4、在客户表中选择一个客户,即可用关联表的形式列出该客户所有的订单,而在该关联表中选择一个订单,会用另一个关联表列出该订单所订购产品的资料。
通过关联表,可以让所有相关数据唾手可得:
数据标记
Foxtable提供了强大的自动数据标记功能,例如下图的成绩表,对于单科成绩低于60分的(语文数学为90分),会以红底白字标出,对于总分低于400分的,会以蓝底白字标出:
条码输出
Foxtable提供了非常强大的条形码功能,可以生成91种条形码,囊括了所有类型的条形码。Foxtable还可以生成各种二维码,例如QRCode、DataMatrix、PDF417等等。
Foxtable可以生成中国移动格式的二维码图片,供手机直接扫描使用。Foxtable不仅可以在窗口、单据、报表中打印条形码,还提供了条形码批量打印工具。
批量打印的条形码:
批量打印的二维码:
扩展列类型
Foxtable可以将字符型列扩展为其他类型,例如邮件、网址、文件、颜色等等。例如下图的"个人主页"列已经扩展为网址型,你可以像平时一样输入内容,也可以单击单元格右侧的按钮打开网址