ilscipio/scipio-erp

View on GitHub
applications/accounting/widget/finance/FinAccountScreens.xml

Summary

Maintainability
Test Coverage
<?xml version="1.0" encoding="UTF-8"?>
<!--
This file is subject to the terms and conditions defined in the
files 'LICENSE' and 'NOTICE', which are part of this source
code package.
-->

<screens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/widget-screen.xsd">

    <!-- SCIPIO: NOTE: The old parameters.finAccountDecoratorLocation pattern that existed here has been supplanted
        by the decorator default-fallback-location pattern for parameters.mainDecoratorLocation (see CommonScreens.xml). -->

    <screen name="FindFinAccount">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleFindFinAccount"/>
                <set field="activeSubMenuItem" value="FindFinAccount"/>
                <set field="viewIndex" from-field="parameters.VIEW_INDEX" type="Integer" default-value="0"/>
                <property-to-field resource="widget" property="widget.form.defaultViewSize" field="viewSizeDefaultValue"/>
                <set field="viewSize" from-field="parameters.VIEW_SIZE" type="Integer" default-value="${viewSizeDefaultValue}"/>
                <set field="displayAdvancedSearch" from-field="parameters.displayAdvancedSearch"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
                            <decorator-section name="menu-bar">
                                <container style="button-bar">
                                    <include-menu name="FinAccountSubTabBar" location="component://accounting/widget/AccountingMenus.xml"/>
                                </container>
                            </decorator-section>
                            <decorator-section name="search-options">
                                <section>
                                    <condition>
                                        <if-compare field="displayAdvancedSearch" operator="equals" value="true"/>
                                    </condition>
                                    <widgets>
                                        <include-form name="FindFinAccounts" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                                    </widgets>
                                    <fail-widgets>
                                        <include-form name="QuickFindFinAccounts" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                                    </fail-widgets>
                                </section>
                            </decorator-section>
                            <decorator-section name="search-results">
                                <include-form name="ListFinAccounts" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                            </decorator-section>
                        </decorator-screen>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>

    <screen name="EditFinAccount">
        <section>
            <actions>
                <set field="activeSubMenuItem" value="EditFinAccount"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <property-to-field field="defaultCurrencyUomId" resource="general" property="currency.uom.id.default" default="USD"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
                <set field="titleProperty" value="${groovy: context.finAccount ? 'PageTitleEditFinAccount' : 'AccountingCreateNewFinAccount'}"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <condition>
                                <not><if-empty field="finAccountId"/></not>
                            </condition>
                            <widgets>
                                <container style="button-bar">
                                    <link target="EditFinAccount" text="${uiLabelMap.AccountingCreateNewFinAccount}" style="${styles.link_nav} ${styles.action_add}"/>
                                </container>
                                <screenlet id="EditFinAccountPanel">
                                    <include-form name="EditFinAccount" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                                </screenlet>
                            </widgets>
                            <fail-widgets>
                                <screenlet id="CreateFinAccountPanel">
                                    <include-form name="EditFinAccount" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                                </screenlet>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>

    <screen name="EditFinAccountRoles">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditFinAccountRole"/>
                <set field="activeSubMenuItem" value="EditFinAccountRoles"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
                <set field="partyId" from-field="parameters.partyId"/>
                <set field="roleTypeId" from-field="parameters.roleTypeId"/>
                <set field="fromDate" from-field="parameters.fromDate"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <label style="heading" text="${uiLabelMap.AccountingEditFinAccountRoleFor}"/>
                        <screenlet id="FinAccountRolePanel" collapsible="true">
                            <include-form name="AddFinAccountRole" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                        </screenlet>
                        <include-form name="ListFinAccountRoles" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>

    <screen name="EditFinAccountTrans">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditFinAccountTrans"/>
                <set field="activeSubMenuItem" value="FinAccountTrans"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
                <set field="finAccountTransId" from-field="parameters.finAccountTransId"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <!-- <label style="heading" text="${uiLabelMap.AccountingEditFinAccountTransactionFor}"/> -->
                        <screenlet id="FinAccountTransPanel" collapsible="true">
                            <include-form name="AddFinAccountTrans" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                        </screenlet>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>

    <screen name="EditFinAccountAuths">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditFinAccountAuths"/>
                <set field="activeSubMenuItem" value="EditFinAccountAuths"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
                <set field="finAccountAuthId" from-field="parameters.finAccountAuthId"/>
                <property-to-field field="defaultCurrencyUomId" resource="general" property="currency.uom.id.default" default="USD"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet id="FinAccountAuthsPanel" title="${uiLabelMap.AccountingEditFinAccountAuthorityFor}]" collapsible="true">
                            <include-form name="AddFinAccountAuth" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                        </screenlet>
                        <include-form name="ListFinAccountAuths" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="PaymentsDepositWithdraw">
        <section>
            <actions>
                <set field="titleProperty" value="AccountingDepositOrWithdrawPayments"/>
                <set field="activeSubMenuItem" value="depositWithdraw"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <set field="paymentMethodTypeId" from-field="parameters.paymentMethodTypeId"/>
                <set field="cardType" from-field="parameters.cardType"/>
                <set field="fromDate" type="Timestamp" from-field="parameters.fromDate"/>
                <set field="thruDate" type="Timestamp" from-field="parameters.thruDate"/>
                <set field="partyIdFrom" from-field="parameters.partyIdFrom"/>
                <set field="organizationPartyId" from-field="parameters.organizationPartyId"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
                <script location="component://accounting/webapp/accounting/WEB-INF/actions/payment/DepositWithdrawPayments.groovy"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <container style="button-bar">
                            <link target="NewDepositPayment" text="${uiLabelMap.AccountingCreateNewDepositPayment}" style="${styles.link_nav} ${styles.action_add}">
                                <parameter param-name="finAccountId"/>
                            </link>
                            <link target="NewWithdrawalPayment" text="${uiLabelMap.AccountingCreateNewWithdrawalPayment}" style="${styles.link_nav} ${styles.action_add}">
                                <parameter param-name="finAccountId"/>
                            </link>
                        </container>
                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
                            <decorator-section name="search-options">
                                <include-form name="PaymentsDepositWithdraw" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                            </decorator-section> 
                            <decorator-section name="search-results">
                                <platform-specific>
                                    <html><html-template location="component://accounting/webapp/accounting/payment/depositWithdrawPayments.ftl"/></html>
                                </platform-specific>
                            </decorator-section>
                        </decorator-screen>  
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="FinAccountMain">
        <section>
            <actions>
                <set field="activeSubMenuItem" value="finAccountMain"/>
                <!-- SCIPIO: DEV NOTE: I added this title because needed for FinAccountSubTabBar below to look okay...
                    and if FinAccountSubTabBar isn't here it's too inconsistent with all other screens...  -->
                <set field="titleProperty" value="AccountingFinAccounts"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <container style="button-bar"><!-- SCIPIO: added for consistency -->
                            <include-menu name="FinAccountSubTabBar" location="component://accounting/widget/AccountingMenus.xml"/>
                        </container>
                        <!--<include-portal-page id="FinAccountPortalPage"/>-->
                        <include-screen name="ListBankAccount"/>                        
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="ListBankAccount">
        <section>
            <actions>
                <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/>
                <set field="parameters.finAccountTypeId" value="BANK_ACCOUNT"/>
            </actions>
            <widgets>
                <screenlet title="${uiLabelMap.CommonList} ${uiLabelMap.AccountingBankAccount}">
                    <include-screen name="FinAccountPortlets"/>
                </screenlet>
            </widgets>
        </section>
    </screen>
    <screen name="FindDepositSlips">
        <section>
            <actions>
                <set field="titleProperty" value="AccountingFindDepositSlip"/>
                <set field="activeSubMenuItem" value="findDepositSlips"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
                <entity-condition entity-name="PmtGrpMembrPaymentAndFinAcctTrans" list="pmtGrpMembrPaymentAndFinAcctTransList">
                    <condition-list combine="and">
                        <condition-expr field-name="paymentGroupId" from-field="parameters.paymentGroupId" ignore-if-empty="true"/>
                        <condition-expr field-name="finAccountId" from-field="parameters.finAccountId"/>
                    </condition-list>
                </entity-condition>
                <set field="paymentGroupIds" value="${groovy:org.ofbiz.entity.util.EntityUtil.getFieldListFromEntityList(pmtGrpMembrPaymentAndFinAcctTransList, 'paymentGroupId', true);}" type="List"/>
                <entity-condition entity-name="PaymentGroup" list="paymentGroupList">
                    <condition-list combine="and">
                        <condition-expr field-name="paymentGroupId" operator="in" from-field="paymentGroupIds" ignore-if-empty="true"/>
                        <condition-expr field-name="paymentGroupTypeId" value="BATCH_PAYMENT"/>
                    </condition-list>
                </entity-condition>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <container style="button-bar">
                            <link target="NewDepositSlip" text="${uiLabelMap.AccountingCreateNewDepositSlip}" style="${styles.link_nav} ${styles.action_add}">
                                <parameter param-name="finAccountId" from-field="parameters.finAccountId"/>
                                <parameter param-name="organizationPartyId" from-field="parameters.organizationPartyId"/>
                            </link>
                        </container>
                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
                            <decorator-section name="search-options">
                                <include-form name="FindDepositSlips" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                            </decorator-section>
                            <decorator-section name="search-results">
                                <include-form name="ListDepositSlips" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                            </decorator-section>
                        </decorator-screen>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="EditDepositSlipAndMembers">
        <section>
            <actions>
                <set field="titleProperty" value="AccountingFindDepositSlip"/>
                <set field="activeSubMenuItem" value="findDepositSlips"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <set field="paymentGroupId" from-field="parameters.paymentGroupId"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
                <entity-one entity-name="PaymentGroup" value-field="paymentGroup"/>
                <entity-and entity-name="PaymentGroupMember" list="paymentGroupMemberList" filter-by-date="true">
                    <field-map field-name="paymentGroupId"/>
                </entity-and>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <condition>
                                <not><if-empty field="paymentGroupMemberList"/></not>
                            </condition>
                            <widgets>
                                <container style="button-bar">
                                    <link target="DepositSlip.pdf" target-window="_BLANK" text="${uiLabelMap.AccountingPrintDepositSlip}" style="${styles.link_run_sys} ${styles.action_export}">
                                        <parameter param-name="paymentGroupId"/>
                                    </link>
                                </container>
                            </widgets>
                        </section>
                        <screenlet title="${uiLabelMap.AccountingEditPaymentGroupFor}">
                            <include-form name="EditDepositSlip" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                        </screenlet>
                        <screenlet title="${uiLabelMap.AccountingEditPaymentGroupMemberFor}">
                            <include-form name="ListDepositSlipMember" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                        </screenlet>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="NewDepositSlip">
        <section>
            <actions>
                <set field="titleProperty" value="AccountingCreateNewDepositSlipForFinancialAccount"/>
                <set field="activeSubMenuItem" value="findDepositSlips"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <set field="paymentMethodTypeId" from-field="parameters.paymentMethodTypeId"/>
                <set field="cardType" from-field="parameters.cardType"/>
                <set field="fromDate" type="Timestamp" from-field="parameters.fromDate"/>
                <set field="thruDate" type="Timestamp" from-field="parameters.thruDate"/>
                <set field="partyIdFrom" from-field="parameters.partyIdFrom"/>
                <set field="organizationPartyId" from-field="parameters.organizationPartyId"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
                <script location="component://accounting/webapp/ar/WEB-INF/actions/BatchPayments.groovy"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
                            <decorator-section name="search-options">
                                <include-form name="FindBatchPaymentsForDepositSlip" location="component://accounting/widget/payments/PaymentForms.xml"/>
                            </decorator-section> 
                            <decorator-section name="search-results">
                                <platform-specific>
                                    <html><html-template location="component://accounting/webapp/ar/payment/batchPayments.ftl"/></html>
                                </platform-specific>
                            </decorator-section>
                        </decorator-screen>  
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="FindFinAccountTrans">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleFindFinAccountTrans"/>
                <set field="activeSubMenuItem" value="FinAccountTrans"/>
                <service service-name="getFinAccountTransListAndTotals" result-map="finAccountTransListAndTotals" auto-field-map="true"/>
                <set field="finAccountTransList" type="List" from-field="finAccountTransListAndTotals.finAccountTransList"/>
                <set field="searchedNumberOfRecords" type="Integer" from-field="finAccountTransListAndTotals.searchedNumberOfRecords"/>
                <set field="grandTotal" type="BigDecimal" from-field="finAccountTransListAndTotals.grandTotal"/>
                <set field="createdGrandTotal" type="BigDecimal" from-field="finAccountTransListAndTotals.createdGrandTotal"/>
                <set field="totalCreatedTransactions" type="Long" from-field="finAccountTransListAndTotals.totalCreatedTransactions"/>
                <set field="approvedGrandTotal" type="BigDecimal" from-field="finAccountTransListAndTotals.approvedGrandTotal"/>
                <set field="totalApprovedTransactions" type="Long" from-field="finAccountTransListAndTotals.totalApprovedTransactions"/>
                <set field="createdApprovedGrandTotal" type="BigDecimal" from-field="finAccountTransListAndTotals.createdApprovedGrandTotal"/>
                <set field="totalCreatedApprovedTransactions" type="Long" from-field="finAccountTransListAndTotals.totalCreatedApprovedTransactions"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
                <set field="glReconciliationId" from-field="parameters.glReconciliationId"/>
                <set field="finAccountTransId" from-field="parameters.finAccountTransId"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <link target="EditFinAccountTrans" text="${uiLabelMap.CommonNew} ${uiLabelMap.CommonTransaction}" style="${styles.link_nav} ${styles.action_add}">
                            <parameter param-name="finAccountId" from-field="finAccountId"/>
                        </link>
                        <section>
                            <condition>
                                <if-compare field="finAccount.finAccountTypeId" operator="equals" value="BANK_ACCOUNT"/>
                            </condition>
                            <widgets>
                                <link target="BankReconciliation" text="${uiLabelMap.AccountingBankReconciliation}" style="${styles.link_nav}">
                                    <parameter param-name="finAccountId" from-field="finAccountId"/>
                                    <parameter param-name="statusId" value="FINACT_TRNS_CREATED"/>
                                </link>
                            </widgets>
                        </section>
                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
                            <decorator-section name="search-options">
                                <include-form name="FindFinAccountTransactions" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                            </decorator-section> 
                            <decorator-section name="search-results">
                                <platform-specific>
                                    <html><html-template location="component://accounting/webapp/accounting/finaccounttrans/FinAccountTrans.ftl"/></html>
                                </platform-specific>
                            </decorator-section>
                        </decorator-screen>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="BankReconciliation">
        <section>
            <actions>
                <set field="titleProperty" value="AccountingBankReconciliation"/>
                <set field="activeSubMenuItem" value="FinAccountTrans"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <link target="EditFinAccountTrans" text="${uiLabelMap.CommonNew} ${uiLabelMap.CommonTransaction}" style="${styles.link_nav} ${styles.action_add}">
                            <parameter param-name="finAccountId" from-field="finAccountId"/>
                        </link>
                            <label style="heading" text="${uiLabelMap.AccountingReconcileFinAccountTransFor}"/>
                        <section>
                            <condition>
                                <not>
                                    <if-empty field="parameters.glReconciliationId"/>
                                </not>
                            </condition>
                            <actions>
                                <entity-one entity-name="GlReconciliation" value-field="glReconciliation"/>
                                <set field="parameters.openingBalance" from-field="glReconciliation.openingBalance"/>
                                <service service-name="getFinAccountTransListAndTotals" result-map="finAccountTransListAndTotals" auto-field-map="true"/>
                                <set field="finAccountTransList" type="List" from-field="finAccountTransListAndTotals.finAccountTransList"/>
                                <set field="createdApprovedGrandTotal" type="BigDecimal" from-field="finAccountTransListAndTotals.createdApprovedGrandTotal"/>
                                <set field="glReconciliationApprovedGrandTotal" type="BigDecimal" from-field="finAccountTransListAndTotals.glReconciliationApprovedGrandTotal"/>
                            </actions>
                            <widgets>
                                <section>
                                    <actions>
                                        <entity-condition entity-name="GlAccountOrganizationAndClass" list="glAccountOrgAndClassList">
                                            <condition-expr field-name="organizationPartyId" from-field="defaultOrganizationPartyId"/>
                                            <order-by field-name="glAccountId"/>
                                        </entity-condition>
                                    </actions>
                                    <widgets>
                                        <screenlet id="FinAccountTransPanel" collapsible="true">
                                            <include-form name="FindBankReconciliationFinAcctTrans" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                                        </screenlet>
                                        <platform-specific>
                                            <html><html-template location="component://accounting/webapp/accounting/finaccounttrans/FinAccountTrans.ftl"/></html>
                                        </platform-specific>
                                    </widgets>
                                </section>
                            </widgets>
                            <fail-widgets>
                                <screenlet id="FinAccountTransPanel" collapsible="true">
                                    <include-form name="FindBankReconciliationFinAcctTrans" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                                </screenlet>
                                <platform-specific>
                                    <html><html-template location="component://accounting/webapp/accounting/finaccounttrans/FinAccountTrans.ftl"/></html>
                                </platform-specific>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="FinAccountPortlets">
        <section>
            <widgets>
                <include-form name="ListFinAccounts" location="component://accounting/widget/finance/FinAccountForms.xml"/>
            </widgets>
        </section>
    </screen>
    <screen name="NewDepositPayment">
        <section>
            <actions>
                <set field="activeSubMenuItem" value="depositWithdraw"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <set field="statusId" value="PMNT_RECEIVED"/>
                <set field="parentTypeId" value="RECEIPT"/>
                <set field="finAccountTransTypeId" value="DEPOSIT"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <label style="heading" text="${uiLabelMap.AccountingCreateNewDepositPaymentFor}"/>
                        <screenlet id="EditDepositPaymentPanel" collapsible="true">
                            <include-form name="EditDepositPayment" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                        </screenlet>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="NewWithdrawalPayment">
        <section>
            <actions>
                <set field="activeSubMenuItem" value="depositWithdraw"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <set field="statusId" value="PMNT_SENT"/>
                <set field="parentTypeId" value="DISBURSEMENT"/>
                <set field="finAccountTransTypeId" value="WITHDRAWAL"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet id="EditWithdrawalPaymentPanel" collapsible="true" title="${uiLabelMap.AccountingCreateNewWithdrawalPaymentFor}">
                            <include-form name="EditWithdrawalPayment" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                        </screenlet>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="EditFinAccountReconciliations">
        <section>
            <actions>
                <set field="titleProperty" value="AccountingEditFinAccountReconciliations"/>
                <set field="activeSubMenuItem" value="FindFinAccountReconciliations"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <set field="glReconciliationId" from-field="parameters.glReconciliationId" default-value=""/>
                <set field="activeSubMenuItem2" value="${groovy:glReconciliationId==null?'NewFinAccountReconciliations':'EditFinAccountReconciliations'}"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <include-menu name="FinAccountReconciliationsTabBar" location="component://accounting/widget/AccountingMenus.xml"/>
                        <section>
                            <condition>
                                <if-empty field="glReconciliationId"/>
                            </condition>
                            <widgets>
                                <screenlet id="AddFinAccountReconciliation" title="${uiLabelMap.AccountingAddFinAccountReconciliations}">
                                    <include-form name="EditFinAccountReconciliation" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                                </screenlet>
                            </widgets>
                            <fail-widgets>
                                <screenlet id="EditFinAccountReconciliation" title="${uiLabelMap.AccountingEditFinAccountReconciliations}">
                                    <include-form name="EditFinAccountReconciliation" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                                </screenlet>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="ViewGlReconciliationWithTransaction">
        <section>
            <actions>
                <set field="activeSubMenuItem" value="FindFinAccountReconciliations"/>
                <set field="titleProperty" value="AccountingEditFinAccountReconciliations"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <set field="glReconciliationId" from-field="parameters.glReconciliationId"/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
                <entity-one entity-name="GlReconciliation" value-field="currentGlReconciliation"/>
                <entity-condition entity-name="GlReconciliation" list="glReconciliationList">
                    <condition-list combine="and">
                        <condition-expr field-name="reconciledDate" operator="less" from-field="currentGlReconciliation.reconciledDate" ignore-if-empty="true"/>
                        <condition-expr field-name="glAccountId" operator="equals" from-field="finAccount.postToGlAccountId"/>
                    </condition-list>
                    <order-by field-name="reconciledDate DESC"/>
                </entity-condition>
                <set field="previousGlReconciliation" from-field="glReconciliationList[0]"/>
                <service service-name="getFinAccountTransListAndTotals" result-map="transactionTotalAmount"/>
                <set field="finAccountTransList" from-field="transactionTotalAmount.finAccountTransList" type="List"/>
                <set field="finAccountTransIds" value="${groovy:org.ofbiz.entity.util.EntityUtil.getFieldListFromEntityList(finAccountTransList, 'finAccountTransId', true);}" type="List"/>
                <entity-condition entity-name="FinAccountTrans" list="finAccountTransactions">
                    <condition-list>
                        <condition-expr field-name="finAccountTransId" operator="in" from-field="finAccountTransIds"/>
                        <condition-expr field-name="statusId" value="FINACT_TRNS_CREATED"/>
                    </condition-list>
                </entity-condition>
                <service service-name="isGlReconciliationReconciled" result-map="reconciledMap"/>
                <set field="isReconciled" from-field="reconciledMap.isReconciled"/>
                <service service-name="getReconciliationClosingBalance" result-map="currentRecnciliationClosingBalance"/>
                <set field="currentClosingBalance" from-field="currentRecnciliationClosingBalance.closingBalance"/>
                <set field="previousGlReconciliationId" from-field="previousGlReconciliation.glReconciliationId" default-value="${glReconciliationId}"/>
                <service service-name="getReconciliationClosingBalance" result-map="previousReconciliationClosingBalance">
                    <field-map field-name="glReconciliationId" from-field="previousGlReconciliationId"/>
                </service>
                <set field="previousClosingBalance" from-field="previousReconciliationClosingBalance.closingBalance"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                            <include-menu location="component://accounting/widget/AccountingMenus.xml" name="FinAccountReconciliationsTabBar"/>
                        <screenlet title="${uiLabelMap.AccountingCurrentBankReconciliation}">
                            <include-form location="component://accounting/widget/finance/FinAccountForms.xml" name="FinAccountReconciliationBalance"/>
                        </screenlet>
                        <label style="heading" text="${uiLabelMap.AccountingGlReconciliationFor}"></label>
                        <platform-specific>
                            <html><html-template location="component://accounting/webapp/accounting/finaccounttrans/GlReconciledFinAccountTrans.ftl"/></html>
                        </platform-specific>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="FindFinAccountReconciliations">
        <section>
            <actions>
                <set field="activeSubMenuItem" value="FindFinAccountReconciliations"/>
                <set field="titleProperty" value="PageTitleFindFinAccountReconciliations"/>
                <set field="activeSubMenuItem2" value="Find"/>
                <set field="finAccountId" from-field="parameters.finAccountId"/>
                <set field="glReconciliationId" from-field="parameters.glReconciliationId" default-value=""/>
                <entity-one entity-name="FinAccount" value-field="finAccount"/>
                <entity-condition entity-name="FinAccountTrans" list="finAccountTransList">
                    <condition-list>
                        <condition-expr field-name="finAccountId" operator="equals" from-field="finAccountId"/>
                        <condition-expr field-name="glReconciliationId" operator="not-equals" from-field="nullField" ignore-if-empty="true"/>
                        <condition-expr field-name="glReconciliationId" operator="equals" from-field="glReconciliationId" ignore-if-empty="true"/>
                    </condition-list>
                </entity-condition>
                <set field="glReconciliationIds" value="${groovy:org.ofbiz.entity.util.EntityUtil.getFieldListFromEntityList(finAccountTransList, 'glReconciliationId', true);}" type="List"/>
                <entity-condition entity-name="GlReconciliation" list="glReconciliations">
                    <condition-list>
                        <condition-expr field-name="glReconciliationId" operator="in" from-field="glReconciliationIds"/>
                        <condition-expr field-name="glAccountId" operator="equals" from-field="finAccount.postToGlAccountId" ignore-if-empty="true"/>
                        <condition-expr field-name="glReconciliationName" operator="equals" from-field="parameters.glReconciliationName" ignore-if-empty="true"/>
                        <condition-expr field-name="description" operator="equals" from-field="parameters.description" ignore-if-empty="true"/>
                        <condition-expr field-name="statusId" operator="equals" from-field="parameters.statusId" ignore-if-empty="true"/>
                        <condition-expr field-name="organizationPartyId" operator="equals" from-field="parameters.organizationPartyId" ignore-if-empty="true"/>
                    </condition-list>
                </entity-condition>
            </actions>
            <widgets>
                <decorator-screen name="CommonFinAccountDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <include-menu name="FinAccountReconciliationsTabBar" location="component://accounting/widget/AccountingMenus.xml"/>
                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
                            <decorator-section name="search-options">
                                <include-form name="FindBankReconciliation" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                            </decorator-section> 
                            <decorator-section name="search-results">
                                <include-form name="ListFinAccountReconciliations" location="component://accounting/widget/finance/FinAccountForms.xml"/>
                            </decorator-section>
                        </decorator-screen>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
</screens>