Есть ли способ использовать rich: columnGroup в rich: extendedDataTable? - PullRequest
0 голосов
/ 19 июня 2020

Мне было поручено преобразовать одну из наших старых таблиц, созданную с помощью rich: dataTable, в rich: extendedDataTable. В старых таблицах мы работали с rich: columnGroup, чтобы разделить заголовок на 2 строки. Я знаю, что rich: columnGroup не работает в сочетании с extendedDataTable. Может быть, есть обходной путь для этого или даже альтернатива columnGroup? Большое спасибо

Как это выглядело с rich: dataTable: введите здесь описание изображения

Как это выглядит сейчас (я все еще относительно в начале): введите здесь описание изображения

При необходимости я могу предоставить код, но у меня есть только простой rich: extendedDataTable с несколькими столбцами - каждый столбец находится в этом фасете

<f:facet name="header">

Я надеюсь, что это работает как минимальный пример - это первый столбец, и я хочу, чтобы поле ввода было под текстом (атрибуты вроде var, вероятно, нужно удалить?):

      <rich:extendedDataTable
        id="#{_idTable}"
        value="#{_pagination.data}"
        var="_t"
        width="100%"
        rowClasses="tablerow-odd, tablerow-even">

          <c:if test="#{includeDefaultActionColumn}">
            <rich:column width="8%">
              <f:facet name="header">
                <h:outputText
                  value="#{messages['de.segal.baoss.module.numberrange.entity.NumberRangeName.ImpersonalNumber']}" />
              </f:facet>

            </rich:column>
          </c:if>

          <rich:column>
          <c:if test="#{!_disableFilter}">
            <f:facet name="header">
              <b:filterTable reRender="#{_idTable}Header1" key="accountNumber"
                pagination="#{_pagination}" />
            </f:facet>
          </c:if>
          <div class="row">
            <s:fragment rendered="#{reverseActionEnabled and _t.draft eq false and _t.bookingType eq 'IMPERSONAL'}">
              <div class="col-4" style="padding-left:1px;padding-right:1px;">
                <b:confirmationButton id="#{_idTable}generateReverseTransaction"
                  value="#{messages['ui.common.yes']}"
                  buttonText="#{messages['invoicing.booking.generic.reversePosting']}"
              ajaxSingle="true"
                  messageText="#{e:messageForHtml('invoicing.booking.generic.reversePosting.confirmation')}"
                  headerText="#{messages['ui.common.confirm']}"
                  styleClass="col-12 w-icon undo" reRender="#{_idTable}Header1"
                  action="#{invoicing.genericBookingManager.generateReverseTransaction(_t, _pagination)}" >
                  <span class="tooltip">#{messages['invoicing.booking.generic.reversePosting.tooltip']}</span>
                </b:confirmationButton>
              </div>
            </s:fragment>
            <s:fragment rendered="#{establishActionEnabled and _t.draft}">
              <div class="col-4" style="padding-left:1px;padding-right:1px;">
                <b:confirmationButton id="#{_idTable}establishAccountingTransaction"
                  value="#{messages['ui.common.yes']}"
                  immediate="true"
                  messageText="#{e:messageForHtml('invoicing.booking.generic.establishAccountingTransaction.confirmation')}"
                  headerText="#{messages['ui.common.confirm']}"
                  styleClass="col-12 w-icon lock_open" reRender="#{_idTable}Header1"
                  action="#{invoicing.accountingTransactionOverviewManager.establishAccountingTransaction(_t)}">
                  <span class="tooltip">#{messages['invoicing.booking.generic.establishAccountingTransaction.tooltip']}</span>
                </b:confirmationButton>
              </div>
            </s:fragment>
            <s:fragment rendered="#{deleteActionEnabled and _t.draft}">
              <div class="col-4" style="padding-left:1px;padding-right:1px;">
                <b:confirmationButton id="#{_idTable}btnDeleteItem"
                  value="#{not empty _t.openItemTransferLog or not empty _t.accountingExportDate?messages['de.segal.baoss.module.invoicing.common.deleteAnyway']:messages['ui.common.delete']}" buttonText=""
                  cancelText="#{messages['ui.common.cancel']}"
                  ajaxSingle="true"
                  messageText="#{not empty _t.openItemTransferLog or not empty _t.accountingExportDate?e:messageForHtml('de.segal.baoss.module.invoicing.service.message.hintTransactionAlreadyExported'):messages['de.segal.baoss.platform.groupware.mail.delete']}"
                  headerText="#{messages['ui.common.confirm']}"
                  styleClass="col-12 w-icon w-icon-red cancel"
                  reRender="#{_idTable}Header1,idReceiptTable,massWorkflowPanel"
                  oncomplete="#{deleteActionOncomplete}"
                  action="#{_bean.deleteTransaction(_t)}">
                  <span class="tooltip">#{messages['ui.common.delete']}</span>
                </b:confirmationButton>
              </div>
            </s:fragment>
          </div>
        </rich:column>

      </rich:extendedDataTable>

Мне очень жаль насчет второй большой части, я попытался сократить ее, но я не знаю, насколько фрагменты «важны» ... разве это не просто текстовое поле? .. Может, вы тоже можете мне немного рассказать об этом ? Большое спасибо.

...