Visual FoxPro数据字典设计方案初探

来源 :源流·教育版 | 被引量 : 0次 | 上传用户:fanjun6699
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】开发和建立MIS的根本目的在于提高管理水平,严格地说,设计一个信息系统,应首先进行组织的设计,为了对数据流程图中的各个元素做出详细的说明,有必要建立数据字典。数据字典就是关于数据信息的数据库。它是在数据流程图的基础上,进一步定义和描述所有数据的工具,包括对一切动态数据(数据流)和静态数据(数据存贮)的数据结构和相互关系的说明,是数据分析和数据管理的重要工具,是系统设计阶段进行数据库(文件)设计的参考依据。
  【关键词】数据字典 表单 控件 事件 属性
  
  数据字典就是关于数据信息的数据库。换言之,它就是元数据的仓库。
  本文介绍了应用Visual FoxPro数据字典功能的三种常用方法。
  一、基于较少固定数据项的数据字典
  在资产管理系统中,数据字典的应用比较广泛,如资产类型、资产单位、资产来源、部门信息、员工信息等等。我们以资产类型为例来介绍数据字典的第一种应用方法:假设资产类型分为三类,即固定资产、低值耐用品、低值易耗品。实现方法:首先创建一个表单,在表单中添加两个控件,标签Label和组合框Combo,如图1所示
  分别设置两个控件的主要属性为:
  保存并执行表单,点击组合框下拉箭头可选择列出的值(效果如图2所示)。
  这种数据字典应用是VF中最为简便的方法,但只适用于较少固定数据项的数据字典,字典内容不便修改与扩充是其最大的缺点。
  二、基于数据库的数据字典
  为了方便对数据字典的内容进行修改与扩充,一般情况下,要对数据字典,分别建立相应的数据表。
  如上例所提,可做如下改变:
  首先要建立“资产分类表”用来保存系统资产的类别,只包含“资产类别”1个该表的设置如下所示:
  建立如图1所示的表单。添加表单form1的Init事件代码如下:
  sele 资产分类
  **调用“资产分类”数据表**
  两个控件的主要属性为:
  这一应用较之第一种来说,具有更大的灵活性。如果我们需要更改数据字典的内容,只需另外设计一个表单(更直接的办法是利用表单向导),对“资产分类表”进行操作即可。
  三、基于更复杂的数据字典
  在实际设计过程中,我们要从较复杂的数据字典中获得信息,如在学校资产管理系统中,需要确定某一设备的规定分类号,就要从《高等学校资产分类目录及编码》中查询并使用,而此目录中所包含类别有近2万类,这就给查询和使用带来了问题。我的解决方案是这样的:
  首先,设计一个表单,如图3所示。
  图3
  添加三个控件,1个标签控件,1个文本框控件Text1,1个组合框控件Combo1,调整这三个控件的位置、大小及属性如图3所示。
  图4
  添加Combo1控件的DropDown事件代码如下:
  *——调用“分类号选择”对话框
  DO FORM 代码查询 TO FANO
  *——如果返回了资产分类号
  IF .NOT. EMPTY(ALLTRIM(FANO))
  THISFORM.text1.VALUE = FANO
  THISFORM.text1.VALID
  ENDIF
  第二步,设计“分类号选择”表单,如图4所示。
  在表单中,设计有1个选项按钮组OptionGroup1,其Click事件代码为:
  set filt to
  do case
   case this.value=1
   thisform.label1.caption="选择分类:"
   thisform.text1.enabled=.f.
   thisform.text1.visible=.f.
   thisform.combo1.visible=.t.
   thisform.combo1.enabled=.t.
   thisform.combo1.setfocus
   case this.value=2
   thisform.label1.caption="输入关键字:"
   thisform.combo1.enabled=.f.
   thisform.combo1.visible=.f.
   thisform.text1.visible=.t.
   thisform.text1.enabled=.t.
   thisform.text1.setfocus
  endcase
  1个表格控件Grid1,其Text1的DblClick事件代码为:
  *——将选择的值赋给自定义变量
  THISFORM.rValue = ALLTRIM(THIS.VALUE)
  *——退出表单
  THISFORM.Release
  1个按钮控件Command1,其Click事件代码为:
  if thisform.optiongroup1.value=1
   do case
   case alltrim(thisform.combo1.value)='00;.全部'.or.;
  len(alltrim(thisform.combo1.value))=0
  kk=''
   case alltrim(thisform.combo1.value)='01.房屋'
  kk='fldm="01"'
   case alltrim(thisform.combo1.value)='02.土地及植物'
   kk='fldm="02"'
   case alltrim(thisform.combo1.value)='03.仪器仪表'
   kk='fldm="03"'
   case alltrim(thisform.combo1.value)='04.机电设备'
   kk='fldm="04"'
   case alltrim(thisform.combo1.value)='05.电子设备'
   ……
   kk='fldm="13"'
  case alltrim(thisform.combo1.value)='14.行政办公设备'
   kk='fldm="14"'
   case alltrim(thisform.combo1.value)=‘16.牲畜’
   kk='fldm="16"'
   endcase
  else
   if len(alltrim(thisform.text1.value))=0
   kk=''
   else
   kk='alltrim(thisform.text1.value)'+ '$flmc'
   endi
  endi
  sele 仪器设备分类目录
  set filt to
  set filt to &kk
  thisform.refresh
  1个组合框控件Combo1,其设置采用方法1的设计方案进行。其值为:
  00.全部,01.房屋.……
  1个文本框控件Text1,其Visible属性设为.T.-真,并使其置于组合框控件Combo1下。
  表单的Init事件代码如下:
  sele 仪器设备分类目录
  set filt to
  thisform.combo1.enabled=.t.
  thisform.combo1.visible=.t.
  thisform.text1.visible=.t.
  thisform.label1.caption="选择分类:"
  thisform.refresh
  表单的Unload事件代码如下:
  RETURN THISFORM.rValue
  新建表单属性rValue,其值为空。表单的MDIForm属性值为.T.-真。
  至此,整个设计工作基本完成。应用数据字典功能使开发出的软件在具备实用性的同时,也充分考虑了普通用户使用的方便性和准确性,使软件更具有人性化。愿以上所述能对喜爱Visual FoxPro的编程者以启示,开发出更多更精美的软件来。
  参考文献:
  [1]求是科技.Visual FoxPro通用模块及典型系统开发.人民邮电出版社.
  [2]蔡德利.数据字典录入的类型及实现.黑龙江八一农垦大学学报,2001,6.
其他文献
【摘要】高校图书馆在建设新馆过程中,由于施工和搬迁的需要,导致图书馆许多服务停止和中断,引起读者极大不满。对于图书馆应该如何采取一些人性化服务和补救措施,争取读者理解,并为读者提供优质服务提出了自己的看法。  【关键词】图书馆 新馆建设 服务对策    高校图书馆作为高校文献资源收集、加工、存储和传播的中心,肩负着为教学、科研和全校师生提供文献信息服务的重任,是大学生读书、学习和文化交流的中心,是
期刊
【摘要】加热炉是冶金行业生产环节中重要的热工设备,它在轧钢生产中占有十分重要的地位,加热炉的操作水平将直接影响产品的质量、产量和生产消耗指标。  【关键词】加热炉 热工设备 单回路控制 串级控制    加热炉的生产任务是按照轧机的轧制节奏将钢材加热到工艺要求的温度水平和加热质量,并且在优质高产的前提下,尽可能地降低燃料的消耗,减少氧化烧损。本文拟从加热炉的单回路控制和串级控制两方面进行探讨。  一
期刊
【摘要】全面建设小康社会、构建社会主义和谐社会,对整个教育工作提出了新的要求和奋斗目标,也为远程教育展示了更加广阔的发展空间。远程教育服务“三农”,是中国特色远程教育的创新和发展,是亟待深化研究的新课题。要在总结的基础上,探索新的研究方法,促进该项事业真正成为成教工作的重中之重,并作出新的贡献。  【关键词】远程教育 服务 三农    党中央多次反复强调,要全面贯彻落实科学发展观,建设社会主义新农
期刊
2011年我国计划专项招收5000名少数民族研究生    根据教育部网站下发的通知,2011年少数民族高层次骨干人才研究生招生计划已确定计划招生5000人,其中,博士研究生1000人,硕士研究生4000人,可招收10%的在职汉族考生和民族自治地方的非在职汉族考生。  通知指出,少数民族高层次骨干人才研究生招生计划为国家定向培养专项招生计划,此计划在全国研究生招生总规模之内单列下达,不得挪作他用。各
期刊
【摘要】从课前准备,授课内容,“教”与“学”如何结合以及如何在知识教学与能力培养的同时,注重让全体学生参与,课堂教学与课外活动齐头并进等方面,简单阐述了中职学校教学任务完成所确立的教学观念及具体教学实施办法。  【关键词】中职学校 物理教学 教学任务    教学任务是学校教育目的的具体体现。完成教学任务的过程,也就是实现教育目的,发挥教学作用的过程。对于具体的教学活动来说,教学任务是活动的出发点,
期刊
【摘要】中国入世后,在各个方面与世界的接轨日益增加,对英语的听说读写译能力也有相应增加。我国高校现有大学英语课程设置逐步显示出其不足之处,难以满足新时期对高素质外语人才的需要。因此,对传统的英语教学内容与模式进行改革是势在必行的。要改变这些不相适应的方方面面,根本的问题在于加快高校大学英语课程改革的步伐,以课程体系建设为核心,改革课程设置和教学内容以及教学方法。   【关键词】大学英语 课程改革
期刊
雨后的怀集县沙田村,清新宜人。记者走进该村,只见村委会办公楼装修一新,硬底化的村道巷道整洁干净,新建的文化广场宽阔别致,而村旁连片的绿化林木更显葱绿。  “通过南海区和我县、镇的帮助扶持,村里建设了年出栏2400头肉猪的养猪场,发展了240亩苗木基地,还入股村里的果场,沙田村集体的年收入已达到18.5万元。”村支书李树光高兴地对记者说,除了村集体和贫困户实现了脱贫致富外,村里新建了幸福社区文化广场
期刊
高明革命老区扶贫开发“规划到户、责任到人”工作自2011年初启动以来,高明区紧紧围绕着市委、市政府确立的“贫困户脱贫”和“基础设施改善提升”两大目标,按照“一年脱贫、两年提升、三年巩固”的工作部署,全面推进九大类重点项目建设,扶贫开发工作取得较明显的成效。  一年多来,全区各级各部门高度重视,把扶贫开发“双到”工作提上重要议事日程,帮扶单位分别成立了“一把手”挂帅的专门工作机构,进一步明确职责,落
期刊
经省认定,茂名市的贫困村有240个,贫困户42007户,贫困人口171897人。两年多来,茂名市认真贯彻省委、省政府的重大部署,在广州市的大力帮助下,积极推进扶贫开发“双到”工作。来自机关、企事业单位的扶贫一线精兵组成扶贫大军,紧紧围绕“扶农户、帮村委、办公益、促党建”的工作思路,认真落实汪洋同志提出“抓票子、建房子、强班子”工作指示,多措并举,扶贫“双到”硕果累累。  截止2012年底,茂名市有
期刊
开展扶贫开发“双到”工作以来,南雄市围绕落实汪洋同志提出的“抓票子、建房子、强班子”,采取“一村一策、一户一法”的措施,坚持“靶向疗法”,选准和落实产业扶贫,制定帮扶计划,并把产业帮扶项目落到实处,推进扶贫开发工作由“输血”功能向“造血”功能转变,实现了稳定脱贫目标。各级共投入资金25044多万元,发展致富项目243个,45个贫困村年均集体收入7.916万元,贫困户人均纯收入8491元,有劳动能力
期刊