在方天ERP生态系统中,智能体(插件)是独立于核心业务流程的自动化执行单元。它通过B9ScheduleService调度服务作为“大脑”,定时触发并执行特定的业务逻辑(如数据同步、报表生成、异常预警等),实现业务流程的无人值守自动化。
为了确保智能体的稳定运行,请严格遵守以下环境配置:
| 环境维度 | 要求版本 | 说明 |
|---|---|---|
| 集成开发环境 (IDE) | Visual Studio 2019 及以上 | 推荐使用最新稳定版以获得最佳调试体验 |
| 运行时框架 | .NET Framework 4.6 及以上 | 必须兼容的底层框架环境 |
| 输出类型 | 类库 (Class Library) | 编译后必须为 .dll 格式 |
开发一个方天智能体,本质上是实现一个符合特定契约的类库。
命名规范:为了防止命名冲突并保持系统整洁,建议使用以下命名空间格式:Fangdee.B9.Plugin.[YourCompanyName].[FunctionName]示例:Fangdee.B9.Plugin.MyCo.StockAlert.dll
接口契约:你的核心类必须实现 IScheduleService 接口。
关键方法:Run
执行逻辑:调度服务在触发任务时,会将你的DLL加载到服务进程中,并直接调用 Run 方法。
智能体的运行依赖于 Windows 服务调度,其生命周期如下:
调度检查:Web服务器上的 B9ScheduleService(调度服务)每 1分钟 检查一次任务列表。
条件匹配:检查“执行计划”菜单中,哪些任务满足当前的执行条件(如时间、频率)。
加载执行:服务加载对应的插件 DLL 文件,注入执行参数,并调用 Run 方法。
结果反馈:执行完毕后,服务继续轮询。
部署路径:编译生成的 .dll 文件必须拷贝至系统的 /bin 目录下,否则调度服务无法加载。
开发过程中,调试是关键环节,请注意以下事项:
环境隔离:强烈建议搭建独立的测试库和测试程序环境。严禁直接在正式生产环境中进行未经验证的代码调试,以免造成数据污染或业务中断。
日志追踪:
路径:/logs/schedule/log.txt
策略:所有的执行日志、错误信息均输出至此文件。这是排查智能体运行故障的第一手资料。
热更新操作(重要):由于调度服务会长期引用 DLL 文件,直接替换文件通常会报“文件被占用”错误。
正确步骤:
停止 B9ScheduleService 服务。
替换 /bin 目录下的旧版 DLL 文件。
启动 B9ScheduleService 服务。
线程安全:由于调度服务是单线程轮询,如果某个智能体的 Run 方法执行时间过长(超过1分钟),可能会阻塞后续任务的检查,请确保你的业务逻辑高效或采用异步处理。
异常捕获:务必在 Run 方法中使用 try-catch 包裹核心代码,防止插件崩溃导致整个调度服务挂起。