0

我在 Windows 7 中为我的 DBMS 使用 VFP 9,并希望在 Windows 的 COBOL 中执行此操作。

首先,我想为我的零售药房创建一个药品清单表,其中包含药品类型、药品名称、单价,并将其用作我的零售药房的账单查找表。

然后我想创建一个数据输入表单来获取一般数据,如账单编号、账单日期、客户姓名。

之后,当用户使用药物名称的第一个字母调用时,我想向用户显示可滚动的按字母顺序排列的药物列表,并提供输入每种所需药物所需的数量。

结束后,COBOL 应用程序应计算逐项金额(查找表中的单价乘以用户输入的数量,然后计算总账单金额并打印出带有合适页眉和页脚的销售账单,并保存/添加附加将Bill到我硬盘中程序指定文件夹中的一个文件。

我现在在运行 Windows 7 32 和 64 位的较新机器上使用 VFP9 以及在运行 MS DOS 6.22 的旧 MS DOS PC 中使用 MS QBasic v 1.1 和 Foxpro for Dos v 2.5 a 进行所有这些操作。

4

1 回答 1

2

我没有直接回答您的问题 - 对于 SO 论坛来说,它有点过于开放。但是让我猜猜,FoxPro 基本上已经死了,您需要为更新的平台重新开发您的应用程序。

你不是第一个面对这个问题的人。

与其在 PC 平台上以 COBOL 之类的方式重新开发您的应用程序,这可能是一项相当艰巨的任务,不如探索迁移到不同产品的可能性。例如,我相信有几种工具可以帮助将 FoxPro 迁移到 VB.Net。这里涉及一些成本(VB.Net 不是免费的,转换包也不是免费的)。这种方法并非没有一些问题(您可能无法完全获得您习惯的界面,并且转换后的代码可能不是很好的结构或可维护性),但它应该相当快速且不复杂。不利的一面是,您只是从一个供应商解决方案转移到另一个供应商解决方案。单一供应商解决方案,即使是来自像微软这样的大公司的解决方案,有时最终会在您想要的时候被终止。

另一种方法可能是在开源产品下重新开发。例如,使用wamp服务器安装的 PHP-MySQL-Apache 可能值得探索。对于独立的应用程序来说,这可能看起来有点过头了,但是对于这种类型的设置有很多免费的支持。我不建议临时开发人员修补诸如此类的复杂开源软件的内部工作原理 - 但流行和开源方面确保它可以在您使用的任何操作系统的多代中运行。另外一点是,一旦您在客户端-服务器模型下重建了系统,它就会变得更具可扩展性,并且如果您想走这条路,则更容易通过网络进行部署。

为什么不使用 COBOL?实际上,这种方法也没有根本性的错误。COBOL 非常适合开发您所描述的应用程序类型。但是,COBOL 不提供标准的数据库或 UI 组件(定义了屏幕管理但通常支持不佳)。数据库和 UI 往往是特定于供应商的附加组件,因此您最终再次被绑定到单一供应商解决方案。COBOL 在大型主机商店中往往更受欢迎,因此在该环境之外很难获得对 COBOL 和相关工具的良好支持。试着找一个最近毕业于计算机科学的大学或大学毕业生,他们有 COBOL 的知识,你就会明白我的意思。如果您想继续使用 COBOL,请查看Open COBOL 它是开源的,并且有一个相当大的支持社区愿意帮助小型开发人员。

我对您的最佳建议是在承诺任何一项之前花时间研究和评估您的转换/迁移策略。这里有很多因素在起作用,有些因素比其他因素更明显,但是您现在做出的选择将对您的申请成功产生长期影响。

于 2013-10-15T15:44:22.757 回答