<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->

<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ofbiz.apache.org/Widget-Form" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Form http://ofbiz.apache.org/dtds/widget-form.xsd">

    <form name="ListWorkEffortRequests" separate-columns="true" target="ListWorkEffortRequests" title="" type="list"
        odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar">
        <actions>
            <entity-and entity-name="WorkEffortCustRequestView">
                <field-map field-name="workEffortId"/>
            </entity-and>
        </actions>
        <field name="workEffortId"><hidden/></field>
        <field name="custRequestId" widget-style="buttontext">
            <hyperlink description="${custRequestId}" target="/ordermgr/control/EditRequest" target-type="inter-app">
                <parameter param-name="custRequestId"/>
            </hyperlink>
        </field>
        <field name="description"><display/></field>
        <field name="custRequestTypeDescription"><display/></field>
        <field name="statusItemDescription"><display/></field>
        <field name="deleteLink" title=" " widget-style="buttontext">
            <hyperlink description="${uiLabelMap.CommonDelete}" target="deleteWorkEffortRequest" also-hidden="false">
                <parameter param-name="workEffortId"/>
                <parameter param-name="custRequestId"/>
            </hyperlink>
        </field>
    </form>
    <form name="AddWorkEffortRequest" target="createWorkEffortRequest" title="" type="single"
        header-row-style="header-row" default-table-style="basic-table">
        <field name="workEffortId"><hidden/></field>
        <field name="custRequestId"><lookup target-form-name="LookupCustRequest"/></field>
        <field name="submitButton" title="${uiLabelMap.CommonSave}" widget-style="buttontext">
            <submit button-type="text-link"/>
        </field>
    </form>

    <form name="ListWorkEffortRequestItems" separate-columns="true" target="ListWorkEffortRequestItems" title="" type="list"
        odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar">
        <actions>
            <entity-and entity-name="WorkEffortCustRequestItemView">
                <field-map field-name="workEffortId"/>
            </entity-and>
        </actions>
        <field name="workEffortId"><hidden/></field>
        <field name="custRequestId" widget-style="buttontext">
            <hyperlink description="${custRequestId}" target="/ordermgr/control/EditRequest" target-type="inter-app">
                <parameter param-name="custRequestId"/>
            </hyperlink>
        </field>
        <field name="custRequestItemSeqId" widget-style="buttontext"><display/></field>
        <field name="statusItemDescription"><display/></field>
        <field name="priority"><display/></field>
        <field name="productId"><display/></field>
        <field name="description"><display/></field>
        <field name="deleteLink" title=" " widget-style="linktext">
            <hyperlink description="${uiLabelMap.CommonDelete}" target="deleteWorkEffortRequestItem" also-hidden="false">
                <parameter param-name="workEffortId"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="custRequestItemSeqId"/>
            </hyperlink>
        </field>
    </form>
    <form name="AddWorkEffortRequestItem" target="createWorkEffortRequestItem" title="" type="single"
        header-row-style="header-row" default-table-style="basic-table">
        <field name="workEffortId"><hidden/></field>
        <field name="custRequestId"><lookup target-form-name="LookupCustRequest"/></field>
        <field name="custRequestItemSeqId"><lookup target-form-name="LookupCustRequestItem" target-parameter="custRequestId"/></field>
        <field name="submitButton" title="${uiLabelMap.CommonAdd}" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
</forms>
