Ofbiz: одна форма с двумя кнопками отправки с двумя разными целями

Ofbiz предлагает формы написанные в xml:

partyForm.xml: 

<form name="AddPartyNote" type="single" target="createPartyNote"
    focus-field-name="noteId" header-row-style="header-row" default-table-style="basic-table">
    <auto-fields-service service-name="createPartyNote"/>
    <field name="partyId"><hidden/></field>
    <field name="noteId" tooltip="${uiLabelMap.PartyOptional}"><hidden/></field>
    <field name="noteName" title="${uiLabelMap.FormFieldTitle_noteName}" tooltip="${uiLabelMap.PartyOptional}"> </field>
    <field name="note"><textarea cols="70" rows="10"/></field>
    <field name="submitButton" title="${uiLabelMap.CommonSave}" widget-style="smallSubmit"><submit button-type="text-link"/></field>
    <field name="cancelLink" title=" " widget-style="smallSubmit">
        <hyperlink target="${donePage}" also-hidden="false" description="${uiLabelMap.CommonCancelDone}">
            <parameter param-name="partyId"/>
        </hyperlink>
    </field>
</form>

Для каждой формы есть кнопка отправки и, скорее всего, несколько других кнопок, таких как отмена, обновление и т. д.

Форма выше служит для добавления примечания. для этого он вызывает службу и цель createPartyNote.

Я создал новую службу под названием createPartyNoteAndNotify, и то же самое для цели.

теперь мне нужно добавить новую кнопку под названием сохранить и уведомить

которая делает то же самое, что и кнопка Сохранить: <field name="submitButton" title="${uiLabelMap.Common..... из приведенного выше, но с другой целью и сервисом (новые createPartyNoteAndNotify)

Я пробовал следующее:

<auto-fields-service service-name="createPartyNoteAndNotify"/>
<field name="submitAndNotifyButton" title=" " widget-style="smallSubmit"><submit button-type="text-link"/></field>

и многие другие способы безуспешно.

Как добавить в форму еще одну кнопку, которая служит другой цели?


person Subhi Samara    schedule 06.11.2018    source источник


Ответы (2)


Вы можете добиться этого, используя alt-target и use-when условие. Также кнопку можно показать или скрыть с помощью use-when. Пожалуйста, найдите аналогичный код, указанный ниже, в том же файле PartyForms.xml.

`<alt-target use-when="${your_condition}" target="${your_target}" ..../>`

`<field name="${field_name}" use-when="${your_condition}" ..... />`
person Rishi Solanki    schedule 13.11.2018

Я бы предложил создать еще одну форму с целью createPartyNoteAndNotify и иметь только скрытые поля.
Включить эту форму на экран.
Теперь добавьте поле в приведенную выше форму, чтобы

<field name="notify" title=" " widget-style="buttontext">
            <hyperlink description="save and notify" target="javascript:(document.formname.submit())" also-hidden="false" target-type="plain"/>
</field>

где formname будет именем новой включенной формы.

Вы также можете использовать список рассылки пользователей Apache OFBiz для таких запросов.

ХТН

person Aditya Sharma    schedule 10.11.2018