Pregunta

Tengo botón en una XPage que crea un documento y actualiza un control de repetición.Todo está funcionando bien, excepto que el control de repetición está mostrando el documento recién agregado en la parte superior de la tabla (IMG1).

Pero después de actualizar la XPage nuevamente, el control de repetición hace que la tabla correctamente (IMG2)

Código de repetición

<xp:panel>
  <xp:table style="width:100.0%">
    <xp:tr>
      <xp:td style="font-weight:bold">
        Hardware
      </xp:td>
      <xp:td style="font-weight:bold">
        Quantity
      </xp:td>
      <xp:td style="font-weight:bold">
        Asset Tag No
      </xp:td>
      <xp:td style="font-weight:bold">
        Previous User
      </xp:td>
      <xp:td>
      </xp:td>
    </xp:tr>
    <xp:repeat id="rpHardware" rows="30" var="clHardwares">
      <xp:this.value>
        <![CDATA[#{javascript:var docMain:NotesDocument = compositeData.docOnboarding.getDocument();
var vwApp:NotesView = database.getView("lkupHardwaresByParentID");
vwApp.getAllDocumentsByKey(docMain.getUniversalID(),true)}]]>
      </xp:this.value>
      <xp:tr>
        <xp:td>
          <xp:text escape="true" id="cfHWName">
            <xp:this.value>
              <![CDATA[#{javascript:clHardwares.getItemValueString("REQ_HW_Name")}]]>
            </xp:this.value>
          </xp:text>
        </xp:td>
        <xp:td>
          <xp:text escape="true" id="cfHWQuantity">
            <xp:this.value>
              <![CDATA[#{javascript:clHardwares.getItemValueString("REQ_HW_Quantity")}]]>
            </xp:this.value>
          </xp:text>
        </xp:td>
        <xp:td>
          <xp:text escape="true" id="cfHWAssetTagNo">
            <xp:this.value>
              <![CDATA[#{javascript:clHardwares.getItemValueString("REQ_HW_AssetTagNo")}]]>
            </xp:this.value>
          </xp:text>
        </xp:td>
        <xp:td>
          <xp:text escape="true" id="cfHWPreviousUser">
            <xp:this.value>
              <![CDATA[#{javascript:clHardwares.getItemValueString("REQ_HW_PreviousUser")}]]>
            </xp:this.value>
          </xp:text>
        </xp:td>

        <xp:td>
          <xp:link escape="true" text="Edit" id="link4">
            <xp:eventHandler event="onclick"
            submit="true" refreshMode="complete">
              <xp:this.action>
                <![CDATA[#{javascript:viewScope.put("selHardware",clHardwares.getNoteID());
getComponent("dlgAddHardware").show();}]]>
              </xp:this.action>

            </xp:eventHandler>
          </xp:link>
          <xp:link escape="true" id="link5" text="Delete">
          </xp:link>
        </xp:td>
      </xp:tr>
    </xp:repeat>
  </xp:table>
</xp:panel>

img1

img2

¿Fue útil?

Solución

¿Ha intentado configurar la propiedad "RemoverEpeat" de Repetir en verdadero?Esto elimina los controles DIV no deseados creados a partir de la repetición después de que se realice el trabajo del control.

(repetir >> todas las propiedades >> conceptos básicos)

Editar:

Olvidé mencionar que su botón no puede realizar una actualización parcial en la repetición en sí mismo si esa propiedad se establece en verdadero.En su lugar, proporcione su mesa circundante o un panel adicional, su propia identificación que puede usar para realizar la actualización de la necesidad

Otros consejos

¿Actualizó su opinión después de crear el nuevo documento?

Database.getView ("ViewName"). Actualizar ();

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top