CN101416143A - 基于许可的用户界面变形 - Google Patents
基于许可的用户界面变形 Download PDFInfo
- Publication number
- CN101416143A CN101416143A CNA2007800123762A CN200780012376A CN101416143A CN 101416143 A CN101416143 A CN 101416143A CN A2007800123762 A CNA2007800123762 A CN A2007800123762A CN 200780012376 A CN200780012376 A CN 200780012376A CN 101416143 A CN101416143 A CN 101416143A
- Authority
- CN
- China
- Prior art keywords
- list
- computer
- show
- permission
- executable code
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
可以基于许可来对表单变形以便不显示对其许可或许可证不可用的对象。可以分析相关代码来确定对表格的许可是否可用,并且如果对表格的许可不可用,则依赖该表格的对象不被包括在经变形的表单中。
Description
背景
计算机在收集、分析和显示信息时很有用。然而,不是所有的用户都被准许查看给定系统上的所有应用程序和控件。因而,如果用户选择未被许可的或尚未完全安装的项目,则什么事也不会发生,这对用户来说是令人沮丧的。
概述
公开了基于许可对用户界面进行变形。该方法可以创建显示表单来显示多个对象,使用这些对象来获取显示各个对象的许可,如果接收到对于要显示的对象的许可,则将该对象添加到要显示的对象的列表中,如果没有接收到对于要显示的对象的许可,则制止将该对象添加到要显示的对象的列表并创建显示在要显示的对象的列表中的对象的经变形的显示表单。
附图
图1是可以根据各权利要求操作的计算系统的框图;
图2是根据各权利要求的方法的高级图示;
图3是根据各权利要求的方法的更详细的图示;
图4是根据各权利要求的方法的更详细的图示;以及
图5是要被变形的显示的图示。
描述
尽管以下正文阐明众多不同实施例的详细描述,但是应当理解,该描述的法律范围由本发明所附的权利要求书的言辞来限定。该详细描述应被解释为仅是示例性的,且不描述每一可能的实施例,因为描述每一可能的实施例即使不是不可能的也是不切实际的。可使用现有技术或在本申请提交日之后开发的技术来实现众多替换实施例,而这仍落入权利要求书的范围之内。
还应当理解,除非一术语在本专利中使用语句“如此处所使用的,术语‘__’此处被定义为指...”或类似的语句来定义,否则毫无意图将该术语的含义明确地或隐含地限制在其简单或普通意义之外,且这类术语不应当被解释为基于本专利的任何一节中所作出的任何陈述(权利要求书的语言除外)而在范围上有限制。就本专利所附的权利要求书中引用的任何术语在本专利中以与单数意义相一致的方式来引用而言,这是为简明起见而如此做的,仅仅是为了不使读者感到混淆,且这类权利要求术语并不旨在隐含地或以其它方式限于该单数意义。最后,除非一权利要求要素是通过叙述单词“装置”和功能而没有叙述任何结构来定义的,否则任何权利要求要素的范围并不旨在基于35 U.S.C.§112第6段的应用来解释。
图1示出可在其上实现用于所要求保护的方法和装置的步骤的系统的合适的计算系统环境100的示例。计算系统环境100仅为合适的计算环境的一个示例,并不旨在对本权利要求的装置的方法的使用范围或功能提出任何局限。也不应该把计算环境100解释为对示例性操作环境100中示出的任一组件或其组合有任何依赖性或要求。
所要求保护的方法和装置的步骤可运行于多种其它通用或专用计算系统环境或配置。适合在本权利要求的方法或装置中使用的公知的计算系统、环境和/或配置的示例包括,但不限于,个人计算机、服务器计算机、手持式或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型机、大型机、包括上述系统或设备中的任一个的分布式计算机环境等。
所要求保护的方法和装置的步骤可在诸如程序模块等由计算机执行的计算机可执行指令的一般上下文中描述。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。这些方法和装置也可以在其中任务由通过通信网络链接的远程处理设备来执行的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于包括存储器存储设备的本地和远程计算机存储介质中。
参见图1,用于实现所要求保护的方法和装置的步骤的示例性系统包括计算机110形式的通用计算设备。计算机110的组件可以包括,但不限于,处理单元120、系统存储器130和将包括系统存储器在内的各种系统组件耦合至处理单元120的系统总线121。系统总线121可以是若干类型总线结构中的任一种,包括存储器总线或存储器控制器、外围总线以及使用各类总线体系结构中的任一种的局部总线。作为示例而非局限,这类体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线、以及外围部件互连(PCI)总线(也称为夹层(Mezzanine)总线)。
计算机110通常包括各种计算机可读介质。计算机可读介质可以是可由计算机110访问的任何可用介质,且包括易失性和非易失性介质、可移动和不可移动介质。作为示例而非局限,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机110访问的任何其它介质。通信介质通常以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,且包含任何信息传递介质。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被设定或更改的信号。作为示例而非局限,通信介质包括有线介质,如有线网络或直接连线连接,以及无线介质,如声学、RF、红外和其它无线介质。上述中任意组合也应包括在计算机可读介质的范围之内。
系统存储器130包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM) 131和随机存取存储器(RAM) 132。基本输入/输出系统133(BIOS)包含有助于诸如启动时在计算机110中元件之间传递信息的基本例程,它通常被存储在ROM 131中。RAM 132通常包含处理单元120可以立即访问和/或目前正在操作的数据和/或程序模块。作为示例而非局限,图1示出了操作系统134、应用程序135、其它程序模块136和程序数据137。
计算机110也可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图1示出了对不可移动、非易失性磁介质进行读写的硬盘驱动器140,对可移动、非易失性磁盘152进行读写的磁盘驱动器151,以及对诸如CD ROM或其它光学介质等可移动、非易失性光盘156进行读写的光盘驱动器155。可以在示例性操作环境中使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等等。硬盘驱动器141通常由不可移动存储器接口,诸如接口140连接至系统总线121,磁盘驱动器151和光盘驱动器155通常由可移动存储器接口,诸如接口150连接至系统总线121。
以上讨论的且在图1中示出的驱动器及其相关联的计算机存储介质为计算机110提供对计算机可读指令、数据结构、程序模块和其它数据的存储。例如,在图1中,示出硬盘驱动器141储存操作系统144、应用程序145、其它程序模块146和程序数据147。注意,这些组件可以与操作系统134、应用程序135、其它程序模块136和程序数据137相同或不同。这里对操作系统144、应用程序145、其它程序模块146和程序数据147给予不同的标号来说明至少它们是不同的副本。用户可以通过输入设备,如键盘162和定点设备161(通常称为鼠标、跟踪球或触摸垫)向计算机20输入命令和信息。其它输入设备(未示出)可以包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些和其它输入设备通常由耦合至系统总线的用户输入接口160连接至处理单元120,但也可以由其它接口或总线结构,诸如并行端口、游戏端口或通用串行总线(USB)连接。监视器191或其它类型的显示设备也经由诸如视频接口190等接口连接到系统总线121。除监视器以外,计算机也可以包括其它外围输出设备,如扬声器197和打印机196,它们可以通过输出外围接口190连接。
计算机110可使用至一个或多个远程计算机,如远程计算机180的逻辑连接在网络化环境中操作。远程计算机180可以是个人计算机、服务器、路由器、网络PC、对等设备或其它常见网络节点,且通常包括上文相对于计算机110描述的许多或所有元件,尽管在图1中只示出存储器存储设备181。图1中所示逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也可以包括其它网络。这样的联网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机110通过网络接口或适配器170连接至LAN 171。当在WAN联网环境中使用时,计算机110通常包括调制解调器172或用于通过诸如因特网等WAN 173建立通信的其它装置。调制解调器172可以是内置或外置的,它可以通过用户输入接口160或其它适当的机制连接至系统总线121。在网络化环境中,相对于计算机110所描述的程序模块或其部分可以存储在远程存储器存储设备中。作为示例而非局限,图1示出了远程应用程序185驻留在存储器设备181上。可以理解,示出的网络连接是示例性的,并且可以使用在计算机之间建立通信链路的其它手段。
图2可以是对用户界面进行变形的方法中的各框的高级图示。在框200,收集要显示的对象。对象可以是控件对象。例如,对象可以是查看人员记录的显示按钮,其可以是附加模块的一部分。一些公司可能使用该人员模块而其它公司可能没有购买使用该可任选的人员模块的权限。
在框210,该方法可以审阅已购买的许可证。例如,一些公司可能已购买了该人员模块的许可证而其它公司可能没有购买该人员模块。收集并存储这一信息。该信息可被存储为肯定文件,其中要显示的项目被添加到肯定列表中。在另一实施例中,该信息可被存储在否定文件中,其中存储不被显示的对象。而在又一实施例中,可以使用否定列表和肯定列表两者。
在框220,将显示对象和许可证信息传递给变形程序。变形程序可以接受该许可证信息并基于所接收到的许可证数据确定应显示的对象和不应被显示的对象。变形程序随后可以将要显示的对象重新排列成一逻辑排列以使显示看起来依然适当。例如,如果一些对象不被显示且这些对象一般占据任务栏的左边,则除非移动一些要显示的项目来使任务栏平整,否则显示可能看起来向一边倾斜。
图3可以是根据各权利要求的方法的更详细的框图。在框300,收集基对象。对象可以从诸如微软的Navision等显示程序收集。在框310,可以添加附加对象。附加对象可以是诸如新的辅助相关对象等已开发的新特征。在框320,可以组合来自框300的基对象和来自框310的附加对象以使可被显示的所有可能的对象在单个文件中。
在框330,可以收集许可证信息。许可证可以不是物理许可证而是要被包括在被显示的应用程序中的应用程序颗粒(granule)列表。可以包括不必具有与其相关联的许可证的其它程序颗粒。各颗粒可被认为是像在分类总帐(General Ledger)基程序顶部添加人员模块一样向基程序添加附加功能的程序部分。
在框340,可以获得例外列表。该例外列表可以包括变形算法不能标识的所有字段和其它控件或由于特征或对象将不被展示而不需要的控件。
在框350,可以执行变形工具。变形工具可以是诸如微软的Navision等的传统显示程序的附加。基于可从框330获得的许可证,导出不相关的但依然在该许可证中的字段列表。与关于应该隐藏什么额外控件的例外列表一起,变形应用程序生成其中不相关的字段已被删除的各版本的表单。
在框360,变形工具可以为各表单输出一组经变形的对象。这些对象可被包括在软件的下一次构建中,或者它们可以仅仅在运行时使用来取代原始表单。经变形的对象可以被存储在数据库中,或者这些经变形的对象可作为新对象来存储。在框370,变形工具可以输出枚举可见的所有字段的肯定字段列表作为肯定列表。该工具还可以输出被隐藏的字段列表作为否定列表。该否定列表还可以指示为什么隐藏这些字段,如许可证不可用、出现了例外等等。该列表中的示例条目可以包括表单号、控件号、控件类型(如文本框、菜单按钮、输入字段等)。
图4可以是根据各权利要求的方法的另一更详细的图示。在框400,该方法可以开始许可证测试工具。该许可证测试工具可以通过许可模拟来确保许可证被正确地配置以便用户可以看见对这些表单的影响。可以不为用户所知地发生测试数据的导入。程序颗粒405也可以如许可证数据410一样被馈送到许可证测试工具400。许可证数据410可以导入要被用作变形许可的基础的许可证定义。在导入该数据后,可以为特定用户设置用户许可记录。示例许可证文件可以如下:
文件格式是(CSV—分号分隔):
已启用(Enabled) | 源表达式(SourceExpr) | 起始位置(StartPos) | 宽度(Width) |
是 | “颗粒ID” | 1 | 20 |
是 | “颗粒描述” | 22 | 50 |
是 | “需求者” | 73 | 20 |
是 | “用户ID” | 94 | 20 |
逗号分隔文件是用分号或逗号作为各值之间的分隔符来格式化的文件。每一行由一条记录的各值组成且各行用回车换行符分隔。可以很容易地将CSV文件从Excel中导出或导入到Excel中以便操纵。在框415,该方法可以导入例外。这些例外可以是控件例外417和菜单例外419。这些例外可作为逗号分隔值(CSV文件)存储且可以是如下形式:
表单号(整型);x;x;x;控件号(整型);x;x;x;隐藏(是/)其中“x”忽略但可能具有对用户有用的信息。
在框420,可以导入系统术语文件(“STX”)文件以便在多语言情况下可以标识和使用该STX文件。STX文件可以是包含系统以语言无关的方式操作所需要的文本常量的文件。它可以包含系统表的是、否和字段名的定义。变形工具只使用对象和对象特性,所以除如下部分之外可能没有其它多语言要求:
代码 | STX代码 | 枚举(Enum) | 值 |
否 | 00133-01000-010-1 | 1 | 否 |
超级 | 00019-00501-020-0 | 1 | 超级 |
是 | 00133-01000-010-1 | 2 | 是 |
在框430,为控件提取元数据,如页面、栏等。为使该方法移动控件来找到将这些控件移动到哪里,需要知道这些控件位于何处。因而,显示被分解成栏和排。图5可以是一个这样的分解的图示。例如,“No.”条目对象500可以在第一栏第一排中。另外,第一栏第一排可以包含四个对象:“No.”的标签505、No.的文本框510、用于注释的位图515(铅笔图示)和注释按钮本身520。应当注意,辅助编辑按钮525是文本框控件的一部分而不是单独的对象。如果控件重叠,该方法可以检测这一情况并制止移动这些控件。
为使该算法确定给定控件是否在许可证中,有必要找到控件正使用什么对象并随后确定所有对象是否都在许可证中。这一分析可以有三个步骤:首先,可以为控件和字段之间的关系创建表格。其次,可以为字段和对象之间的关系形成表格。最后,可以为控件和其它对象之间的关系形成表格。该方法可以分析表单上的任何控件和表格之间的关系,且如果一控件只访问用户不具有许可的表格,则代码分析器将该控件删除。可以使用元数据来指示各对象应该还是不应该被包括。
寻找被操纵的控件可以包括寻找在运行时改变表单的特性的当前表单中的所有代码,即包含片段currform.*(当前表单)或RequestOptionsForm.*(请求选项表单),之后是“.”、“;”或诸如空格等其它代码分隔符的代码。该方法随后可以检查文本片段*是否是该表单的合法控件名。可以将被操纵的所有控件与对象类型、对象号、控件号和控件名一起列在表格中。还可以使用元数据获取对控件的操纵,即通过具有在执行时评估的控件上的特性且这些特性随后被用来控制这些控件的外观。寻找被操纵的控件随后可以包括寻找具有导致外观的运行时改变的类型的元数据的控件。
下一步,该方法可以隐藏不相关的或具有例外的控件。随后可以将更相关的剩余控件移到表单上。也可以隐藏已被隐藏的父控件的子控件。应当将隐藏的控件列在单独的表格中。如果一字段具有多个关系,且如果所有的关系都是不相关的,则可以隐藏关于该字段的控件。
在框450,该方法可以移除被隐藏的控件。如果控件未被操纵且只在例外列表中未被标记为要隐藏,则其可被隐藏。如果要删除的控件是文本框、图像、图片、布尔或可以拥有子控件的其它控件,则该子控件也可被删除。
相关地,可以删除诸如不包含活动控件的选项卡页面等控件。选项卡页面可以是如果其被选中则打开新页面的控件。在选项卡页面可被删除之前必须移动该选项卡页面上的控件,因此在该选项卡页面可被删除之前必须将该选项卡页面上被隐藏的控件移到另一选项卡页面。该方法可以删除空选项卡并将被隐藏的但未被删除的控件移到可用的第一个选项卡。
该方法可以禁用或删除不相关的菜单项。如果菜单项只与许可证之外的对象的有关系,则可以删除/隐藏该菜单项。类似地,可以禁用或删除不相关的菜单。在菜单中除分隔符之外的所有菜单项都被禁用或删除时,则该菜单将表现为对用户来说不具有任何功能且随后应被删除。其它菜单可被移到其特性——如垂直胶水特性(vertical glue property)——的方向以便维护菜单之间的空间。
在框460,可以创建新对象。构建过程的主要部分可以是获取基对象;获取变形对象;将这些对象导入新创建的数据库中;执行导入诸如许可证和颗粒等所有必要文件并生成/变形表单的变形(Morph)管理器;将经变形的对象作为文本导出并使用这些经变形的对象运行构建过程。
还可以创建测试数据470以确保该方法工作正常并将该方法所做的改变归档。隐藏字段的数据可以用如下形式导入:
表单号;页面名称;控件号;控件文字说明,类型(菜单/文本/图片/…);许可证访问(根据许可证和颗粒的许可。是/否);例外列表(根据例外列表的许可。是/否)。
示例:
30;General(概要);8;“Bill of Materials)(材料帐单)”;CheckBox(复选框);Yes(是);Yes(是)
该示例示出应该移除Bill of Materials复选框,因为没有通过许可证中的字段的访问。第二个Yes还表示还有表达应当删除该控件的例外。该控件是第一选项卡页面上的控件。
栏损坏(breakage):
还可以对因为重叠而不能移动控件的情况或栏定义损坏的情况保存日志。该列表是使得栏定义损坏的(分号分隔的CSV)控件列表。
表单号,控件号
该方法还可以记住基表单和经变形的表单之间的不同。以此方式,可以跟踪对变形方法的改进。在一实施例中,如果表单被存储为XML文件,则使用XML diff(XML区分器)来比较不同的版本的经变形的表单。
从表单中变形出来的字段也应当从报告请求表单过滤器字段中变形出来。先前的用于变形的过程已经生成了具有该表单、控件号、表格号和字段号以及字段名的表格。该表格也可用于移除请求过滤器字段。该表格可以既包含由许可证检查找到的字段又包含导入的手动例外。如果任何表单已从表格中删除了具有一字段的控件,则该字段也不应出现在任何报告请求过滤器字段上。
因为字段并未从数据库中删除,用户可以仍然能够将该字段或其它字段添加到请求过滤器字段中。该特征的目的只是确保没有报告会将经变形的字段默认地显示在该过滤器列表上。
在实现中,可以从CSV文件中读入要被变形的控件。可以用与普通表单上的控件相同的方式从该可任选表单移除这些控件。就如在普通表单上一样,必须隐藏被操纵的控件且不能删除,因为这将产生编译错误。
必须以与普通表单相同的方式重新排列该可任选表单,以避免“孔洞”并遵循表单的设计准则。如果该可任选表单变空(没有留下控件),则该可任选表单自动消失。这意味着如果一些控件因为其在代码中被操纵而被设置为不可见,则该可任选表单最终可能以没有可视控件的空结束。
在一实施例中,该方法与微软公司的Navision一起使用。Navision帮助供公司集成财务、制造、销售、顾客关系管理和电子商务数据。再次参考图3,基对象300可以是来自Navision的对象。附加对象310可以是由特征团队或专用于Navision的第三方开发的附加对象。基对象300和附加对象310可被组合,且可以成为用于变形320的基对象。在框330,可以存储许可证定义。许可证定义可以不是普通的物理许可证,而是要包括随Navision应用程序一起包括的应用程序颗粒列表。许可证定义可以不必包括诸如表单设计器等系统颗粒,但可以包括一颗粒列表以及这些颗粒所包含的许可。在框340,可以存储例外,其可以是变形算法不能标识的所有字段和其它控件或因为可能不展示该特征而不需要的控件。框350可以是具有变形功能的Navision Developers Toolkit(Navision开发者工具包)。使用来自框330的许可证数据,可以导出不相关的但仍在该许可证中的字段列表。与关于要隐藏什么额外控制的例外列表一起,变形程序生成其中不相关的各字段已被删除的各版本的表单。在框360,变形工具的输出可以是用于表单的一组经变形的对象且可以被包括在日常构建中。在框370,可以创建要被Navision显示的字段的肯定列表和否定列表。
在应用中,Navision客户端和Navision开发工具包可以共享一数据库。该数据库可包含用于变形过程的普通对象、来自存储所导入的对象的表示的Navision开发工具包的对象、和变形工具所需要的其它信息。经变形的对象可以作为记录而不作为对象来储存在数据库中。在日常Navision构建发生时,系统可以得到所有的Navision开发工具包对象;从共享数据库得到所有的变形对象;并将这些对象导入到新数据库中。Navision开发工具可以导入基对象而变形管理器导入诸如许可证和颗粒文件等所有必要文件并可以生成经变形的表单。这些经变形的对象可以作为文本导出并且Navision可以使用这些经变形的对象来运行构建过程。
尽管以上正文陈述了众多不同实施例的详细描述,但是应当理解,本专利的法律范围由本专利所附的权利要求书的言辞来限定。该详细描述应被解释为仅是示例性的,且不描述每一可能的实施例,因为描述每一可能的实施例即使不是不可能的也是不切实际的。可使用现有技术或在本申请提交日之后开发的技术来实现众多替换实施例,而这仍落入权利要求书的范围之内。
由此,可在此处所描述和示出的技术和结构上作出许多修改和变化而不脱离本权利要求的精神和范围。因此,应当理解,此处所描述的方法和装置仅是说明性的,且不限制本权利要求的范围。
Claims (20)
1.一种基于许可来对用户界面进行变形的方法,包括:
创建显示表单以显示多个对象200;
使用所述对象来获取显示各个对象的许可210;
如果接收到对于要显示的第一对象的许可,则将所述第一对象添加到要显示的对象列表中220;
如果没有接收到对于要显示的第一对象的许可,则制止将所述第一对象添加到要显示的对象列表中220;以及
创建显示所述要显示的对象列表中的对象的经变形的显示表单230。
2.如权利要求1所述的方法,其特征在于,所述对象是控件对象200。
3.如权利要求1所述的方法,其特征在于,所述对象具有元数据且所述许可被存储在所述元数据中430。
4.如权利要求1所述的方法,其特征在于,还包括从所述对象中提取所述元数据430。
5.如权利要求4所述的方法,其特征在于,提取所述元数据还包括将字段链接到其它相关的表格和表单以便可以使用指定用户可以访问什么表格的许可证信息来寻找用户不应访问的表单和字段430。
6.如权利要求1所述的方法,其特征在于,还包括使用代码分析器来分析表单上的任何控件和表格之间的关系,且如果控件只访问用户不具有许可的表格,则所述代码分析器移除所述控件450。
7.如权利要求1所述的方法,其特征在于,还包括确定许可证是否对第二对象可用,且如果所述第二对象的许可证是可用的,则将所述第二对象添加到所述要显示的对象列表中330。
8.如权利要求1所述的方法,其特征在于,还包括在运行时创建所述表单360。
9.如权利要求1所述的方法,其特征在于,还包括创建多个表单,并基于所述许可,显示所述多个表单中的一个360。
10.如权利要求1所述的方法,其特征在于,还包括分析代码来确定对象是否使用了对其不存在许可证的表格,并且如果许可证不存在,则消除所述对象330。
11.如权利要求1所述的方法,其特征在于,所述方法还载入程序颗粒,分析是否需要所述颗粒中的对象并生成经变形的表单330。
12.一种存储用于基于许可来对用户界面进行变形的计算机可执行代码的计算机可读介质,包括:
创建显示表单以显示多个对象200的计算机可执行代码,其中所述对象具有元数据430且所述许可被存储在所述元数据中430;
使用所述对象来获取显示各个对象的许可210的计算机可执行代码;
如果接收到对于要显示的第一对象的许可,则将所述第一对象添加到要显示的对象列表中220的计算机可执行代码;
如果没有接收到对于要显示的第一对象的许可,则制止将所述第一对象添加到要显示的对象列表中220的计算机可执行代码;以及
创建显示所述要显示的对象列表中的对象的经变形的显示表单230的计算机可执行代码。
13.如权利要求12所述的计算机可读介质,其特征在于,还包括用于从所述对象中提取所述元数据430的计算机可执行代码。
14.如权利要求13所述的计算机可读介质,其特征在于,用于提取所述元数据430的所述计算机可执行代码还包括将字段链接到其它相关的表格和表单以便可以使用指定用户可以访问什么表格的许可证信息来寻找用户不应访问的表单和字段的计算机可执行代码。
15.如权利要求12所述的计算机可读介质,其特征在于,还包括用于分析表单上的任何控件和表格之间的关系、且如果控件只访问所述用户不具有许可的表格则移除所述控件450的计算机可执行代码。
16.如权利要求12所述的计算机可读介质,其特征在于,还包括确定许可证是否对第二对象可用、且如果所述第二对象的许可证可用则将所述第二对象添加到所述要显示的对象列表中的计算机可执行代码。
17.一种计算机系统,包括:
处理器(120),
存储器130,以及
输入输出设备133,
所述处理器120能够执行计算机可执行指令,以及
所述存储器130能够存储计算机可执行指令;
所述处理器120被编程为执行创建显示表单以显示多个对象的计算机可执行代码,其中所述对象具有元数据且所述许可被存储在所述元数据中;
所述处理器120被编程为执行使用所述对象来获取显示各个对象的许可210的计算机可执行代码;
如果接收到对于要显示的第一对象的许可,则所述处理器120被编程为执行将所述第一对象添加到要显示的对象列表中210的计算机可执行代码;
如果没有接收到对于要显示的第一对象的许可,则所述处理器120被编程为执行制止将所述第一对象添加到要显示的对象列表中220的计算机可执行代码;
所述处理器120被编程为执行创建显示所述要显示的对象列表中的对象的经变形的显示表单230的计算机可执行代码。
18.如权利要求17所述的计算机,其特征在于,对于用于从所述对象中提取所述元数据的所述计算机可执行代码,所述处理器被编程为执行用于提取所述元数据430的计算机可执行代码还包括:
所述处理器120被编程为执行将字段链接到其它相关的表格和表单以便可以使用指定用户可以访问什么表格的许可证信息来寻找用户不应访问的表单和字段430的计算机可执行代码。
19.如权利要求17所述的计算机,其特征在于,还包括所述处理器120被编程为执行用于分析表单上的任何控件和表格之间的关系、且如果控件只访问所述用户不具有许可的表格则移除所述控件450的计算机可执行代码。
20.如权利要求17所述的计算机,其特征在于,还包括所述处理器120被编程为执行确定许可证是否对第二对象可用、且如果所述第二对象的许可证可用则将所述第二对象添加到所述要显示的对象列表中335的计算机可执行代码。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/400,513 US20070239653A1 (en) | 2006-04-07 | 2006-04-07 | User interface morph based on permissions |
US11/400,513 | 2006-04-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101416143A true CN101416143A (zh) | 2009-04-22 |
Family
ID=38576691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007800123762A Pending CN101416143A (zh) | 2006-04-07 | 2007-01-29 | 基于许可的用户界面变形 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20070239653A1 (zh) |
EP (1) | EP2013697A4 (zh) |
KR (1) | KR20080109828A (zh) |
CN (1) | CN101416143A (zh) |
BR (1) | BRPI0709017A2 (zh) |
RU (1) | RU2008139610A (zh) |
WO (1) | WO2007117349A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110187934A (zh) * | 2019-05-29 | 2019-08-30 | 努比亚技术有限公司 | 应用控制方法、终端及计算机可读存储介质 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8332746B2 (en) * | 2008-06-26 | 2012-12-11 | Microsoft Corporation | Transformation of physical and logical layout forms to logical layout pages |
US10169599B2 (en) * | 2009-08-26 | 2019-01-01 | International Business Machines Corporation | Data access control with flexible data disclosure |
US9224007B2 (en) * | 2009-09-15 | 2015-12-29 | International Business Machines Corporation | Search engine with privacy protection |
US8839186B2 (en) * | 2009-11-05 | 2014-09-16 | Sap Ag | Entity morphing in metamodel-based tools |
US9600134B2 (en) | 2009-12-29 | 2017-03-21 | International Business Machines Corporation | Selecting portions of computer-accessible documents for post-selection processing |
US20110202384A1 (en) * | 2010-02-17 | 2011-08-18 | Rabstejnek Wayne S | Enterprise Rendering Platform |
US9195853B2 (en) | 2012-01-15 | 2015-11-24 | International Business Machines Corporation | Automated document redaction |
US9892278B2 (en) | 2012-11-14 | 2018-02-13 | International Business Machines Corporation | Focused personal identifying information redaction |
WO2014142830A1 (en) * | 2013-03-13 | 2014-09-18 | Unify Gmbh & Co. Kg | Method, device, and system for communicating a changeability attribute |
US8955148B1 (en) | 2013-10-18 | 2015-02-10 | GB & Smith SARL | Matrix security management system for managing user accounts and security settings |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5381526A (en) * | 1992-09-11 | 1995-01-10 | Eastman Kodak Company | Method and apparatus for storing and retrieving generalized image data |
US5812995A (en) * | 1993-10-14 | 1998-09-22 | Matsushita Electric Industrial Co., Ltd. | Electronic document filing system for registering and retrieving a plurality of documents |
US6029145A (en) * | 1997-01-06 | 2000-02-22 | Isogon Corporation | Software license verification process and apparatus |
US6539388B1 (en) * | 1997-10-22 | 2003-03-25 | Kabushika Kaisha Toshiba | Object-oriented data storage and retrieval system using index table |
US6509913B2 (en) * | 1998-04-30 | 2003-01-21 | Openwave Systems Inc. | Configurable man-machine interface |
US6697824B1 (en) * | 1999-08-31 | 2004-02-24 | Accenture Llp | Relationship management in an E-commerce application framework |
US7080037B2 (en) * | 1999-09-28 | 2006-07-18 | Chameleon Network Inc. | Portable electronic authorization system and method |
US6985955B2 (en) * | 2001-01-29 | 2006-01-10 | International Business Machines Corporation | System and method for provisioning resources to users based on roles, organizational information, attributes and third-party information or authorizations |
US20050091191A1 (en) * | 2003-09-24 | 2005-04-28 | Greg Miller | System and method for managing and utilizing information |
US20050240857A1 (en) | 2004-04-02 | 2005-10-27 | Jason Benedict | Methods and systems of information portal construction |
-
2006
- 2006-04-07 US US11/400,513 patent/US20070239653A1/en not_active Abandoned
-
2007
- 2007-01-29 CN CNA2007800123762A patent/CN101416143A/zh active Pending
- 2007-01-29 KR KR1020087024408A patent/KR20080109828A/ko not_active Application Discontinuation
- 2007-01-29 WO PCT/US2007/002659 patent/WO2007117349A1/en active Application Filing
- 2007-01-29 EP EP07749629A patent/EP2013697A4/en not_active Withdrawn
- 2007-01-29 RU RU2008139610/09A patent/RU2008139610A/ru not_active Application Discontinuation
- 2007-01-29 BR BRPI0709017-0A patent/BRPI0709017A2/pt not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110187934A (zh) * | 2019-05-29 | 2019-08-30 | 努比亚技术有限公司 | 应用控制方法、终端及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
KR20080109828A (ko) | 2008-12-17 |
RU2008139610A (ru) | 2010-04-20 |
WO2007117349A1 (en) | 2007-10-18 |
US20070239653A1 (en) | 2007-10-11 |
EP2013697A1 (en) | 2009-01-14 |
EP2013697A4 (en) | 2011-01-26 |
BRPI0709017A2 (pt) | 2011-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101416143A (zh) | 基于许可的用户界面变形 | |
TW498201B (en) | System and method for generating year 2000 test cases | |
CN102945248B (zh) | 用于对电子表格数据进行报告的自动关系检测 | |
Kovitz | Practical software requirements: a manual of content and style | |
US7949938B2 (en) | Comparing and merging multiple documents | |
US10198425B2 (en) | Methods and apparatus for reusing report design components and templates | |
US8260713B2 (en) | Web-based system providing royalty processing and reporting services | |
Southerton | Datafication | |
CN101542455A (zh) | 过滤可扩展应用程序标记语言(xaml)文件以便于索引 | |
US20150052157A1 (en) | Data transfer content selection | |
US20170300305A1 (en) | Executable guidance experiences based on implicitly generated guidance models | |
US9613089B2 (en) | Form template refactoring | |
Alghushairy et al. | Data storage | |
Huang | Data processing | |
Imran et al. | Data provenance | |
US20080294396A1 (en) | System and method for validating design requirements | |
US9286349B2 (en) | Dynamic search system | |
US10185747B2 (en) | Presenting publisher data sets in context | |
CN114201157A (zh) | 一种低代码定制目标业务模块的方法以及系统 | |
Whittington | Wiley CPAexcel Exam Review 2015 Study Guide (January): Business Environment and Concepts | |
Zhang | Data Synthesis | |
Walters et al. | Beginning SQL Server 2012 Administration | |
US20100250621A1 (en) | Financial-analysis support apparatus and financial-analysis support method | |
Wen | Data sharing | |
US20240005235A1 (en) | Method and system for dynamically recommending commands for performing a product data management operation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090422 |