问题标签 [midas-server]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1139 浏览

delphi - Midas/DataSnap 项目中的 DUnit 测试

如何在 Delphi 2006 的 Midas/DataSnap 项目中设置 DUnit 测试

编辑

如何将 Dunit 测试设置到 TRemoteDataModule Delphi 2006 中的项目向导不适用于 TRemoteDataModule

0 投票
2 回答
2653 浏览

delphi - Datasnap:有没有办法在全球范围内检测连接丢失?

我正在寻找检测本地连接丢失。有没有办法做到这一点,就像 Corelabs 组件上的事件一样?

谢谢

编辑:抱歉,我将尝试更具体一点:我目前正在使用 datasnap 2009 设计原型。所以我有一个瘦客户端、一个无状态服务器应用程序和一个数据库服务器。

我能做的是检测和处理客户端和服务器应用程序之间的连接丢失(互联网连接)以适当地处理它,即:向用户显示一条信息性错误消息或检测服务器关闭以静默重定向另一个应用服务器。

在我使用 ODAC 组件管理的 2 层中,TOraSession 有一些事件来处理这个问题。

0 投票
4 回答
12286 浏览

delphi - 临时表资源限制

我有两个应用程序(服务器和客户端),它们使用通过 TDCOMConnection 与 TClientDataSet 连接的 TQuery,在某些情况下,客户端数据集打开大约 300000 条记录,然后应用程序抛出异常“临时表资源限制”。

有什么解决方法可以解决这个问题吗?(除了“不要打开这么大的数据集”?)

更新:哎呀,对不起,有 300K 记录,而不是 300 万..

0 投票
2 回答
1550 浏览

oracle - 带有 ADO + Oracle 的 Delphi 6 返回不同精度的 NUMBER,产生 BCD 溢出

我遇到了 Delphi 6 + Oracle 10gR2 + ADO + ClientDataSet 的问题。

每当我在字段 NUMBER(19,9) 上运行聚合函数时,生成的列都会向 Delphi 返回一个 NUMBER 数据类型,在某些机器上它加载为精度为 38 的 TBCDField,一切顺利,但在某些机器上它加载为精度为 255 的 TBCDField,并且我在该字段上得到 BCD 溢出。

要复制该问题,只需创建一个包含 NUMBER (19,9) 列的表,然后运行 ​​SELECT SUM( column_name ) column_name FROM table_name GROUP BY column_name

尽管该列是 NUMBER(19,9),但结果列将是一个未定义精度的 NUMBER。

在 Delphi 中,将查询加载到 ADOQuery 中,DataSetProvider 链接到它,ClientDataSet 链接到 DataSetProvider。在我调用 ClientDataSet.Open 后,在某些机器上,我在 NUMBER 字段上收到 BCD 溢出消息,但在很多机器上它工作得很好。

当 midas.dll、ADO、服务器、用户、oracle 客户端在两台机器上都相同时,为什么我在某些机器上得到了 255 精度?有任何想法吗?

0 投票
3 回答
2580 浏览

delphi - 在 TClientDataset 的 ReconcileError 方法中处理多条记录中的更新错误

我正在尝试使用 ReconcileError 事件来允许用户在特定记录中发生更新错误后更正数据。

例子:

我有一个包含一个字段和 3 条记录的数据集,该字段对数据库有一个唯一约束,然后当它到达数据库时我将一个值更改为冲突,然后我在数据集上调用 ApplyUpdates。

这将在提供程序中生成错误(违反唯一约束)并中止 applyupdates 过程,并在 ReconcileError 方法的 Action var 中返回 raAbort。

在我尝试使用的 ReconcileError 方法中:

** 编辑 **

在调试和转储服务器返回的数据集记录后,我注意到这个数据集中有两条记录,第一条是旧记录,第二条是我对第一条记录所做的所有更改。

我有点困惑,我总是会得到这个带有 2 条记录的 DataSet 吗?我认为它应该只有一个旧/新值的记录。

谢谢。

0 投票
1 回答
1245 浏览

delphi - 如何在嵌套的 TClientDataSet 上找到“外键”字段名称?

给定一个嵌套的 TClientDataSet,我如何在详细 TClientDataSet 上找到链接字段名称?

我正在将数据从一个 TClientDataSet 复制到另一个(逐条记录),我想自动忽略链接字段。

我也可以使用 TClientDataSet.Data 属性复制数据,但我仍然需要清除链接和关键字段。

0 投票
1 回答
2368 浏览

actionscript-3 - 如何计算midi文件的时间长度

我在名为 midas ( http://code.google.com/p/midas3/ ) 的有用库的帮助下阅读 as3 (flash cs5) 中的 midi 文件 - midi-as3 库。

我试图找出一种简单的方法来计算 midi 文件的整个持续时间(例如 - 总时间为 4 分钟或 6 分钟......)。我想我可以计算每首曲目的最后一个音符+检查速度并弄清楚,但我想知道是否:

midi文件的持续时间是否写在我可以提取和使用的数据中的某个地方?

或者

有没有一种简单的方法来计算它而无需运行整个文件并比较最后的音符/节奏。

0 投票
1 回答
317 浏览

ios - 一旦部署到 App Store,TSQLConnection 将不会在 iOS 设备上打开

将我的应用程序部署到 Apple Store 并使用“TestFlight”对其进行测试后,该应用程序不会打开 SQLConnect 连接,我得到一个外部异常 (434C4E47432B2B00)。但是,如果我将应用程序直接部署到我的设备(iPhone、iPad、模拟器)上,应用程序就可以正常工作。我正在使用 Delphi Seattle、MIDAS、Datasnap。不知道我在部署之前是否缺少设置或用途。

我尝试将 Datasnap.midas 添加到我的用途中,但没有成功。不确定我应该使用 Midas 还是 Midaslib,如果我使用 Midaslib,我在编译项目时会出错。相同的应用程序已发布并与 Delphi xe6 一起正常工作。请帮忙!

0 投票
1 回答
664 浏览

delphi - TBlobField.OldValue 在 BeforeUpdateRecord 和 AfterUpdateRecord 事件中始终显示 null

我有一个具有以下结构的简单数据集:

数据集有一条记录。然后我通过 TClientDataSet 实例中的 TDataSetProvider 获取数据集,更改数据并应用更新。它将触发 TDataSetProvider 的 BeforeUpdateRecord 和 AfterUpdateRecord 事件。

但是,ftBlob 字段的 OldValue 始终显示 Null,但 ftMemo 和 ftString 字段不显示 Null:

虽然 ftMemo 字段也没有返回正确的结果。ftMemo 字段的 OldValue 始终为空字符串。

我已将此问题报告给RSP-15519。一个示例项目也可以从那里下载。

只是想知道这是否是迈达斯的设计?或者它是一个错误?

0 投票
1 回答
513 浏览

delphi - 在 Delphi DataSnap 中获取多个嵌套数据集

我有使用DataSnap的Delphi客户端-服务器应用程序。在客户端,我有一系列嵌套的客户端数据集(-> -> -> )。cdsMastercds1cds2cds3

在服务器端,我有一组类似的具有主从关系的数据集。

首先,我需要获取一次的内容(没有详细信息),然后在单个数据包cdsMaster中按需获取完整的详细信息(所选主记录的所有嵌套内容, , )。实现这一点的最佳方法是什么?cds1cds2cds3

如果我禁用选项poFetchDetailsOnDemandprvMaster它会在连接时加载整个数据库。如果我启用它,它会一一获取详细记录,从而导致巨大的流量开销和性能下降。