一种用于界面展示抽象与集成的方法

文档序号:6619325阅读:212来源:国知局

专利名称::一种用于界面展示抽象与集成的方法
技术领域
:本发明涉及一种计算机应用技术,是面向非专业或专业技术人员使用的,可以迅速高效开发软件集成展示界面的一项技术,并且可以支持报表展示界面的抽象化开发。
背景技术
:目前管理软件开发中,界面的集成与修改需要通过编程进行实现,在更多的使用人员在进行自身方便性的操作中需要对界面进行更好的操作集成,此时均需要进行软件代码的调整方可做到。在管理软件的实施中,企业客户均会根据自身的管理特点,要求定制大量的报表,以满足数据分析的需要,在传统的报表开发中,报表界面均需要进行单独制作,或通过软件编程制作,此时需要大量的开发工作,并且重复工作居多,调整修改工作量大,并且风格不易于统一,给使用者造成过多的麻烦。
发明内容本发明的目的是克服现有技术的不足,提供一种用于界面展示抽象与集成的方法。本发明的目的是按以下方式实现的,利用数据保存功能实现变量的不同配置和标签的跳转功能,实现界面的集成与抽象,具体标签语言如下〈CX〉CXBH:SJLM1=C0L1:SJLM2=COL2....</CX〉用于指向一个报表,报表的打开参数启用当前的列;〈CCX〉CXBH:SJLM1=C0L1:SJLM2=C0L2....〈/CCX〉用于在当前界面打开一个报表,报表的打开参数启用当前的列,前提是该记录没有表体;〈CCXEVENT〉事件名〈/CCXEVENT〉如果在当前界面中打开了报表,相应的调用会触发报表相关的事件,如打印,页面配置,图形展示;〈ARGCX〉CXBH〈/ARGCX〉用于指向一个报表,如果报表有参数,会要求录入参数;〈WD〉COLUMN:WDBH:TYPE〈/WD〉用于指向一个与本界面相关的一个记录,COLUMN=本界面中的列名,type=0/1流水编号/记录编号;〈WD冊〉WDBH〈/WDWH〉用于增加某一个记录;〈WDSP〉WDBH〈/WDSP〉用于审批某一个记录;〈WDCX〉WDBH〈/WDCX〉用于査询某一个记录;〈WDTJ〉WDBH〈/WDTJ〉用于统计某一个记录;〈WDGOTO〉WDBH:ID:TYPE〈/WDG0T0〉用于转向一条固定的记录;〈RUN〉appname〈/RUN〉用于指向myGSpSeries中的相应模±央;〈EXCEL—PRINT〉如果相应的记录的附件为EXCEL模式,那么便可以逊经此Sr式获得^的附件模板,并完成变量替换,可以起到使用EXCEL打印的目的;〈CRUN〉印pname〈/CRUN〉用于指向任意的程序调用,可以调用系统中的相应的程序,调用中可以使用相应的程序运行参数进行调用;〈HELP—BUTTON〉COLUMN〈/HELP一BUTTON〉用于指向某一列的右键帮助调出,COLUMN为指向的列,可以在界面设计中看到具体的列名;〈PUBFUN—BUTTON>FUNCTION</PUBFUN—BUTTON〉用于调用一个全局函数,通过此可以将二次开发的内容与系统的界面环境有机的结合在一起;〈CONTROL〉TYPE:NAME:CONK/CONTROL〉用于定义界面中的控件,可以在界面中设定相应的控件为树,为列表;详见报表界面控件定义说明;〈CLOSE—WINDOW〉;用于关闭当前窗口;〈APPLICATION—STOP〉用于退出整个应用程序;〈CONTROL〉TYPE:NAME:CONT〈/CONTROL〉用于在界面创建相应的控件,相关的内容有TYPE:可以为TREE、LB、DDLB、DW、REPORT、SP,具体的含义是TREE导航树控件用于对主报表的数据进行过滤;LB列表控件用于对主报表的数据进行过滤;DDLB下拉列表框控件用于对主报表的数据进行过滤;DW数据窗口控件。用于査看主报表当前行的明细信息情况;REPORT报表控件用于查询主报表当前行的明细信息情况;SP分隔条控件用于在报表运行时调整报表的位置;NAME:赋给相应控件的名字,在分隔条引用时便需要使用此名字进行引用,注意在输入名字时不应该出现重复名称;CONT:用于对每个控件效果的配置。具体根据不同的控件有不同的配置方法;TREE控件的配置格式多选标志(M/S):列1,:列2,:..........多选标志M二允许数据项多选,S-只允许对数据项进行单选;列对应于主报表的具体列,注意在列的后面有一个逗号;LB控件的配置格式多选标志(M/S):列:数据源格式:数据源表达式;多选标志NN允许数据项多选,S^R允许对数据项进行单选;列对应于主报表的具体列,注意在列的后面有一个逗号;数据源格式与数据源表达式用于指明相应列表中的数据如何形成,有以下几种方式;LIST:列表,此时数据源表达式为一个逗号隔开的串,如01,02,03,04…;AREA:区间,此时数据源表达式为起始值:结束值:显示长度;如月份可以写为01:12:2;DW:指明相应的列表来自于前面指定的列;DB:指明相应的列表来自于数据库。如部门表示为SELECTKCBMZD_BMMCFROMKCBMZDWHEREKCBMZD-MX=1;MONTH:指十二个月份,0广12;DDLB控件的配置格式列:条件:数据源格式:数据源表达式;列指明此控件与哪一个列相关;条件指明运算符号=〉〈〉=〈=<〉LIKE,LIKE—LEFT,LIKE—RIGHT,另外可以直接书写一个复杂的条件,注意使用&&符号来代表当前值,并且要注意引号的处理,因为系统中不自动处理引号;数据源格式与数据源表达式用于指明相应列表中的数据如何形成,有以下几种方式;LIST:列表,此时数据源表达式为一个逗号隔开的串,如01,02,03,04…AREA:区间,此时数据源表达式为起始值:结束值:显示长度,如月份写为01:12:2;DW:指明相应的列表来自于前面指定的列。DB:指明相应的列表来自于数据库。如部门可以表示为SELECTKCBMZD一B腿CFROMKCBMZDWHEREKCBMZD—MX=1;MONTH:指十二个月份,0112;DW控件的配置格式dwo—name:arg—coll:arg—col2:arg_col____;Dwcuiame:引用的数据窗口对象的名称,使用PB开发,然后通过数据窗口导入功能导入系统;Arg…相应数据窗口的参数的来源,列的名字必须为主报表中相应的列;在报表运行时,系统首先获得主报表的当前行,然后依次获得该行相应列上的值;REPORT控件的配置格式CXBH:S几M1-C0L1:SJLM2-COL2....CXBH:报表编号;SJLM:被关联报表的参数名称;COL:主数据窗口的列的名称;SP控件的配置格式H/V:0BJ1,OBJ2,..OBJ21,0BJ22...;H表示为水平分隔,V表示为纵向分隔;0BJ1,0BJ2"'为第一组,如为H表示在左边,如为V表示在上边;0BJ21,0BJ22…为第二组,如是H表示在右边,如为V表示在下边。本发明的方法所具有功能和有益效果1.可以面向具体的使用人员快速开发登录主界面,业务操作界面,数据分析界面。2.相似报表的界面进行模板定制,然后可以与操作界面进行集成展示,获得快速的开发效率与统一的软件风格。3.可以在报表界面添制各类程序控件,可以制作图文并茂的分析界面。>数据导航树,支持单复选功能,可以与报表中的数据实时联动。>列表选择,支持单复选功能,可以与报表中的数据实时联动。>下拉框选择、日期选择、数据项选择等过滤类控件,均可同报表数据实时联动。>子报表控件可以依据主报表内容实时联动,数据展现更加精细。>子图形控件可以依据主报表内容实时图形展示,可以按各种维度与图形方式进行数据展现。4.可以界面中设定打印、跳转、超链接、图形展示、退出程序、EXCEL转换等操作按钮。跳转按钮可以支持数据的新增、查询、审批、统计、具体数据记录等,从而有机的将各类软件作业元素集成在一起。5.可以设定背景图片、按钮图片、字体、边框等属性,可以制作出丰富生动的界面。6.简单的使用要求,可以使更多的人员参与开发,给企业信息化建设节约大量成本。具体实施例方式主要程序组件1、界面设计组件uo—dw_adjust>实例变量stringis_dwname//待调整界面名称stringis—system〃所在的系统编号stringis_function〃相应的功能编号,用于标识出待调整的内容stringis—name//存储时的数据窗口名称=is—dwname+is—system+is—functionstringis—detail—name=,st—dw—detail'//用于标识dw—detail的位置stringis—end—col=''〃用于标识出最后编辑列的位置stringis—right—col=,,,is_down—col=',〃右键歹ij、按下列stringis—current—col=,',is—current—old—back=,0,,is—current—old—backmode='0'〃当前列,背景,背景透明度stringis_current_oId—border='0'〃原边框longil—max—width//最大宽度longil—max—height//最大高度stringis—col[],is—text[]〃必有列的列名,及文本datastoreids—objects〃对象存储缓冲区n—cst一dw一adjustinv—fun〃函数库m—jxc—face_popupim—rbutton〃右键菜单stringis—rbutton—object〃被右键点中的对象stringis—units〃长度单位0pbu,1ix,2,3stringis_dw—type//界面风格1gridbooleanib—wdmaster=false〃标明是否为综合管理的表头Stringis一doctype〃记录的编号datawindowidCur〃子控件>公用方法of一refresh(stringas—dwname,stringas—system,stringas_funrtion'p〃"用于完成实例变量的初始化,并初始好相应的状态of—save()//保存相应的设计of—recover()〃撤消新设计内容,还原原有设计of—read()〃读取相应的界面>相应的数据表/*界面调整注册表*/CREATETABLELSJXCFACEDWF—SYSCHAR(2)NOTNULL,/*系统编号*/F—FUNVARCHAR(30)NOTNULL,/*功能编号*/F—DWVARCHAR(60)NOTNULL,/*数据窗口*/F一丽EVARCHAR(60)NOTNULL,/*说明*/F—證WuOOldefault0Notnull,/*最大宽度*/F—磁HuOOldefault0Notnull,/*最大高度*/F—HEADC醒(l)default'1'Notnull,A是否表头,目前只处理表头内容,F一STATECHAR(l)DEFAULT'0'NotNULL,/*是否有相应的状态*/F—DETAILVARCHAR(60)null,/*用于标示表体的对象名称,在调整界面时直接进行调整到相应的位置进行履盖即可*/F—MODEimagenull/氺氺/)gocreateuniqueindexLSJXCFACEDWonLSJXCFACEDW(F_SYS,F—FUN,F—DW)go/*界面调整相应必有列*/CREATETABLELSJXCFACECOLF—SYSC膽(2)NOTNULL,/*系统编号*/F_—FUNVARCHAR(30)丽NULL,/*功能编号*/F_—DWVARCHAR(60)NOTNULL,/*数据窗口*/F——COLVARCHAR(60)Notnull,/*最大宽度*/F—_TEXTMRC臓(60)null,/*最大高度*/F—_N0TEVARC腿(IOO)null/*是否表头,目前只处理表头内容*/)gocreateuniqueindexLSJXCFACECOLonLSJXCFACECOL(F—SYS,F—FUN,F—DW,F—COL)go2、界面解析组件w—wd_record>实例变量—Booleanib—new=false〃是否新增数据,在新增时置为true,在刷新时置为false.BooleanIb_protect〃是否是可修改状态Booleanib—include—detail=false〃表头的公式中是否包含表体StringIs—doctype〃记录类型StringIs—modetype〃模板类型StringIs—wintype〃窗口类型CX-查询,冊=维护,SP二审批StringIs_lsbh,1s—sjdh〃流水编号,被参照单据编号StringIs—sql〃数据窗口的原始sql,通过get—sqlselect获得StringIs—lsbhcol,is—table〃流水编号列名='WD'+IS—DOCTYPE+'—LSBH'StringIs—where〃窗口的条件(包括权限,审批的条件),用于上下翻页。StringIs_sql_select//用于査找的sqlStringIs—text—select〃用于查找时相应的显示文本StringIs_doctype—name//记录类n—cst_approveiuo—sp〃审批公用组件StringIs—spdx〃审批对象n—cst—wd—operationiuo_operation〃文档操作n—cst_wd_pubiuo—wdpub〃公用方法n—est—wd_menuiuo—wdmenu〃公用菜单n—cst—wd—grantiuo—grant〃公用权限n—est—dw」nputdatainv_da_W/历史数据帮助对象〃开始査询的曰期,用在查找取消的范围。stringis—begin—cxstringis—begin—back_widthbooleanib—begin=false〃用于控制是否进行公式运算,在RETRIEVEEND中赋值。在ITEMCHNAGED与UE一ADD中解值booleanib—auto—generate二false//是否为自动生成数据blobib—message—model〃外部传递进来的模板datastoreids—formular〃保存公式对象。stringis—sfmx〃是否有表体0没有,l,有stringis—detail—sql—select〃明细数据窗口最初语法n_cst_dwsrv—faceinv_dw_face〃用于调整数据窗口显示的对象Stringis—unique_col[],is—unique_col—master[],is—unique_sql—master,is—unique—sql一msg〃用于标识唯一索弓l的列串longil—mod—count—master=0〃用于标识相应的数据更新后是否被计算过了。=0表示计算过了,只处理表头。stringis—cx>py_Col=''〃用于标识被拷贝的列名。在窗口初始中进行初始化m—record_popmenuim_popmenu//^于弹出式菜单-重置模板stringis—last—move—obj=''〃用于标明上一次被修改字体WEIGHT的对象booleanib—show—toolbar=true〃用于指明TOOLBAR是否显示booleanib—approve—modify=false〃用于保存当前用户在审批时可以修改的列的列名stringis—approve—columns=,'〃审核中允许修改的列w—jxcj)ub_cx—childiw—r印ort〃用于直接在当前界面打开报表的子窗口booleanib—is—r印ort=false〃用于指明当前的界面为一个报表。在进行退出时,不进行是否保存的检查。n—wd—r印ort—controlinv—r印ort—contro1〃用于处理报表过滤与相关性的对象booleanib—r印or^first_open=true〃用于标明是否己经打开过报表,如果已经打开了,那么便不需要再在RETRIEVEEND中再行打开booleanib—save—succ=false//用于标明是否保存成功stru—wd_same—objectistru—obj[]〃存放界面上相同连接的对象列表datastoreids—objectsstru_wd—same—objectistru_last—obj/7界面上最后滑过的对象stringis—sctype〃是否是参照生成的单据O—正常生成1---参照生成〃------------------------------〃用于表示DETAIL区的计算〃〃用于记录明细区的公式信息,以加快计算速度。〃在函获得wf—set_detail—col—formular_info()中进行初始//在函数wf一set—by一fo丽lar—detail()中进行弓l用。〃仅有有公式的列被记录。stringis—detail—f—col[]〃每一个歹lj。stringis—detail—f—type[]〃列的类型,前四位的大写longil—detail—f—count〃有公式列的数量和Booleanib—detail—f—contain—m2fun2—var=false//是否在明细g中引稱了凌头或统计的数据。如果没有引用,那么便不需要在每次计算表体时进行重算了,可以大大加快运算速度。Stringis—detail—f—uncal=,,〃未计算的分录编号串。在DETAIL,itemchanged中进行设置,在wf—set—formular—detail进行解除,是一个串。flnm,flnm.,〃----------------------------------------〃用于标识需要拷贝上一行数据的列。〃在函数wf_set—item—default—value中置初始值,在〃ue—add—detail中调用stringis—detail—copy—uprow—cols[]stringis—detail—copy—uprow—types[]〃STRING,NUMBER,DATE〃用于标识明细区可以编辑的第一个列。min(tabsequence>0)stringis—detail—first—editable—column=''stringis—master—first—editable—column=',〃是否为打开窗口时。//读取与设计仅在wf—set—detail—hscrolljosition()函数中调整使用booleanib—opening=true>功能简述1.完成界面解析;2.完成数据的增加、删除、修改、审批、打印、EXCEL转出;3.公共方法库n—est—wd_pub。>方法库publicfunctionintegerof—create—head(refdatawindowadw,stringas—head)publicfunctionintegerof_gen—select—dw(stringas—sql,stringas一text,datawindowadw)publicfunctionintegerof—filter(refdatawindowadw)publicfunctionstringof—get—code(datawindowadw,stringas—col)publicfunctionstringof—create—find(datawindowadw,stringas—item)publicsubroutineof_fiIter—column(datawindowadw,stringas—col)publicfunctionstringof—get—select—id(stringas_sql,stringas—text)publicfunctionintegerof—show(stringas—string,stringas—id)publicfunctionintegerof—check—save(stringas_doctype,datawindowadw)privatefunctionintegerof—create—compute(datawindowadw,stringas—table)publicfunctionintegerof_generate_datawindow(stringas—dwname,stringas_sql,stringas—text,stringas_protectcol,stringas—head,stringas—table,datawindowadw,stringas—key,stringas—show)publicfunctionintegerof一set一shbz一code(datawindcwadw,st:ritigae^c"L)"publicfunctionintegerof—set—code(datawindowadw,stringas_col,stringas一code)publicfunctionintegerof—replace(datawindowadw,refstringas一string〉publicfunctionintegerof_check_data(stringas—doctype,stringas—col,stringas—data,datawindowadw)publicfunctionlongof—get一r印lace(datawindowadw,refstringas—col[],refstringas—data[],refstringas—text[])publicsubroutineof—set—mb一help(stringas_doctype,stringas—col,datawindowpdw,wstruselfpwstruself)publicsubroutineof—goto(stringas—doctype,stringas—sjlm,stringas—data)privatefunctionintegerof—set—wd一not一null(datawindowadw,stringas一col)publicfunctionlongof—excel—replace(datawindowadw)publicfunctionintegerof—gen—select—dw一backup20030710(stringas—dwname,stringas—sql,stringas—text,stringas_protectcol,stringas一head,stringas_table,datawindowadw,stringas—key,stringas—show)publicfunctionintegerof—get—help—column(stringas—doctype,refstringas—col,refstringas—text,stringas—flag)publicfunctionintegerof—generate—detail—dw(stringas—dmame,stringas一sql,stringas—text,stringas_protectcol,stringas—table,datawindowadw,stringas一key,stringas—show)publicfunctionstringof-gen_face_sql(stringps—base一name,stringps—djbh,stringps_flag,refstringps—text,refstringps—cols,refstringps_protectcol,refstringps—show)publicfunctionstringof—get—id(stringas—type,stringas—where)publicfunctionintegerof—get—help(datawindowadw,datawindowadw2,stringas—doctype,stringas—col)publicfunctionstringof一get一id(stringas一type,stringas—where,booleanab—more)publicfunctionstringof_get—select—id(stringas—sql,stringas—text,BOOLEANAb—more)publicfunctionstringof—get—single—id(datawindowadw,stringas—col)publicfunctionstringof—get—code2(datawindowadw,stringas—col,stringas—code—id)publicfunctionstringof_get_code(datawindowadw,stringas—col,refstringas—look—id)publicfunctionstringof—gen—col—alias(stringas_old)publicfunctionintegerof—gen—detail_position(refdatawindowadw)publicfunctionintegerof—reset—mode(datawindowpdw,stringps_lxbh,stringps—lsbh)publicfunctionlongof一excel一r印lace(datawindowad诉,datawindowadw2,booleanab—havedetai1)publicfunctionintegerof一replace一nomsg(datawindowadw,refstringas—string)publicfunctionstringof一get—formular(stringas—doctype,stringas—col)publicfunctionstringof—get—formular(stringas_doctype,stringas一col,datawindowadw)publicfunctionintegerof—set—query(datawindowadw,datawindowadw2,stringas_sql,stringas—text,stringas—title,stringas—id)publicfunctionstringof一format一text一sign(stringas一old)publicfunctionstringof—get—help—for—cx(stringas—cxbh,stringas—xmbh)publicsubroutineof—goto(stringas—doctype,stringas—sjlm,stringas—data,datawindowadw)publicsubroutineof—goto(stringas_doctype,stringas—sjlm,stringas—data,datawindowadw,datawindowadw2)publicsubroutineof—new(stringas—type,stringas—string,stringas—col,datawindowadwl,datawindowadw2)publicsubroutineof—goto—cx(datawindowadw,stringas_goto)publicfunctionintegerof一set—dw_protect(datawindowadw,stringas—col)publicfunctionbooleanof—goto—cx—get—arg(datawindowadw,stringas—goto,refstringas—cxbh,refstringas—sjlm[],refstringas—value[])publicfunctionlongof一count一distinct(datawindowadw,stringas—col)publicfunctionintegerof_play—sound(stringas—file)publicfunctionbooleanof一check一cdkey(stringas—type,stringab_pos)publicfunctionstringof—trans—statistical—fun(datawindowadw,stringas—formular)publicfunctionintegerof—check—data(stringas—doctype,stringas—col,stringas一data,datawindowadw,datawindowadw2)publicfimctionintegerof—check一save(stringas—doctype,datawindowadw,datawindowadw2)publicfunctionstringof—get—mul—id(stringas—sql,stringas_title,stringas—where)publicfunctionintegerof一goto—function(stringas_parm)publicfunctionintegerof—generate—datawindow一1024(stringas一dwname,stringas—sql,stringas—text,stringas_protectcol,stringas—head,stringas_table,datawindowadw,stringas—key,stringas—show)publicfunctionintegerof—create—head—1024(refdatawindowadw,stringas一head)publicfunctionintegerof一gen一detail_position_1024(refdatawindowadw)publicfunctionstringof—get—wd—format(stringas—colname)publicfunctionstringof—get—wd—editmask(stringas_colname)privatefunctionintegerof—create—compute—1024(datawindowadw,stringas—table)publicfunctionstringof—get—wd—list(stringas—colname)publicfunctionlongof_excel_replace_rows(datawindowadw,stringas—area)publicfunctionintegerof—excel—savetodatabase(stringas—filename)publicfunctionstringof一get一frist一editahle一column(datawindowadw)publicfunctionintegerof—set—current__edit_position(datawindowadw)publicfunctionstringof_get_where_other_sjqx(stringas—doctype)本发明的方法同时解决了现有技术中存在的问题,使用过程中不需要软件编程,普通的技术人员通过在界面中的标签灵活定义,可以将操作者需要的内容在作业界面中进行有机的集成,可以满足各类软件使用人员对软件使用过程中的调整要求。在本发明中的变量处理方式,可以将报表编号、报表中的列名、参数名作为变量进行处理,同时报表界面中的所有变量均可以独立存储在数据库中,配合页面转向中独立记录的指向方式,可以实现报表展示界面的抽象化开发,此举可以解决目前流行的BI工具中界面不易抽象的不足,为开发者节省大量的时间,并可以提供出统一的展示界面,方便使者的学习与操作,从而给开发者减少开发量,并给使用者一个统一易学的集成操作界面。权利要求1、一种用于界面展示抽象与集成的方法,其特征在于采用标签语言进行界面设计,利用数据保存功能实现变量的不同配置和标签的跳转功能,实现界面的集成与抽象,具体标签语言如下<CX>CXBH:SJLM1=COL1:SJLM2=COL2....</CX>用于指向一个报表,报表的打开参数启用当前的列;<CCX>CXBH:SJLM1=COL1:SJLM2=COL2....</CCX>用于在当前界面打开一个报表,报表的打开参数启用当前的列,前提是该记录没有表体;<CCXEVENT>事件名</CCXEVENT>如果在当前界面中打开了报表,相应的调用会触发报表相关的事件,如打印,页面配置,图形展示;<ARGCX>CXBH</ARGCX>用于指向一个报表,如果报表有参数,会要求录入参数;<WD>COLUMN:WDBH:TYPE</WD>用于指向一个与本界面相关的一个记录,COLUMN=本界面中的列名,type=0/1流水编号/记录编号;<WDWH>WDBH</WDWH>用于增加某一个记录;<WDSP>WDBH</WDSP>用于审批某一个记录;<WDCX>WDBH</WDCX>用于查询某一个记录;<WDTJ>WDBH</WDTJ>用于统计某一个记录;<WDGOTO>WDBH:ID:TYPE</WDGOTO>用于转向一条固定的记录;<RUN>appname</RUN>用于指向myGSpSeries中的相应模块;<EXCEL_PRINT>如果相应的记录的附件为EXCEL模式,那么便可以通过此方式获得记录的附件模板,并完成变量替换,可以起到使用EXCEL打印的目的;<CRUN>appname</CRUN>用于指向任意的程序调用,可以调用系统中的相应的程序,调用中可以使用相应的程序运行参数进行调用;<HELP_BUTTON>COLUMN</HELP_BUTTON>用于指向某一列的右键帮助调出,COLUMN为指向的列,可以在界面设计中看到具体的列名;<PUBFUN_BUTTON>FUNCTION</PUBFUN_BUTTON>用于调用一个全局函数,通过此可以将二次开发的内容与系统的界面环境有机的结合在一起;<CONTROL>TYPE:NAME:CONT</CONTROL>用于定义界面中的控件,可以在界面中设定相应的控件为树,为列表;<CLOSE_WINDOW>;用于关闭当前窗口;<APPLICATION_STOP>用于退出整个应用程序;<CONTROL>TYPE:NAME:CONT</CONTROL>;用于在界面创建相应的控件,相关的内容有TYPE包括TREE、LB、DDLB、DW、REPORT、SP,具体的含义是TREE导航树控件用于对主报表的数据进行过滤;LB列表控件用于对主报表的数据进行过滤;DDLB下拉列表框控件用于对主报表的数据进行过滤;DW数据窗口控件。用于查看主报表当前行的明细信息情况;REPORT报表控件用于查询主报表当前行的明细信息情况;SP分隔条控件用于在报表运行时调整报表的位置;NAME赋给相应控件的名字,在分隔条引用时便需要使用此名字进行引用,注意在输入名字时不应该出现重复名称;CONT用于对每个控件效果的配置。具体根据不同的控件有不同的配置方法;TREE控件的配置格式多选标志(M/S)列1,列2,………..多选标志M=允许数据项多选,S=只允许对数据项进行单选;列对应于主报表的具体列,注意在列的后面有一个逗号;LB控件的配置格式多选标志(M/S)列数据源格式数据源表达式;多选标志M=允许数据项多选,S=只允许对数据项进行单选;列对应于主报表的具体列,注意在列的后面有一个逗号;数据源格式与数据源表达式用于指明相应列表中的数据如何形成,有以下几种方式;LIST列表,此时数据源表达式为一个逗号隔开的串,如01,02,03,04…;AREA区间,此时数据源表达式为起始值结束值显示长度;如月份可以写为01∶12∶2;DW指明相应的列表来自于前面指定的列;DB指明相应的列表来自于数据库。如部门表示为SELECTKCBMZD_BMMCFROMKCBMZDWHEREKCBMZD_MX=1;MONTH指十二个月份,01~12;DDLB控件的配置格式列条件数据源格式数据源表达式;列指明此控件与哪一个列相关;条件指明运算符号=><>=<=<>LIKE,LIKE_LEFT,LIKE_RIGHT,另外可以直接书写一个复杂的条件,注意使用&&符号来代表当前值,并且要注意引号的处理,因为系统中不自动处理引号;数据源格式与数据源表达式用于指明相应列表中的数据如何形成,有以下几种方式;LIST列表,此时数据源表达式为一个逗号隔开的串,如01,02,03,04…AREA区间,此时数据源表达式为起始值结束值显示长度,如月份写为01122;DW指明相应的列表来自于前面指定的列。DB指明相应的列表来自于数据库。如部门可以表示为SELECTKCBMZD_BMMCFROMKCBMZDWHEREKCBMZD_MX=1;MONTH指十二个月份,01-12;DW控件的配置格式dwo_namearg_col1arg_col2arg_col....;Dwo_name引用的数据窗口对象的名称,使用PB开发,然后通过数据窗口导入功能导入系统;Arg…相应数据窗口的参数的来源,列的名字必须为主报表中相应的列;在报表运行时,系统首先获得主报表的当前行,然后依次获得该行相应列上的值;REPORT控件的配置格式CXBHSJLM1=COL1SJLM2=COL2....CXBH报表编号;SJLM被关联报表的参数名称;COL主数据窗口的列的名称;SP控件的配置格式H/VOBJ1,OBJ2,..OBJ21,OBJ22...;H表示为水平分隔,V表示为纵向分隔;OBJ1,OBJ2…为第一组,如为H表示在左边,如为V表示在上边;OBJ21,OBJ22…为第二组,如是H表示在右边,如为V表示在下边。全文摘要本发明提供一种用于界面展示抽象与集成的方法,该方法解决了现有技术中存在的问题,使用过程中不需要软件编程,普通的技术人员通过在界面中的标签灵活定义,可以将操作者需要的内容在作业界面中进行有机的集成,可以满足各类软件使用人员对软件使用过程中的调整要求。在本发明中的变量处理方式,可以将报表编号、报表中的列名、参数名作为变量进行处理,同时报表界面中的所有变量均可以独立存储在数据库中,配合页面转向中独立记录的指向方式,可以实现报表展示界面的抽象化开发,此举可以解决目前流行的BI工具中界面不易抽象的不足,为开发者节省大量的时间,并可以提供出统一的展示界面,方便使者的学习与操作,从而给开发者减少开发量,并给使用者一个统一易学的集成操作界面。文档编号G06F9/44GK101187864SQ20071011446公开日2008年5月28日申请日期2007年11月21日优先权日2007年11月21日发明者刘清华申请人:浪潮集团山东通用软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1