1

我正在使用 Delphi 中的 EMS(即:用于未来的 iOS 应用程序)的简单客户端服务器应用程序。

这个问题是我上一个问题的延续,但有一个不同的错误。

这是我之前的问题,有不同的问题,我遵循了 Marco 给出的建议。

问题:现在当我将参数从客户端传递到服务器时出现错误。

Project EMS_Test_Client_Project.exe raised exception class EFDException with message '[FireDAC][Comp][DS]-206. Cannot open dataset [FDMemTable]. A DataTable or a DataView must be supplied. Hint: if that is TFDMemTable, use CreateDataSet or CloneCursor to open dataset'.

因此,我有一个带有 Param的 TFDMemTable 属性 (DatSTableName: QRowParam ) 的Image1,这会引发错误。

问题 TFDMemTable

因此,我有一个不带参数的 TFDMemTable 属性(DatSTableName: QRows )的Image2,它可以工作。

工作 TFDMemTable

问题: 如果我使用从客户端到服务器的通用调用,它可以工作并且我得到了所有数据。其中我使用了没有参数 TFDQuery 的Image2 TFDMemTable。但是,如果我将参数从客户端传递到服务器,则会在客户端出现错误,其中我使用了带有参数 TFDQuery 的Image1 TFDMemTable。

任何人都可以建议我,我应该如何进一步解决这个问题?

提前致谢。

4

1 回答 1

1

我建议看一下产品随附的 EMS / FireDAC 演示。在客户端,如果您没有数据,则无法打开内存数据集。要在设计时打开它们,您可以为设计创建一个“模板”结构,以匹配实际的字段结构。

于 2014-11-03T15:24:43.167 回答