如何制作关于旧 DBF 的 Visual FoxPro 表单 (SCT) "forget"?
How to make a Visual FoxPro form (SCT) "forget" about an old DBF?
我从我的 VFP 项目中删除了一些 DBF,但当我尝试打开我的表单进行编辑时,其中一个仍然导致错误。我删除了代码中对 DBF 的所有引用(从 objects/methods 的形式),并且 DBF 不作为数据表包含在项目中。
如果我尝试在项目外自行打开 SCT 文件,也会出现此错误。错误:
我在文本编辑器中打开 SCT 文件并找到了已删除 DBF 的条目,但我不确定该条目实际是什么或删除它的正确方法是什么。我可以删除第 7 行和第 8 行吗?
Why/how 这是最初创建的吗?为什么它一直存在?
您应该能够通过简单地在 VFP 中打开表单来摆脱它们
然后在窗体和 select 数据环境的打开区域中的任意位置单击鼠标右键。它将列出与表单关联的任何可能的 table/view/relationship 实体。只需单击每个项目并删除它们并保存表格。那应该让你一切顺利。
此外,
在 VFP 中,表单和 classes 只不过是后缀已更改的 .DBF 文件
.SCX = .DBF
.SCT = .FPT
.VCX = .DBF
.VCT = .FPT
另外,项目和报告是一回事...
.PJX = .dbf
.PJT = .fpt
.FRX = .dbf
.FRT = .fpt
所以,现在你知道它是一个数据库文件,你可以直接在 VFP 中打开
use MyForm.scx
browse normal nowait
现在,查看行并双击 "Class" 列。您可能在第二行和第三行中有数据环境和游标引用,显示 class 内容为
"dataenvironment" 和 "cursor".
你也可以
browse normal nowait for atc( "dataenvironment", class ) > 0 OR atc( "cursor", class ) > 0
您可以删除这些记录。
表之间也可能存在 "relationship" 链接,但就其本身而言,从设计器编辑数据环境是最安全的方式。屏幕和 class 版本 .dbf 表中有很多有趣的东西。
反馈
设计表单时,您可以向表单中添加任何表和关系。这使您不必在表单加载之前手动打开表、设置索引顺序、设置关系。就我个人而言,一直到 1993 年 VFP 3 发布时,我都没有构建过这种方式。我更喜欢编码打开表。这允许自定义路径设置,例如在会计应用程序中支持多个 "company"。无论如何,可能不是你所涉及的,但很高兴它对你有用。
我从我的 VFP 项目中删除了一些 DBF,但当我尝试打开我的表单进行编辑时,其中一个仍然导致错误。我删除了代码中对 DBF 的所有引用(从 objects/methods 的形式),并且 DBF 不作为数据表包含在项目中。
如果我尝试在项目外自行打开 SCT 文件,也会出现此错误。错误:
我在文本编辑器中打开 SCT 文件并找到了已删除 DBF 的条目,但我不确定该条目实际是什么或删除它的正确方法是什么。我可以删除第 7 行和第 8 行吗?
Why/how 这是最初创建的吗?为什么它一直存在?
您应该能够通过简单地在 VFP 中打开表单来摆脱它们
然后在窗体和 select 数据环境的打开区域中的任意位置单击鼠标右键。它将列出与表单关联的任何可能的 table/view/relationship 实体。只需单击每个项目并删除它们并保存表格。那应该让你一切顺利。
此外,
在 VFP 中,表单和 classes 只不过是后缀已更改的 .DBF 文件
.SCX = .DBF
.SCT = .FPT
.VCX = .DBF
.VCT = .FPT
另外,项目和报告是一回事...
.PJX = .dbf
.PJT = .fpt
.FRX = .dbf
.FRT = .fpt
所以,现在你知道它是一个数据库文件,你可以直接在 VFP 中打开
use MyForm.scx
browse normal nowait
现在,查看行并双击 "Class" 列。您可能在第二行和第三行中有数据环境和游标引用,显示 class 内容为 "dataenvironment" 和 "cursor".
你也可以
browse normal nowait for atc( "dataenvironment", class ) > 0 OR atc( "cursor", class ) > 0
您可以删除这些记录。
表之间也可能存在 "relationship" 链接,但就其本身而言,从设计器编辑数据环境是最安全的方式。屏幕和 class 版本 .dbf 表中有很多有趣的东西。
反馈
设计表单时,您可以向表单中添加任何表和关系。这使您不必在表单加载之前手动打开表、设置索引顺序、设置关系。就我个人而言,一直到 1993 年 VFP 3 发布时,我都没有构建过这种方式。我更喜欢编码打开表。这允许自定义路径设置,例如在会计应用程序中支持多个 "company"。无论如何,可能不是你所涉及的,但很高兴它对你有用。