我有高度定制的银行对账单功能。传输逻辑从调用Controller开始,控制器扩展自SysOperationServiceController。在控制器的main方法中我有这段代码:
public static void main(Args args)
{
BankStatementTransferController_SI controller;
controller = BankStatementTransferController_SI::newFromArgs(args);
controller.buildQuery();
controller.startOperation();
controller.refreshCallerRecord();
}
我能够对此进行调试,直到 startOperation 方法。 主要逻辑在其他类中执行,该类扩展自 RunBaseBatch。 这两个类都将“RunOn”属性设置为“Called from”。 我在两个类中设置了断点,但在controller.BuildQuery()之后,该过程完成并且不会在任何断点处停止。
问题是如何调试这个类?
首先,尝试转到“工具”>“选项”>“开发人员选项”,然后取消选中
Execute business operations in CIL
并查看是否允许命中断点。
如果这不起作用,则可以使用安装了 AX Visual Studio 工具的 Visual Studio(可以使用 AX 安装程序安装该工具),并附加到
Ax32Serv.exe
。然后,使用 AX VS 工具从 Visual Studio 的inside在 AOT 对象上放置断点。参见:
然后使用 Visual Studio 而不是 AX 调试器 执行实际调试。