【问题标题】:how to get the object of an agent from the database table in anylogic 8如何从anylogic 8中的数据库表中获取代理对象
【发布时间】:2018-12-08 22:16:19
【问题描述】:

在我的 anylogic 项目中,我创建了一个名为 DATA 的代理群体。此总体包含 4 个从数据库表中获取的值。这意味着这个群体中有 4 个代理。该表包含两列,即 data_id 和 data_state。最终这些成为这个代理数据的参数。表格示例如下:

data_id | 数据状态

d1     |  delivered

d2     |  delivered

d3     |  undelivered

d4     |  delivered

我在名为“重新传输”的事件中应用任何条件,基于该条件将获取未传递数据的对象,然后再调用。此事件在其他名为 SENDER 的代理中。一旦我通过sql获得了值“d3”,如何从SENDER获取data_id为'd3'的DATA对象? 我应该写什么? main.datas.get(??)

我不想这样硬编码:main.datas.get(2);

有人知道我可以通过什么方法或内置函数来实现这一点吗?

【问题讨论】:

    标签: anylogic


    【解决方案1】:

    假设只有一个 data_id=d3 的 DATA

    Data theData=findFirst(main.datas,d->d.data_id==d3);
    

    如果有很多

    List <Data> theDatas=findAll(main.datas,d->d.data_id==d3);
    

    【讨论】:

    • 这正是我想要的!.. 非常感谢 :) .. 上面的代码只需要一点修正,它应该是这样的: List theDatas=findAll(main.datas, d- >d.data_id==d3);
    猜你喜欢
    • 2020-04-05
    • 1970-01-01
    • 1970-01-01
    • 2021-12-07
    • 2021-12-19
    • 2019-06-03
    • 2021-07-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多