我一直想从另一个选择中进行选择(对于同一模板)。有一种方法可以在不知道合同编号的情况下执行此操作吗?即,我无法在不知道exercise ??? MyChoice
的情况下从其他选择的正文中调用???
。还是我试图做一些根本错误的事情?理想情况下,类似exercise this.id MyChoice
答案 0 :(得分:1)
有一个隐式变量self
,它是赋予每个选择的合同this
的ID。例如,
nonconsuming choice NoConsume : Int
controller p
do return 41
postconsuming choice PostConsume : Int
controller p
do (+2) <$> exercise self NoConsume -- Yes, fetching self in a postconsuming choice is ok.
答案 1 :(得分:0)
在内部DA对话中:
moritz.kiefer 9天前锻炼自我MyChoice有效吗?
andrae.muys 9天前正是出于这个目的引入了自我 目的。请注意,合同将在您之前 消费选择中的选择练习。您需要使用 后消费或非消费选择可以避免这种情况。
卢西亚诺9天 前有记录消费后吗?我不记得看到它了。
moritz.kiefer 9天前 https://docs.daml.com/concepts/glossary.html#postconsuming-choice 在iirc某处也有一个博客文章
moritz.kiefer 9天前 找到了https://blog.daml.com/daml-driven/daml-choice-annotations blog.daml.comblog.daml.com DAML选择注释 消费概念并解释新添加的含义 前消费关键字和后消费关键字。