0

问题已经被问过和回答过,请参阅Anylogic - 资源占用的动态规范。但是stackoverflow上的多个巨魔要求我再次问同样的问题,无论如何...... - 因为问它被视为“答案”而不是“问题”。

Anylogic 8.7.2。
我创建了一个资源池myworkers
代理类型workers
打开workers代理并添加一个变量offloadBay(或参数,无所谓)INT, default value 0,. 在 main 中,我使用一个seize块从该池中获取 4 个资源,但它们需要满足条件offloadBay == 0。在我选择的抓住块Customise resource choice == true ; Recource choice condition = (unit.offloadBay == 0)中。在运行项目时,我收到错误 - “无法解析 offloadBay 或不是字段”。

似乎对关键字的unit引用实际上并未引用资源单元 - 引用时没有任何unit's参数、变量、函数等可供调用unit.

请就我做错了什么提出建议?或者,如何根据资源的特定条件或属性从 ResourcePool 中选择资源?(可根据要求提供演示项目,请告知发送到哪里

4

1 回答 1

0

尝试强制执行资源类型。发生这种情况是因为您在占用块中,并且当您使用“单元”时,您可能指的是不同的资源代理类型。并非所有人都可能具有“offloadBay”变量。所以,使用:

((工人)单位).offloadBay == 0

于 2020-12-27T19:32:37.487 回答