Dynamiczne wiązanie w ramach powtarzalnej kontroli

W module zamówienia zakupu musimy zadać pewne pytania w zależności od metody wyboru źródła, rodzaju konkurencji i całkowitego kosztu zakupu. Te pytania prawdopodobnie zmienią się w czasie i między różnymi instancjami bazy danych.

Mam więc widok zawierający pytania, dzięki czemu mogę dynamicznie dodawać pytania do mojego XPage bez konieczności zmiany kodu. Odpowiedź na każde pytanie będzie przechowywana w polu. Tak więc dokument zawierający pytanie ma pole o nazwie FieldName, które jest używane do podania nazwy pola, która będzie używana. Niestety nie mam szczęścia, aby powiązać te dynamiczne pola z dokumentem.

<xp:this.data>
    <xp:dominoView var="competitionQuestionView"
        viewName="CompetitionQuestions">
    </xp:dominoView>
</xp:this.data>
<xp:repeat id="repeat2" rows="30" var="rowData" style="width:700px"
    value="#{competitionQuestionView}">
    <xp:label id="label1">
        <xp:this.value><![CDATA[#{javascript:rowData.getColumnValue("Question");}]]></xp:this.value>
    </xp:label>
    <xp:inputText id="inputText1">
        <xp:this.rendered><![CDATA[#{javascript:rowData.getColumnValue("FieldType") == "Text Box"; }]]></xp:this.rendered>
        <xp:this.value><![CDATA[#{javascript:poDoc[rowData.getColumnValue ("FieldName")];}]]></xp:this.value>
    </xp:inputText>
</xp:repeat>

Próbowałem to zrobić na różne sposoby, w tym ustawić niestandardową kontrolę dynamicInputText w nazwie pola, ale bez szczęścia. Najbliższe, jakie otrzymałem, było następujące:

<xp:this.value>
<![CDATA[#{javascript:tmp = rowData.getColumnValue ("FieldName");'#{poDoc.'+tmp+'}';}]]>
</xp:this.value>

To dało mi coś takiego# {poDoc.justification}, co chciałem przekazać do „wiązania”, ale skończyło się na wyświetlaniu jako wartość tekstowa.

Próbowałem użyć $ do obliczenia wartości podczas ładowania, ale zgaduję, że nie zadziałało, ponieważ widok mój (i wiersz danych) nie jest dostępny przy ładowaniu. W końcu pojawiłby się problem, gdy chciałem użyć częściowych odświeżeń z powodu aktualizacji kryteriów, które i tak mają być wyświetlane.

Niektóre odpowiedzi na inne pytania wyglądały obiecująco, ale nie dostarczono kodu, więc nie mogłem tego zrozumieć.

questionAnswers(1)

yourAnswerToTheQuestion