如何在Visual Fox Pro中编辑网格?

时间:2019-02-11 09:02:37

标签: forms grid append edit visual-foxpro

我在编辑表单中的网格时遇到麻烦,该网格显示了在我的一张表中找到的数据。我无法修改现有字段或添加新字段。

Readonly=false
allowaddnew=true
enabled=true

1 个答案:

答案 0 :(得分:0)

我认为问题不在电网之中。听起来您需要对选项进行一些功课才能连接到数据。 VFP旨在允许您将控件直接连接到VFP表或VFP表或SQL数据库服务器的视图。

如果将网格直接绑定到VFP表,则您更改的每个字段都会立即反映在表中。这听起来像您想要的,但是请考虑如果要添加新记录会发生什么。您将需要一些代码以将新的空白记录添加到表中,并填充一些关键字段,这听起来很容易。但是,当用户开始进行数据输入然后决定要放弃该数据或失去连接时,会发生什么情况—现在表中已有数据,您需要添加更多代码和维护程序来进行清理。

有些人通过创建临时表(使用表单的Data Environment Init方法),然后将网格绑定到该表来解决了这个问题。然后,如果用户单击“保存”,则开发人员必须编写代码以将数据同步回生产表。但是随后,MS引入了可更新的视图,使您可以查询VFP表或SQL Server并将网格绑定到该视图。好处是您可以使用“缓冲”方法将数据同步自动返回到生产表中,而无需编写费力的代码来映​​射围绕创建/更新/删除的所有字段和业务逻辑。这个家伙写了一篇很好的关于缓冲模式的文章。 https://www.levelextreme.com/ShowHeaderArticleOneItem.aspx?ID=39374

许多开发人员都走了这条路,使用缓冲的问题很复杂,需要花费大量时间来理解。人们围绕销售可解决此问题的复杂性的开发人员工具创建了整个企业,但是以我的经验来看,总是存在一些不明显的问题,需要花费大量的实验才能弄清楚。