如何在AnyLogic仿真中识别特定资源并添加资源ID至数据表?
解决方案
- 先确认你的
maintenance_data数据表已添加machine_id列,数据类型选择数值型(如long或int),用来存储资源的唯一ID。 - 修改现有代码,在插入字段列表中加入
machine_id,并在对应值的位置传入资源的唯一ID:
修改后的完整代码:
unit.data_mant = date(); insertInto(maintenance_data) .columns( maintenance_data.machine_id, maintenance_data.machine_type, maintenance_data.when_out, maintenance_data.times_out ) .values( unit.getId(), unit.type, unit.data_mant, unit.qtd_mant ) .execute();
补充说明
- 如果你使用的是AnyLogic默认的资源类型(或继承自
Agent的自定义资源),unit.getId()会返回该资源的唯一系统ID,能精准区分同类型的不同资源。 - 若你给自定义资源类手动添加了
id属性(比如自定义字符串或数值ID),只需把unit.getId()替换为unit.你的自定义id属性名即可。
内容的提问来源于stack exchange,提问作者Julia Cristina Bremen
相关产品推荐
相关产品推荐

