CN105242976A - 一种程序中逻辑单元之间数据传输的方法与系统 - Google Patents
一种程序中逻辑单元之间数据传输的方法与系统 Download PDFInfo
- Publication number
- CN105242976A CN105242976A CN201510594849.0A CN201510594849A CN105242976A CN 105242976 A CN105242976 A CN 105242976A CN 201510594849 A CN201510594849 A CN 201510594849A CN 105242976 A CN105242976 A CN 105242976A
- Authority
- CN
- China
- Prior art keywords
- logical block
- data
- module
- interface
- relationship
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种程序中逻辑单元之间数据传输的方法与系统,包括若干逻辑单元,其中至少包括第一逻辑单元、第二逻辑单元;每个所述逻辑单元包含具有特定关联性的一组数据;当每两个所述逻辑单元之间具有关系时,所述关系具有方向和类型;当第一逻辑单元存在指向第二逻辑单元的数据关系时,所述程序解析所述数据关系,实现所述第一逻辑单元数据输出到所述第二逻辑单元,通过这种方法,可以实现数据传输代码模块重复利用,只要建立逻辑单元之间的数据关系,而不需要写数据传输代码,就可以实现新建逻辑单元之间数据传输,本发明还提供一种系统,由程序模块构成,用以实现前述方法。
Description
技术领域
本发明涉及程序中数据传输领域,尤指一种程序中逻辑单元之间数据传输的方法与系统。
背景技术
现有软件开发的流程是:
一、需求分析
1、系统分析员向用户初步了解需求,然后用word列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确时,在这一步里面可以初步定义好少量的界面。
2、系统分析员深入了解和分析需求,根据自己的经验针对需求用WORD或相关的工具再做出一份文档系统的功能需求文档。这次的文档会清楚列出系统大致的大功能模块,大功能模块有哪些小功能模块,并且还列出相关的界面和界面功能。
二、系统设计
1、概要设计
概要设计需要对软件系统的设计进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。
2、详细设计
在概要设计的基础上,开发者需要进行软件系统的详细设计。在详细设计中,描述实现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需要说明软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑。
三、编码
在软件编码阶段,开发者根据系统设计对数据结构、算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。
四、测试
测试编写好的系统,测试通过后交给用户使用。
这种开发模式存在以下问题:
系统的所有界面,界面之间的关系都是需求分析阶段所设定,而受系统分析员能力所限,系统分析员可能对用户需求不够了解;或者用户对软件可以实现的功能没有预判能力,不能明确需求;或者受外部环境影响需求发生改变。这些原因都造成开发过程中的需求改变,需求改变时需要改变界面,或者增加界面,或者改变界面之间的关系,再根据新的需求进行设计、编码、测试。
软件开发面临的最大困难就是需求不断改变,使得开发整个流程都受到影响,软件交付后,因需求改变还会带来二期、三期甚至更多期的开发,只要软件在使用,开发就在一直进行。
用户一直在等待新的软件版本完成,这期间需要付出大量金钱和时间;
或者受限于原有软件,仅能接受和适应程序员预设的实现逻辑,这种人机交互的局限有悖于软件辅助工作的初衷,同时由于交互的局限反而把使用者限制在条条框框里。
发明内容
本发明的目的是提供一种程序中逻辑单元之间数据传输的方法与系统,以解决只要用户需求改变就要重新开发软件的问题。
本发明提供的技术方案如下:
一种程序中逻辑单元之间数据传输的方法,
包括若干逻辑单元,其中至少包括第一逻辑单元、第二逻辑单元;每个所述逻辑单元包含具有特定关联性的一组数据,逻辑单元继承于该逻辑单元所属类型的基类,基类具有输出数据和接收输入数据功能模块;
当每两个所述逻辑单元之间具有关系时,所述关系具有方向和类型;
当第一逻辑单元存在指向第二逻辑单元的数据关系时,所述程序解析所述数据关系,实现所述第一逻辑单元数据输出到所述第二逻辑单元。
第一逻辑单元与第二逻辑单元是若干逻辑单元中的任意两个逻辑单元,并不特指具体的逻辑单元。
通过这种方法,可以实现数据传输代码模块重复利用,只要建立逻辑单元之间的数据关系,而不需要写数据传输代码,就可以实现新建逻辑单元之间数据传输。
优选的,
程序解析所述数据关系的步骤包括如下两种:
第一种先打开第一逻辑单元的步骤为:
打开第一逻辑单元,第一逻辑单元产生输出数据;
打开第二逻辑单元,第二逻辑单元根据第一逻辑单元指向第二逻辑单元的数据关系找到第一逻辑单元,第一逻辑单元的输出数据作为第二逻辑单元的输入数据;
第二种先打开第二逻辑单元的步骤为:
打开第二逻辑单元,第二逻辑单元根据第一逻辑单元指向第二逻辑单元的数据关系找到第一逻辑单元;
打开第一逻辑单元,第一逻辑单元产生输出数据作为第二逻辑单元的输入数据。
优选的,
当首先打开第一逻辑单元时,打开第一逻辑单元之后还包括步骤:
判断所述第一逻辑单元是否存在数据关系指向其它逻辑单元,若存在数据关系指向其它逻辑单元,则产生输出数据;否则不产生输出数据。
通过判断第一逻辑单元是否存在指向其它逻辑单元的数据关系,当存在第一逻辑单元指向其它逻辑单元的数据关系时才产生输出数据,可以提高工作效率,防止第一逻辑单元产生输出数据,但并没有其它逻辑单元会使用这些输出数据情况的产生。
优选的,
第一逻辑单元产生输出数据作为第二逻辑单元的输入数据之后还包括步骤:
判断所述第一逻辑单元的输出数据是否发生改变;
若所述第一逻辑单元的数据发生改变,则发出所述第一逻辑单元的输出数据已改变的通知;
监听是否存在所述第一逻辑单元的输出数据已改变的通知;
当监听到所述第一逻辑单元的输出数据已改变的通知时,所述第二逻辑单元根据所述数据关系找到所述第一逻辑单元,并将所述第一逻辑单元发生改变后的输出数据作为第二逻辑单元的输入数据。
通过这种方式,可以实现第二逻辑单元的输入数据实时根据第一逻辑单元输出数据改变而改变。
优选的,
第一逻辑单元输出的数据格式为表格所构成的数组;或由所述逻辑单元和所述关系所构成的图的数组。
将传输数据的格式统一化,可以使数据传输代码模块变得简单,只需要处理这两种格式数据的输入输出。
优选的,
所述逻辑单元与所述数据关系存储于图形数据库。
图形数据库是一种非关系型数据库,应用图形理论存储实体与实体之间的关系信息,与本发明的数据抽象模式一致,是最适合的存储数据库。
优选的,
所述第一逻辑单元是数据逻辑单元,所述第二逻辑单元是界面逻辑单元。
数据逻辑单元的数据展示于界面,是比较常见的应用方式。
优选的,
所述第一逻辑单元与所述第二逻辑单元都是界面逻辑单元,至少一部分所述第一逻辑单元的数据作为输出数据的源数据。
界面逻辑单元到界面逻辑单元的数据传输,在程序中是最常见的数据传输方式,传统编程都是通过传递参数方式实现,通过本发明方法,只要建立界面逻辑单元到界面逻辑单元的数据关系,就可以实现界面到界面的数据传输,使编程变得更灵活、更简单,用户可以根据自己的需要创建界面,建立界面之间的数据传输关系。
优选的,
所述第二逻辑单元相对应的界面所展示内容与所述第一逻辑单元所输出数据联动。
第一逻辑单元的输出数据发生改变时,第二逻辑单元所对应的界面展示内容随之发生改变,使得程序更友好,尤其在一些需要使用大量图表的行业中,使工作变得更轻松。
优选的,
第一逻辑单元所对应的界面与第二逻辑单元所对应的界面位于不同的智能设备。
两界面位于不同的智能设备,界面的联动可以跨用户,也可以跨设备。
优选的,
所述程序包括客户端程序和服务器端程序,所述第一逻辑单元与所述第二逻辑单元位于客户端程序中,第一逻辑单元的输出数据经过服务器端运算得到运算结果数据,所述运算结果数据作为第二逻辑单元的输入数据。
服务器具有较强数据处理能力,将复杂的数据处理过程设于服务器端,第一逻辑单元输出的数据经服务器端处理后再作为第二逻辑单元的输入数据,可以提高数据处理效率。
优选的,
所述关系包括循环属性,当所述第一逻辑单元输出的数据为一个或一个以上表格所构成的数组,或由所述逻辑单元和所述关系组成的图所构成的数组时,所述第二逻辑单元所对应的界面循环展示所述数组中的至少一个所述表格或所述图。
通过设置循环属性,可以实现传输数据是表格或图所构成的数组时,展示多个表格或图的效果,每一表格或图展示完成后再展示下一个表格或图。
优选的,
所述关系还包括等待属性,所述等待属性用于设置等待时间,控制所述第二逻辑单元所对应的界面展示每一所述表格或所述图所用的时间或展示停留时间。
设置等待时间可以控制展示的节奏。
优选的,
所述第二逻辑单元所对应的界面根据所述数据组中的多个数据对象进行展示时,依照一定次序进行展示。
优选的,
第二逻辑单元所对应的界面根据所述数据组中的多个数据对象进行展示时,随机进行展示。
优选的,
所述逻辑单元在界面建立关系。
通过在程序界面创建或编辑逻辑单元之间的关系,可以建立图形化程序,用户可以根据自己需要定制逻辑单元之间的传输关系,用户不需要写代码,就可以完成编程。
本发明还提供一种程序中逻辑单元之间数据传输的系统,包括:
若干逻辑单元,其中至少包括第一逻辑单元、第二逻辑单元;每个所述逻辑单元包含具有特定关联性的一组数据,所述逻辑单元继承于该逻辑单元所属类型的基类,所述基类包含输出数据模块和接收输入数据模块,所述输出数据模块用于输出数据,所述接收输入数据模块用于接收数据;
所述逻辑单元之间的关系,所述关系具有方向和类型;
解析模块,用于解析所述关系,当解析所述第一逻辑单元指向所述第二逻辑单元的数据关系时,实现所述第一逻辑单元的数据输出到所述第二逻辑单元。
优选的,
所述解析模块还包含:
第一判断模块,用于首先打开所述第一逻辑单元时,判断所述第一逻辑单元是否存在数据关系指向其它逻辑单元,若存在数据关系指向其它逻辑单元,则产生输出数据;否则不产生输出数据。
优选的,
所述系统还包含:
第二判断模块,用于判断所述第一逻辑单元的输出数据是否发生改变;
通知发送模块,用于当所述第二判断模块判断第一逻辑单元的输出数据发生改变时发出通知;
监听模块,用于监听是否存在所述第一逻辑单元的输出数据已改变的通知;
数据替换模块,用于实现所述第二逻辑单元根据所述数据关系找到所述第一逻辑单元,将所述第一逻辑单元发生改变后的输出数据作为所述第二逻辑单元的输入数据。
优选的,
所述系统还包括:
输出数据格式化模块,用于将所述第一逻辑单元的输出数据的格式统一为:表格所构成的数组;或由所述逻辑单元和所述关系所构成的图的数组。
优选的,
所述系统还包括:
数据存储模块,使用图形数据库存储所述逻辑单元与所述数据关系。
优选的,
所述第一逻辑单元是数据逻辑单元,所述第二逻辑单元是界面逻辑单元。
优选的,
所述第一逻辑单元与所述第二逻辑单元都是界面逻辑单元,所述系统还包括:
数据选择模块,用于选择至少一部分所述第一逻辑单元的数据作为输出数据的源数据。
优选的,
所述数据选择模块包括:
第一选择模块,用于将所述第一逻辑单元的数据划分为若干区域数据,选择至少一个区域数据作为输出数据的源数据。
优选的,
所述数据选择模块包括:
第二选择模块,用于在所述第一逻辑单元所对应的界面中选择区域数据,选中的所述区域数据作为输出数据的源数据。
优选的,
所述数据选择模块包括:
第三选择模块,用于在所述第一逻辑单元所对应的界面中将聚焦的数据作为输出数据的源数据。
优选的,
所述第二逻辑单元相对应的界面所展示内容与所述第一逻辑单元所输出数据联动。
优选的,
所述第一逻辑单元所对应的界面与所述第二逻辑单元所对应的界面位于不同的智能设备。
优选的,
所述系统包括客户端和服务器端,所述第一逻辑单元与所述第二逻辑单元位于客户端,服务器端还包括:
数据处理模块,用于将所述第一逻辑单元的输出数据进行运算,产生结果数据作为所述第一逻辑单元的输出数据。
优选的,
所述系统还包括:
第一属性设置模块,用于为数据关系设置循环属性;
所述解析模块还包含:
第一属性解析模块,用于解析所述数据关系的循环属性,当所述第一逻辑单元的输出数据为一个或一个以上表格所构成的数组或由逻辑单元和关系所构成的图的数组时,所述第二逻辑单元所对应的界面展示所述数组中的至少部分所述表格或所述图。
优选的,
所述系统还包括:
第二属性设置模块,用于为数据关系设置等待属性,所述等待属性用于设置等待时间;
所述解析模块还包含:
第二属性解析模块,用于解析所述数据关系的等待属性,控制所述第二逻辑单元所对应的界面展示每一所述表格或所述图所用的时间或展示停留时间。
优选的,
所述第一属性解析模块解析所述循环属性时,所述第二逻辑单元所对应的界面依照一定次序展示所述数组中的至少部分所述表格或所述图。
优选的,
所述第一属性解析模块解析所述循环属性时,所述第二逻辑单元所对应的界面随机展示所述数组中的至少部分所述表格或所述图。
优选的,
所述系统还包括:
创建及编辑数据关系模块,用于在所述程序的界面中创建或编辑所述逻辑单元之间的关系。
本专利通过在程序界面创建或编辑逻辑单元之间的关系,可以实现创建图形化程序,用户可以根据自己需要定制逻辑单元之间的传输关系,不需要写代码就可以完成编程,这种图形化程序创建方式利用数据传输代码模块的可重复利用性,当用户需求改变时,只需要图形化的拖拽就可以完成编程,使编程简化,画流程图的过程也就完成了编程的过程,大大缩短了开发时间,并且使非专业编程人员也可以实现编程操作。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细说明:
图1是解析数据关系的一种流程示意图;
图2是第一逻辑单元产生的输出数据发生变化情况下解析数据关系的一种流程示意图;
图3为程序中的一种编辑逻辑单元关系的界面示意图;
图4是在浏览编辑界面中建立数据关系的示意图;
图5是编辑逻辑单元的数据输入逻辑单元的界面示意图;
图6是编辑逻辑单元的数据输出逻辑单元的界面示意图;
图7是数据表界面单元格中存放逻辑单元的示意图;
图8是数据表界面单元格中存放数值的示意图;
图9是折线图表显示界面示意图;
图10是数据表界面示意图;
图11、图12是图浏览编辑界面显示逻辑单元与关系的示意图;
图13是散点图表显示界面示意图;
图14是本发明的程序中逻辑单元之间数据传输的系统一实施例的结构示意图。
附图标号说明:
100.编辑逻辑单元关系的界面,
101.第一逻辑单元图形,102.第二逻辑单元图形,103.逻辑单元类别图示,104.逻辑单元名称,105.箭头指示线,
200.浏览编辑界面,
201.第一界面逻辑单元图形,202.第二界面逻辑单元图形,203.R区域,204.S区域,205.F区域
300.编辑逻辑单元的数据输入逻辑单元的界面,
301.第一表格,302.起点列,303.第一源列,304.第一源区域列,305.第一目标区域列,
400.编辑逻辑单元的数据输出逻辑单元的界面,
401.第二表格,402.终点列,403.第二源列,404.第二源区域列,405.第二目标区域列,
500.第一数据表界面,
600.图表显示界面,
700.第二数据表界面,
800.第一图浏览编辑界面,
900.第二图浏览编辑界面,
010.数据散点显示图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些实施例获得其他的实施例。
本发明程序中,将世界看作由逻辑单元和关系所组成,逻辑单元是数据对象,逻辑单元包含具有特定关联性的一组数据,例如:逻辑单元是一个人,逻辑单元数据包括:姓名、性别、年龄、工作单位等信息。关系是逻辑单元之间的联系,例如:所属关系、数据传输关系等,关系具有类型和方向,根据逻辑单元之间的关系不同类型也不同,例如:所属关系对应所属关系类型、数据传输关系对应数据关系类型,关系的方向表示关系的指向,例如:所属关系由第一逻辑单元指向第二逻辑单元,表示第一逻辑单元属于第二逻辑单元或者表示第二逻辑单元属于第一逻辑单元,数据关系由第一逻辑单元指向第二逻辑单元表示数据由第一逻辑单元传输到第二逻辑单元,逻辑单元和关系都具有属性,属性是对逻辑单元或关系的进一步限定。
逻辑单元归类为若干类型,所有逻辑单元都继承于其所属类型的基类,在程序中为基类写好输出数据代码和接收输入数据代码,由代码构成输出数据和接收输入数据的功能模块。程序中包含第一逻辑单元和第二逻辑单元,第一逻辑单元与第二逻辑单元分别继承于其所属类型的基类,第一逻辑单元与第二逻辑单元都具有数据输出功能和接收输入数据功能,当第一逻辑单元与第二逻辑单元之间的关系为第一逻辑单元指向第二逻辑单元的数据关系时,程序解析数据关系,将第一逻辑单元数据输出作为第二逻辑单元的输入数据。
因为所有新建逻辑单元继承于其所属类型的基类,都具有输出数据的功能和接收输入数据的功能,逻辑单元数据输出与接收输入数据的代码具有重复利用性,新建逻辑单元时并不需要为专门为新建的逻辑单元写数据输出与接收输入数据代码。
通过将同一种类型的数据对象抽象为同一种类型的逻辑单元,逻辑单元之间的数据传输关系抽象为数据关系,程序只需要解析数据关系,根据数据关系找到数据输出方及数据接收方,就可以实现逻辑单元之间的数据传输。
通过将数据对象抽象为逻辑单元,逻辑单元之间的数据传输通过数据关系表示,在程序中解析数据关系实现逻辑单元之间数据传输的方式,替代了参数传递输入数据的方式,数据传输代码模块可重复利用,这种数据传输方式有利于简化程序开发。
解析数据关系具体步骤为:
打开第一逻辑单元,第一逻辑单元产生输出数据;
打开第二逻辑单元,第二逻辑单元根据第一逻辑单元指向第二逻辑单元的数据关系找到第一逻辑单元,第一逻辑单元的输出数据作为第二逻辑单元的输入数据;
在程序使用中,如果是先打开第一逻辑单元,那么第一逻辑单元产生输出数据,以供其它逻辑单元使用,当打开第二逻辑单元时,程序解析数据关系,找到第一逻辑单元的输出数据,作为第二逻辑单元的输入数据。
解析数据关系具体步骤或者是:
打开第二逻辑单元,第二逻辑单元根据第一逻辑单元指向第二逻辑单元的数据关系找到第一逻辑单元;
打开第一逻辑单元,第一逻辑单元产生输出数据作为第二逻辑单元的输入数据。
如果是先打开第二逻辑单元,程序解析数据关系,找到第一逻辑单元,并打开第一逻辑单元,第一逻辑单元的输出数据作为第二逻辑单元的输入数据。
第二逻辑单元接收输入数据后,根据本身可处理数据情况处理输入数据,如果第一逻辑单元输出数据类型不是第二逻辑单元可处理的数据类型,那么第二逻辑单元则不对输入数据进行处理。
首先打开第一逻辑单元就产生输出数据,会存在第一逻辑单元没有指向其它逻辑单元的情况,产生的输出数据永远不会被使用,这样就产生CPU运算和内存的浪费,可以通过以下方式解决此问题:
图1为解析数据关系的一种流程示意图,如图1所示,当首先打开第一逻辑单元时,打开第一逻辑单元之后还包括步骤:
判断第一逻辑单元是否存在数据关系指向其它逻辑单元,若存在数据关系指向其它逻辑单元,则产生输出数据,否则不产生输出数据。
第一逻辑单元产生的输出数据在程序使用中会发生变化。
图2为第一逻辑单元产生的输出数据发生变化情况下解析数据关系的一种流程示意图,如图2所示,在第一逻辑单元产生输出数据作为第二逻辑单元的输入数据之后还包括步骤:
判断第一逻辑单元产生的输出数据是否发生改变;
若第一逻辑单元产生的输出数据发生改变则发出第一逻辑单元输出数据已改变的通知;
监听是否存在第一逻辑单元的输出数据已改变的通知;
当监听到第一逻辑单元的输出数据已改变的通知时,第二逻辑单元根据所述数据关系找到第一逻辑单元,第一逻辑单元改变后的输出数据作为第二逻辑单元的输入数据。
判断操作可以是第一逻辑单元的功能,也可以是系统统一进行此类操作的功能,优选第一逻辑单元设置判断功能;同样,发出通知可以是第一逻辑单元的功能,也可以是系统功能,优选第一逻辑单元设置发出通知的功能;类似的,监听操作可以是第二逻辑单元的功能,打开第二逻辑单元后,开始监听指向第二逻辑单元的数据关系所发出的通知;也可以是系统功能,优选第二逻辑单元设置监听功能。
通过这种方式,可以实现第二逻辑单元的输入数据实时根据第一逻辑单元的输出数据改变而改变。
数据的格式多种多样,如果在基类中为每种数据格式都写输出数据代码及接收输入数据代码,那么程序会变得极为复杂且难以控制,本发明中将传输的数据格式统一为表格或图,逻辑单元之间数据传输的数据格式为表格或由逻辑单元和关系所构成的图。将逻辑单元之间传输的数据格式统一为表格或图,有利于程序编写代码,将所有输出数据都转化为表格形式或图的形式,那么逻辑单元接收输入数据时,只要处理这两种形式的数据即可,简化了程序。
人的思维方式是网状的,对图形敏感;擅长快速定位知识点,在它们之间发现联系,并据此发现新的知识。人脑不擅长统计分析,对表格和数字不敏感。为了弥补人脑的不足,几乎所有的系统都做出了强大的统计功能,并将结果展示为图表。
因为关系数据库模型能很好地满足大量数据的统计需求,所以多数系统的数据模型都是关系数据库模型。但是,关系数据库模型和人的思维方式相去甚远,需要发明“实体-联系图”(Entity-RelationDiagram)这样的工具来把人脑中的模型转换为关系数据库模型。“实体-联系图”成为业界标准,也证明用图来表达人的思维模型是最自然的。
而像“实体-联系图”图形元素按一定数据结构(通常为拓扑数据结构)建立起来的数据集合我们称之为“图形数据库”。
图形数据库是一种非关系型数据库,它应用图形理论存储实体之间的关系信息。最常见的一个例子,就是社会网络中人与人之间的关系。关系型数据库用于存储“关系型”数据的效果并不好,其查询多级关系时复杂、缓慢、超出预期,而图形数据库的独特设计恰恰弥补了这个缺陷,图形数据库使程序更容易识别和管理数据之间的关系。
在图形数据库中的数据存储模式与本发明程序中的数据抽象模式相匹配,程序优选使用图形数据库存储数据。当然关系型数据库也可以模拟出类似存储方式,但使用效果远不如图形数据库。
逻辑单元根据数据对象不同归类为若干类型,任何逻辑单元都可以实现数据输出,任何逻辑单元也都可以进行数据输入,应用中最常见的输出数据的逻辑单元类型为数据逻辑单元和界面逻辑单元,常见的可以接受输出数据的逻辑单元是界面逻辑单元。
数据逻辑单元可以是单个的数据,也可是单元数据集合,也可以是多元数据集合,单元数据集合是指同一种类型的数据的集合,多元数据集合是指多种数据类型所构成的数据结构类型的数据集合。
界面逻辑单元是界面的抽象数据形式,其实质与界面相同。
数据逻辑单元可以将数据输出到界面逻辑单元,界面逻辑单元所对应的界面展示数据逻辑单元的数据,展示形式多种多样,根据具体界面逻辑单元的类型而定。类似的,界面逻辑单元也可以将数据输出到界面逻辑单元。
界面逻辑单元的展示内容根据输入数据改变而变动,称为联动。
通过建立界面逻辑单元与界面逻辑单元之间的关系,实现界面逻辑单元之间数据传输,界面逻辑单元的展示内容根据输入数据改变而变动,实现了界面的联动。
第一逻辑单元的输出数据发生改变时,第二逻辑单元所对应的界面展示内容随之发生改变,使得程序更友好,尤其在一些需要使用大量图表的行业中,例如:金融领域,使工作变得更轻松。
界面联动可以是跨用户跨设备的,例如:第一逻辑单元与第二逻辑单元之间存在第一逻辑单元指向第二逻辑单元的数据关系,A用户使用电脑操作第一逻辑单元所对应的第一界面,改变了输出数据,B用户使用智能手机操作第二逻辑单元所对应的第二界面,那么B用户的第二界面显示内容随着A用户操作第一界面改变了输出数据而改变,设备可以是电脑、平板电脑、智能手机、智能手表、智能眼镜等智能设备。
程序包括客户端程序和服务器端程序,第一逻辑单元与第二逻辑单元位于客户端程序所在的智能设备,第一逻辑单元的输出数据经过服务器端程序运算后的结果数据作为第二逻辑单元的输入数据。
服务器具有较强数据处理能力,将复杂的数据处理过程设于服务器端,第一逻辑单元输出的数据经服务器端处理后再作为第二逻辑单元的输入数据,可以提高数据处理效率。
当第一逻辑单元输出的数据为一个或一个以上表格所构成的数组,或由逻辑单元和关系组成的图所构成的数组时,可以将多个数据对象展示于同一界面,例如展示为曲线图时,界面上出现多组曲线图,但当曲线数据过多时,为观看带来不便,这时可以为数据关系设循环属性,关系的属性用于限定关系,在这里,数据关系的循环属性限制第二逻辑单元所对应的界面循环展示数组中的至少一个表格或图。循环展示指完成展示一个表格或图后再展示另一个表格或图。
可以设置全部展示,或者抽样展示,对于数据量较大的输入数据时,设置抽样展示比较适合,用户也可以根据自己需要设定抽样条件、样品范围或者具体指定样品。
对于需要展示多个曲线图或多个柱形图等情况,在同一界面展示不便观察,这种动态的多次展示解决了这种问题。
可以为数据关系设等待属性,所述等待属性用于设置等待时间,用于控制第二逻辑单元所对应的界面根据一数据对象进行展示所用时间或展示停留时间。
展示所用时间为从输入数据开始计算的时间,展示停留时间为展示完成开始计算的时间。
设置等待时间可以控制展示的节奏。
第二逻辑单元所对应的界面根据数据组中的多个数据对象进行展示时,可以依照一定的次序进行展示,这个次序可以是正序、倒序,也可以是按预设的优先权次序等。
第二逻辑单元所对应的界面根据数据组中的多个数据对象进行展示时,也可以随机进行展示。
数据传输界面包括以下常用界面:
图浏览编辑界面:用于展示逻辑单元与关系,创建逻辑单元之间的关系,编辑逻辑单元与关系;
图表显示界面:用于将数据以图表形式展示,图表显示界面包括:折线图表显示界面、柱状图表显示界面、散点图表显示界面等;
数据表界面:用于将数据以表格形式展示;
界面统一继承自一个界面逻辑单元基类。界面逻辑单元基类中,抽取出具有共性的数据输出形式:全部(All)、命名区域(Ranges)、选中区域(Selection)、当前激活对象(Focus)。
Ranges:为该界面逻辑单元的数据设置区域数据,为区域数据数据区域命名,选中区域名称,则区域名称对应的数据作为输出数据,设置区域可以在该界面逻辑单元在程序中的显示界面中设置,也可以通过其它对数据库的操作方式设置,选择数据输出类型Ranges,数据输出界面逻辑单元未设置区域的情况下,该界面逻辑单元的数据全部(All)作为输出数据。
Selection:该界面逻辑单元在程序显示界面中选择区域数据,选中的区域数据作为输出数据。
Focus:该界面逻辑单元在程序显示界面中聚焦于数据,被聚焦的数据作为输出数据。
对于不存在数据关系的两个逻辑单元,只要建立两个逻辑单元之间的关系,即可实现两个逻辑单元的数据传输,建立逻辑单元之间的关系一般在程序的界面中进行,以方便用户自己定义逻辑单元之间的数据传输。
在本发明中,界面指人与智能设备交互的媒介,常见的交互方式为可视化显示界面的交互,交互也可以是其它方式,例如:依靠视觉方式、声音、温度、湿度、感应等方式交互的界面,因为可视化显示界面是最常见的界面,下面以可视化显示界面进行本专利的方案介绍,其它方式交互界面工作原理与之相同。
图3为程序中的一种编辑逻辑单元关系的界面100,如图3所示,第一逻辑单元与第二逻辑单元以矩形图标形式显示于界面100。矩形是方便表达流程与数据关系的常用图形,也可以用其它图标在界面100中表示逻辑单元,偶数的多关系形是比较适合的图标形式。第一逻辑单元图形101对应于第一逻辑单元,第二逻辑单元图形102对应于第二逻辑单元。矩形图标中还显示有逻辑单元类别图示103和逻辑单元名称104。
在界面100中,由第一逻辑单元图形101区域向第二逻辑单元图形102方向拖拽光标,以鼠标操控光标为例,拖拽光标动作为按下鼠标按键拖动光标移动,其它设备操控光标情况下与以鼠标操控光标类似,在此不再详细描述,在拖拽光标过程中,第一逻辑单元图形101与光标位置之间显示有连接线,用以直观观察拖拽进度,当光标到达第二逻辑单元图形102区域时停止拖拽,建立第一逻辑单元的数据输出到第二逻辑单元的关系,为第一逻辑单元到第二逻辑单元的数据关系。
在不显示光标的触摸屏显示器中显示界面100时,拖拽光标改变为由第一逻辑单元图形101区域触摸滑动向第二逻辑单元图形102区域,其它操作细节与上面所述相同。
在接收其它输入方式的显示设备中,与上述两种方式类似,通过输入设备产生由第一逻辑单元图形101区域向第二逻辑单元图形102区域的拖放动作,以建立第一逻辑单元到第二逻辑单元的数据类型关系。
当第一逻辑单元到第二逻辑单元的数据关系在数据库中保存成功后,界面100中,第一逻辑单元图形101到第二逻辑单元图形102之间显示有箭头指示线105,箭头指示线105为关系在界面100中的显示形式,箭头指向表示关系的指向。
图4为在浏览编辑界面中建立数据关系的示意图,如图4所示,为方便选择界面逻辑单元数据输出方式,在界面200中,界面逻辑单元所显示的矩形图标中划分有三个输出类型选择区域:R区域,S区域,F区域,区域中分别标有“R”、“S”、“F”,用以区分不同数据输出形式,R区域203表示该界面逻辑单元数据输出类型为Ranges、S区域204表示该界面逻辑单元数据输出类型为Selection、F区域205表示该界面逻辑单元数据输出类型为Focus。
第一界面逻辑单元在界面200中显示为第一界面逻辑单元图形201,第二界面逻辑单元在界面200中显示为第二界面逻辑单元图形202,由第一界面逻辑单元图形201的任意一输出类型选择区域开始拖拽光标到第二界面逻辑单元图标输入点,建立第一界面逻辑单元到第二界面逻辑单元的数据输入关系,数据输入类型为选择区域对应的类型。
在不显示光标的触摸屏显示器中可以通过触摸滑动实现,
在接收其它输入方式的显示设备中,通过输入设备产生由第一界面逻辑单元图形201的具体输出方式区域向第二界面逻辑单元图形202区域的拖放动作,实现建立第一界面逻辑单元到第二界面逻辑单元的按相应输出方式的实现数据传输的数据关系。
图5是编辑逻辑单元的数据输入逻辑单元的界面示意图,如图5所示,界面300中包括第一表格301,第表格301包括起点列302、第源列303、第一源区域列304、第一目标区域列305。
逻辑单元在程序的界面中以多种形式显示,可以是图标形式、名称形式等,将逻辑单元在程序界面中的显示称为逻辑单元标识,拖动代表第一逻辑单元的逻辑单元标识到表格301区域,建立第一逻辑单元输入数据到第一界面逻辑单元的数据关系,该数据关系作为关系存储于数据库中,存储成功后,在表格301中,增加一行,新增行的起点列302用于显示第一逻辑单元的逻辑单元名称,源列303用于选择数据输入方式,具体输入方式为如实施例中的Ranges、Selection、Focus三种方式,源区域列304用于录入第一逻辑单元预设置的区域名称,目标区域列305用于录入第二逻辑单元预设置的区域名称,第一逻辑单元录入源区域的数据显示于第二界面逻辑单元对应的界面的目标区域。
图6是编辑逻辑单元的数据输出逻辑单元的界面示意图,如图6所示,在界面400用以编辑第一界面逻辑单元的数据输出逻辑单元,界面400中包括第二表格401,第二表格401包括终点列402、第二源列403、第二源区域列404、第二目标区域列405。
拖动代表第二逻辑单元的逻辑单元标识到表格401区域,建立第一界面逻辑单元的数据输出到第二界面逻辑单元的关系,关系作为关系存储于数据库中,存储成功后,在表格401中,增加一行,新增行的终点列402用于显示第二界面逻辑单元的名称,源列403用于选择数据输出类型,源区域列404用于录入第一界面逻辑单元预设置的区域名称,目标区域列405用于录入第二界面逻辑单元的预设置区域名称,源区域的数据显示于第二界面逻辑单元对应的界面的目标区域。
具体建立逻辑单元关系的方式根据程序实际情况设定。
通过在程序界面创建或编辑逻辑单元之间的关系,可以建立图形化程序,用户可以根据自己需要定制逻辑单元之间的传输关系,用户不需要写代码,就可以完成编程,这种图形化程序利用数据传输代码模块的可重复利用性,当用户需求改变时,对于多个逻辑单元之间的数据传输,只需要图形化的拖拽或选择方式就可以完成编程,使编程简化,画数据流程图的过程也就完成了编程的过程,大大缩短了开发时间,并且使非专业编程人员也可以实现编程操作。
本发明还提供了对应于上述程序中逻辑单元之间数据传输方法的系统:
如图14所示,一种程序中逻辑单元之间数据传输的系统,包括:
若干逻辑单元,至少包括第一逻辑单元、第二逻辑单元;每个逻辑单元包含具有特定关联性的一组数据,逻辑单元继承于该逻辑单元所属类型的基类,基类包含输出数据模块和接收输入数据模块,输出数据模块用于输出数据,接收输入数据模块用于接收数据;
逻辑单元之间的关系,关系具有方向和类型;
解析模块,用于解析关系,当解析第一逻辑单元指向第二逻辑单元的数据关系时,实现第一逻辑单元数据输出到第二逻辑单元。
当存在第一逻辑单元第向第二逻辑单元的数据关系时,第一逻辑单元的输出数据模块产生输出数据,程序解析数据关系,根据数据关系指向,第二逻辑单元接收输入数据模块接收第一逻辑单元的输出数据。
逻辑单元还包含:
第一判断模块,用于首先打开第一逻辑单元时,判断第一逻辑单元是否存在数据关系指向其它逻辑单元,若存在数据关系指向其它逻辑单元,则产生输出数据,否则不产生输出数据。
首先打开第一逻辑单元时,第一逻辑单元会主动产生输出数据,以供其它逻辑单元使用,但如果第一逻辑单元不存在任何与其它逻辑单元的数据关系,那么产生输出数据将永远不被使用,第一判断模块用以解决这种问题。
系统还包含:
第二判断模块,用于判断第一逻辑单元产生的输出数据是否发生改变;
通知发送模块,用于当第二判断模块判断第一逻辑单元产生的输出数据发生改变时发出通知;
监听模块,用于监听是否存在第一逻辑单元输出数据已改变的通知;
数据替换模块,用于实现第二逻辑单元根据数据关系找到第一逻辑单元,将第一逻辑单元改变后的输出数据作为第二逻辑单元的输入数据。
第一逻辑单元的数据在程序使用中产生变化,第一逻辑单元数据变化时,产生的输出数据有可能随之变化,第二判断模块用于判断第一逻辑单元输出数据是否产生变化,当第一逻辑单元输出数据产生变化时,通知发送模块发送通知,监听模块监听到通知时,数据替换模块实现第二逻辑单元输入数据替换,第二决断模块与通知发送模块可以是系统模块,也可以是逻辑单元模块,同样,监听模块与数据替换模块可以是系统模块也可以是逻辑单元模块。
系统还包括:
输出数据格式化模块,用于将第一逻辑单元输出的数据格式统一为表格所构成的数组或由逻辑单元和关系所构成的图的数组。
所有输出数据都经过输出数据格式化模块统一为表格或图,以方便传输处理。
系统还包括:
数据存储模块,使用图形数据库存储逻辑单元与数据关系。
第一逻辑单元是数据逻辑单元,第二逻辑单元是界面逻辑单元。
第一逻辑单元与第二逻辑单元都是界面逻辑单元,系统还包括:数据选择模块,用于选择至少一部分第一逻辑单元数据作为输出数据的源数据。
数据选择模块包含:第一选择模块,用于将第一逻辑单元数据划分为若干区域数据,选择至少一个区域数据作为输出数据的源数据。
第二选择模块,用于在第一逻辑单元所对应的界面中选择区域数据,选中的区域数据作为输出数据的源数据。
第三选择模块,用于在第一逻辑单元所对应的界面中将聚焦的数据作为输出数据的源数据。
与第二逻辑单元相对应的界面所展示内容与第一逻辑单元输出数据联动。
第一逻辑单元所对应的界面与第二逻辑单元所对应的界面位于不同智能设备。
该系统还包括客户端和服务器端,第一逻辑单元与第二逻辑单元位于客户端,服务器端还包括:数据处理模块,用于将第一逻辑单元的输出数据进行运算,产生结果数据作为第一逻辑单元的输出数据。
系统还包括:第一属性设置模块,用于为数据关系设置循环属性;
第二属性设置模块,用于为数据关系设置等待属性,等待属性用于设置等待时间;
解析模块还包含:
第一属性解析模块,用于解析数据关系循环属性,当第一逻辑单元输出的数据为一个或一个以上表格所构成的数组或由逻辑单元和关系所构成的图的数组时,第二逻辑单元所对应的界面展示数组中的至少部分表格或所述图。
第二属性解析模块,用于解析数据关系等待属性,控制第二逻辑单元所对应的界面展示每一表格或图所用的时间或展示停留时间。
第一属性解析模块解析循环属性时,第二逻辑单元所对应的界面依照一定次序展示数组中的至少部分表格或图。
第一属性解析模块解析循环属性时,第二逻辑单元所对应的界面随机展示数组中的至少部分表格或图。
系统还包括:创建及编辑数据关系模块,用于在程序的界面中创建或编辑逻辑单元之间的关系。
下面介绍部分界面之间的数据传输实施例:
一、数据表界面输出数据到图表显示界面
图7为数据表界面单元格中存放逻辑单元的示意图,如图7所示,第一界面逻辑单元对应的第一界面500为第一数据表界面,第一界面500的表格单元格中存有逻辑单元。图9为折线图表显示界面示意图,如图9所示,第二界面逻辑单元对应的第二界面600为图表显示界面。
按上述的方式建立第一界面逻辑单元到第二界面逻辑单元的数据关系,可以设置第一界面逻辑单元的部分数据作为输出数据。
可以将数据输出方式设为“R”方式,选中第一界面500表格中的某一区域单元格,为区域命名,将这一区域的单元格内的数据作为输出数据,也可以在表格中设定多个区域,将多个区域的数据作为输出数据。
也可以将数据输入方式设为“S”方式,在第一界面500中选中某一区域数据作为输出数据。
还可以将数据输入方式设为“F”方式,在第一界面500中聚焦于某一单元格的数据,聚焦方式可以是点击等方式。
当运行第一界面500时,因为第一界面逻辑单元存在数据关系指向第二界面点,所以根据设置的输出方式产生输出数据,输出数据存于内存中,第二界面逻辑单元根据数据关系找到第一逻辑单元的输出数据作为第二界面逻辑单元的输入数据。
当第一界面500的输出数据变化时,例如改变了“R”输出方式下的输出区域,或“S”输出方式下改变了选择区域,或“F”输出方式下改变了聚焦逻辑单元,监听第一界面逻辑单元所发出的数据改变通知,当存在第一界面逻辑单元发出的数据改变通知时,第二界面逻辑单元根据数据关系找到第一界面逻辑单元改变后的输出数据作为第二界面逻辑单元的输入数据。通过这种方式,实现了第一界面500与第二界面600的联动,每当改变第一界面500的输出数据时,第二界面600的显示情况随之改变。
一般在图表显示界面可以绘制图的输入数据要求为具有一定格式的二元数据,第一界面500的单元格中的逻辑单元为二元数据组,那么每一逻辑单元的数据可以输出到第二界面600中显示为图,当输入数据为多个逻辑单元时,可以绘制多个图显示于第二界面600,例如多个折线图,也可以只将输入的第一个逻辑单元数据绘制成图显示于第二界面600,还可以设置数据关系的循环属性,分为多次展示,具体如何绘制根据实际需要设定。
如果逻辑单元是不能绘制为图的数据,那么程序中第二界面逻辑单元不对输入数据进行处理,第二界面600显示内容不变。
图8是数据表界面单元格中存放数值的示意图,如图8所示,当数据表界面单元格中存放的是数值,数值所构成的表是满足绘图条件的二元数据时,可以将数据输出方式设为“R”方式,设置区域,根据区域标识设定输出区域,也可以将输出方式设为“S”方式,在第一界面500中选择区域作为输出,也可以将输出方式设为“F”方式,聚焦改变输出数据,
“R”方式及“S”方式输出是一个二元数据组时,可以在第二界面600中显示图,“F”方式聚焦于单个数值时,不能改变第二界面600中的显示。
二、数据表界面输出数据到数据表界面
图10是数据表界面示意图,数据表界面的数据也可以输出到数据表界面,如图7、图10所示,第一界面逻辑单元对应的第一界面500为数据表界面,第二界面逻辑单元对应的第二界面700为第二数据表界面,如之前所述的建立关系的任何一种方式建立第一界面逻辑单元指向第二界面逻辑单元的数据关系,可以选择第一界面500的数据输出方式为“R”或“S”或“F”,输出方式选择与之前实施例基本相同,不再详细描述,第二界面700根据第一界面输出的数据显示,当输入数据改变时,第二界面700的显示数据也随之发生改变,例如,将第一界面500中的表格A1、A2、B1、B2区域作为输出区域数据,那么第二界面700显示区域内的数据“第一逻辑单元”、“第二逻辑单元”、“第四逻辑单元”、“第五逻辑单元”。
三、图浏览编辑界面输出数据到图浏览编辑界面
图11、图12为图浏览编辑界面显示逻辑单元与关系的示意图,如图11所示,第一界面逻辑单元对应的第一界面800为第一图浏览编辑界面,如图12所示,第二界面逻辑单元对应的第二界面900为第二图浏览编辑界面,建立第一界面逻辑单元指向第二界面逻辑单元的数据关系,可以在第一界面800中选择区域作为输出数据,也可以将输出方式设为“F”方式,聚焦改变输出数据。例如:选择第一界面800中的第三逻辑单元、第四逻辑单元、第五逻辑单元与他们之间的关系,在第二界面900中则显示第三逻辑单元、第四逻辑单元、第五逻辑单元及他们之间的关系,也可以是聚焦的方式聚焦于某一逻辑单元,在第二界面900中显示该逻辑单元。
四、图表显示界面到图表显示界面
图13散点图表显示界面示意图,图9折线图表显示界面示意图,如图13所示,第一界面逻辑单元对应的第一界面010为散点图表显示界面,图中散点表示股票,散点的位置意义为横坐标为股票当日涨跌幅,纵坐标为股票当日收盘价,图中每个坐标点包含该股票的日期、股票收盘价、股票涨跌幅列表型数据,如图9所示,第二界面逻辑单元对应的第二界面600为图表显示界面,建立第一界面逻辑单元指向第二界面逻辑单元的数据关系,为数据关系设置等待属性,并设置等待时间为10秒,在第二界面600中设置接收数据处理方式为接收到日期、股票收盘价、股票涨跌幅列表型数据,展示日期、股票收盘价折线图和日期、股票涨跌幅折线图,在第一界面中选中多个股票点,那么选中的点按一定的次序或者随机展示成图,例如,展示贵州茅台股票的日期、股票收盘价折线图和日期、股票涨跌幅折线图在第二界面,共用时10秒或停留10秒,之后再展示老凤祥股票的日期、股票收盘价折线图和日期、股票涨跌幅折线图在第二界面。
展示的顺序和展示的时间等展示方式根据实际需要设置。
以上所述仅是本发明的部分实施方式,对于所有界面逻辑单元都可以建立第一界面逻辑单元到第二界面逻辑单元的关系,实现第一界面逻辑单元到第二界面逻辑单元的数据输入,部分输入数据对于第二界面逻辑单元来说可能不具意义,第二界面逻辑单元对于不具有意义的输入数据不作处理,第二界面逻辑单元根据本身实现功能展示输入数据。
对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (34)
1.一种程序中逻辑单元之间数据传输的方法,其特征在于,
包括若干逻辑单元,其中至少包括第一逻辑单元、第二逻辑单元;每个所述逻辑单元包含具有特定关联性的一组数据,所述逻辑单元继承于该逻辑单元所属类型的基类,所述基类具有输出数据和接收输入数据功能模块;
当每两个所述逻辑单元之间具有关系时,所述关系具有方向和类型;
当所述第一逻辑单元存在指向所述第二逻辑单元的数据关系时,所述程序解析所述数据关系,实现所述第一逻辑单元的数据输出到所述第二逻辑单元。
2.如权利要求1所述的方法,其特征在于,所述程序解析所述数据关系的步骤包括如下两种:
第一种先打开第一逻辑单元的步骤为:
打开所述第一逻辑单元,所述第一逻辑单元产生输出数据;
打开所述第二逻辑单元,所述第二逻辑单元根据所述第一逻辑单元指向所述第二逻辑单元的数据关系找到所述第一逻辑单元,所述第一逻辑单元的输出数据作为所述第二逻辑单元的输入数据;
第二种先打开第二逻辑单元的步骤为:
打开所述第二逻辑单元,所述第二逻辑单元根据所述第一逻辑单元指向所述第二逻辑单元的数据关系找到所述第一逻辑单元;
打开所述第一逻辑单元,所述第一逻辑单元产生输出数据作为所述第二逻辑单元的输入数据。
3.如权利要求2所述的方法,其特征在于,还包括步骤:
判断所述第一逻辑单元是否存在数据关系指向其它逻辑单元,若存在数据关系指向其它逻辑单元,则产生输出数据;否则不产生输出数据。
4.如权利要求2或3所述的方法,其特征在于,第一逻辑单元产生输出数据作为第二逻辑单元的输入数据之后还包括步骤:
判断所述第一逻辑单元的输出数据是否发生改变;
若所述第一逻辑单元的输出数据发生改变,则发出所述第一逻辑单元的输出数据已改变的通知;
监听是否存在所述第一逻辑单元的输出数据已改变的通知;
当监听到所述第一逻辑单元的输出数据已改变的通知时,所述第二逻辑单元根据所述数据关系找到所述第一逻辑单元,并将所述第一逻辑单元发生改变后的输出数据作为所述第二逻辑单元的输入数据。
5.如权利要求1所述的方法,其特征在于,所述第一逻辑单元输出的数据格式为:
表格所构成的数组;
或
由所述逻辑单元和所述关系所构成的图的数组。
6.如权利要求1所述的方法,其特征在于,所述逻辑单元与所述数据关系存储于图形数据库。
7.如权利要求1所述的方法,其特征在于,所述第一逻辑单元是数据逻辑单元,所述第二逻辑单元是界面逻辑单元。
8.如权利要求1所述的方法,其特征在于,所述第一逻辑单元与所述第二逻辑单元都是界面逻辑单元,至少一部分所述第一逻辑单元的数据作为输出数据的源数据。
9.如权利要求9所述的方法,其特征在于,所述第二逻辑单元所对应的界面所展示内容与所述第一逻辑单元所输出数据联动。
10.如权利要求9所述的方法,其特征在于,所述第一逻辑单元所对应的界面与所述第二逻辑单元所对应的界面位于不同的智能设备。
11.如权利要求7或8所述的方法,其特征在于,所述程序包括客户端程序和服务器端程序,所述第一逻辑单元与所述第二逻辑单元位于客户端程序中,所述第一逻辑单元的输出数据经过服务器端程序中运算得到运算结果数据,所述运算结果数据作为所述第二逻辑单元的输入数据。
12.如权利要求7或8所述的方法,其特征在于,所述关系包括循环属性,当所述第一逻辑单元输出的数据为一个或一个以上表格所构成的数组,或由所述逻辑单元和所述关系组成的图所构成的数组时,所述第二逻辑单元所对应的界面循环展示所述数组中的至少一个所述表格或所述图。
13.如权利要求12所述的方法,其特征在于,所述关系还包括等待属性,所述等待属性用于设置等待时间,控制所述第二逻辑单元所对应的界面展示每一所述表格或所述图所用的时间或展示停留时间。
14.如权利要求12所述的方法,其特征在于,所述第二逻辑单元所对应的界面展示所述表格或所述图时,依照一定的次序进行展示。
15.如权利要求12所述的方法,其特征在于,所述第二逻辑单元所对应的界面展示所述表格或所述图时,随机进行展示。
16.如权利要求1所述的方法,其特征在于,所述逻辑单元在界面建立关系。
17.一种程序中逻辑单元之间数据传输的系统,其特征在于,所述系统包括:
若干逻辑单元,其中至少包括第一逻辑单元、第二逻辑单元;每个所述逻辑单元包含具有特定关联性的一组数据,所述逻辑单元继承于该逻辑单元所属类型的基类,所述基类包含输出数据模块和接收输入数据模块,所述输出数据模块用于输出数据,所述接收输入数据模块用于接收数据;
所述逻辑单元之间的关系,所述关系具有方向和类型;
解析模块,用于解析所述关系,当解析所述第一逻辑单元指向所述第二逻辑单元的数据关系时,实现所述第一逻辑单元的数据输出到所述第二逻辑单元。
18.如权利要求17所述的系统,其特征在于,所述逻辑单元还包含:
第一判断模块,用于先打开所述第一逻辑单元时,判断所述第一逻辑单元是否存在数据关系指向其它逻辑单元,若存在数据关系指向其它逻辑单元,则产生输出数据;否则不产生输出数据。
19.如权利要求17或18所述的系统,其特征在于,所述系统还包含:
第二判断模块,用于判断所述第一逻辑单元的输出数据是否发生改变;
通知发送模块,用于当所述第二判断模块判断所述第一逻辑单元的输出数据发生改变时发出通知;
监听模块,用于监听是否存在所述第一逻辑单元的输出数据已改变的通知;
数据替换模块,用于实现所述第二逻辑单元根据所述数据关系找到所述第一逻辑单元,将所述第一逻辑单元发生改变后的输出数据作为所述第二逻辑单元的输入数据。
20.如权利要求17所述的系统,其特征在于,所述系统还包括:
输出数据格式化模块,用于将所述第一逻辑单元的输出数据的格式统一为:
表格所构成的数组;
或
由所述逻辑单元和所述关系所构成的图的数组。
21.如权利要求17所述的系统,其特征在于,所述系统还包括:
数据存储模块,使用图形数据库存储所述逻辑单元与所述数据关系。
22.如权利要求17所述的系统,其特征在于,所述第一逻辑单元是数据逻辑单元,所述第二逻辑单元是界面逻辑单元。
23.如权利要求17所述的系统,其特征在于,所述第一逻辑单元与所述第二逻辑单元都是界面逻辑单元,所述系统还包括:
数据选择模块,用于选择至少一部分所述第一逻辑单元的数据作为输出数据的源数据。
24.如权利要求23所述的系统,其特征在于,所述数据选择模块包括:
第一选择模块,用于将所述第一逻辑单元的数据划分为若干区域数据,选择至少一个区域数据作为输出数据的源数据。
25.如权利要求24所述的系统,其特征在于,所述数据选择模块还包括:
第二选择模块,用于在所述第一逻辑单元所对应的界面中选择区域数据,选中的所述区域数据作为输出数据的源数据。
26.如权利要求24所述的系统,其特征在于,所述数据选择模块还包括:
第三选择模块,用于在所述第一逻辑单元所对应的界面中将聚焦的数据作为输出数据的源数据。
27.如权利要求24所述的系统,其特征在于,所述第二逻辑单元相对应的界面所展示内容与所述第一逻辑单元所输出数据联动。
28.如权利要求27所述的系统,其特征在于,所述第一逻辑单元所对应的界面与所述第二逻辑单元所对应的界面位于不同的智能设备。
29.如权利要求22或23所述的系统,其特征在于,所述系统包括客户端和服务器端,所述第一逻辑单元与所述第二逻辑单元位于所述客户端,所述服务器端还包括:
数据处理模块,用于将所述第一逻辑单元的输出数据进行运算,产生结果数据作为所述第一逻辑单元的输出数据。
30.如权利要求22或23所述的系统,其特征在于,所述系统还包括:
第一属性设置模块,用于为所述数据关系设置循环属性;
所述解析模块还包含:
第一属性解析模块,用于解析所述数据关系的循环属性,当所述第一逻辑单元的输出数据为一个或一个以上表格所构成的数组或由逻辑单元和关系所构成的图的数组时,所述第二逻辑单元所对应的界面展示所述数组中的至少部分所述表格或所述图。
31.如权利要求30所述的系统,其特征在于,所述系统还包括:
第二属性设置模块,用于为所述数据关系设置等待属性,所述等待属性用于设置等待时间;
所述解析模块还包含:
第二属性解析模块,用于解析所述数据关系的等待属性,控制所述第二逻辑单元所对应的界面展示每一所述表格或所述图所用的时间或展示停留时间。
32.如权利要求30所述的系统,其特征在于,
所述第一属性解析模块解析所述循环属性时,所述第二逻辑单元所对应的界面依照一定的次序展示所述数组中的至少部分所述表格或所述图。
33.如权利要求30所述的系统,其特征在于,
所述第一属性解析模块解析所述循环属性时,所述第二逻辑单元所对应的界面随机展示所述数组中的至少部分所述表格或所述图。
34.如权利要求17所述的系统,其特征在于,所述系统还包括:
创建及编辑数据关系模块,用于在所述程序的界面中创建或编辑所述逻辑单元之间的关系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510594849.0A CN105242976A (zh) | 2015-09-17 | 2015-09-17 | 一种程序中逻辑单元之间数据传输的方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510594849.0A CN105242976A (zh) | 2015-09-17 | 2015-09-17 | 一种程序中逻辑单元之间数据传输的方法与系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105242976A true CN105242976A (zh) | 2016-01-13 |
Family
ID=55040630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510594849.0A Pending CN105242976A (zh) | 2015-09-17 | 2015-09-17 | 一种程序中逻辑单元之间数据传输的方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105242976A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113805936A (zh) * | 2021-09-18 | 2021-12-17 | 中国能源建设集团广东省电力设计研究院有限公司 | 一种企业信息化系列产品版本管控方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5386568A (en) * | 1992-12-01 | 1995-01-31 | Yamaha Corporation | Apparatus and method for linking software modules |
US20020087735A1 (en) * | 1996-07-03 | 2002-07-04 | Hans-Erich Reinfelder | Software ICs or PALs for high level application frameworks |
CN1357822A (zh) * | 2000-10-27 | 2002-07-10 | 株式会社东芝 | 应用软件开发系统及其方法、应用软件开发程序、以及应用软件生成方法 |
CN1524216A (zh) * | 2001-05-30 | 2004-08-25 | Bea系统公司 | 软件构件插件程序结构的系统和方法 |
US6851104B1 (en) * | 2000-08-14 | 2005-02-01 | Rodrigues Da Silva Fernando Jose Barros | System and method for programming using independent and reusable software units |
US8555246B2 (en) * | 2001-08-09 | 2013-10-08 | International Business Machines Corporation | Method and apparatus for programming software components |
US20150160927A1 (en) * | 2013-12-05 | 2015-06-11 | Ab Initio Technology Llc | Managing interfaces for sub-graphs |
-
2015
- 2015-09-17 CN CN201510594849.0A patent/CN105242976A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5386568A (en) * | 1992-12-01 | 1995-01-31 | Yamaha Corporation | Apparatus and method for linking software modules |
US20020087735A1 (en) * | 1996-07-03 | 2002-07-04 | Hans-Erich Reinfelder | Software ICs or PALs for high level application frameworks |
US6851104B1 (en) * | 2000-08-14 | 2005-02-01 | Rodrigues Da Silva Fernando Jose Barros | System and method for programming using independent and reusable software units |
CN1357822A (zh) * | 2000-10-27 | 2002-07-10 | 株式会社东芝 | 应用软件开发系统及其方法、应用软件开发程序、以及应用软件生成方法 |
CN1524216A (zh) * | 2001-05-30 | 2004-08-25 | Bea系统公司 | 软件构件插件程序结构的系统和方法 |
US8555246B2 (en) * | 2001-08-09 | 2013-10-08 | International Business Machines Corporation | Method and apparatus for programming software components |
US20150160927A1 (en) * | 2013-12-05 | 2015-06-11 | Ab Initio Technology Llc | Managing interfaces for sub-graphs |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113805936A (zh) * | 2021-09-18 | 2021-12-17 | 中国能源建设集团广东省电力设计研究院有限公司 | 一种企业信息化系列产品版本管控方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107734059B (zh) | 工业互联网云平台 | |
CN100481001C (zh) | 界面自动生成方法和界面自动生成系统 | |
US10222951B2 (en) | Modeling system for graphic user interface | |
US8566923B2 (en) | Enhanced organization and automatic navigation of display screens facilitating automation control | |
EP2463790B1 (en) | Manipulation of elements and their attributes in graphical user interfaces | |
CN103970527A (zh) | 为报表生成提供辅助覆盖的方法和系统 | |
CA2827833C (en) | System and method for improved consumption models for summary analytics | |
CN108595604B (zh) | 一种智能报表的数据可视化系统及方法 | |
JP6813634B2 (ja) | グラフィックインタフェースに基づく、イベント動作をプログラミングするwebレポーティングデザインシステム | |
US11579762B2 (en) | Object time series system and investigation graphical user interface | |
CA3179300A1 (en) | Domain-specific language interpreter and interactive visual interface for rapid screening | |
EP3809277A1 (en) | Object-centric user system and graphical user interface | |
US20230134235A1 (en) | Applying a Visual Analytics Intent Language to Generate Data Visualizations | |
CN114238662A (zh) | 一种面向银行业的全栈式金融知识图谱平台 | |
US20060229866A1 (en) | Apparatus and method for deterministically constructing a text question for application to a data source | |
CN113722564A (zh) | 基于空间图卷积能源物资供应链的可视化方法及装置 | |
Baudel | From information visualization to direct manipulation: extending a generic visualization framework for the interactive editing of large datasets | |
CN105242976A (zh) | 一种程序中逻辑单元之间数据传输的方法与系统 | |
US11561998B2 (en) | Implementing a visual analytics intent language across multiple devices | |
CN105824684B (zh) | 一种多模式大数据软件模拟器的实现方法 | |
CN109814857B (zh) | 一种可定制图元联动的方法及装置 | |
US20210065016A1 (en) | Automatic generation of computing artifacts for data analysis | |
Galliano | The importance of data visualization tools in modern enterprises. Cost-effective solutions and empowering of an open source project. | |
CN116992095A (zh) | 数据模型的查询方法、装置、存储介质及终端设备 | |
Hussain et al. | HCI Design Principles and Visual Analytics for Media Analytics Platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160113 |