моя ситуация следующая:
- У меня есть набор узлов, через который я повторяю и заполняю таблицу некоторыми данными
- Одно из полей, я хочу подвести итог
Проблема: К сожалению, я не могу использовать метод суммы для вычислений, так как набор узлов — это пользовательская функция, которая получает доступ к данным из других форм. И это, кажется, все портит.
Моя идея решения: я подумал, что могу создать экземпляр и на каждой итерации добавлять к нему значение. Затем я просто мог получить доступ к этим данным и выполнить необходимые вычисления. Но я не могу заставить xforms:insert работать.
Упрощенный вариант выглядит так:
<xforms:repeat nodeset="(xxforms:si-source-forms('other_form'))">
<!-- table here -->
<xforms:insert
nodeset="instance('fr-form-instance')//positionen/position"
origin="instance('neue-position')"/>
</xforms:repeat>
Экземпляр neue-position содержит привязки к значениям в исходной форме:
<xforms:bind id="neue-position-binds" nodeset="instance('neue-position')">
<xforms:bind id="neue-position-bind" nodeset="position">
<xforms:bind id="neue-position-summe-bind" nodeset="summe" name="summe" type="xforms:string" required="true" xxforms:default="xxforms:si-source-forms('other_form')//gesamtbetrag_ausgabe" />
</xforms:bind>
</xforms:bind>
Однако он не работает должным образом, поэтому, очевидно, что-то не так. Буду признателен за любые подсказки.