- 4
- 0
- 约9.09千字
- 约 10页
- 2021-11-30 发布于天津
- 举报
Visual FoxPro 9 CS(ODBC) 方面极富人性化的增强
Visual FoxPro 9 C/S(ODBC) 方面极富人性化的增强 作者: mihu
2004 年 6 月,微软公司如期发布了全球 Foxer 翘首期盼 代号为 Europa 的 Visual FoxPro 9beta 版(以下简称 VFP9 ), 下文是我学习、 探索 VFP9 C/S 方面新增功能时的一些心得, 供大家一起分享。
自从 VFP 8 开始,在 C/S 方面提供了一个 CursorAdapter 类, CursorAdapter 是一个基于松散耦合思想设计的对象化 的 Cursor 处理模型。对 CursorAdapter 类很多人对其褒贬 不一,特别是一些老的 Foxer 认为做 C/S 系统用 SPT 就足够 了,何必再增加一个类呢?但我可以这么说, 从 VFP9 开始, 几个 CursorAdapter 新增加的功能,相信足以使那些纯使用 SPT 的 Foxer 心动不已了。
下面我先谈谈 VFP9 在 CursorAdapter 部分的几个增加 和增强。
1. 属性值可以超过 255 个字符
大家都知道, VFP 的表单、类库和报表等其实都是以
DBF形式存放,VFP9以前属性是以(C)字符型存放,VFP9 中做了修改,以(M)备注型存放,这样使得在VFP9开始,属
性值突破了 255 个字符的限制
用过 CursorAdapter 类的人都知道, VFP8 时其几个属 性 SelectCmd、CursorSchema、UpdateNameList 、 UpdatableFieldList 的长度不能超过 255 个字符,这在 VFP8 时让人感觉是一件非常滑稽和痛苦的事情,当后台表的字段 数一多,连使用它自身生成器生成的字符串都要报错,不能 保存,这点造成 CursorAdapter 使用起来极为不便,使得 CursorAdpter 的生成器变成了摆设,也是全球 Foxer 要求解 决的呼声最多的地方, 现在这个问题在 VFP9 中终于得到了 彻底解决。
2. NoData 和 UseCursorSchema 属性
VFP8 时当把 CursorAdapter 设计时放到表单的数据环 境里,使用 CursorFill() 里的这两个参数极为不便,尤其是对 初学者,现在好了,把这两个属性单独列了出来。
3. TimeStamp 时间戳字段
VFP8 的 CursorAdapter 虽然 WhereType 可以等于 4 ,可是其实时间戳字段真正在更新时却过滤掉了,因为你 前台是不更改这个字段的, 所以 CursorAadpter ,更新后台时 是不会自动把这个时间戳字段加进更新语句,所以根本不起 任何作用。现在 VFP9 的 CursorAdapter 增加了 TimestampFieldList 属性,如果你的后台表里有时间戳的话,
只要设置一下这个属性,然后设置 WhereType = 4 即可 ,注
意 ,UpdateNameList 和 UpdatableFieldList 里还是要把时间戳 字段加进列表,呵呵个人感觉,微软工程师在偷懒,其实这 个只要判断一下就可以了,何必还要加进 UpdateNameList 和 UpdatableFieldList, 期待 VFP9 SP1 能加以改进。
4. RecordRefresh()
VFP8 时 CursorAdapter 只能用 CursorRefresh() 来刷新 前台,可很多时候,我们可能只需要刷新其中一条或者几条 记录的数据, 可 CursorRefresh() ,如果前台记录有 1000 条, 也要全部重新读一遍,读取完毕以后,记录指针却始终定位 在第一条记录,这样既巨大的浪费了网络资源,同时很多情 况下还要花费很大的精力重新定位记录指针。
现在 VFP9 增加了这个极富人性化的方法 RecordRefresh() ,能做到任意刷新此 Cursor 里的任意一 条或者连续几条记录,而且当前记录指针保持不变,看到这 里相信做过 C/S 程序的朋友们是不是有一种跃跃欲试的感 觉?这个可以期盼已久的功能啊。
RecordRefresh()里有 2 个参数,RecordRefresh(nRecords, nRecordOffset)
1) nRecords 表示要刷新几条记录
2) nRecordOffset 记录偏移量, 指是当前记录开始加几条记录
例子 1,比如当前记录号是第 5 条,我要刷新第 7、8 两条记 录,
oCa.RecordRefresh(2,-2)
例子 2, 只刷新当前记录,
oCa.RecordRefresh(1)
5. CursorAdap
您可能关注的文档
- Units1—5单元综合测试.doc
- Unit_4_How_do_you_get_to_school__教学设计_教案.doc
- Unit电子教学导案.doc
- UNO-2053在工厂SCADA系统中的应用.doc
- USB光隔离开关量输入输出模块.doc
- U单据添加自定义项并自动带出.doc
- U高英语(上)同步基础训练.doc
- V8多功能电法仪.doc
- VBP-ST串接单端口穿越防火墙要点.doc
- VB程改错题含答案.doc
- 2025年全国演出经纪人员资格认定考试试卷带答案(研优卷).docx
- 2025年全国演出经纪人员资格认定考试试卷完整版.docx
- 2025年全国演出经纪人员资格认定考试试题库及完整答案.docx
- 2025年全国演出经纪人员资格认定考试试卷完美版.docx
- 2025年全国演出经纪人员资格认定考试试卷含答案(实用).docx
- 2025年全国演出经纪人员资格认定考试试卷及答案(各地真题).docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
- 2025年全国演出经纪人员资格认定考试试卷及答案1套.docx
- 2025年下半年四川成都市郫都区面向社会引进公共类事业单位人员2人备考题库最新.docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
最近下载
- 《婴幼儿回应性照料》第八讲.pptx VIP
- CATIAV5参数化设计与C#编程二次开发教程.pdf VIP
- CATIAV5装配设计的C#二次开发教程.pdf VIP
- CATIAV5C#二次开发:C#编程实现CATIAV5特征操作.pdf VIP
- CATIAV5C#二次开发:C#控制CATIAV5草图与曲线创建.pdf VIP
- CATIAV5C#二次开发:C#与CATIAV5的数据交换技术.pdf VIP
- 2025年房地产经纪人长租公寓市场调研报告撰写与数据分析能力专题试卷及解析.pdf VIP
- 2025年金融风险管理师风险资本与资本结构优化专题试卷及解析.pdf VIP
- 2025年信息系统安全专家数据脱敏与数据治理专题试卷及解析.pdf VIP
- 2025年演出经纪人演出票务销售数据统计与透视表分析专题试卷及解析.pdf VIP
原创力文档

文档评论(0)