<?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"
        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/widget-form.xsd">

    <form name="sprintList" type="list" use-row-submit="true" list-name="listIt" target="DeleteSprint" paginate-target="SprintList" separate-columns="true"
        odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" default-table-style="basic-table hover-bar">
        <actions>
            <set field="input.noConditionFind" value="N"/>
            <set field="input.workEffortParentId" from-field="parameters.projectId"/>
            <set field="input.workEffortTypeId" value="SCRUM_SPRINT"/>
            <set field="input.currentStatusId" value="SPRINT_ACTIVE"/>
            <service service-name="performFind" result-map="result" result-map-list="listIt">
                <field-map field-name="inputFields" from-field="input"/>
                <field-map field-name="entityName" value="WorkEffort"/>
                <field-map field-name="viewIndex" from-field="viewIndex"/>
                <field-map field-name="viewSize" from-field="viewSize"/>
                <field-map field-name="orderBy" value="estimatedStartDate"/>
            </service>
        </actions>
        <row-actions>
            <set field="estimatedHours" value="${estimatedMilliSeconds/1000/60/60}" type="Long"/>
        </row-actions>
        <field name="projectId"><hidden value="${parameters.projectId}"/></field>
        <field name="workEffortId"><hidden value="${workEffortId}"/></field>
        <field name="workEffortName" title="Sprint Name">
            <hyperlink target="ViewSprint" description="${workEffortName}">
                <parameter param-name="sprintId" from-field="workEffortId"/>
                <parameter param-name="projectId" from-field="projectWorkEffort.workEffortId"/>
            </hyperlink>
        </field>
        <field name="currentStatusId" title="Current Status"><display-entity entity-name="StatusItem" key-field-name="statusId" description="${description}"></display-entity></field>
        <field name="actualStartDate" title="Start Date"><display></display></field>
        <field name="actualCompletionDate" title="End Date"><display></display></field>
        <field name="estimatedHours" title="Sprint Length (hours)"><display></display></field>
    </form>
    
    <form name="sprintListClosed" extends="sprintList">
        <actions>
            <set field="input.noConditionFind" value="N"/>
            <set field="input.workEffortParentId" from-field="parameters.projectId"/>
            <set field="input.workEffortTypeId" value="SCRUM_SPRINT"/>
            <set field="input.currentStatusId" value="SPRINT_CLOSED"/>
            <service service-name="performFind" result-map="result" result-map-list="listIt">
                <field-map field-name="inputFields" from-field="input"/>
                <field-map field-name="entityName" value="WorkEffort"/>
                <field-map field-name="viewIndex" from-field="viewIndex"/>
                <field-map field-name="viewSize" from-field="viewSize"/>
                <field-map field-name="orderBy" value="estimatedStartDate"/>
            </service>
        </actions>
    </form>
    
    <form name="sprintBacklogList" type="list" use-row-submit="true" list-name="custRequestAndCustRequestItem" paginate-target="sprintBacklogListTarget" separate-columns="true"
        odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" default-table-style="basic-table hover-bar">
        <actions>
            <entity-and entity-name="WorkEffortAndProduct" list="projectList">
                <field-map field-name="workEffortId" from-field="parameters.projectId"/>
            </entity-and>
            <set field="productId" from-field="projectList[0].productId"/>
            <entity-condition list="custRequestAndCustRequestItem" entity-name="CustRequestAndCustRequestItem">
                <condition-list combine="and">
                    <condition-expr field-name="custRequestTypeId" value="RF_PROD_BACKLOG" />
                    <condition-expr field-name="statusId" value="CRQ_ACCEPTED" />
                    <condition-expr field-name="productId" from-field="productId"/>
                </condition-list>
                <order-by field-name="custSequenceNum"/>
            </entity-condition>
        </actions>
        <field name="custRequestId"><hidden/></field>
        <field name="description" title="${uiLabelMap.ScrumProductBacklogName}">
            <hyperlink target="ViewProdBacklogItem" description="${context.description} - [${custRequestId}]">
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
            </hyperlink>
        </field>
        <field name="projectId"><hidden value="${parameters.projectId}"/></field>
        <field name="custRequestId"><hidden/></field>
    </form>
    
    <form name="sprintBacklogListItems" type="list" use-row-submit="true" list-name="listIt" target="UpdateHours" paginate-target="ViewSprint" separate-columns="true"
        odd-row-style="alternate-row" default-table-style="hover-bar basic-table">
        <row-actions>
            <!-- get total backlog item's plan hours -->
            <set field="nullField" type="String"/>
            <service service-name="getScrumPlanHour" result-map="backlogPlanHourOutMap">
                <field-map field-name="custRequestId"/>
                <field-map field-name="sprintId" from-field="nullField"/>
                <field-map field-name="projectId" from-field="nullField"/>
            </service>
            <set field="backlogPlanHours" from-field="backlogPlanHourOutMap.planHours"/>
            <!-- get task's plan hours -->
            <service service-name="getScrumPlanHour" result-map="taskPlanHourOutMap">
                <field-map field-name="taskId"/>
                <field-map field-name="custRequestId" from-field="nullField"/>
                <field-map field-name="sprintId" from-field="nullField"/>
                <field-map field-name="projectId" from-field="nullField"/>
            </service>
            <set field="planHours" from-field="taskPlanHourOutMap.planHours"/>
            <!-- condition -->
             <set field="showPosition1" value="${groovy:String prev=(String)previousItem.get(&quot;custRequestId&quot;);return new Boolean(!(prev!=null&amp;&amp;prev.equals(custRequestId)));}" type="Boolean"/>
            <!-- Get list of task for each sprint backlog -->
            <entity-and entity-name="WorkEffortPartyAssignView" list="sprintMember">
                <field-map field-name="workEffortId" from-field="sprintId"/>
                <field-map field-name="roleTypeId" value="SCRUM_TEAM"/>
            </entity-and>
            <entity-and entity-name="WorkEffortPartyAssignView" list="assignedTos">
                <field-map field-name="workEffortId" from-field="taskId"/>
            </entity-and>
            <set field="partyId" value="${assignedTos[0].partyId}"/>
            <service service-name="getScrumActualHour" result-map="result">
                <field-map field-name="taskId" from-field="taskId"/>
                <field-map field-name="partyId" from-field="partyId"/>
            </service>
            <set field="taskActualHours" from-field="result.actualHours"/>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
            <set field="defaultBacklogPlanHours" value="${custRequest.custEstimatedMilliSeconds/3600000}"/>
            <set field="initialPlannedHours" from-field="defaultBacklogPlanHours"/>
            <entity-and entity-name="CustRequestItem" list="custRequestItems">
                <field-map field-name="custRequestId" from-field="custRequestId"/>
            </entity-and>
            <entity-condition entity-name="CustRequestItem" list="custRequestItems">
                <condition-list combine="and">
                    <condition-expr field-name="custRequestId" from-field="custRequestId"/>
                    <condition-expr field-name="productId" operator="not-equals" from-field="nullValue"/>
                </condition-list>
            </entity-condition>
            <set field="productId" from-field="custRequestItems[0].productId"/>
        </row-actions>
        <field name="projectId" position="2"><hidden/></field>
        <field name="sprintId" position="2"><hidden/></field>
        <field name="taskId" position="2"><hidden/></field>
        <field name="VIEW_SIZE_2" position="2"><hidden value="${parameters.VIEW_SIZE_2}"/></field>
        <field name="VIEW_INDEX_2" position="2"><hidden value="${parameters.VIEW_INDEX_2}"/></field>
        <field name="custRequestId" title="${uiLabelMap.ScrumSprintBacklog}" position="1" use-when="showPosition1&amp;&amp;&quot;${custRequestTypeId}&quot;!=&quot;RF_SCRUM_MEETINGS&quot;">
            <display-entity entity-name="CustRequest" key-field-name="custRequestId" description=" ">
                <sub-hyperlink  target="ViewProdBacklogItem" description="${context.description} - [${custRequestId}]" link-type="hidden-form" target-window="_BLANK" link-style="buttontext">
                    <parameter param-name="custRequestId"/>
                    <parameter param-name="productId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="custRequestId" title="${uiLabelMap.ScrumSprintBacklog}" position="1" use-when="showPosition1&amp;&amp;&quot;${custRequestTypeId}&quot;==&quot;RF_SCRUM_MEETINGS&quot;" widget-style="disabled">
            <display-entity entity-name="CustRequest" key-field-name="custRequestId" description="${context.description} - [${custRequestId}]">
            </display-entity>
        </field>
        <field name="custRequest.statusId" title="${uiLabelMap.ScrumStatusBacklog}" position="1" use-when="showPosition1&amp;&amp;&quot;Any&quot;.equals(paraBacklogStatusId)">
            <display-entity entity-name="StatusItem" description="${description}" key-field-name="statusId"/>
        </field>
        <field name="taskId" title="${uiLabelMap.ScrumTab} ${uiLabelMap.ScrumTask}" position="2" parameter-name="workEffortId" use-when="!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)">
            <display-entity entity-name="WorkEffort" key-field-name="workEffortId" description=" ">
                <sub-hyperlink  target="taskView" description="${uiLabelMap.ScrumTab} ${taskName} - [${taskId}]" link-type="hidden-form" target-window="_BLANK">
                    <parameter param-name="projectId"/>
                    <parameter param-name="taskId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="taskTypeId" title="${uiLabelMap.ScrumTab} ${uiLabelMap.ScrumTaskType}" position="2" use-when="!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)">
            <display-entity entity-name="WorkEffortType" key-field-name="workEffortTypeId" description="${uiLabelMap.ScrumTab} ${description}"/>
        </field>
        <field name="taskCurrentStatusId" title="${uiLabelMap.CommonStatus}" position="2" use-when="!&quot;STS_COMPLETED&quot;.equals(taskCurrentStatusId)&amp;&amp;!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"><display-entity entity-name="StatusItem" description="${description}" key-field-name="statusId"/></field>
        <field name="taskCurrentStatusId" title="${uiLabelMap.CommonStatus}" position="2" use-when="&quot;STS_COMPLETED&quot;.equals(taskCurrentStatusId)&amp;&amp;!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)" widget-style="alert"><display-entity entity-name="StatusItem" description="${description}" key-field-name="statusId"/></field>
        <field name="dummy1" title=" " position="1" use-when="showPosition1"><display description=" "/></field>
        <field name="dummy2" title=" " position="1" use-when="showPosition1"><display description=" "/></field>
        <field name="dummy3" title=" " position="1" use-when="showPosition1"><display description=" "/></field>
        <field name="initialPlannedHours" title="Initial Plan / Total Plan" position="1" use-when="showPosition1"><display description="${initialPlannedHours} / ${backlogPlanHours}"/></field>
        <field name="dummy4" title=" " position="1" use-when="showPosition1"><display description=" "/></field>
        <field name="dummy5" title=" " position="1" use-when="showPosition1"><display description=" "/></field>
        <field name="taskActualHours" title="${uiLabelMap.ScrumActualHours}" position="2" use-when="!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"><display/></field>
        <field name="planHours" title="${uiLabelMap.ScrumPlannedHours}" position="2" use-when="!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"><display></display>
        </field>
        <field name="deleteButton" title=" " position="1" use-when="showPosition1&amp;&amp;!&quot;CRQ_COMPLETED&quot;.equals(&quot;${custRequest.statusId}&quot;)" widget-style="buttontext">
            <hyperlink target="DeleteSprintBackLogs" description="Delete" confirmation-message="Are you sure to delete this sprint backlog ?" link-type="hidden-form">
                <parameter param-name="custRequestId"/>
                <parameter param-name="sprintId"/>
                <parameter param-name="projectId"/>
            </hyperlink>
        </field>
        <field name="newTask" title=" " position="1" use-when="showPosition1&amp;&amp;!&quot;CRQ_COMPLETED&quot;.equals(&quot;${custRequest.statusId}&quot;)" widget-style="buttontext">
            <hyperlink target="NewSprintBacklogTask" description="Add Task" link-type="hidden-form">
                <parameter param-name="custRequestId"/>
                <parameter param-name="sprintId"/>
                <parameter param-name="projectId"/>
            </hyperlink>
        </field>
        <field name="dummy6" title=" " position="2" use-when="!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"><display description=" "/></field>
        <field name="partyId" title="${uiLabelMap.ScrumAssignedTo}" position="2" parameter-name="partyId" use-when="!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)">
            <display-entity entity-name="PartyNameView"  description="${lastName}, ${firstName} ${middleName}" key-field-name="partyId"/>
        </field>
        <field name="editTaskParty" title=" " position="2" use-when="!&quot;STS_COMPLETED&quot;.equals(taskCurrentStatusId)&amp;&amp;!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)" widget-style="buttontext">
            <hyperlink target="EditTask" description="${uiLabelMap.CommonEdit}" link-type="hidden-form" target-window="_BLANK">
                <parameter param-name="taskId"/>
                <parameter param-name="sprintId"></parameter>
            </hyperlink>
        </field>
        <field name="deleteTaskButton" title=" " position="2" use-when="!&quot;STS_COMPLETED&quot;.equals(taskCurrentStatusId)&amp;&amp;!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)" widget-style="buttontext">
            <hyperlink target="DeleteTaskFromSprintOverview" description="Delete" confirmation-message="Are you sure to delete this task ?" link-type="hidden-form">
                <parameter param-name="workEffortId" from-field="taskId"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="sprintId"/>
                <parameter param-name="projectId"/>
            </hyperlink>
        </field>
        <field name="setCompleteButton" title=" " widget-style="buttontext" use-when="!&quot;STS_COMPLETED&quot;.equals(taskCurrentStatusId)&amp;&amp;!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"
         position="2">
            <hyperlink target="setCompleteTask" description="${uiLabelMap.ScrumSetComplete}" link-type="hidden-form">
                <parameter param-name="workEffortId" from-field="taskId"/>
                <parameter param-name="sprintId"></parameter>
            </hyperlink>
        </field>
        <field name="dummy7" title=" " position="2" use-when="!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"><display description=" "/></field>
    </form>
    
    <form name="sprintBacklogListItemsHideDelete" extends="sprintBacklogListItems">
        <field name="planHours" title="${uiLabelMap.ScrumPlannedHours}" position="2" use-when="!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"><display/></field>
        <field name="deleteButton" position="1" use-when="showPosition1"><hidden/></field>
        <field name="deleteTaskButton" position="2" use-when="!&quot;STS_COMPLETED&quot;.equals(taskCurrentStatusId)&amp;&amp;!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"><hidden/></field>
        <sort-order>
            <sort-field name="custRequestId"/>
            <sort-field name="taskId"/>
            <sort-field name="custRequest.statusId"/>
            <sort-field name="dummy1"/>
            <sort-field name="dummy2"/>
            <sort-field name="dummy4"/>
            <sort-field name="dummy5"/>
            <sort-field name="taskTypeId"/>
            <sort-field name="taskCurrentStatusId"/>
            <sort-field name="initialPlannedHours"/>
            <sort-field name="planHours"/>
            <sort-field name="newTask"/>
            <sort-field name="dummy3"/>
        </sort-order>
    </form>
    
    <form name="ViewSprintItem" type="single" default-entity-name="WorkEffort" target="EditSprintItem?projectId=${parameters.projectId}">
    <actions>
        <entity-and entity-name="WorkEffortCustRequestItemView" list="custRequestItems">
            <field-map field-name="workEffortId" from-field="parameters.workEffortId"/>
        </entity-and>
        <entity-and entity-name="CustRequestItem" list="custRequestItems">
            <field-map field-name="custRequestId" from-field="custRequestItems[0].custRequestId"/>
            <field-map field-name="custRequestItemSeqId" from-field="custRequestItems[0].custRequestItemSeqId"/>
        </entity-and>
        <entity-one entity-name="WorkEffort">
            <field-map field-name="workEffortId" from-field="parameters.workEffortId"/>
        </entity-one>
    </actions>
        <field name="workEffortName" title="Sprint Item Name"><display></display></field>
        <field name="description" title="${uiLabelMap.CommonDescription}" use-when="description!=null"><display></display></field>
        <field name="custRequestItemName" title="${uiLabelMap.ScrumCustomerRequestItemName}"><display description="${custRequestItems[0].description}"></display></field>
        <field name="custRequestId"><hidden value="${custRequestItems[0].custRequestId}"/></field>
        <field name="custRequestItemSeqId"><hidden value="${custRequestItems[0].custRequestItemSeqId}"/></field>
        <field name="sprintItemId"><hidden value="${parameters.workEffortId}"/></field>
        <field name="estimatedMilliSeconds" title="${uiLabelMap.ScrumEstimatedHours}"><display></display></field>
        <field name="submitButton" title="${uiLabelMap.CommonEdit}"><submit button-type="button"/></field>
    </form>
    
    <form name="showSprintInfo" type="single" default-entity-name="WorkEffort" target="EditSprint" >
        <actions>
            <entity-one entity-name="WorkEffort" value-field="sprint">
                <field-map field-name="workEffortId" from-field="parameters.sprintId"/>
            </entity-one>
            <entity-one entity-name="StatusItem" value-field="status">
                <field-map field-name="statusId" from-field="sprint.currentStatusId"/>
            </entity-one>
           
            <set field="estimatedHrs" value="${sprint.estimatedMilliSeconds/1000/60/60/40}" type="Integer"/>
            <entity-and entity-name="WorkEffortCustRequestView" list="custRequests">
                <field-map field-name="workEffortId" from-field="parameters.sprintId"/>
            </entity-and>
            <entity-and entity-name="WorkEffortAndProduct" list="workeffAndProList">
                <field-map field-name="workEffortId" from-field="sprint.workEffortParentId"/>
            </entity-and>
            <entity-one entity-name="Product" value-field="resultProduct">
                <field-map field-name="productId" from-field="workeffAndProList[0].productId"/>
            </entity-one>
            <set field="maxHours" value="${groovy: 
                def memberSize = delegator.findByAnd(&quot;WorkEffortPartyAssignment&quot;, [&quot;workEffortId&quot;: parameters.sprintId], null, false);
                maxHours = memberSize.size() * context.estimatedHrs * 40;
            }"/>
            <service service-name="getScrumPlanHour" result-map="planHourOutMap">
                <field-map field-name="sprintId" from-field="parameters.sprintId"/>
            </service>
            <set field="planHours" from-field="planHourOutMap.planHours"/>
            <set field="actualStartDate" from-field="sprint.actualStartDate" type="Timestamp"/>
            <set field="actualCompletionDate" from-field="sprint.actualCompletionDate" type="Timestamp"/>
        </actions>
        <field name="productId" title="${uiLabelMap.ScrumProductName}">
            <hyperlink target="ViewProduct" description="${resultProduct.internalName} [${resultProduct.productId}]">
                <parameter param-name="productId" from-field="resultProduct.productId"/>
            </hyperlink>
        </field>
        <field name="projectId" title="${uiLabelMap.ScrumProjectName}">
            <hyperlink target="viewScrumProject" description="${project.workEffortName} [${project.workEffortId}]">
                <parameter param-name="projectId" from-field="parameters.projectId"/>
            </hyperlink>
        </field>
        <field name="workEffortName" title="${uiLabelMap.ScrumSprintName}"><display description="${sprint.workEffortName}"/></field>
        <field name="description" title="${uiLabelMap.ScrumSprintGoal}" use-when="description!=null"><display description="${sprint.description}"/></field>
        <field name="currentStatusId"><hidden/></field>
        <field name="workEffortId"><hidden/></field>
        <field name="statusId" title="${uiLabelMap.CommonStatus}">
            <display description="${status.description}"/>
        </field>
        <field name="actualStartDate" title="${uiLabelMap.CommonStartDate}"><display type="date"/></field>
        <field name="actualCompletionDate" title="${uiLabelMap.CommonEndDate}"><display type="date"/></field>
        <field name="estimatedHrs" title="${uiLabelMap.ScrumSprintLengthWeeks}"><display description="${estimatedHrs} week(s)"/></field>
        <field name="planHours" title="${uiLabelMap.ScrumPlannedHours}"><display description="${planHours} hours"/></field>
        <field name="totalBacklogs" title="${uiLabelMap.PageTitleTotalBacklog}"><display description="reviewed:${reviewedBacklog}  completed:${completedBacklog}  total:${totalbacklog}"></display></field>
        <field name="totalTasks" title="${uiLabelMap.PageTitleTotalTask}"><display description="created:${createdTask}  completed:${completedTask}  total:${totalTask}"></display></field>
        <field name="sprintId"><hidden value="${parameters.sprintId}"/></field>
        <field name="sprintDuration"><hidden value="${estimatedMilliSeconds/144000000}"/></field>
    </form>
    
    <form name="EditSprint" type="single" extends="showSprintInfo" target="UpdateSprint">
        <field name="workEffortParentId" entry-name="projectId" title="${uiLabelMap.ScrumSprintMoveToProject}">
            <drop-down allow-empty="true">
                <entity-options description="${workEffortName} [${workEffortId}]" entity-name="WorkEffortAndProduct" key-field-name="workEffortId">
                    <entity-constraint name="workEffortTypeId" operator="equals" value="SCRUM_PROJECT"/>
                    <entity-constraint name="currentStatusId" operator="equals" value="SPJ_ACTIVE"/>
                    <entity-constraint name="productId" operator="equals" value="${resultProduct.productId}"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="workEffortName" title="${uiLabelMap.ScrumSprintName}"><text default-value="${sprint.workEffortName}"></text></field>
        <field name="description" title="${uiLabelMap.ScrumSprintGoal}"><textarea default-value="${sprint.description}"/></field>
        <field name="currentStatusId"><hidden value="${sprint.currentStatusId}"/></field>
        <field name="actualStartDate"><date-time type="date" default-value="${sprint.actualStartDate}"/></field>
        <field name="estimatedHrs" title="${uiLabelMap.ScrumSprintLength}"><hidden/></field>
        <field name="sprintDuration" title="${uiLabelMap.ScrumSprintLengthWeeks}" >
            <drop-down current-description="${estimatedHrs}" no-current-selected-key="${estimatedHrs}">
                <option key="1" description="1"/>
                <option key="2" description="2"/>
                <option key="3" description="3"/>
                <option key="4" description="4"/>
            </drop-down>
        </field>
        <field name="projectId"><hidden value="${parameters.projectId}"/></field>
        <field name="sprintId"> <hidden value="${parameters.sprintId}"/></field>
        <field name="workEffortId"><hidden value="${parameters.sprintId}"/></field>
        <field name="workEffortTypeId"><hidden value="SCRUM_SPRINT"/></field>
        <field name="statusName"><hidden/></field>
        <field name="statusId" title="${uiLabelMap.CommonStatus}">
            <drop-down>
                <entity-options description="${description}" entity-name="StatusItem">
                    <entity-constraint name="statusTypeId" value="SPRINT_STATUS" operator="equals"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="totalBacklogs" ><ignored/> </field>
        <field name="totalTasks"><ignored/> </field>
        <field name="deleteButton"><hidden/></field>
        <field name="actualDate" title="${uiLabelMap.CommonEndDate}"><hidden/></field>
        <field name="maxHours" title="${uiLabelMap.ScrumMaximumHours}"><hidden/></field>
        <field name="updateButton" title="${uiLabelMap.CommonUpdate}"><submit/></field>
        <sort-order>
            <sort-field name="productId"/>
            <sort-field name="workEffortParentId"/>
            <sort-field name="workEffortName"/>
            <sort-field name="description"/>
            <sort-field name="statusId"/>
            <sort-field name="actualStartDate"/>
            <sort-field name="actualCompletionDate"/>
            <sort-field name="planHours"/>
            <sort-field name="sprintDuration"/>
            <sort-field name="updateButton"/>
        </sort-order>
    </form>
    
    <form name="addSprint" skip-end="true" type="single" target="createSprint" default-entity-name="WorkEffort" default-map-name="projectWorkEffort">
        <field name="sprintName" title="${uiLabelMap.ScrumSprintName}"><text size="60"></text></field>
        <field name="sprintDescription" title="${uiLabelMap.ScrumSprintGoal}"><textarea/></field>
        <field name="workEffortTypeId"><hidden value="SCRUM_SPRINT"/></field>
        <field name="currentStatusId"><hidden value="CRQ_DRAFT"/></field>
        <field name="sprintEstimatedStart" title="${uiLabelMap.CommonStartDate}"><date-time type="date"/></field>
        <field name="sprintDuration" title="${uiLabelMap.ScrumSprintLengthWeeks}">
            <drop-down current-description="2" no-current-selected-key="2">
                <option key="1" description="1"/>
                <option key="2" description="2"/>
                <option key="3" description="3"/>
                <option key="4" description="4"/>
            </drop-down>
        </field>
    </form>
    
    <form name="addSprintMember" type="single" target="addSprintMember" default-map-name="projectMembers">
        <actions>
            <entity-condition entity-name="ScrumMemberUserLoginAndSecurityGroup" distinct="true" list="listPerson">
                <condition-list combine="and">
                    <condition-expr field-name="partyStatusId" operator="not-equals" value="PARTY_DISABLED"/>
                    <condition-expr field-name="thruDate" value="" operator="equals" ignore-if-empty="true"/>
                    <condition-expr field-name="groupId" value="SCRUM_TEAM" operator="equals"/>
                </condition-list>
                <select-field field-name="lastName"/>
                <select-field field-name="firstName"/>
                <select-field field-name="middleName"/>
                <select-field field-name="partyId"/>
                <order-by field-name="lastName"/>
            </entity-condition>
            <entity-and entity-name="WorkEffortAndProduct" list="projectList">
                <field-map field-name="workEffortId" from-field="parameters.projectId"/>
            </entity-and>
            <set field="productId" from-field="projectList[0].productId"/>
            <set field="sprintId" from-field="parameters.sprintId"/>
        </actions>
        <field name="productId"><hidden/></field>
        <field name="partyId" title="${uiLabelMap.Person}" tooltip="${uiLabelMap.CommonPerson}" use-when="parameters.get(&quot;partyId&quot;)!=null" parameter-name="partyId">
            <display-entity entity-name="PartyNameView"  description="${lastName}, ${firstName} ${middleName}" key-field-name="partyId">
                <sub-hyperlink target="SprintMember?sprintId=${parameters.sprintId}" description="[${uiLabelMap.CommonChange}]"/>
            </display-entity>
        </field>
        <field name="partyId" title="${uiLabelMap.Person}" tooltip="${uiLabelMap.CommonPerson}" event="onchange" action="javascript:document.addSprintMember.action='SprintMember';document.addSprintMember.submit();" use-when="parameters.get(&quot;partyId&quot;)==null" parameter-name="partyId">
            <drop-down allow-empty="false">
                <option key="" description="- ${uiLabelMap.CommonSelectOne} -"/>
                <list-options key-name="partyId" list-name="listPerson" description="${lastName} ${firstName} ${middleName}"/>
            </drop-down>
        </field>
        <field name="roleTypeId">
            <drop-down current="selected" allow-empty="false">
                <entity-options entity-name="PartyRoleDetailAndPartyDetail" description="${description}">
                    <entity-constraint name="partyId" operator="equals" value="${parameters.partyId}"/>
                    <entity-constraint name="parentTypeId" operator="equals" value="SCRUM_MEMBER"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="fromDate"><date-time/></field>
        <field name="thruDate"><date-time/></field>
        <field name="statusId"><hidden value="PRTYASGN_ASSIGNED"/></field>
        <field name="workEffortId"><hidden value="${parameters.sprintId}"/></field>
        <field name="submitButton" title="${uiLabelMap.ScrumAssign}"><submit button-type="button"/></field>
        <field name="projectId"><hidden value="${parameters.projectId}"/></field>
        <field name="sprintId"><hidden value="${parameters.sprintId}"/></field>
    </form>
     <form name="listSprintMember" type="list" target="delSprintMember" list-name="listIt" use-row-submit="true" paginate-target="ViewSprint" separate-columns="true"
        odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" default-table-style="basic-table hover-bar">
        <actions>
            <set field="input.noConditionFind" from-field="parameters.noConditionFind" default-value="Y"/>
            <set field="input.workEffortId" from-field="parameters.sprintId"/>
            <service service-name="performFind" result-map="result" result-map-list="listIt">
                <field-map field-name="inputFields" from-field="input"/>
                <field-map field-name="entityName" value="WorkEffortPartyAssignView"/>
                <field-map field-name="orderBy" value="firstName"/>
                <field-map field-name="viewIndex" from-field="viewIndex"/>
                <field-map field-name="viewSize" from-field="viewSize"/>
            </service>
        </actions>
        <field name="projectId"><hidden value="${parameters.projectId}"/></field>
        <field name="sprintId"> <hidden value="${parameters.sprintId}"/></field>
        <field name="partyId"><hidden/></field>
        <field name="workEffortId"><hidden value="${parameters.sprintId}"/></field>
        <field name="memberName" title="${uiLabelMap.ScrumMembersName}"><hyperlink target="viewprofile" description="${lastName}, ${firstName} ${middleName} [${partyId}]"><parameter param-name="partyId"/></hyperlink></field>
        <field name="roleTypeId">
            <display-entity entity-name="RoleType" description="${description}"/>
        </field>
        <field name="fromDate"><display type="date"/></field>
        <field name="thruDate"><display type="date"/></field>
        <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
        <field name="submitButton" title="${uiLabelMap.CommonRemove}"><submit confirmation-message="Are you sure to delete selected member ?"/></field>
    </form>
    <form name="listSprintMemberNoAction" extends="listSprintMember">
        <field name="submitButton"><hidden/></field>
    </form>
    <form name="listSprintMemberForStakeholder" extends="listSprintMember">
        <field name="memberName" title="${uiLabelMap.ScrumMembersName}">
            <display description="${lastName}, ${firstName} ${middleName} [${partyId}]"></display>
        </field>
        <field name="submitButton"><hidden/></field>
    </form>
    
    <form name="editScrumProject" default-map-name="workEffort" target="updateScrumProject" title="" type="single">
        <actions>
            <entity-one value-field="workEffortAttMap" entity-name="WorkEffortAttribute">
                <field-map field-name="workEffortId" from-field="workEffortId"/>
                <field-map field-name="attrName" value="PROJECT_BILLED"/>
            </entity-one>
            <set field="workEffAttMap.billed" from-field="workEffortAttMap.attrValue"/>
        </actions>
        <alt-target use-when="workEffort==null" target="createScrumProject"/>
        <field name="productId" title="${uiLabelMap.ScrumProductName}" use-when="workEffort==null">
            <drop-down>
                <entity-options description="${groupName} -- ${internalName}[${productId}]" entity-name="ProductAndRole" key-field-name="productId">
                    <entity-constraint name="supportDiscontinuationDate" operator="equals" value=""/>
                    <entity-constraint name="roleTypeId" value="PRODUCT_OWNER_COMP"/>
                    <entity-order-by field-name="groupName"/>
                    <entity-order-by field-name="internalName"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="productId" title="${uiLabelMap.ScrumProjectMoveToProduct}" use-when="workEffort!=null">
            <drop-down>
                <entity-options description="${groupName} -- ${internalName}[${productId}]" entity-name="ProductAndRole" key-field-name="productId">
                    <entity-constraint name="partyId" operator="equals" value="${productAndRoleMap.partyId}"/>
                    <entity-constraint name="supportDiscontinuationDate" operator="equals" value=""/>
                    <entity-constraint name="roleTypeId" value="PRODUCT_OWNER_COMP"/>
                    <entity-order-by field-name="groupName"/>
                    <entity-order-by field-name="internalName"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="productName" entry-name="productId"  title="${uiLabelMap.ScrumProductName}" use-when="workEffort!=null" parameter-name="productName">
            <display-entity entity-name="Product" key-field-name="productId" description="${internalName}"/>
        </field>
        <field name="workEffortId"><hidden/></field>
        <field name="workEffortTypeId"><hidden value="SCRUM_PROJECT"/></field>
        <field name="partyId"><hidden value="${userLogin.partyId}"/></field>
        <field name="productOwnerId"><hidden value="${parameters.partyId}"/></field>
        <field name="workEffortName" title="${uiLabelMap.ScrumProjectName}"><text/></field>
        <field name="billed" title="${uiLabelMap.ScrumBilled}" map-name="workEffAttMap">
            <drop-down allow-empty="true">
                <option key="Y" description="${uiLabelMap.CommonY}"/>
                <option key="N" description="${uiLabelMap.CommonN}"/>
            </drop-down>
        </field>
        <field name="currentStatusId" use-when="workEffortId==null"><hidden value="SPJ_ACTIVE"/></field>
        <field name="description" title="${uiLabelMap.ScrumProjectGoal}"><textarea/></field>
        <field name="currentStatusId" use-when="workEffortId!=null" title="${uiLabelMap.CommonStatus}">
            <drop-down current="first-in-list" current-description="${currentStatus.description}">
                <entity-options entity-name="StatusItem" key-field-name="statusId" description="${description}">
                    <entity-constraint name="statusTypeId" value="SCRUM_PROJECT_STATUS"/>
                    <entity-order-by field-name="description"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="projectId"><hidden value="${parameters.projectId}"/></field>
        <field name="submitButton" title="${uiLabelMap.CommonSave}" widget-style="smallSubmit"><submit/></field>
    </form>
    <form name="newScrumProject" extends="editScrumProject">
        <field name="productId" title="${uiLabelMap.ScrumProductName}"><display-entity entity-name="Product" description="${internalName} [${productId}]"/> </field>
    </form>
    
    <form name="ScrumProject" type="single" target="viewScrumProject" default-map-name="project">
        <actions>
            <entity-one entity-name="ProjectSprintBacklogAndTask" value-field="showDate">
                <field-map field-name="projectId" from-field="project.workEffortId"/>
            </entity-one>
            <service service-name="getScrumActualHour" result-map="results">
                <field-map field-name="projectId" from-field="project.workEffortId"/>
            </service>
            <entity-and entity-name="WorkEffort" list="sprintList">
                <field-map field-name="workEffortParentId" from-field="parameters.projectId"/>
                <field-map field-name="workEffortTypeId" value="SCRUM_SPRINT"/>
                <order-by field-name="actualStartDate"/>
            </entity-and>
            <entity-one entity-name="Product" value-field="product">
                <field-map field-name="productId" from-field="project.productId"/>
            </entity-one>
            <entity-and entity-name="ProductRole" list="productRoleList">
                <field-map field-name="productId" from-field="product.productId"/>
                <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
            </entity-and>
            <set field="partyMap.productOwnerId" from-field="productRoleList[0].partyId"/>
            <entity-one value-field="workEffortAttMap" entity-name="WorkEffortAttribute">
                <field-map field-name="workEffortId" from-field="parameters.projectId"/>
                <field-map field-name="attrName" value="PROJECT_BILLED"/>
            </entity-one>
            <set field="actualStartDate" from-field="sprintList[0].actualStartDate" type="Date"/>
        </actions>
        <field name="productId" title="${uiLabelMap.ScrumProductName}" entity-name="Product" parameter-name="productId">
            <display-entity entity-name="Product" key-field-name="productId" description=" ">
                <sub-hyperlink target="ViewProduct" description="${product.internalName} [${project.productId}]">
                    <parameter param-name="productId" from-field="project.productId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="projectId"><hidden value="${parameters.projectId}"/></field>
        <field name="workEffortName" title="${uiLabelMap.ScrumProjectName}"><display/></field>
        <field name="productOwnerId" title="${uiLabelMap.ScrumProductOwner}" map-name="partyMap">
            <display-entity entity-name="Person" key-field-name="partyId" description="${firstName} ${lastName} ${middleName} [${partyId}]"/>
        </field>
        <field name="description" title="${uiLabelMap.ScrumProjectGoal}"><display/></field>
        <field name="billed" title="${uiLabelMap.ScrumBilled}"><display description="${workEffortAttMap.attrValue}"/></field>
        <field name="currentStatusId" title="${uiLabelMap.CommonStatus}">
            <display-entity entity-name="StatusItem" key-field-name="statusId" description="${description}"/>
        </field>
        <field name="actualStartDate"><display description="${actualStartDate}"/></field>
        <field name="actualCompletionDate"><display type="date"/></field>
        <field name="actualHours"><display description="${results.actualHours}"/></field>
    </form>
    
    <form name="EditProdBacklog" type="single" target="createProductBacklog" default-map-name="custRequest">
        <actions>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
            <set field="nullField" type="Timestamp"/>
            <set field="custRequestName" from-field="custRequest.custRequestName"/>
            <set field="openDateTime" from-field="custRequest.openDateTime"/>
            <set field="closedDateTime" from-field="custRequest.closedDateTime"/>
            <entity-one entity-name="Product" value-field="product">
                <field-map field-name="productId" from-field="parameters.productId"/>
            </entity-one>
            <entity-and entity-name="CustRequestNoteView" list="custRequestNotes">
                <field-map field-name="custRequestId" from-field="custRequestId"/>
                <field-map field-name="noteName" value="How to test"/>
            </entity-and>
            <entity-condition entity-name="ProductBacklog" list="workEffortlist">
                <condition-list>
                    <condition-expr field-name="custRequestId" from-field="custRequestId"/>
                    <condition-expr field-name="workEffortTypeId" value="SCRUM_SPRINT"/>
                </condition-list>
            </entity-condition>
            <entity-one entity-name="WorkEffort" value-field="workEffort">
                <field-map field-name="workEffortId" from-field="workEffortlist[0].workEffortId"/>
            </entity-one>
            <set field="sprintName" from-field="workEffort.workEffortName"/>
            <set field="projectId" from-field="workEffort.workEffortParentId"/>
            <set field="noteInfo" from-field="custRequestNotes[0].noteInfo"/>
            <entity-one value-field="workEffortAttMap" entity-name="WorkEffortAttribute">
                <field-map field-name="workEffortId" from-field="projectId"/>
                <field-map field-name="attrName" value="PROJECT_BILLED"/>
            </entity-one>
            <set field="projectBilled" from-field="workEffortAttMap.attrValue"/>
            <entity-and entity-name="ProductRole" list="productRole">
               <field-map field-name="productId" from-field="parameters.productId"/>
               <field-map field-name="thruDate" from-field="nullField"/>
               <order-by field-name="roleTypeId"/>
            </entity-and>
            <entity-one entity-name="ProductAndRole" value-field="Owner">
                <field-map field-name="productId" from-field="parameters.productId"/>
                <field-map field-name="partyId" from-field="productRole[0].partyId"/>
                <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
                <field-map field-name="fromDate" from-field="productRole[0].fromDate"/>
            </entity-one>
            <entity-one entity-name="ProductAndRole" value-field="Company">
                <field-map field-name="productId" from-field="parameters.productId"/>
                <field-map field-name="partyId" from-field="productRole[1].partyId"/>
                <field-map field-name="roleTypeId" value="PRODUCT_OWNER_COMP"/>
                <field-map field-name="fromDate" from-field="productRole[1].fromDate"/>
            </entity-one>
            <entity-and entity-name="PartyRelationshipAndPartyDetail" list="party">
                <field-map field-name="partyIdFrom" from-field="Company.partyId"/>
                <field-map field-name="roleTypeIdFrom" value="ACCOUNT"/>
                <field-map field-name="roleTypeIdTo" value="CONTACT"/>
                <field-map field-name="thruDate" from-field="nullField"/>
            </entity-and>
            <entity-condition entity-name="PartyRelationshipAndDetail" list="request">
                <condition-expr field-name="partyId" from-field="custRequest.fromPartyId"/>
            </entity-condition>
            <entity-and entity-name="CustRequestItem" list="custRequestItems">
                <field-map field-name="custRequestId" from-field="custRequestId"/>
            </entity-and>
            <set field="story" from-field="custRequestItems[0].story"/>
        </actions>
        <alt-target use-when="custRequestId!=null" target="updateProductBacklog?custRequestId=${parameters.custRequestId}"/>
        <field name="sequence"><hidden value="${sequence}"/></field>
        <field name="backStatusId" use-when="custRequest==null"><hidden value="CRQ_ACCEPTED"/> </field>
        <field name="noteId"><hidden value="${custRequestNotes[0].noteId}"/></field>
        <field name="productId"><hidden value="${parameters.productId}"/></field>
        <field name="partyId"><hidden value="userLogin.partyId"/></field>
        <field name="custRequestTypeId" use-when="custRequest==null"><hidden/></field>
        <field name="description" title="${uiLabelMap.ScrumProductBacklogItem}" widget-style="required" tooltip="${uiLabelMap.ScrumMax255Chars}" use-when="custRequest==null">
            <text size="63" maxlength="255"/>
        </field>
        <field name="description" title="${uiLabelMap.ScrumProductBacklogItem}" widget-style="required" tooltip="${uiLabelMap.ScrumMax255Chars}" use-when="custRequest!=null&amp;&amp;isTeamMember==false"><text size="63" maxlength="255"/></field>
        <field name="description" title="${uiLabelMap.ScrumProductBacklogItem}" widget-style="required" tooltip="${uiLabelMap.CommonRequired}" use-when="custRequest!=null&amp;&amp;isTeamMember==true"><display/></field>
        <field name="productId" map-name="product" title="${uiLabelMap.ScrumProjectMoveToProduct}" use-when="custRequest!=null&amp;&amp;isTeamMember==false">
            <drop-down>
                <entity-options description="${groupName}  ${internalName}[${productId}]" entity-name="ProductAndRole" key-field-name="productId">
                    <entity-constraint name="partyId" operator="equals" value="${Company.partyId}"/>
                    <entity-constraint name="supportDiscontinuationDate" operator="equals" value=""/>
                    <entity-constraint name="roleTypeId" value="PRODUCT_OWNER_COMP"/>
                    <entity-order-by field-name="groupName"/>
                    <entity-order-by field-name="internalName"/>
                </entity-options>
            </drop-down>
        </field> 
        <field name="productId" map-name="product" title="${uiLabelMap.ScrumProjectMoveToProduct}" use-when="custRequest!=null&amp;&amp;isTeamMember==true">
            <display-entity entity-name="Product" description="${internalName} [${productId}]" key-field-name="productId"/>
        </field> 
        <field name="groupName" title="${uiLabelMap.ScrumCompany}" parameter-name="partyIdFrom" use-when="custRequest!=null">
            <display description="${Company.groupName}"/>
        </field>
        <field name="productOwerId" title="${uiLabelMap.ScrumProductOwner}" use-when="custRequest!=null">
            <display description="${Owner.lastName} ${Owner.firstName} ${Owner.middleName}"/>
        </field>
        <field name="parentCustRequestId" title="${uiLabelMap.ScrumBacklogItemCategory}" use-when="custRequest==null">
            <drop-down allow-empty="true">
                <entity-options description="${custRequestName}" entity-name="CustRequestAndCustRequestItem" key-field-name="custRequestId">
                    <entity-constraint name="productId" env-name="productId"/>
                    <entity-constraint name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
                    <entity-order-by field-name="custRequestName"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="parentCustRequestId" title="${uiLabelMap.ScrumBacklogItemCategory}" use-when="custRequest!=null&amp;&amp;isTeamMember==false">
            <drop-down allow-empty="true">
                <entity-options description="${custRequestName}" entity-name="CustRequestAndCustRequestItem" key-field-name="custRequestId">
                    <entity-constraint name="productId" env-name="productId"/>
                    <entity-constraint name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="parentCustRequestId" title="${uiLabelMap.ScrumBacklogItemCategory}" use-when="custRequest!=null&amp;&amp;isTeamMember==true">
            <display-entity entity-name="CustRequest" description="${custRequestName}" key-field-name="custRequestId"/>
        </field>
        <field name="plannedTime" parameter-name="custEstimatedMilliSeconds" title="${uiLabelMap.ScrumPlannedTime}" tooltip="${uiLabelMap.ScrumHrs}" use-when="custRequest==null">
            <text size="3"/>
        </field>
        <field name="plannedTime" parameter-name="custEstimatedMilliSeconds" title="${uiLabelMap.ScrumPlannedTime}" tooltip="${uiLabelMap.ScrumHrs}" use-when="custRequest!=null&amp;&amp;isTeamMember==false"><text size="3" default-value="${custRequest.custEstimatedMilliSeconds/3600000}"/></field>
        <field name="plannedTime" parameter-name="custEstimatedMilliSeconds" title="${uiLabelMap.ScrumPlannedTime}" tooltip="${uiLabelMap.ScrumHrs}" use-when="custRequest!=null&amp;&amp;isTeamMember==true"><display description="${custRequest.custEstimatedMilliSeconds/3600000}"/></field>
        <field name="custSequenceNum" title="${uiLabelMap.CommonSequenceNum}" use-when="custRequest==null">
            <text size="3"></text>
        </field>
        <field name="custSequenceNum" title="${uiLabelMap.CommonSequenceNum}" use-when="custRequest!=null&amp;&amp;isTeamMember==false"><text size="3"></text></field>
        <field name="custSequenceNum" title="${uiLabelMap.CommonSequenceNum}" use-when="custRequest!=null&amp;&amp;isTeamMember==true"><display/></field>
        <field name="billed" title="${uiLabelMap.ScrumBilled}" use-when="custRequest==null">
            <drop-down allow-empty="false" no-current-selected-key="Y">
                <option key="Y" description="${uiLabelMap.CommonY}"/>
                <option key="N" description="${uiLabelMap.CommonN}"/>
            </drop-down>
        </field>
        <field name="billed" title="${uiLabelMap.ScrumBilled}" use-when="custRequest!=null&amp;&amp;isTeamMember==false&amp;&amp;projectBilled==null">
            <drop-down allow-empty="false" no-current-selected-key="Y">
                <option key="Y" description="${uiLabelMap.CommonY}"/>
                <option key="N" description="${uiLabelMap.CommonN}"/>
            </drop-down>
        </field>
        <field name="billed" title="${uiLabelMap.ScrumBilled}" use-when="custRequest!=null&amp;&amp;isTeamMember==false&amp;&amp;projectBilled!=null" tooltip="${uiLabelMap.ScrumSetOnProjectLevel}">
            <display/>
        </field>
        <field name="billed" title="${uiLabelMap.ScrumBilled}" use-when="custRequest!=null&amp;&amp;isTeamMember==true"><display/></field>
        <field name="custRequestTypeId" title="${uiLabelMap.ScrumUnplanBacklog}" use-when="isTeamMember==false">
            <drop-down allow-empty="false" no-current-selected-key="N">
                <option key="RF_UNPLAN_BACKLOG" description="${uiLabelMap.CommonY}"/>
                <option key="RF_PROD_BACKLOG" description="${uiLabelMap.CommonN}"/>
            </drop-down>
        </field>
        <field name="custRequestTypeId" title="${uiLabelMap.ScrumUnplanBacklog}" use-when="custRequest!=null&amp;&amp;isTeamMember==true">
            <display-entity entity-name="CustRequestType" description="${description}" key-field-name="custRequestTypeId"/>
        </field>
        <field name="unplannedFlag" title="${uiLabelMap.ScrumUnplanBacklog}" use-when="custRequest==null">
            <drop-down allow-empty="false" no-current-selected-key="N">
                <option key="Y" description="${uiLabelMap.CommonY}"/>
                <option key="N" description="${uiLabelMap.CommonN}"/>
            </drop-down>
        </field>
        <field name="statusId" title="${uiLabelMap.CommonStatus}" use-when="custRequest!=null">
            <display-entity entity-name="StatusItem" key-field-name="statusId" description="${description}"></display-entity>
        </field>
        <field name="partyIdTo" title="${uiLabelMap.ScrumRequestName}" parameter-name="partyIdTo" use-when="custRequest!=null&amp;&amp;isTeamMember==false">
            <drop-down no-current-selected-key="${custRequest.fromPartyId}" allow-empty="false">
                <list-options list-name="party" description="${toLastName} ${toFirstName} ${toMiddleName}" key-name="partyIdTo"/>
            </drop-down>
        </field>
        <field name="partyIdTo" title="${uiLabelMap.ScrumRequestName}" parameter-name="partyIdTo" use-when="custRequest!=null&amp;&amp;isTeamMember==true">
            <display description="${request[0].lastName} ${request[0].firstName} ${request[0].middleName}"/>
        </field>
        <field name="Sprint" title="${uiLabelMap.ScrumSprintName}" use-when="sprintName!=null">
            <hyperlink target="ViewSprint" description="${sprintName} [${workEffortlist[0].workEffortId}]">
               <parameter param-name="prjectId" from-field="projectId"/>
               <parameter param-name="sprintId" from-field="workEffortlist[0].workEffortId"/>
           </hyperlink>
        </field>
        <field name="story" title="${uiLabelMap.ScrumStory}" use-when="custRequest==null">
            <textarea  rows="4" cols="60" default-value="${story}" />
        </field>
        <field name="story" title="${uiLabelMap.ScrumStory}" use-when="custRequest!=null&amp;&amp;isTeamMember==false"><textarea  rows="4" cols="60" default-value="${story}" /></field>
        <field name="story" title="${uiLabelMap.ScrumStory}" use-when="custRequest!=null&amp;&amp;isTeamMember==true"><display description="${story}"/></field>
        <field name="noteInfo" title="${uiLabelMap.ScrumHowToTest}"><textarea  rows="4" cols="60" default-value="${noteInfo}" /></field>
        <field name="submitButton" title="${uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit button-type="button"/></field>
        <sort-order>
            <sort-field name="description"/>
            <sort-field name="productId"/>
            <sort-field name="partyId"/>
            <sort-field name="groupName"/>
            <sort-field name="productOwerId"/>
            <sort-field name="parentCustRequestId"/>
            <sort-field name="Sprint"/>
            <sort-field name="plannedTime"/>
            <sort-field name="custSequenceNum"/>
            <sort-field name="billed"/>
            <sort-field name="unplannedFlag"/>
            <sort-field name="custRequestTypeId"/>
            <sort-field name="statusId"/>
            <sort-field name="partyIdTo"/>
            <sort-field name="productId"/>
            <sort-field name="story"/>
            <sort-field name="noteId"/>
            <sort-field name="noteInfo"/>
            <sort-field name="custRequestTypeId"/>
            <sort-field name="submitButton"/>
        </sort-order>
    </form>
    
    <form name="FindProdBacklog" type="single" target="ViewTotalBacklog">
        <actions>
            <entity-condition entity-name="ScrumMemberUserLoginAndSecurityGroup" list="requesterList">
                <condition-list combine="or" >
                    <condition-expr field-name="groupId" value="SCRUM_MASTER"/>
                    <condition-expr field-name="groupId" value="SCRUM_PRODUCT_OWNER"/>
                </condition-list>
            </entity-condition>
        </actions>
        <field name="sequence"><hidden value="${sequence}"/></field>
        <field name="productId"><hidden value="${parameters.productId}"/></field>
        <field name="custRequestId" title="${uiLabelMap.ScrumProductBacklogId}"><text-find/></field>
        <field name="fromPartyId" title="${uiLabelMap.ScrumRequesterName}" position="2">
            <drop-down allow-empty="true">
                <option key=""/>
                <list-options key-name="partyId" list-name="requesterList" description="${lastName} ${firstName} ${middleName}"/>
            </drop-down>
        </field>
        <field name="description" title="${uiLabelMap.ScrumProductBacklogName}"><text-find/></field>
        <field name="custRequestDate" title="${uiLabelMap.ScrumRequestDate}" position="2">
            <date-time type="date"/>
        </field>
        <field name="parentCustRequestId" title="${uiLabelMap.ScrumBacklogItemCategory}">
            <drop-down allow-empty="true">
                <entity-options description="${custRequestName}" entity-name="CustRequestAndCustRequestItem" key-field-name="custRequestId">
                    <entity-constraint name="productId" value="${parameters.productId}"/>
                    <entity-constraint name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
                    <entity-order-by field-name="custRequestName"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="billed" title="${uiLabelMap.ScrumBilled}" position="2">
            <drop-down allow-empty="true" current-description="" >
                <option key="Y" description="${uiLabelMap.CommonY}"/>
                <option key="N" description="${uiLabelMap.CommonN}"/>
            </drop-down>
        </field>
        <field name="custRequestTypeId" title="${uiLabelMap.ScrumPlanned}">
            <drop-down allow-empty="false">
                <option key="${uiLabelMap.CommonAny}" description=" "/>
                <option key="RF_PROD_BACKLOG" description="${uiLabelMap.CommonY}"/>
                <option key="RF_UNPLAN_BACKLOG" description="${uiLabelMap.CommonN}"/>
            </drop-down>
        </field>
        <field name="statusId" title="${uiLabelMap.CommonStatus}" position="2">
            <drop-down allow-empty="false">
                <option key="${uiLabelMap.CommonAny}" description=" "/>
                <entity-options entity-name="StatusItem" description="${description}" key-field-name="statusId">
                    <entity-constraint name="statusTypeId" value="CUSTREQ_STTS"/>
                    <entity-constraint name="statusId" operator="not-equals" value="CRQ_PENDING"/>
                    <entity-constraint name="statusId" operator="not-equals" value="CRQ_REJECTED"/>
                    <entity-constraint name="statusId" operator="not-equals" value="CRQ_DRAFT"/>
                    <entity-constraint name="statusId" operator="not-equals" value="CRQ_SUBMITTED"/>
                    <entity-order-by field-name="sequenceId"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
        <field name="submitButton" title="${uiLabelMap.CommonFind}" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
    <form name="FindTotalBacklog" type="single" target="FindTotalBacklog">
        <actions>
            <entity-condition entity-name="ScrumMemberUserLoginAndSecurityGroup" list="requesterList">
                <condition-list combine="or" >
                    <condition-expr field-name="groupId" value="SCRUM_MASTER"/>
                    <condition-expr field-name="groupId" value="SCRUM_PRODUCT_OWNER"/>
                </condition-list>
            </entity-condition>
        </actions>
        <field name="custRequestId" title="${uiLabelMap.ScrumProductBacklogId}"><text/></field>
        <field name="productId" position="2"><text/></field>
        <field name="description" title="${uiLabelMap.ScrumProductBacklogName}"><text/></field>
        <field name="fromPartyId" title="${uiLabelMap.ScrumRequesterName}" position="2">
            <drop-down allow-empty="true">
                <option key=""/>
                <list-options key-name="partyId" list-name="requesterList" description="${lastName} ${firstName} ${middleName}"/>
            </drop-down>
        </field>
        <field name="parentCustRequestId" title="${uiLabelMap.ScrumBacklogItemCategory}">
            <drop-down allow-empty="true">
                <entity-options description="${custRequestName}" entity-name="CustRequestAndCustRequestItem" key-field-name="custRequestId">
                    <entity-constraint name="productId" value="${parameters.productId}"/>
                    <entity-constraint name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
                    <entity-order-by field-name="custRequestName"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="custRequestDate" title="${uiLabelMap.ScrumRequestDate}" position="2">
            <date-time type="date"/>
        </field>
        <field name="custRequestTypeId" title="${uiLabelMap.ScrumPlanned}">
            <drop-down allow-empty="false">
                <option key="${uiLabelMap.CommonAny}" description=" "/>
                <option key="RF_PROD_BACKLOG" description="${uiLabelMap.CommonY}"/>
                <option key="RF_UNPLAN_BACKLOG" description="${uiLabelMap.CommonN}"/>
            </drop-down>
        </field>
        <field name="billed" title="${uiLabelMap.ScrumBilled}" position="2">
            <drop-down allow-empty="true" current-description="" >
                <option key="Y" description="${uiLabelMap.CommonY}"/>
                <option key="N" description="${uiLabelMap.CommonN}"/>
            </drop-down>
        </field>
        <field name="statusId" title="${uiLabelMap.CommonStatus}">
            <drop-down allow-empty="false">
                <option key="${uiLabelMap.CommonAny}" description=" "/>
                <entity-options entity-name="StatusItem" description="${description}" key-field-name="statusId">
                    <entity-constraint name="statusTypeId" value="CUSTREQ_STTS"/>
                    <entity-constraint name="statusId" operator="not-equals" value="CRQ_PENDING"/>
                    <entity-constraint name="statusId" operator="not-equals" value="CRQ_REJECTED"/>
                    <entity-constraint name="statusId" operator="not-equals" value="CRQ_DRAFT"/>
                    <entity-constraint name="statusId" operator="not-equals" value="CRQ_SUBMITTED"/>
                    <entity-order-by field-name="sequenceId"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="submitButton" title="${uiLabelMap.CommonFind}" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
    
    <form name="ListProdBacklog" type="multi" use-row-submit="true" list-name="custRequestAndCustRequestItems" target="updateProductBacklogItemRow?productId=${productId}&amp;sequence=${sequence}&amp;" paginate-target="AddProdBacklog" separate-columns="true"
        odd-row-style="alternate-row" default-table-style="basic-table hover-bar" paginate="true">
        <actions>
            <set field="parentCustRequestId" from-field="parameters.parentCustRequestId" default-value=""/>
        </actions>
        <row-actions>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
            <set field="description" from-field="custRequest.description"/>
            <set field="custRequestCategoryGroupId" from-field="parentCustRequestId"/>
            <set field="estimatedHours" value="${groovy:custEstimatedMilliSeconds!=null?custEstimatedMilliSeconds/3600000:0;}"/>
            <set field="showPosition1" value="${groovy:String prev=(String)previousItem.get(&quot;parentCustRequestId&quot;);return new Boolean(!(prev!=null&amp;&amp;prev.equals(parentCustRequestId)));}" type="Boolean"/>
        </row-actions>
        <field name="postWorkHours"><hidden value="1"/></field>
        <field name="priority"><hidden/></field>
        <field name="custRequestCategoryGroupId" position="1" use-when="${groovy:showPosition1==true}" title="${uiLabelMap.ScrumCategory}">
            <display-entity entity-name="CustRequest" key-field-name="custRequestId" description="${custRequestName}"/>
        </field>
        <!-- order button -->
        <field name="top" position="2" title=" ">
            <hyperlink target="updateSprintBacklogseq" image-location="/images/arrow-end-up-green.png">
                <parameter param-name="mode" value="TOP"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
                <parameter param-name="custRequestItemSeqId"/>
                <parameter param-name="statusId" value="${parameters.statusId}"/>
                <parameter param-name="orderBy" from-field="orderBy"/>
                <parameter param-name="sequence" value="N"/>
                <parameter param-name="VIEW_SIZE_1" from-field="viewSize"/>
                <parameter param-name="VIEW_INDEX_1" from-field="viewIndex"/>
                <parameter param-name="searchOption_custRequestId" value="${parameters.custRequestId}"/>
                <parameter param-name="searchOption_custRequestId_op" value="${parameters.custRequestId_op}"/>
                <parameter param-name="searchOption_custRequestId_ic" value="${parameters.custRequestId_ic}"/>
                <parameter param-name="searchOption_description" value="${parameters.description}"/>
                <parameter param-name="searchOption_description_op" value="${parameters.description_op}"/>
                <parameter param-name="searchOption_description_ic" value="${parameters.description_ic}"/>
                <parameter param-name="searchOption_parentCustRequestId" value="${parameters.parentCustRequestId}"/>
                <parameter param-name="searchOption_statusId" value="${parameters.statusId}"/>
            </hyperlink>
        </field>
        <field name="bot" position="2" title=" ">
            <hyperlink target="updateSprintBacklogseq" image-location="/images/arrow-end-down-green.png">
                <parameter param-name="mode" value="BOT"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
                <parameter param-name="custRequestItemSeqId"/>
                <parameter param-name="statusId" value="${parameters.statusId}"/>
                <parameter param-name="orderBy" from-field="orderBy"/>
                <parameter param-name="sequence" value="N"/>
                <parameter param-name="VIEW_SIZE_1" from-field="viewSize"/>
                <parameter param-name="VIEW_INDEX_1" from-field="viewIndex"/>
                <parameter param-name="searchOption_custRequestId" value="${parameters.custRequestId}"/>
                <parameter param-name="searchOption_custRequestId_op" value="${parameters.custRequestId_op}"/>
                <parameter param-name="searchOption_custRequestId_ic" value="${parameters.custRequestId_ic}"/>
                <parameter param-name="searchOption_description" value="${parameters.description}"/>
                <parameter param-name="searchOption_description_op" value="${parameters.description_op}"/>
                <parameter param-name="searchOption_description_ic" value="${parameters.description_ic}"/>
                <parameter param-name="searchOption_parentCustRequestId" value="${parameters.parentCustRequestId}"/>
                <parameter param-name="searchOption_statusId" value="${parameters.statusId}"/>
            </hyperlink>
        </field>
        <field name="up" position="2" title=" " >
            <hyperlink target="updateSprintBacklogseq" image-location="/images/arrow-single-up-green.png">
                <parameter param-name="mode" value="UP"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
                <parameter param-name="custRequestItemSeqId"/>
                <parameter param-name="statusId" value="${parameters.statusId}"/>
                <parameter param-name="orderBy" from-field="orderBy"/>
                <parameter param-name="sequence" value="N"/>
                <parameter param-name="VIEW_SIZE_1" from-field="viewSize"/>
                <parameter param-name="VIEW_INDEX_1" from-field="viewIndex"/>
                <parameter param-name="searchOption_custRequestId" value="${parameters.custRequestId}"/>
                <parameter param-name="searchOption_custRequestId_op" value="${parameters.custRequestId_op}"/>
                <parameter param-name="searchOption_custRequestId_ic" value="${parameters.custRequestId_ic}"/>
                <parameter param-name="searchOption_description" value="${parameters.description}"/>
                <parameter param-name="searchOption_description_op" value="${parameters.description_op}"/>
                <parameter param-name="searchOption_description_ic" value="${parameters.description_ic}"/>
                <parameter param-name="searchOption_parentCustRequestId" value="${parameters.parentCustRequestId}"/>
                <parameter param-name="searchOption_statusId" value="${parameters.statusId}"/>
            </hyperlink>
        </field>
        <field name="dwn" position="2" title=" ">
            <hyperlink target="updateSprintBacklogseq" image-location="/images/arrow-single-down-green.png">
                <parameter param-name="mode" value="DWN"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
                <parameter param-name="custRequestItemSeqId"/>
                <parameter param-name="statusId" value="${parameters.statusId}"/>
                <parameter param-name="orderBy" from-field="orderBy"/>
                <parameter param-name="sequence" value="N"/>
                <parameter param-name="VIEW_SIZE_1" from-field="viewSize"/>
                <parameter param-name="VIEW_INDEX_1" from-field="viewIndex"/>
                <parameter param-name="searchOption_custRequestId" value="${parameters.custRequestId}"/>
                <parameter param-name="searchOption_custRequestId_op" value="${parameters.custRequestId_op}"/>
                <parameter param-name="searchOption_custRequestId_ic" value="${parameters.custRequestId_ic}"/>
                <parameter param-name="searchOption_description" value="${parameters.description}"/>
                <parameter param-name="searchOption_description_op" value="${parameters.description_op}"/>
                <parameter param-name="searchOption_description_ic" value="${parameters.description_ic}"/>
                <parameter param-name="searchOption_parentCustRequestId" value="${parameters.parentCustRequestId}"/>
                <parameter param-name="searchOption_statusId" value="${parameters.statusId}"/>
            </hyperlink>
        </field>
        <field name="custSequenceNum" position="2" title="${uiLabelMap.ScrumSeq}"><display/></field>
        <field name="custRequestId" position="2" title="${uiLabelMap.ScrumProductBacklogItem}">
            <hyperlink target="ViewProdBacklogItem" description="${description} [${custRequestId}]">
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
            </hyperlink>
        </field>
        <field name="estimatedHours" position="2" title="${uiLabelMap.ScrumPlannedHours}"><text size="3"/></field>
        <field name="parentCustRequestId" position="2" title="${uiLabelMap.ScrumCategory}">
            <drop-down allow-empty="true">
                <entity-options description="${custRequestName}" entity-name="CustRequestAndCustRequestItem" key-field-name="custRequestId">
                    <entity-constraint name="productId" env-name="productId"/>
                    <entity-constraint name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="deleteFlag" position="2" title="${uiLabelMap.CommonDelete}"><check/></field>
        <field name="submitButton" widget-style="buttontext"><submit button-type="text-link"/></field>
    </form>
    <form name="ListProdBacklogForOwner" extends="ListProdBacklog">
         <field name="estimatedHours" position="2" title="${uiLabelMap.ScrumPlannedHours}"><display/></field>
         <field name="submitButton" widget-style="buttontext"><submit button-type="text-link"/></field>
    </form>
    <form name="ListProdBacklogBySeq" type="multi" use-row-submit="false" list-name="custRequestAndCustRequestItems" target="updateProductBacklogItemRow?productId=${productId}&amp;sequence=${sequence}&amp;backStatusId=CRQ_ACCEPTED" 
        paginate-target="AddProdBacklog" separate-columns="true" odd-row-style="alternate-row" default-table-style="basic-table hover-bar" paginate="true">
        <row-actions>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
            <set field="product" from-field="custRequest.description"/>
            <set field="estimatedHours" value="${groovy:custEstimatedMilliSeconds!=null?custEstimatedMilliSeconds/3600000:0;}"/>
        </row-actions>
        <field name="sequence"><hidden value="Y"/></field>
        <field name="custRequestCategoryGroupId"><hidden/></field>
        <!-- order button -->
        <field name="top" position="1" title=" ">
            <hyperlink target="updateSprintBacklogseq" image-location="/images/arrow-end-up-green.png">
                <parameter param-name="mode" value="TOP"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
                <parameter param-name="custRequestItemSeqId"/>
                <parameter param-name="statusId" value="${parameters.statusId}"/>
                <parameter param-name="sequence" value="Y"/>
                <parameter param-name="VIEW_SIZE_1" from-field="viewSize"/>
                <parameter param-name="VIEW_INDEX_1" from-field="viewIndex"/>
                <parameter param-name="searchOption_custRequestId" value="${parameters.custRequestId}"/>
                <parameter param-name="searchOption_custRequestId_op" value="${parameters.custRequestId_op}"/>
                <parameter param-name="searchOption_custRequestId_ic" value="${parameters.custRequestId_ic}"/>
                <parameter param-name="searchOption_description" value="${parameters.description}"/>
                <parameter param-name="searchOption_description_op" value="${parameters.description_op}"/>
                <parameter param-name="searchOption_description_ic" value="${parameters.description_ic}"/>
                <parameter param-name="searchOption_parentCustRequestId" value="${parameters.parentCustRequestId}"/>
                <parameter param-name="searchOption_statusId" value="${parameters.statusId}"/>
            </hyperlink>
        </field>
        <field name="bot" position="1" title=" ">
            <hyperlink target="updateSprintBacklogseq" image-location="/images/arrow-end-down-green.png">
                <parameter param-name="mode" value="BOT"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
                <parameter param-name="custRequestItemSeqId"/>
                <parameter param-name="statusId" value="${parameters.statusId}"/>
                <parameter param-name="sequence" value="Y"/>
                <parameter param-name="VIEW_SIZE_1" from-field="viewSize"/>
                <parameter param-name="VIEW_INDEX_1" from-field="viewIndex"/>
                <parameter param-name="searchOption_custRequestId" value="${parameters.custRequestId}"/>
                <parameter param-name="searchOption_custRequestId_op" value="${parameters.custRequestId_op}"/>
                <parameter param-name="searchOption_custRequestId_ic" value="${parameters.custRequestId_ic}"/>
                <parameter param-name="searchOption_description" value="${parameters.description}"/>
                <parameter param-name="searchOption_description_op" value="${parameters.description_op}"/>
                <parameter param-name="searchOption_description_ic" value="${parameters.description_ic}"/>
                <parameter param-name="searchOption_parentCustRequestId" value="${parameters.parentCustRequestId}"/>
                <parameter param-name="searchOption_statusId" value="${parameters.statusId}"/>
            </hyperlink>
        </field>
        <field name="up" position="1" title=" " >
            <hyperlink target="updateSprintBacklogseq" image-location="/images/arrow-single-up-green.png">
                <parameter param-name="mode" value="UP"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
                <parameter param-name="custRequestItemSeqId"/>
                <parameter param-name="statusId" value="${parameters.statusId}"/>
                <parameter param-name="sequence" value="Y"/>
                <parameter param-name="VIEW_SIZE_1" from-field="viewSize"/>
                <parameter param-name="VIEW_INDEX_1" from-field="viewIndex"/>
                <parameter param-name="searchOption_custRequestId" value="${parameters.custRequestId}"/>
                <parameter param-name="searchOption_custRequestId_op" value="${parameters.custRequestId_op}"/>
                <parameter param-name="searchOption_custRequestId_ic" value="${parameters.custRequestId_ic}"/>
                <parameter param-name="searchOption_description" value="${parameters.description}"/>
                <parameter param-name="searchOption_description_op" value="${parameters.description_op}"/>
                <parameter param-name="searchOption_description_ic" value="${parameters.description_ic}"/>
                <parameter param-name="searchOption_parentCustRequestId" value="${parameters.parentCustRequestId}"/>
                <parameter param-name="searchOption_statusId" value="${parameters.statusId}"/>
            </hyperlink>
        </field>
        <field name="dwn" position="1" title=" ">
            <hyperlink target="updateSprintBacklogseq" image-location="/images/arrow-single-down-green.png">
                <parameter param-name="mode" value="DWN"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
                <parameter param-name="custRequestItemSeqId"/>
                <parameter param-name="statusId" value="${parameters.statusId}"/>
                <parameter param-name="sequence" value="Y"/>
                <parameter param-name="VIEW_SIZE_1" from-field="viewSize"/>
                <parameter param-name="VIEW_INDEX_1" from-field="viewIndex"/>
                <parameter param-name="searchOption_custRequestId" value="${parameters.custRequestId}"/>
                <parameter param-name="searchOption_custRequestId_op" value="${parameters.custRequestId_op}"/>
                <parameter param-name="searchOption_custRequestId_ic" value="${parameters.custRequestId_ic}"/>
                <parameter param-name="searchOption_description" value="${parameters.description}"/>
                <parameter param-name="searchOption_description_op" value="${parameters.description_op}"/>
                <parameter param-name="searchOption_description_ic" value="${parameters.description_ic}"/>
                <parameter param-name="searchOption_parentCustRequestId" value="${parameters.parentCustRequestId}"/>
                <parameter param-name="searchOption_statusId" value="${parameters.statusId}"/>
            </hyperlink>
        </field>
        <field name="custSequenceNum" position="1" title="${uiLabelMap.ScrumSeq}"><display/></field>
        <field name="realSequenceNum"><hidden/></field>
        <field name="custRequestId"><hidden/></field>
        <field name="backlogId" position="1" title="${uiLabelMap.ScrumBacklogId}">
            <hyperlink target="ViewProdBacklogItem" description="${custRequestId}">
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
            </hyperlink>
        </field>
        <field name="description" position="1" title="${uiLabelMap.ScrumProductBacklogItem}">
            <display description="${product}">
                <in-place-editor url="updateCustRequest" cancel-control="button" saving-text="Updating..." text-between-controls=" ">
                    <simple-editor/>
                    <field-map field-name="custRequestId" from-field="custRequestId"/>
                </in-place-editor>
            </display>
        </field>
        <field name="newSequenceNum" title="${uiLabelMap.ScrumNewSequence}"><text size="3"/></field>
        <field name="estimatedHours" position="1" title="${uiLabelMap.ScrumPlannedHours}"><text size="3"/></field>
        <field name="parentCustRequestId" position="1" title="${uiLabelMap.ScrumCategory}">
            <drop-down allow-empty="true">
                <entity-options description="${custRequestName}" entity-name="CustRequestAndCustRequestItem" key-field-name="custRequestId">
                    <entity-constraint name="productId" env-name="productId"/>
                    <entity-constraint name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="setToReview" widget-style="buttontext" title="${uiLabelMap.ScrumMoveToUnplannedSprint}"><hidden/></field>
        <field name="deleteFlag" position="1" title="${uiLabelMap.CommonDelete}" widget-style="buttontext">
            <hyperlink target="DeleteProductBacklogItem" description="${uiLabelMap.CommonDelete}">
                <parameter param-name="productId" from-field="parameters.productId"/>
                <parameter param-name="custRequestId" from-field="custRequestId"/>
                <parameter param-name="statusId" from-field="parameters.statusId"/>
            </hyperlink>
        </field>
        <field name="submitButton" widget-style="buttontext"><submit button-type="text-link"/></field>
    </form>
    <form name="ListProdBacklogBySeqForOwner" extends="ListProdBacklogBySeq">
        <field name="estimatedHours"><display/></field>
        <field name="submitButton" widget-style="buttontext"><submit button-type="text-link"/></field>
    </form>
    <form name="projectList" type="list" target="main" odd-row-style="alternate-row" default-table-style="basic-table hover-bar" paginate-target="Sprints" list-name="sprints">
        <actions>
            <set field="isCurrentProject" value="${groovy: request.setAttribute(&quot;isCurrentProject&quot;, false);}" type="Boolean"/>
            <set field="currentProject" value="${groovy: request.setAttribute(&quot;currentProject&quot;, ' ');}" type="String"/>
        </actions>
        <row-actions>
            <set field="isCurrentProject" value="${groovy: 
                if (request.getAttribute(&quot;currentProject&quot;) != context.projectId)
                    request.setAttribute(&quot;isCurrentProject&quot;, false);
                else
                    request.setAttribute(&quot;isCurrentProject&quot;, true);
                if (request.getAttribute(&quot;currentProject&quot;) != context.projectId)
                    request.setAttribute(&quot;currentProject&quot;, context.projectId);
                return (boolean)request.getAttribute(&quot;isCurrentProject&quot;);
                }"
                type="Boolean"/>
            <set field="isCurrentCompany" value="${groovy: 
                if (request.getAttribute(&quot;currentCompany&quot;) != context.companyId)
                    request.setAttribute(&quot;isCurrentCompany&quot;, false);
                else
                    request.setAttribute(&quot;isCurrentCompany&quot;, true);
                if (request.getAttribute(&quot;currentCompany&quot;) != context.companyId)
                    request.setAttribute(&quot;currentCompany&quot;, context.companyId);
                return (boolean)request.getAttribute(&quot;isCurrentCompany&quot;);
                }"
                type="Boolean"/>
            <set field="estimatedHrs" value="${sprintEstimatedMilliSeconds/1000/60/60/40}" type="Integer"/>
            <entity-and entity-name="WorkEffortCustRequestView" list="custRequests">
                <field-map field-name="workEffortId" from-field="parameters.sprintId"/>
            </entity-and>
            <set field="nullField" type="String"/>
            <service service-name="getScrumPlanHour" result-map="planHourOutMap">
                <field-map field-name="projectId" from-field="nullField"/>
                <field-map field-name="sprintId" from-field="context.sprintId"/>
            </service>
            <set field="planHours" from-field="planHourOutMap.planHours"/>
            
            <service service-name="getScrumActualHour" result-map="resultActualHours" >
                <field-map field-name="projectId" from-field="nullField"/>
                <field-map field-name="sprintId" from-field="context.sprintId"/>
            </service>
            <set field="actualHours" from-field="resultActualHours.actualHours"/>
            <set field="actualHoursNotBillYet" from-field="resultActualHours.actualHoursNotBillYet"/>
            <service service-name="getScrumProject" result-map="result">
                <field-map field-name="projectId" from-field="projectId"/>
            </service>
            <set field="productId" value="${result.projectInfo.productId}"/>
            <set field="productOwnerId" value="${result.projectInfo.productOwnerId}"/>
            <set field="productOwnerName" value="${result.projectInfo.productOwnerName}"/>
            <entity-one entity-name="Product" value-field="product">
                <field-map field-name="productId" from-field="productId"/>
            </entity-one>
        </row-actions>
        <field name="companyId" title="${uiLabelMap.ScrumOwnerCompany}" position="1" use-when="!isCurrentCompany"  widget-style="buttontext">
            <hyperlink target="viewprofile" description="${companyName} [${companyId}]">
                <parameter param-name="partyId" from-field="companyId"/>
            </hyperlink>
        </field>
        <field name="projectName" title="${uiLabelMap.ScrumProject}" position="1" use-when="!isCurrentProject" widget-style="buttontext">
            <hyperlink target="viewScrumProject" description="${projectName} [${projectId}]">
                <parameter param-name="projectId"/>
            </hyperlink>
        </field>
        <field name="productId" title="${uiLabelMap.ScrumProduct}" position="1" use-when="!isCurrentProject">
            <display-entity entity-name="Product" description=" " key-field-name="productId">
                <sub-hyperlink target="ViewProduct" description="${product.internalName} [${productId}]">
                    <parameter param-name="productId" from-field="productId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="productOwnerName" title="${uiLabelMap.ScrumProductOwner}" position="1" use-when="!isCurrentProject">
            <hyperlink target="viewprofile" description="${productOwnerName} [${productOwnerId}]">
                <parameter param-name="partyId" from-field="productOwnerId"/>
            </hyperlink>
        </field>
        <field name="dummy" title=" " position="2"    use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display description=" "/></field>
        <field name="sprintName" title="${uiLabelMap.ScrumTab} ${uiLabelMap.ScrumSprint}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;">
            <hyperlink target="ViewSprint" description="${uiLabelMap.ScrumTab} ${sprintName} [${sprintId}]">
                <parameter param-name="projectId"/>
                <parameter param-name="sprintId"/>
            </hyperlink>
        </field>
        <field name="sprintCurrentStatusId" title="${uiLabelMap.CommonStatus}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;">
            <display-entity entity-name="StatusItem" key-field-name="statusId" description="${description}"/>
        </field>
        <field name="estimatedHrs" title="${uiLabelMap.ScrumSprintLengthWeeks}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display/></field>
        <field name="planHours" title="${uiLabelMap.ScrumPlannedHours}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display/></field>
        <field name="actualHours" title="${uiLabelMap.ScrumActualHours}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display/></field>
        <field name="actualHoursNotBillYet" title="${uiLabelMap.ScrumActualHoursNotBill}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display/></field>
        <field name="sprintActualStartDate" title="${uiLabelMap.CommonStartDate}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display type="date"></display></field>
        <field name="sprintActualCompletionDate" title="${uiLabelMap.CommonEndDate}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display type="date"></display></field>
    </form>
    <form name="projectListWithNoLinkProfile" extends="projectList">
        <field name="companyId" title="${uiLabelMap.ScrumOwnerCompany}" position="1" use-when="!isCurrentCompany"  widget-style="buttontext">
            <display description="${companyName} [${companyId}]"/>
        </field>
        <field name="productOwnerName" title="${uiLabelMap.ScrumProductOwner}" position="1" use-when="!isCurrentProject">
            <display description="${productOwnerName} [${productOwnerId}]"/>
        </field>
    </form>
    <form name="projectAndSprintListInfo" type="list" target="ViewProduct" paginate-target="ViewProduct" 
          odd-row-style="alternate-row" default-table-style="basic-table hover-bar" list-name="sprints">
        <actions>
            <set field="isCurrentProject" value="${groovy: request.setAttribute(&quot;isCurrentProject&quot;, false);}" type="Boolean"/>
            <set field="currentProject" value="${groovy: request.setAttribute(&quot;currentProject&quot;, ' ');}" type="String"/>
        </actions>
        <row-actions>
            <set field="isCurrentProject" value="${groovy: 
                if (request.getAttribute(&quot;currentProject&quot;) != context.projectId)
                    request.setAttribute(&quot;isCurrentProject&quot;, false);
                else
                    request.setAttribute(&quot;isCurrentProject&quot;, true);
                if (request.getAttribute(&quot;currentProject&quot;) != context.projectId)
                    request.setAttribute(&quot;currentProject&quot;, context.projectId);
                return (boolean)request.getAttribute(&quot;isCurrentProject&quot;);
                }"
                type="Boolean"/>
            <service service-name="getScrumProject" result-map="result">
                <field-map field-name="projectId" from-field="projectId"/>
            </service>
            <set field="productId" value="${result.projectInfo.productId}"/>
            <set field="productOwnerName" value="${result.projectInfo.productOwnerName}"/>
            <set field="estimatedHrs" value="${sprintEstimatedMilliSeconds/1000/60/60/40}" type="Integer"/>
            <entity-and entity-name="WorkEffortCustRequestView" list="custRequests">
                <field-map field-name="workEffortId" from-field="parameters.sprintId"/>
            </entity-and>
            <!-- get plan hour -->
            <set field="nullField" type="String"/>
            <service service-name="getScrumPlanHour" result-map="planHourOutMap">
                <field-map field-name="projectId" from-field="nullField"/>
                <field-map field-name="sprintId" from-field="context.sprintId"/>
            </service>
            <set field="planHours" from-field="planHourOutMap.planHours"/>
            <!-- get actual hour -->
            <service service-name="getScrumActualHour" result-map="resultActualHours" >
                <field-map field-name="projectId" from-field="nullField"/>
                <field-map field-name="sprintId" from-field="context.sprintId"/>
            </service>  
            <set field="actualHours" from-field="resultActualHours.actualHours"/>
            <set field="actualHoursNotBillYet" from-field="resultActualHours.actualHoursNotBillYet"/>
            <!-- get project info -->
        </row-actions>
        
        <field name="projectName" title="${uiLabelMap.ScrumProject}" position="1" use-when="!isCurrentProject">
            <hyperlink target="viewScrumProject" description="${projectName} [${projectId}]">
                <parameter param-name="projectId" from-field="workEffortId"/>
            </hyperlink>
        </field>
        <field name="sprintName" title="${uiLabelMap.ScrumTab} ${uiLabelMap.ScrumSprint}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;">
            <hyperlink target="ViewSprint" description="${uiLabelMap.ScrumTab} ${sprintName} [${sprintId}]">
                <parameter param-name="projectId"/>
                <parameter param-name="sprintId"/>
            </hyperlink>
        </field>
        <field name="sprintCurrentStatusId" title="${uiLabelMap.CommonStatus}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;">
            <display-entity entity-name="StatusItem" key-field-name="statusId" description="${description}"/>
        </field>
        <field name="estimatedHrs" title="${uiLabelMap.ScrumSprintLengthWeeks}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display/></field>
        <field name="planHours" title="${uiLabelMap.ScrumPlannedHours}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display/></field>
        <field name="actualHours" title="${uiLabelMap.ScrumActualHours}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display/></field>
        <field name="actualHoursNotBillYet" title="${uiLabelMap.ScrumActualHoursNotBill}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display/></field>
        <field name="sprintActualStartDate" title="${uiLabelMap.CommonStartDate}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display type="date"></display></field>
        <field name="sprintActualCompletionDate" title="${uiLabelMap.CommonEndDate}" position="2" use-when="&quot;${sprintId}&quot;!=&quot;&quot;"><display type="date"></display></field>
    </form>
    <form name="SprintListInfo" extends="sprintList" odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" default-table-style="basic-table hover-bar" paginate-target="viewScrumProject">
        <actions>
            <set field="input.noConditionFind" value="N"/>
            <set field="input.workEffortParentId" from-field="parameters.projectId"/>
            <set field="input.workEffortTypeId" value="SCRUM_SPRINT"/>
            <service service-name="performFind" result-map="result" result-map-list="listIt">
                <field-map field-name="inputFields" from-field="input"/>
                <field-map field-name="entityName" value="WorkEffort"/>
                <field-map field-name="viewIndex" from-field="viewIndex"/>
                <field-map field-name="viewSize" from-field="viewSize"/>
                <field-map field-name="orderBy" value="actualStartDate DESC"/>
            </service>
        </actions>
        <field name="projectId"><hidden value="${parameters.projectId}"/></field>
        <field name="workEffortName" title="${uiLabelMap.ScrumSprintName}">
            <hyperlink target="ViewSprint" description="${workEffortName} [${workEffortId}]">
                <parameter param-name="sprintId" from-field="workEffortId"/>
                 <parameter param-name="projectId" from-field="project.workEffortId"/>
            </hyperlink>
        </field>
        <field name="actualStartDate" title="${uiLabelMap.CommonStartDate}"><display type="date"/></field>
        <field name="actualCompletionDate" title="${uiLabelMap.CommonEndDate}"><display type="date"/></field>
    </form>
    <form name="DailyMeetingMinute" type="single" target="createDailyNote">
        <actions>
            <entity-and entity-name="WorkEffortNote" list="workEffortNote">
                <field-map field-name="workEffortId" from-field="parameters.workEffortId" />
                <field-map field-name="noteId" from-field="parameters.noteId"/>
            </entity-and>
        </actions>
        <field name="workEffortId"><hidden value="${parameters.projectId}"/></field>
        <field name="projectId"><hidden value="${parameters.projectId}"/></field>
        <field name="sprintId"><hidden value="${parameters.sprintId}"/></field>
        <field name="statusId"><hidden value="CRQ_ACCEPTED"/></field>
        <field name="noteId"><hidden value="${parameters.noteId}"/></field>
        <field name="partyId"><hidden value="${userLogin.partyId}"/></field>
        <field name="noteName1"><hidden value="What have you accomplish since the last meeting?"/></field>
        <field name="noteName2"><hidden value="What are you going to do before the next meeting?"/></field>
        <field name="noteName3"><hidden value="What problem are you having with to task?"/></field>
        <field name="noteInfo1" title="${uiLabelMap.ScrumSinceLastMeeting}"><textarea rows="3" cols="60"/></field>
        <field name="noteInfo2" title="${uiLabelMap.ScrumBeforeNextMeeting}"><textarea rows="3" cols="60"/></field>
        <field name="noteInfo3" title="${uiLabelMap.ScrumProblemTask}"><textarea rows="3" cols="60"/></field>
<!--    <field name="noteDateTime" title="Create Date Perform"><date-time type="date"/></field> -->
        <field name="submitButton" title="${uiLabelMap.CommonCreate}"><submit/></field>
    </form>

    <form name="ListDailyMeetingMinute" type="list" list-name="workEffortNoteAndDataList" use-row-submit="true" separate-columns="true" 
    odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" 
    default-table-style="basic-table hover-bar" paginate-target="DailyScrumMeetingMinute">
        <actions>
            <set field="projectId" from-field="parameters.workEffortId"/>
            <entity-condition entity-name="WorkEffortNoteAndData" list="workEffortNoteAndDataList">
                <condition-expr field-name="workEffortId" from-field="parameters.projectId"/>
                <order-by field-name="noteId"/>
            </entity-condition>
        </actions>
        <field name="workEffortId"><hidden value="${parameters.projectId}"/></field>
        <field name="projectId"><hidden value="${parameters.projectId}"/></field>
        <field name="sprintId"><hidden value="${parameters.sprintId}"/></field>
        <field name="noteId"><display/></field>
        <field name="noteDateTime" title="${uiLabelMap.FormFieldTitle_createdDate}"><display type="date"></display>
            <!--<hyperlink target="DailyScrumMeetingMinute">
                <parameter param-name="workEffortId" from-field="parameters.workEffortId"/>
                <parameter param-name="noteId" from-field="parameters.noteId"/>
                <parameter param-name="noteParty" from-field="parameters.noteParty"/>
            </hyperlink>-->
        </field>
        <field name="noteName" title="${uiLabelMap.ScrumQuestion}"><display></display></field>
        <field name="noteInfo" title="${uiLabelMap.ScrumAnswer}"><display></display></field>
        <field name="noteParty" title="${uiLabelMap.CommonCreatedBy}">
            <display-entity entity-name="Person" key-field-name="partyId" description="${lastName} ${firstName} ${middleName} "/>
        </field>
    </form>

    <form name="ViewDailyMeeting" target="ViewDailyMeetingMinutes" type="single" default-map-name="custRequest">
        <actions>
            <entity-and entity-name="CustRequestNote" list="custRequestNote">
                <field-map field-name="custRequestId" from-field="parameters.custRequestId"/>
            </entity-and>
            <set field="test" value="${groovy: println(&quot;dddddddddddddddddddddddddddddd&quot;+custRequestNote)}"/>
            <set field="noteId" from-field="custRequestNote[0].noteId"/>
            <entity-and entity-name="NoteData" list="Question1">
                <field-map field-name="noteId" from-field="custRequestNote[0].noteId"/>
                <field-map field-name="noteName" value="Question1"/>
            </entity-and>
            <set field="test" value="${groovy: println(&quot;dddddddddddddddddddddddddddddd&quot;+Question1)}"/>
            <set field="noteId" from-field="custRequestNote[1].noteId"/>
            <entity-and entity-name="NoteData" list="Question2">
                <field-map field-name="noteId" from-field="custRequestNote[1].noteId"/>
                <field-map field-name="noteName" value="Question1"/>
            </entity-and>
            <set field="test" value="${groovy: println(&quot;dddddddddddddddddddddddddddddd&quot;+Question2)}"/>
            <set field="noteId" from-field="custRequestNote[2].noteId"/>
            <entity-and entity-name="NoteData" list="Question1">
                <field-map field-name="noteId" from-field="custRequestNote[2].noteId"/>
                <field-map field-name="noteName" value="Question3"/>
            </entity-and>
            <set field="test" value="${groovy: println(&quot;dddddddddddddddddddddddddddddd&quot;+Question3)}"/>
        </actions>
        <field name="custRequestId"><hidden value="${parameters.custRequestId}"/></field>
        <field name="createdDate" title="Create Date Perform"><display/></field>
        <field name="Question1" title="${uiLabelMap.ScrumSinceLastMeeting}"><display description="Since the last meeting ....."></display></field>
        <field name="noteInfo1" title="Answer"><display description="${Question1[0].noteInfo}"/></field>
        <field name="Question2" title="${uiLabelMap.ScrumBeforeNextMeeting}"><display description="To day  ....."></display></field>
        <field name="noteInfo2" title="Answer"><display description="${Question2[0].noteInfo}"/></field>
        <field name="Question3" title="${uiLabelMap.ScrumProblemTask}"><display description="problem  ....."></display></field>
        <field name="noteInfo3" title="Answer"><display description="${Question3[0].noteInfo}"/></field>
    </form>

    <form name="addSprintBacklog" type="single" target="createSprintBacklog">
        <actions>
            <entity-and entity-name="WorkEffortAndProduct" list="projectList">
                 <field-map field-name="workEffortId" from-field="parameters.projectId"/>
            </entity-and>
            <set field="productId" from-field="projectList[0].productId"/>
            <entity-condition list="productBacklog" entity-name="CustRequestAndCustRequestItem">
                <condition-list combine="and">
                    <condition-expr field-name="custRequestTypeId" value="RF_PROD_BACKLOG" />
                    <condition-expr field-name="statusId" value="CRQ_ACCEPTED" />
                    <condition-expr field-name="productId" from-field="productId"/>
               </condition-list>
               <order-by field-name="custSequenceNum"/>
            </entity-condition>
            <set field="maxNum" value="${groovy: return productBacklog.size();}"/>
        </actions>
        <field name="projectId"><hidden></hidden></field>
        <field name="sprintId"><hidden/></field>
        <field name="maxNum"><hidden value="${maxNum}"/></field>
        <field name="sprintBacklogs" title="${uiLabelMap.ScrumSprintBacklogHowMany}" tooltip="${maxNum} remaining in Product Backlog"><text default-value="1"/></field>
        <field name="submitButton"><submit button-type="button"/></field>
    </form>
    
    <form name="EditSprintBacklog" type="single" target="updateSprintBacklog" >
        <actions>
            <set field="custRequestId" from-field="parameters.custRequestId"/>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
        </actions>
        <field name="projectId"><hidden value="${parameters.projectId}"/></field>
        <field name="sprintId"><hidden value="${parameters.sprintId}"/></field>
        <field name="custRequestId" title="${uiLabelMap.ScrumSprintBacklog}">
            <display-entity entity-name="CustRequest" key-field-name="custRequestId" description="${custRequestName}"></display-entity>
        </field>
        <field name="custSequenceNum"><display/></field>
        <field name="estimatedHours" title="${uiLabelMap.ScrumPlannedHours}"><text default-value="${groovy:return custRequest.custEstimatedMilliSeconds/3600000}"/></field>
        <field name="submitButton" title="${uiLabelMap.CommonUpdate}"><submit/></field>
    </form>
    <!-- Product -->
    <form name="EditProduct" type="single" target="createProductAndRole" default-map-name="product">
        <actions>
            <set field="supportDiscontinuationDate" from-field="supportDiscontinuationDate"/>
            <set field="statusId" value="${groovy: if(supportDiscontinuationDate == null) return 'PRODUCT_ACTIVE' else return 'PRODUCT_CLOSED'}"/>
        </actions>
        <alt-target use-when="product!=null" target="updateProduct"/>
        <field name="partyCompany"><hidden/></field>
        <field name="partyId" title="${uiLabelMap.ScrumCompanyAndProductOwner}" tooltip="${uiLabelMap.ScrumCompanyNameShow} -- ${uiLabelMap.ScrumProductName}" event="onchange" action="javascrip:document.EditProduct.partyCompany.value=this.options[this.selectedIndex].text;" parameter-name="partyId" use-when="companyCurrent==null">
            <drop-down allow-empty="false" >
                <option key="" description="-select one-"/>
                <list-options list-name="scrumRolesPersonAndCompanyList" description="${groupName}[${partyIdFrom}] -- ${lastName} ${firstName} ${middleName}" key-name="partyId"/>
            </drop-down>
        </field>
         <field name="partyId" title="${uiLabelMap.ScrumCompanyAndProductOwner}" tooltip="${uiLabelMap.ScrumCompanyNameShow} - ${uiLabelMap.ScrumProductName}" event="onchange" action="javascrip:document.EditProduct.partyCompany.value=this.options[this.selectedIndex].text;" parameter-name="partyId" use-when="companyCurrent!=null">
            <drop-down allow-empty="false" current-description="${companyCurrentList[0].groupName}[${companyCurrentList[0].partyIdFrom}] - ${companyCurrentList[0].lastName} ${companyCurrentList[0].firstName} ${companyCurrentList[0].middleName}" >
                <option key="${companyCurrentList[0].groupName}[${companyCurrentList[0].partyIdFrom}] - ${companyCurrentList[0].lastName} ${companyCurrentList[0].firstName} ${companyCurrentList[0].middleName}(${companyCurrentList[0].partyId})" description="${companyCurrentList[0].groupName}[${companyCurrentList[0].partyIdFrom}] - ${companyCurrentList[0].lastName} ${companyCurrentList[0].firstName} ${companyCurrentList[0].middleName}"/>
                <option key="" description=""/>
                <list-options list-name="scrumRolesPersonAndCompanyList" description="${groupName}[${partyIdFrom}] - ${lastName} ${firstName} ${middleName}" key-name="partyId"/>
            </drop-down>
        </field> 
        <field name="statusId" title="${uiLabelMap.CommonStatus}" use-when="product!=null">
            <drop-down>
                <entity-options description="${description}" entity-name="StatusItem">
                    <entity-constraint name="statusTypeId" value="PRODUCT_STATUS"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="internalName" title="${uiLabelMap.ScrumProductName}" tooltip="${uiLabelMap.CommonRequired}"><text/></field>
        <field name="longDescription" title="${uiLabelMap.CommonDescription}"><textarea/></field>
        <field name="productTypeId"><hidden value="SCRUM_ITEM"/></field>
        <field name="productId"><hidden value="${parameters.productId}"/></field>
        <field name="submitButton" title="${uiLabelMap.CommonSubmit}" use-when="product==null" widget-style="smallSubmit"><submit button-type="button"/></field>
        <field name="submitButton" title="${uiLabelMap.CommonUpdate}" position="1" use-when="product!=null"  widget-style="smallSubmit" event="onClick" action="javascript: if(document.EditProduct.statusId.value == 'PRODUCT_CLOSED') {
                                                                                                                                                                                if (confirm('Are you sure to close this product ?.')){ 
                                                                                                                                                                                    document.ViewEditProdBacklog.disable();
                                                                                                                                                                                    document.EditProduct.action = 'updateProduct';
                                                                                                                                                                                    document.EditProduct.submit(); 
                                                                                                                                                                                }
                                                                                                                                                                                else
                                                                                                                                                                                    document.EditProduct.action = 'EditProduct?statusId=PRODUCT_ACTIVE';
                                                                                                                                                                                }"><submit button-type="button"/></field>
    </form>
    
    <form name="EditProductByProductOwner" type="single" extends="EditProduct" default-map-name="product">
        <actions>
            <entity-and entity-name="ProductRole" list="productRoles" filter-by-date="true">
                <field-map field-name="productId" from-field="parameters.productId"/>
                <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
            </entity-and>
            <entity-and entity-name="ScrumPersonAndCompany" list="parties">
                <field-map field-name="partyId" from-field="productRoles[0].partyId"/>
            </entity-and>
            <entity-and entity-name="ScrumRolesPersonAndCompany" list="companylist">
                <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
                <field-map field-name="partyId" value="${userLogin.partyId}"/>
                <order-by field-name="groupName"/>
                <order-by field-name="lastName"/>
                <order-by field-name="firstName"/>
            </entity-and>
        </actions>
    </form>
    
    <form name="ViewProduct" type="single" target="ViewProduct" default-map-name="product">
        <actions>
            <entity-and entity-name="ProductRole" list="productComRole">
               <field-map field-name="productId" from-field="parameters.productId"/>
               <field-map field-name="roleTypeId" value="PRODUCT_OWNER_COMP"/>
               <field-map field-name="thruDate" value=""/>
            </entity-and>
            <entity-and entity-name="ProductRole" list="productRole">
               <field-map field-name="productId" from-field="parameters.productId"/>
               <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
               <field-map field-name="thruDate" value=""/>
            </entity-and>
            <entity-and entity-name="ScrumPersonAndCompany" list="parties">
                <field-map field-name="partyIdFrom" from-field="productComRole[0].partyId"/>
                <field-map field-name="partyId" from-field="productRole[0].partyId"/>
            </entity-and>
            <set field="supportDiscontinuationDate" from-field="product.supportDiscontinuationDate"/>
            <set field="statusMap.statusId" value="${groovy: if(supportDiscontinuationDate == null) return 'PRODUCT_ACTIVE' else return 'PRODUCT_CLOSED'}"/>
        </actions>
        <field name="productOwerId" title="${uiLabelMap.ScrumCompanyAndProductOwner}">
            <hyperlink target="viewprofile" description="${parties[0].groupName} -- ${parties[0].lastName} ${parties[0].firstName} ${parties[0].middleName}">
                <parameter param-name="partyId" from-field="productRole[0].partyId"/>
            </hyperlink>
        </field>
        <field name="statusId" title="${uiLabelMap.CommonStatus}" use-when="product!=null" map-name="statusMap">
            <display-entity entity-name="StatusItem" description="${description}"/>
        </field>
        <field name="internalName" title="${uiLabelMap.ScrumProductName}"><display description="${product.internalName} [${product.productId}]"/></field>
        <field name="longDescription" title="${uiLabelMap.CommonDescription}"><display /></field>
        <field name="productTypeId"><hidden value="SCRUM_ITEM"/></field>
        <field name="submitButton" title="${uiLabelMap.CommonSubmit}" use-when="product==null" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
    <form name="ListProductBacklogCategories" type="list" use-row-submit="true" list-name="listIt" target="DeleteSprint" paginate-target="SprintList" separate-columns="true"
        odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" default-table-style="basic-table hover-bar">
        <actions>
            <entity-condition entity-name="CustRequestAndCustRequestItem" list="listIt">
                <condition-list combine="and">
                    <condition-expr field-name="productId" from-field="productId"/>
                    <condition-expr field-name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
                </condition-list>
            </entity-condition>
        </actions>
        <row-actions>
            <service service-name="getProductBacklogSize" result-map="result">
                <field-map field-name="productId" from-field="productId"/>
                <field-map field-name="statusId" value="CRQ_ACCEPTED"/>
                <field-map field-name="parentCustRequestId" from-field="custRequestId"/>
            </service>
            <set field="open" from-field="result.productBacklogSize" type="Integer"/>
            <service service-name="getProductBacklogSize" result-map="result">
                <field-map field-name="productId" from-field="productId"/>
                <field-map field-name="statusId" value="CRQ_REVIEWED"/>
                <field-map field-name="parentCustRequestId" from-field="custRequestId"/>
            </service>
            <set field="beingImplemented" from-field="result.productBacklogSize" type="Integer"/>
            <service service-name="getProductBacklogSize" result-map="result">
                <field-map field-name="productId" from-field="productId"/>
                <field-map field-name="statusId" value="CRQ_COMPLETED"/>
                <field-map field-name="parentCustRequestId" from-field="custRequestId"/>
            </service>
            <set field="finished" from-field="result.productBacklogSize" type="Integer"/>
        </row-actions>
        <field name="custRequestId" title="${uiLabelMap.ScrumCategory}">
            <display-entity entity-name="CustRequest" description=" ">
                <sub-hyperlink target="EditProductBacklogCategory" description="${custRequestName} - [${custRequestId}]">
                    <parameter param-name="productId" from-field="productId"/>
                    <parameter param-name="custRequestId" from-field="custRequestId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="open" title="${uiLabelMap.ScrumOpen}"><display/></field>
        <field name="beingImplemented" title="${uiLabelMap.ScrumBeingImplementBacklogItem}"><display/></field>
        <field name="finished" title="${uiLabelMap.ScrumFinished}"><display/></field>
    </form>
    <form name="ListProductBacklogCategoriesNoAction" type="list" use-row-submit="true" list-name="listIt" target="DeleteSprint" paginate-target="SprintList" separate-columns="true"
        odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" default-table-style="basic-table hover-bar">
        <actions>
            <entity-condition entity-name="CustRequestAndCustRequestItem" list="listIt">
                <condition-list combine="and">
                    <condition-expr field-name="productId" from-field="productId"/>
                    <condition-expr field-name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
                </condition-list>
            </entity-condition>
        </actions>
        <field name="custRequestId" title="${uiLabelMap.ScrumCategory}">
            <display-entity entity-name="CustRequest" description="${custRequestName} - [${custRequestId}]"/>
        </field>
    </form>
    <form name="EditProductBacklogCategory" type="single" target="createProductBacklogCategory" default-map-name="custRequest">
        <alt-target use-when="custRequest!=null" target="updateProductBacklogCategory"/>
        <field name="productId"><hidden value="${productId}"/></field>
        <field name="custRequestId"><hidden/></field>
        <field name="custRequestName" title="${uiLabelMap.ScrumCategory}"><text/></field>
        <field name="submitButton" title="${uiLabelMap.CommonCreate}" use-when="custRequest==null" widget-style="smallSubmit"><submit button-type="button"/></field>
        <field name="submitButton" title="${uiLabelMap.CommonUpdate}" use-when="custRequest!=null" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
    <form name="ListProductByAdmin" type="list" default-entity-name="ProductRole" use-row-submit="true" list-name="listIt" target="deleteProduct" paginate-target="EditProduct" separate-columns="true"
        odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" default-table-style="basic-table hover-bar">
        <actions>
            <set field="parameters.roleTypeId" value="PRODUCT_OWNER"></set>
            <service service-name="performFind" result-map="result" result-map-list="listIt">
                <field-map field-name="inputFields" from-field="parameters"/>
                <field-map field-name="entityName" value="ProductAndRole"/>
                <field-map field-name="viewIndex" from-field="viewIndex"/>
                <field-map field-name="viewSize" from-field="viewSize"/>
            </service>
        </actions>
        <row-actions>
            <entity-one entity-name="Product" value-field="product">
                <field-map field-name="productId" from-field="productId"/>
            </entity-one>
            <set field="longDescription" from-field="product.longDescription"/>
            <set field="statusId" value="${groovy: if(product.supportDiscontinuationDate == null) return 'PRODUCT_ACTIVE' else return 'PRODUCT_CLOSED'}"/>
            <entity-and entity-name="PartyRelationshipAndPartyDetail" list="company">
                <field-map field-name="partyId" from-field="partyId"/>
                <field-map field-name="roleTypeIdFrom" value="ACCOUNT"/>
                <field-map field-name="roleTypeIdTo" value="CONTACT"/>
            </entity-and>
            <set field="companyNameId" from-field="company[0].partyIdFrom"/>
            <entity-one entity-name="Person" value-field="person">
                <field-map field-name="partyId" from-field="partyId"></field-map>
            </entity-one>
            
            <entity-one entity-name="StatusItem" value-field="statusItem">
                <field-map field-name="statusId" from-field="statusId"/>
            </entity-one>
            <set field="statusName" from-field="statusItem.description"/>
        </row-actions>
        <field name="partyId"><hidden/></field>
        <field name="productId"><hidden/></field>
        <field name="name"><hidden/></field>
        <field name="statusName" title="${uiLabelMap.CommonStatus}" ><display></display></field>
        <field name="companyNameId" title="${uiLabelMap.ScrumOwnerCompany}">
            <display-entity entity-name="PartyGroup" key-field-name="partyId" description="${groupName}">
                <sub-hyperlink target="FindResource" description="[${companyNameId}]">
                    <parameter param-name="partyId" from-field="companyNameId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="person.partyId" title="${uiLabelMap.ScrumProductOwner}">
            <display-entity entity-name="Person" key-field-name="partyId" description="${firstName}">
                <sub-hyperlink target="FindResource" description="[${person.partyId}]">
                    <parameter param-name="partyId" from-field="person.partyId"/>
                    <parameter param-name="roleTypeId" value="PRODUCT_OWNER"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="longDescription" title="${uiLabelMap.CommonDescription}"><display></display></field>
        <field name="productId" title="${uiLabelMap.ScrumProduct}">
            <display-entity entity-name="Product" key-field-name="productId" description="${internalName}">
                <sub-hyperlink target="ViewProduct" description="[${productId}]">
                    <parameter param-name="productId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <sort-order>
            <sort-field name="productId"></sort-field>
            <sort-field name="longDescription"></sort-field>
            <sort-field name="companyNameId"></sort-field>
            <sort-field name="person.partyId"></sort-field>
            <sort-field name="statusId"></sort-field>
        </sort-order>
        </form>
        <form name="FindProduct" type="single" target="EditProduct">
            <field name="productId"><text></text></field>
            <field name="internalName" title="${uiLabelMap.ScrumProductName}"><text/></field>
            <field name="statusId" parameter-name="statusId">
                <drop-down allow-empty="false">
                    <option key="Any" description="${uiLabelMap.CommonAny}"/>
                    <entity-options entity-name="StatusItem" description="${description}">
                        <entity-constraint name="statusTypeId" operator="equals" value="PRODUCT_STATUS"/>
                    </entity-options>
                </drop-down>
            </field>
            <field name="partyId"><hidden value="${userLogin.partyId}"/></field>
            <field name="roleTypeId"><hidden value="PRODUCT_OWNER"/></field>
            <field name="searchButton" title="${uiLabelMap.CommonFind}" widget-style="smallSubmit"><submit button-type="button"/></field>
            <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done -->
            </field>
        </form>
        
        <form name="ListProductByProdOwner" extends="ListProductByAdmin" type="multi" default-entity-name="ProductRole">
        <actions>
            <set field="parameters.partyId" from-field="userLogin.partyId"></set>
            <set field="parameters.roleTypeId" value="PRODUCT_OWNER"></set>
            <service service-name="performFind" result-map="result" result-map-list="listIt">
                <field-map field-name="inputFields" from-field="parameters"/>
                <field-map field-name="entityName" value="ProductAndRole"/>
                <field-map field-name="viewIndex" from-field="viewIndex"/>
                <field-map field-name="viewSize" from-field="viewSize"/>
            </service>
        </actions>
        <row-actions>
             <entity-one entity-name="Product" value-field="product">
                 <field-map field-name="productId" from-field="productId"/>
             </entity-one>
             <set field="internalName" from-field="product.internalName"/>
             <set field="longDescription" from-field="product.longDescription"/>
             <set field="statusId" value="${groovy: if(product.supportDiscontinuationDate == null) return 'PRODUCT_ACTIVE' else return 'PRODUCT_CLOSED'}"/>
             <entity-and entity-name="PartyRelationshipAndPartyDetail" list="company">
                <field-map field-name="partyId" from-field="partyId"/>
                <field-map field-name="roleTypeIdFrom" value="ACCOUNT"/>
                <field-map field-name="roleTypeIdTo" value="CONTACT"/>
            </entity-and>
            <set field="companyNameId" from-field="company[0].partyIdFrom"/>
            
             <entity-one entity-name="PartyGroup" value-field="partyGroup">
                 <field-map field-name="partyId" from-field="companyNameId"/>
             </entity-one>
             <set field="groupNameCompany" from-field="partyGroup.groupName"/>
             
             <entity-one entity-name="Person" value-field="person">
                 <field-map field-name="partyId" from-field="partyId"></field-map>
             </entity-one>
             <set field="firstName" from-field="person.firstName"></set>
             
             <entity-one entity-name="StatusItem" value-field="statusItem">
                 <field-map field-name="statusId" from-field="statusId"/>
             </entity-one>
             <set field="statusName" from-field="statusItem.description"/>

        </row-actions>
        </form>
        <form name="FindProductByProdOwner" type="single" extends="FindProduct" target="main" default-entity-name="Product">
            <actions>
                <set field="userLogin" value="${userLogin.userLoginId}"/>
                <entity-one entity-name="UserLogin" value-field="userLoginMap">
                    <field-map field-name="userLoginId" from-field="userLogin"/>
                </entity-one>
                <entity-condition entity-name="ScrumMemberUserLoginAndSecurityGroup" list="userLoginAndSecurityGroup">
                    <condition-list combine="and">
                        <condition-expr field-name="partyId" from-field="userLoginMap.partyId"/>
                        <condition-expr field-name="partyStatusId" operator="not-equals" value="PARTY_DISABLED"/>
                        <condition-list combine="or">
                            <condition-expr field-name="groupId" value="SCRUM_PRODUCT_OWNER"/>
                            <condition-expr field-name="groupId" value="SCRUM_STAKEHOLDER"/>
                        </condition-list>
                    </condition-list>
                </entity-condition>
                <set field="isCond" from-field="userLoginAndSecurityGroup[0].partyId"/>
            </actions>
            <field name="partyId" title="${uiLabelMap.ScrumOwnerCompany}" use-when="isCond==null">
                <drop-down allow-empty="true">
                    <list-options key-name="partyIdFrom" list-name="scrumRolesPersonAndCompanyList" description="${groupName}[${partyIdFrom}] -- ${lastName} ${firstName} ${middleName}"/>
                </drop-down>
            </field>
            <sort-order>
                <sort-field name="partyId"/>
                <sort-field name="productId"/>
                <sort-field name="internalName"/>
                <sort-field name="statusId"/>
                <sort-field name="searchButton"/>
            </sort-order>
        </form>
    <form name="hoursNotYetBilled" type="multi" list-name="hoursNotYetBilledTasks" use-row-submit="false" paginate-target="ProductBilling" odd-row-style="alternate-row" default-table-style="basic-table hover-bar" 
        target="updateNotBilledBacklog?productId=${productId}&amp;fromDate=${fromDate}&amp;thruDate=${thruDate}&amp;includeMeeting=${includeMeeting}&amp;VIEW_SIZE_1=${parameters.VIEW_SIZE_1}&amp;VIEW_INDEX_1=${parameters.VIEW_INDEX_1}">
        <row-actions>
            <set field="showPosition1" value="${groovy:String prev=(String)previousItem.get(&quot;custRequestId&quot;);return !(prev!=null&amp;&amp;prev.equals(custRequestId));}" type="Boolean"/>
            <entity-one entity-name="WorkEffort" value-field="project">
                <field-map field-name="workEffortId" from-field="projectId"/>
            </entity-one>
            <entity-one entity-name="WorkEffort" value-field="sprint">
                <field-map field-name="workEffortId" from-field="sprintId"/>
            </entity-one>
            <entity-one entity-name="CustRequest" value-field="backlogItem">
                <field-map field-name="custRequestId"/>
            </entity-one>
            <set field="projectName" from-field="project.workEffortName" default-value="No Project Name"/>
            <set field="sprintName" from-field="sprint.workEffortName" default-value="No Sprint Name"/>
            <set field="backlogItemName" from-field="backlogItem.description" default-value="No Backlog Item Name"/>
            <set field="billed" from-field="backlogItem.billed"/>
        </row-actions>
        <field name="projectId" position="1" use-when="${groovy:showPosition1==true}" title="${uiLabelMap.ScrumProject}">
            <hyperlink target="viewScrumProject" description="${projectName}">
                <parameter param-name="projectId"/>
            </hyperlink>
        </field>
        <field name="sprintId" position="1" use-when="${groovy:showPosition1==true}" title="${uiLabelMap.ScrumSprint}">
            <hyperlink target="ViewSprint" description="${sprintName}">
                <parameter param-name="projectId"/>
                <parameter param-name="sprintId"/>
            </hyperlink>
        </field>
        <field name="custRequestId" position="1" use-when="${groovy:showPosition1==true}" title="${uiLabelMap.ScrumBacklogItem}">
            <display-entity entity-name="CustRequest" description="${backlogItemName}">
                <sub-hyperlink target="ViewProdBacklogItem" description="[${custRequestId}]">
                    <parameter param-name="productId"/>
                <parameter param-name="custRequestId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="backlogId" parameter-name="custRequestId" use-when="${groovy:showPosition1==false}"><hidden value="${custRequestId}"/></field>
        <field name="billed" position="1" use-when="${groovy:showPosition1==true}" title="${uiLabelMap.ScrumBilled}">
            <drop-down allow-empty="true">
                <option key="Y" description="${uiLabelMap.CommonY}"/>
                <option key="N" description="${uiLabelMap.CommonN}"/>
            </drop-down>
        </field>
        <field name="dummy1" title=" " position="1" use-when="${groovy:showPosition1==true}"><display description=" "/></field>
        <field name="dummy2" title=" " position="1" use-when="${groovy:showPosition1==true}"><display description=" "/></field>
        <field name="dummy3" title=" " position="1" use-when="${groovy:showPosition1==true}"><display description=" "/></field>
        <field name="taskId" position="2" title="${uiLabelMap.ScrumTab} ${uiLabelMap.ScrumTaskName}">
            <display-entity entity-name="WorkEffort" key-field-name="workEffortId" description="${uiLabelMap.ScrumTab} ${workEffortName}"/>
        </field>
        <field name="hours" position="2"><display/></field>
        <field name="timesheetPartyId" position="2"><display-entity entity-name="PartyNameView" description="${firstName} ${middleName} ${lastName}" key-field-name="partyId"/></field>
        <field name="dummy4" title=" " position="2" ><display description=" "/></field>
        <field name="timesheetId" position="2">
            <hyperlink description="${timesheetId}" target="ViewTimeSheet">
                <parameter param-name="timesheetId"/>
            </hyperlink>
        </field>
        <field name="rateTypeId" title="${uiLabelMap.ScrumRateTypeId}" position="2"><display-entity entity-name="RateType" description="${description}"/></field>
        <field name="fromDate" title="${uiLabelMap.CommonDate}" position="2"><display type="date"/> </field>
        <field name="submitButton" title="${uiLabelMap.CommonUpdate}" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
    <form name="totalHoursNotYetBilled" extends="hoursNotYetBilled" paginate-target="TotalBilling"
       target="updateTotalNotBilledBacklog?productId=${productId}&amp;fromDate=${fromDate}&amp;thruDate=${thruDate}&amp;includeMeeting=${includeMeeting}&amp;VIEW_SIZE_1=${parameters.VIEW_SIZE_1}&amp;VIEW_INDEX_1=${parameters.VIEW_INDEX_1}" >
        <field name="submitButton" title="${uiLabelMap.CommonUpdate}" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
    <form name="AddProductTimeToNewInvoice" type="single" target="addProductTimeToNewInvoice">
        <field name="partyIdFrom" title="${uiLabelMap.WorkEffortTimeBillFromParty}"><display-entity entity-name="PartyNameView" key-field-name="partyId" description="${groupName} [${partyId}]"/></field>
        <field name="partyId" title="${uiLabelMap.WorkEffortTimeBillToParty}"><display-entity entity-name="PartyNameView" description="${groupName} ${lastName} ${firstName} [${partyId}]"/></field>
        <field name="productId"><hidden/></field>
        <field name="fromDate" title="${uiLabelMap.CommonFromDate}" use-when="fromDate!=null"><display type="date"/></field>
        <field name="thruDate" title="${uiLabelMap.CommonThruDate}"><display type="date"/></field>
        <field name="invoiceId"><hidden/></field>
        <field name="includeMeeting" title="${uiLabelMap.ScrumIncludeMeeting}"> 
            <drop-down no-current-selected-key="N">
                <option key="Y"/>
                <option key="N"/>
            </drop-down>
        </field>
        <field name="reCreate" position="1" title="${uiLabelMap.ScrumRecreateInvoice}: ${invoiceId}" use-when="context.get(&quot;invoiceId&quot;)!=null">
            <drop-down no-current-selected-key="N">
                <option key="Y" description="${uiLabelMap.CommonYes}"/>
                <option key="N" description="${uiLabelMap.CommonNo}"/>
            </drop-down>
           </field>
        <field name="invoiceDate" title="${uiLabelMap.ScrumInvoiceDate}" use-when="context.get(&quot;invoiceId&quot;)!=null"><date-time type="date"></date-time></field>
        <field name="submitButton" title="${uiLabelMap.PageTitleAddProjectTimeToNewInvoice}" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
    <form name="FindProductBilling" type="single" target="ProductBilling">
        <field name="productId"><hidden/></field>
        <field name="fromDate" title="${uiLabelMap.CommonFromDate}"><date-time type="date"/></field>
        <field name="thruDate" title="${uiLabelMap.CommonThruDate}"><date-time type="date"/></field>
        <field name="includeMeeting" title="${uiLabelMap.ScrumIncludeMeeting}"> 
            <drop-down no-current-selected-key="N">
                <option key="Y"/>
                <option key="N"/>
            </drop-down>
        </field>
        <field name="submitButton" title="${uiLabelMap.CommonFind}" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
    <form name="FindProductTotalBilling" extends="FindProductBilling" type="single" target="TotalBilling">
        <field name="productId" title="${uiLabelMap.ScrumProductName}">
            <drop-down>
                <entity-options description="${groupName} -- ${internalName}[${productId}]" entity-name="ProductAndRole" key-field-name="productId">
                    <entity-constraint name="supportDiscontinuationDate" operator="equals" value=""/>
                    <entity-constraint name="roleTypeId" value="PRODUCT_OWNER_COMP"/>
                    <entity-order-by field-name="groupName"/>
                    <entity-order-by field-name="internalName"/>
                </entity-options>
            </drop-down>
        </field>
    </form>
    <form name="TotalBillingToNewInvoice" type="single" extends="AddProductTimeToNewInvoice" target="totalBillingToNewInvoice">
    </form>
    <!-- View Form -->
    <form name="ViewEditScrumProject" type="single" extends="editScrumProject">
        <field name="submitButton" title="Save" widget-style="smallSubmit" event="onClick" action="javascript:document.ViewEditScrumProject.disable();"><submit/></field>
    </form>
    <form name="ViewEditProdBacklog" type="single" default-map-name="custRequest">
        <actions>
            <entity-one entity-name="CustRequest" value-field="custRequest">
                <field-map field-name="custRequestId" from-field="custRequestId"/>
            </entity-one>
            <set field="custRequestName" from-field="custRequest.custRequestName"/>
            <set field="statusId" from-field="custRequest.statusId"/>
            <set field="openDateTime" from-field="custRequest.openDateTime"/>
            <set field="closedDateTime" from-field="custRequest.closedDateTime"/>
            <set field="custEstimatedMilliSeconds" from-field="custRequest.custEstimatedMilliSeconds" type="String"></set>
            <entity-and entity-name="CustRequestNoteView" list="custRequestNotes">
                <field-map field-name="custRequestId" from-field="custRequestId"/>
                <field-map field-name="noteName" value="How to test"/>
            </entity-and>
            <set field="noteInfo" from-field="custRequestNotes[0].noteInfo"/>
            <entity-and entity-name="CustRequestItem" list="custRequestItems">
                <field-map field-name="custRequestId" from-field="custRequestId"/>
            </entity-and>
            <set field="story" from-field="custRequestItems[0].story"/>
            <entity-and entity-name="ProductRole" list="productRole">
               <field-map field-name="productId" from-field="parameters.productId"/>
               <order-by field-name="roleTypeId"/>
            </entity-and>
            <entity-and entity-name="ProductAndRole" list="ownerName">
                <field-map field-name="productId" from-field="parameters.productId"/>
                <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
            </entity-and>
            <entity-and entity-name="ProductAndRole" list="CompanyName">
                <field-map field-name="productId" from-field="parameters.productId"/>
                <field-map field-name="roleTypeId" value="PRODUCT_OWNER_COMP"/>
            </entity-and>
            <entity-condition entity-name="PartyRelationshipAndPartyDetail" list="request">
                <condition-expr field-name="partyId" from-field="custRequest.fromPartyId"/>
            </entity-condition>
            <entity-one entity-name="StatusItem" value-field="statusItemMap">
                <field-map field-name="statusId" from-field="statusId"/>
            </entity-one>
            <set field="custRequestType" value="${groovy: 
                 if (custRequest.custRequestTypeId.equals(&quot;RF_UNPLAN_BACKLOG&quot;))
                     custRequestType = &quot;Y&quot;
                 else
                     custRequestType = &quot;N&quot;
                }"/>
            <service service-name="getScrumActualHour" result-map="resultMap">
                <field-map field-name="custRequestId" from-field="custRequestId"/>
            </service>
            <set field="actualHours" from-field="resultMap.actualHours"/>
        </actions>
        <alt-target use-when="custRequestId==null" target="createProductBacklog"/>
        <field name="productId" title="${uiLabelMap.ScrumProductName}" map-name="productMap">
            <display-entity entity-name="Product" key-field-name="productId" description=" ">
                <sub-hyperlink target="ViewProduct" description="${productMap.internalName} [${productMap.productId}]">
                    <parameter param-name="productId" from-field="parameters.productId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="groupName" title="${uiLabelMap.ScrumCompany}">
            <display description="${CompanyName[0].groupName}"/>
        </field>
        <field name="productOwerId" title="${uiLabelMap.ScrumProductOwner}">
            <display description="${ownerName[0].lastName}, ${ownerName[0].firstName} ${ownerName[0].middleName}"/>
        </field>
        <field name="partyIdTo" title="${uiLabelMap.ScrumRequestName}">
            <display description="${request[0].toLastName} ${request[0].toFirstName} ${request[0].toMiddleName}"/>
        </field>
        <field name="description" title="${uiLabelMap.ScrumProductBacklogItem}"><display description="${custRequest.description}"/></field>
        <field name="parentCustRequestId" title="${uiLabelMap.ScrumBacklogItemCategory}" use-when="${groovy: categoryList.size() > 0}">
            <display  description="${categoryList[0].custRequestName} [${categoryList[0].custRequestId}]"/>
        </field>
         <field name="Sprint" title="${uiLabelMap.ScrumSprintName}" use-when="sprintName!=null">
            <hyperlink target="ViewSprint" description="${sprintName} [${productBacklogs[0].workEffortId}]">
                <parameter param-name="prjectId" from-field="projectId"/>
                <parameter param-name="sprintId" from-field="workEffortlist[0].workEffortId"/>
            </hyperlink>
        </field>
        <field name="estimated" title="${uiLabelMap.ScrumPlannedTime}" tooltip="${uiLabelMap.ScrumHrs}"><display description="${custRequest.custEstimatedMilliSeconds/3600000}"/></field>
        <field name="actualHours"><display description="${actualHours}"/></field>
        <field name="custSequenceNum"><display description="${custRequest.custSequenceNum}"/></field>
        <field name="billed"><display description="${custRequest.billed}"/></field>
        <field name="custRequestTypeId" title="${uiLabelMap.ScrumUnplanBacklog}">
            <display description="${custRequestType}"/>
        </field>
        <field name="statusId" title="${uiLabelMap.CommonStatus}"><display description="${statusItemMap.description}"/></field>
        <field name="story" title="${uiLabelMap.ScrumStory}"><display description="${story}" /></field>
        <field name="noteInfo" title="${uiLabelMap.ScrumHowToTest}"><display description="${noteInfo}"/></field>
    </form>
    <form name="ViewListProdBacklog" type="list" target="ViewAddProdBacklog" paginate-target="ViewProduct" separate-columns="true"
        list-name="backlogItems" odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
        <actions>
            <set field="parentCustRequestId" from-field="parameters.parentCustRequestId" default-value=""/>
        </actions>
        <row-actions>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
            <set field="description" from-field="custRequest.description"/>
            <set field="custRequestCategoryGroupId" from-field="parentCustRequestId"/>
            <set field="estimatedHours" value="${groovy:custEstimatedMilliSeconds!=null?custEstimatedMilliSeconds/3600000:0;}"/>
            <set field="showPosition1" value="${groovy:String prev=(String)previousItem.get(&quot;parentCustRequestId&quot;);return new Boolean(!(prev!=null&amp;&amp;prev.equals(parentCustRequestId)));}" type="Boolean"/>
        </row-actions>
        <field name="custSequenceNum" position="2" title="${uiLabelMap.ScrumSeq}"><display/></field>
        <field name="custRequestId" position="2" title="${uiLabelMap.ScrumProductBacklogItem}">
            <hyperlink target="ViewProdBacklogItem" description="${description} [${custRequestId}]">
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
            </hyperlink>
        </field>
        <field name="statusId" title="${uiLabelMap.CommonStatus}" position="2">
            <display-entity entity-name="StatusItem" description="${description}" key-field-name="statusId"/>
        </field>
        <field name="custRequestCategoryGroupId" position="1" use-when="${groovy:showPosition1==true&amp;&amp;sequence.equals(&quot;N&quot;)}" title="${uiLabelMap.ScrumCategory}" widget-style="h3">
            <display-entity entity-name="CustRequest" key-field-name="custRequestId" description="${custRequestName}"/>
        </field>
        <field name="parentCustRequestId" position="2" title="${uiLabelMap.ScrumCategory}">
            <display-entity entity-name="CustRequest" description="${custRequestName}" key-field-name="custRequestId"/>
        </field>
        <field name="estimatedHours" position="2" title="${uiLabelMap.ScrumPlannedHours}"><display description="${custEstimatedMilliSeconds/1000/60/60}"/></field>
        <field name="billed" position="2" ><display></display></field>
        <field name="custRequestDate" position="2" title="${uiLabelMap.ScrumRequestDate}"><display/></field>
        <field name="fromPartyId" position="2" title="${uiLabelMap.ScrumRequesterName}">
            <display-entity entity-name="PartyNameView" description="${lastName} ${firstName} ${middleName}" key-field-name="partyId"/>
        </field>
    </form>
    <form name="ViewTotalProdBacklog" type="list" extends="ViewListProdBacklog" paginate-target="ViewTotalBacklog">
    </form>
    <form name="TotalProdBacklog" type="list" paginate-target="FindTotalBacklog" separate-columns="true"
    list-name="backlogItems" odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
        <row-actions>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
            <set field="description" from-field="custRequest.description"/>
            <set field="estimatedHours" value="${groovy:custEstimatedMilliSeconds!=null?custEstimatedMilliSeconds/3600000:0;}"/>
            <set field="showPosition1" value="${groovy:String prev=(String)previousItem.get(&quot;productId&quot;);return new Boolean(!(prev!=null&amp;&amp;prev.equals(productId)));}" type="Boolean"/>
        </row-actions>
        <field name="productId" title="${uiLabelMap.PageTitleProduct}" position="1" use-when="showPosition1">
            <display-entity entity-name="Product" description="${internalName} " key-field-name="productId">
                <sub-hyperlink target="ViewProduc" description="[${productId}]">
                    <parameter param-name="productId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="custSequenceNum" position="2" title="${uiLabelMap.ScrumSeq}"><display/></field>
        <field name="custRequestId" position="2" title="${uiLabelMap.ScrumProductBacklogItem}">
            <hyperlink target="ViewProdBacklogItem" description="${description} [${custRequestId}]">
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
            </hyperlink>
        </field>
        <field name="statusId" title="${uiLabelMap.CommonStatus}" position="2">
            <display-entity entity-name="StatusItem" description="${description}" key-field-name="statusId"/>
        </field>
        <field name="parentCustRequestId" position="2" title="${uiLabelMap.ScrumCategory}">
            <display-entity entity-name="CustRequest" description="${custRequestName}" key-field-name="custRequestId"/>
        </field>
        <field name="estimatedHours" position="2" title="${uiLabelMap.ScrumPlannedHours}"><display description="${custEstimatedMilliSeconds/1000/60/60}"/></field>
        <field name="billed" position="2" ><display></display></field>
        <field name="custRequestDate" position="2" title="${uiLabelMap.ScrumRequestDate}"><display type="date"/></field>
    </form>
    <form name="ViewDailyMeetingMinute" type="single" extends="DailyMeetingMinute">
        <field name="submitButton" title="${uiLabelMap.CommonSubmit}" event="onClick" action="javascript:document.ViewDailyMeetingMinute.disable();"><hidden/></field>
    </form>
    <form name="ViewEditScrumProject" type="single" extends="editScrumProject">
        <field name="submitButton" title="Save" widget-style="smallSubmit"><hidden/></field>
    </form>
    <form name="ViewAddSprintBacklog" type="single" extends="addSprintBacklog">
        <field name="submitButton"><hidden/></field>
    </form>
    <form name="ViewAddSprintMember" type="single" extends="addSprintMember">
        <field name="submitButton" title="Assign"><hidden/></field>
    </form>
    <form name="ViewShowSprintInfo" type="single" extends="showSprintInfo">
        <field name="deleteButton" title="Delete Sprint" widget-style="textbutton" action="javascript: return confirm('Are you sure to delete this sprint ?');" event="Onclick"><hidden/></field>
    </form>
    <form name="ViewListSprintMember" type="list" extends="listSprintMember">
        <field name="submitButton" title="${uiLabelMap.CommonDelete}"><hidden/></field>
    </form>
    <form name="ViewSprintBacklogListItemsNoAction" extends="sprintBacklogListItems">
        <field name="planHours" title="${uiLabelMap.ScrumPlannedHours}" position="2" use-when="!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"><display/></field>
        <field name="deleteButton" position="1" use-when="showPosition1"><hidden/></field>
        <field name="deleteTaskButton" position="2" use-when="!&quot;STS_COMPLETED&quot;.equals(taskCurrentStatusId)&amp;&amp;!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"><hidden/></field>
        <field name="setCompleteButton" position="2" use-when="!&quot;STS_COMPLETED&quot;.equals(taskCurrentStatusId)&amp;&amp;!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"><hidden/></field>
        <field name="editTaskParty" position="2" use-when="!&quot;STS_COMPLETED&quot;.equals(taskCurrentStatusId)&amp;&amp;!&quot;SCRUM_SPRINT&quot;.equals(taskTypeId)"><hidden/></field>
        <field name="newTask" use-when="showPosition1&amp;&amp;!&quot;CRQ_COMPLETED&quot;.equals(&quot;${custRequest.statusId}&quot;)"><hidden/></field>
        <sort-order>
            <sort-field name="custRequestId"/>
            <sort-field name="taskId"/>
            <sort-field name="custRequest.statusId"/>
            <sort-field name="dummy4"/>
            <sort-field name="taskTypeId"/>
            <sort-field name="taskCurrentStatusId"/>
            <sort-field name="initialPlannedHours"/>
            <sort-field name="planHours"/>
            <sort-field name="newTask"/>
            <sort-field name="dummy3"/>
            <sort-field name="taskActualHours"/>
            <sort-field name="partyId"/>
        </sort-order>
    </form>
    
    <form name="SprintTasksList" type="list" list-name="projectSprintBacklogAndTasks" target="updateSprintTask" paginate-target="SprintTask" separate-columns="true"
        odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" default-table-style="basic-table hover-bar" use-row-submit="true">
        <row-actions>
            <entity-and entity-name="WorkEffortPartyAssignment" list="assignTo" filter-by-date="true">
                <field-map field-name="workEffortId" from-field="taskId"/>
            </entity-and>
            <entity-and entity-name="PartyDetailAndWorkEffortAssign" list="sprintMembers" filter-by-date="true">
                <field-map field-name="workEffortId" from-field="sprintId"/>
            </entity-and>
            <set field="partyId" value="${groovy: if (assignTo.size() != 0) return assignTo.get(0).getString(&quot;partyId&quot;)}"/>
            <service service-name="getScrumActualHour" result-map="results">
                <field-map field-name="taskId" from-field="taskId"/>
            </service>
            <set field="nullField" type="String"/>
            <service service-name="getScrumPlanHour" result-map="resultMap">
                <field-map field-name="taskId"/>
                <field-map field-name="custRequestId" from-field="nullField"/>
                <field-map field-name="sprintId" from-field="nullField"/>
                <field-map field-name="projectId" from-field="nullField"/>
            </service>
            <set field="taskActualMilliSeconds" from-field="results.actualHours"/>
            <set field="taskEstimatedMilliSeconds" from-field="resultMap.planHours"/>
        </row-actions>
        <field name="sprintId"><hidden value="${parameters.sprintId}"/></field>
        <field name="taskId" title="${uiLabelMap.ScrumTask}" parameter-name="workEffortId">
            <hyperlink target="SprintTaskView" description="${taskName} [${taskId}]">
                <parameter param-name="sprintId"/>
                <parameter param-name="taskId"/>
            </hyperlink>
        </field>
        <field name="custRequestId" title="${uiLabelMap.ScrumSprintBacklog}">
            <display-entity entity-name="CustRequest" key-field-name="custRequestId" description="${description}">
                <sub-hyperlink target="ViewProdBacklogItem" description="[${custRequestId}]">
                    <parameter param-name="custRequestId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="taskTypeId" title="${uiLabelMap.ScrumTaskType}">
            <display-entity entity-name="WorkEffortType" key-field-name="workEffortTypeId" description="${description}"/>
        </field>
        <field name="taskCurrentStatusId" title="${uiLabelMap.CommonStatus}">
            <display-entity entity-name="StatusItem" key-field-name="statusId" description="${description}"/>
        </field>
        <field name="partyId" title="${uiLabelMap.ScrumAssignedTo}">
            <drop-down allow-empty="true" no-current-selected-key="${partyId}">
                <list-options key-name="partyId" list-name="sprintMembers" description="${lastName} ${firstName}"/>
            </drop-down>
        </field>
        <field name="taskCreatedDate" title="${uiLabelMap.FormFieldTitle_createdDate}"><display type="date"/></field>
        <field name="taskEstimatedMilliSeconds" title="${uiLabelMap.ScrumPlannedHours}" parameter-name="planHours"><text size="5"/></field>
        <field name="taskActualMilliSeconds" title="${uiLabelMap.ScrumActualHours}" parameter-name="actualHours"><display/></field>
        <field name="updateButton" title="${uiLabelMap.CommonUpdate}"><submit button-type="button" /></field>
        <field name="editButton" title=" " widget-style="buttontext">
            <hyperlink target="EditSprintTask" description="${uiLabelMap.CommonEdit}" link-type="hidden-form">
                <parameter param-name="sprintId" from-field="parameters.parameters.sprintId"/>
                <parameter param-name="taskId"/>
            </hyperlink>
        </field>
        <field name="deleteButton" title=" " widget-style="buttontext">
            <hyperlink target="deleteSprintTask" description="${uiLabelMap.CommonDelete}" link-type="hidden-form" confirmation-message="Are you sure to delete this task?">
                <parameter param-name="sprintId" from-field="parameters.sprintId"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="workEffortId" from-field="taskId"/>
            </hyperlink>
        </field>
         
    </form>
    
    <form name="SprintTasksListError" extends="SprintTasksList">
        <actions>
            <entity-condition entity-name="ProjectSprintBacklogAndTask" list="projectSprintBacklogAndTasks">
                <condition-list combine="and">
                    <condition-expr field-name="projectId" from-field="parameters.projectId"/>
                    <condition-expr field-name="taskId" operator="like" value="%${parameters.taskId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskName" operator="like" value="%${parameters.taskName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintId" operator="like" value="%${parameters.sprintId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintName" operator="like" value="%${parameters.sprintName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskTypeId" operator="like" value="%${parameters.taskTypeId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintTypeId" value="SCRUM_SPRINT"/>
                    <condition-list combine="or">
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_ERROR"/>
                    </condition-list>
                </condition-list>
                <order-by field-name="taskPriority"/>
            </entity-condition>
        </actions>
    </form>
    <form name="SprintTasksListInstall" extends="SprintTasksList">
        <actions>
            <entity-condition entity-name="ProjectSprintBacklogAndTask" list="projectSprintBacklogAndTasks">
                <condition-list combine="and">
                    <condition-expr field-name="projectId" from-field="parameters.projectId"/>
                    <condition-expr field-name="taskId" operator="like" value="%${parameters.taskId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskName" operator="like" value="%${parameters.taskName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintId" operator="like" value="%${parameters.sprintId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintName" operator="like" value="%${parameters.sprintName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskTypeId" operator="like" value="%${parameters.taskTypeId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintTypeId" value="SCRUM_SPRINT"/>
                    <condition-list combine="or">
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_INST"/>
                    </condition-list>
                </condition-list>
                <order-by field-name="taskPriority"/>
            </entity-condition>
        </actions>
    </form>
    <form name="SprintTasksListTest" extends="SprintTasksList">
        <actions>
            <entity-condition entity-name="ProjectSprintBacklogAndTask" list="projectSprintBacklogAndTasks">
                <condition-list combine="and">
                    <condition-expr field-name="projectId" from-field="parameters.projectId"/>
                    <condition-expr field-name="taskId" operator="like" value="%${parameters.taskId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskName" operator="like" value="%${parameters.taskName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintId" operator="like" value="%${parameters.sprintId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintName" operator="like" value="%${parameters.sprintName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskTypeId" operator="like" value="%${parameters.taskTypeId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintTypeId" value="SCRUM_SPRINT"/>
                    <condition-list combine="or">
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_TEST"/>
                    </condition-list>
                </condition-list>
                <order-by field-name="taskPriority"/>
            </entity-condition>
        </actions>
    </form>
    <form name="SprintTasksListCoding" extends="SprintTasksList">
        <actions>
            <entity-condition entity-name="ProjectSprintBacklogAndTask" list="projectSprintBacklogAndTasks">
                <condition-list combine="and">
                    <condition-expr field-name="projectId" from-field="parameters.projectId"/>
                    <condition-expr field-name="taskId" operator="like" value="%${parameters.taskId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskName" operator="like" value="%${parameters.taskName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintId" operator="like" value="%${parameters.sprintId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintName" operator="like" value="%${parameters.sprintName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskTypeId" operator="like" value="%${parameters.taskTypeId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintTypeId" value="SCRUM_SPRINT"/>
                    <condition-list combine="or">
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_IMPL"/>
                    </condition-list>
                </condition-list>
                <order-by field-name="taskPriority"/>
            </entity-condition>
        </actions>
    </form>
    
    <form name="FindSprintTask" type="single">
        <field name="taskId"><text/></field>
        <field name="taskName"><text/></field>
        <field name="taskTypeId" title="${uiLabelMap.ScrumTaskType}">
            <drop-down allow-empty="true">
                <entity-options description="${description}" entity-name="WorkEffortType" key-field-name="workEffortTypeId">
                    <entity-constraint name="parentTypeId" value="SCRUM_TASK"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="findButton" title="${uiLabelMap.CommonFind}"><submit/></field>
    </form>
    <form name="SprintTasksListNoAction" extends="SprintTasksList">
        <field name="partyId">
            <display-entity entity-name="Person" key-field-name="partyId" description="${lastName} ${firstName}"></display-entity>
        </field>
        <field name="taskEstimatedMilliSeconds"><display/></field>
        <field name="updateButton"><hidden/></field>
        <field name="editButton"><hidden/></field>
        <field name="deleteButton"><hidden/></field>
    </form>
    <form name="SprintTasksListErrorNoAction" extends="SprintTasksListNoAction">
        <actions>
            <entity-condition entity-name="ProjectSprintBacklogAndTask" list="projectSprintBacklogAndTasks">
                <condition-list combine="and">
                    <condition-expr field-name="projectId" from-field="parameters.projectId"/>
                    <condition-expr field-name="taskId" operator="like" value="%${parameters.taskId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskName" operator="like" value="%${parameters.taskName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintId" operator="like" value="%${parameters.sprintId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintName" operator="like" value="%${parameters.sprintName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskTypeId" operator="like" value="%${parameters.taskTypeId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintTypeId" value="SCRUM_SPRINT"/>
                    <condition-list combine="or">
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_ERROR"/>
                    </condition-list>
                </condition-list>
                <order-by field-name="taskPriority"/>
            </entity-condition>
        </actions>
    </form>
    <form name="SprintTasksListInstallNoAction" extends="SprintTasksListNoAction">
        <actions>
            <entity-condition entity-name="ProjectSprintBacklogAndTask" list="projectSprintBacklogAndTasks">
                <condition-list combine="and">
                    <condition-expr field-name="projectId" from-field="parameters.projectId"/>
                    <condition-expr field-name="taskId" operator="like" value="%${parameters.taskId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskName" operator="like" value="%${parameters.taskName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintId" operator="like" value="%${parameters.sprintId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintName" operator="like" value="%${parameters.sprintName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskTypeId" operator="like" value="%${parameters.taskTypeId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintTypeId" value="SCRUM_SPRINT"/>
                    <condition-list combine="or">
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_INST"/>
                    </condition-list>
                </condition-list>
                <order-by field-name="taskPriority"/>
            </entity-condition>
        </actions>
    </form>
    <form name="SprintTasksListTestNoAction" extends="SprintTasksListNoAction">
        <actions>
            <entity-condition entity-name="ProjectSprintBacklogAndTask" list="projectSprintBacklogAndTasks">
                <condition-list combine="and">
                    <condition-expr field-name="projectId" from-field="parameters.projectId"/>
                    <condition-expr field-name="taskId" operator="like" value="%${parameters.taskId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskName" operator="like" value="%${parameters.taskName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintId" operator="like" value="%${parameters.sprintId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintName" operator="like" value="%${parameters.sprintName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskTypeId" operator="like" value="%${parameters.taskTypeId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintTypeId" value="SCRUM_SPRINT"/>
                    <condition-list combine="or">
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_TEST"/>
                    </condition-list>
                </condition-list>
                <order-by field-name="taskPriority"/>
            </entity-condition>
        </actions>
    </form>
    <form name="SprintTasksListCodingNoAction" extends="SprintTasksListNoAction">
        <actions>
            <entity-condition entity-name="ProjectSprintBacklogAndTask" list="projectSprintBacklogAndTasks">
                <condition-list combine="and">
                    <condition-expr field-name="projectId" from-field="parameters.projectId"/>
                    <condition-expr field-name="taskId" operator="like" value="%${parameters.taskId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskName" operator="like" value="%${parameters.taskName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintId" operator="like" value="%${parameters.sprintId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintName" operator="like" value="%${parameters.sprintName}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="taskTypeId" operator="like" value="%${parameters.taskTypeId}%" ignore-if-empty="true" ignore-case="true"/>
                    <condition-expr field-name="sprintTypeId" value="SCRUM_SPRINT"/>
                    <condition-list combine="or">
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_IMPL"/>
                    </condition-list>
                </condition-list>
                <order-by field-name="taskPriority"/>
            </entity-condition>
        </actions>
    </form>
    <form name="NewTaskForSprintBacklog" target="createTaskForSprintBacklog" extends="EditSprintTask" extends-resource="component://scrum/widget/TaskForms.xml">
        <actions>
            <set field="custRequestId" from-field="parameters.custRequestId"/>
            <set field="sprintId" from-field="parameters.sprintId"/>
            <entity-one entity-name="WorkEffort" value-field="sprint">
                <field-map field-name="workEffortId" from-field="sprintId"/>
            </entity-one>
            <entity-one entity-name="CustRequest" value-field="backlog"/>
            <set field="sprintStart" from-field="sprint.actualStartDate" type="Date"/>
            <set field="sprintEnd" from-field="sprint.actualCompletionDate" type="Date"/>
            <entity-and entity-name="PartyDetailAndWorkEffortAssign" list="sprintMembers" filter-by-date="true">
                <field-map field-name="workEffortId" from-field="sprintId"/>
                <field-map field-name="roleTypeId" value="SCRUM_TEAM"/>
            </entity-and>
            <set field="nullField" type="String"/>
            <service service-name="getScrumPlanHour" result-map="resultMap">
                <field-map field-name="custRequestId"/>
                <field-map field-name="sprintId" from-field="nullField"/>
            </service>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
            <set field="hoursLeft" value="${custRequest.custEstimatedMilliSeconds/1000/60/60 - resultMap.planHours}"/>
        </actions>
        <alt-target use-when="task!=null" target="createTaskForSprintBacklog"/>
        <field name="id"><hidden/></field>
        <field name="custRequestId"><hidden/></field>
        <field name="planHours" title="Plan Hours"><text size="2"/></field>
        <field name="actualHours"><hidden/></field>
        <field name="UpdateButton"><hidden/></field>
        <field name="custRequestId1" title="${uiLabelMap.ScrumSprintBacklog}">
            <display description="${groovy:return sprint.getString(&quot;workEffortName&quot;)+' - '+backlog.getString(&quot;description&quot;);}"/>
        </field>
        <field name="createButton"><hidden/></field>
        <field name="createButton1" title="${uiLabelMap.CommonCreate}"><submit/></field>
    </form>
    
    <form name="ListProduct" type="list" default-entity-name="ProductRole" use-row-submit="true" list-name="listIt" target="deleteProduct" paginate-target="main" separate-columns="true"
        odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" default-table-style="basic-table hover-bar">
        <actions>
            <set field="isCurrentCompany" value="${groovy: request.setAttribute(&quot;isCurrentCompany&quot;, false);}" type="Boolean"/>
            <set field="currentCompany" value="${groovy: request.setAttribute(&quot;currentCompany&quot;, ' ');}" type="String"/>
        </actions>
        <row-actions>
            <entity-one entity-name="Product" value-field="product">
                <field-map field-name="productId" from-field="productId"/>
            </entity-one>
            <entity-and entity-name="ProductRole" list="ownerCompanyRoles">
                <field-map field-name="productId" from-field="productId"/>
                <field-map field-name="roleTypeId" value="PRODUCT_OWNER_COMP"/>
            </entity-and>
            <set field="companyNameId" from-field="ownerCompanyRoles[0].partyId"/>
            <entity-one entity-name="PartyGroup" value-field="resultCompanyGroup">
                <field-map field-name="partyId" from-field="companyNameId"/>
            </entity-one>
            <entity-and entity-name="ProductRole" list="ownerRoles">
                <field-map field-name="productId" from-field="productId"/>
                <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
            </entity-and>
            <entity-one entity-name="Person" value-field="person">
                <field-map field-name="partyId" from-field="ownerRoles[0].partyId"/>
            </entity-one>
            <set field="isCurrentCompany" value="${groovy: 
                if (request.getAttribute(&quot;currentCompany&quot;) != context.groupName)
                    request.setAttribute(&quot;isCurrentCompany&quot;, false);
                else
                    request.setAttribute(&quot;isCurrentCompany&quot;, true);
                if (request.getAttribute(&quot;currentCompany&quot;) != context.groupName)
                    request.setAttribute(&quot;currentCompany&quot;, context.groupName);
                return (boolean)request.getAttribute(&quot;isCurrentCompany&quot;);
                }"
                type="Boolean"/>
            <set field="groupId" from-field="partyAndSecurityGroupList[0].groupId"/> 
            <set field="productTartget" value="${groovy:
                if (&quot;SCRUM_PRODUCT_OWNER&quot;.equals(groupId))
                    productTartget = &quot;AddProdBacklog&quot;
                else if (&quot;SCRUM_MASTER&quot;.equals(groupId) || &quot;SCRUM_TEAM&quot;.equals(groupId) || &quot;SCRUM_STAKEHOLDER&quot;.equals(groupId))
                    productTartget = &quot;ViewTotalBacklog&quot;
                else 
                    productTartget = &quot;ViewProduct&quot;
                }"/>
            <set field="supportDiscontinuationDate" from-field="supportDiscontinuationDate"/>
            <set field="statusId" value="${groovy: if(supportDiscontinuationDate == null) return 'PRODUCT_ACTIVE' else return 'PRODUCT_CLOSED'}"/>
        </row-actions>
        <field name="isCurrentCompany"><hidden/></field>
        <field name="partyId"><hidden/></field>
        <field name="productId"><hidden/></field>
        <field name="name"><hidden/></field>
        <field name="statusId" title="${uiLabelMap.CommonStatus}">
            <display-entity entity-name="StatusItem" description="${description}"/>
        </field>
        <field name="companyNameId" title="${uiLabelMap.ScrumOwnerCompany}" use-when="!isCurrentCompany">
            <hyperlink target="viewprofile" description="${resultCompanyGroup.groupName} [${companyNameId}]">
                <parameter param-name="partyId" from-field="companyNameId"/>
            </hyperlink>
        </field>
        <field name="longDescription" title="${uiLabelMap.CommonDescription}"><display/></field>
        <field name="productId" title="${uiLabelMap.ScrumProduct}">
            <display-entity entity-name="Product" key-field-name="productId" description=" " >
                <sub-hyperlink target="${productTartget}" description="${internalName} [${productId}]" link-style="buttontext" >
                    <parameter param-name="productId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <sort-order>
            <sort-field name="companyNameId"></sort-field>
            <sort-field name="productId"></sort-field>
            <sort-field name="longDescription"></sort-field>
            <sort-field name="person.partyId"></sort-field>
            <sort-field name="statusId"></sort-field>
        </sort-order>
    </form>
    <form name="ListProductWithNoLinkProfile" extends="ListProduct">
        <field name="companyNameId" title="${uiLabelMap.ScrumOwnerCompany}" use-when="!isCurrentCompany">
            <display description="${resultCompanyGroup.groupName} [${companyNameId}]"/>
        </field>
    </form>
    <form name="backlogInfo" type="single">
        <actions>
          <entity-one entity-name="CustRequest" value-field="dataCustRequest">
                  <field-map field-name="custRequestId" from-field="parameters.custRequestId"/>
          </entity-one>
        </actions>
        <field name="backlogId" title="Product Backlog Id"><display description="${dataCustRequest.custRequestId}"/></field>
        <field name="backlogItem" title="Product Backlog Item"><display description="${dataCustRequest.description}"/></field>
    </form>
    <form name="listBacklogTask" type="list" list-name="listIt" paginate-target="findTask" odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
    <actions>
            <entity-condition entity-name="ProjectSprintBacklogAndTask" list="listIt">
                <condition-list>
                    <condition-expr field-name="custRequestId" from-field="parameters.custRequestId"/>
                    <condition-expr field-name="sprintTypeId" value="SCRUM_SPRINT"/>
                    <condition-list combine="or">
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_ERROR"/>
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_IMPL"/>
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_INST"/>
                        <condition-expr field-name="taskTypeId" value="SCRUM_TASK_TEST"/>
                    </condition-list>
                </condition-list>
            </entity-condition>
    </actions>
    <field name="taskName" title="Task Name" >
        <hyperlink target="taskView" description="${taskName}">
            <parameter param-name="taskId" from-field="taskId"/>
        </hyperlink>
   </field>
   <field name="taskTypeId" title="Task Type">
        <display-entity entity-name="WorkEffortType" description="${description}" key-field-name="workEffortTypeId"></display-entity>
   </field> 
   <field name="taskCurrentStatusId" title="Status">
        <display-entity entity-name="StatusItem" description="${description}" key-field-name="statusId"/>
   </field>
   <field name="taskActualCompletionDate" title="Completion Date"><display/></field>
   </form>
   
   <form name="ListTaskSprint" list-name="notes" title="" type="list" paginate-target="backlogView"
        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
        <field name="custRequestId" title="Backlog ID" widget-style="buttontext">
        <hyperlink target="backlogView" description="${custRequestId}">
            <parameter param-name="custRequestId" from-field="${custRequestId}"/>
        </hyperlink>
        </field>
        <field name="noteInfo" title="How To Test" ><display description="${noteInfo}"/></field>
    </form>
    
    <!--Project contents -->
    <form name="ListContents" extends="ListWorkEffortContents" extends-resource="component://workeffort/widget/WorkEffortForms.xml"
         odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" default-table-style="basic-table hover-bar">
        <row-actions>
            <entity-one entity-name="Content" value-field="contentMap">
                <field-map field-name="contentId" from-field="contentId"/>
            </entity-one>
            <entity-one entity-name="ContentType" value-field="descContent">
                <field-map field-name="contentTypeId" from-field="contentMap.contentTypeId"/>
            </entity-one>
        </row-actions>
        <field name="contentId"><hidden/></field>
        <field name="workEffortContentTypeId"><hidden/></field>
        <field name="mimeTypeId"><hidden/></field>
        <field name="contentTypeId"><display description="${descContent.description}"/></field>
        <field name="contentName" use-when="headerItem.equals(&quot;EditProjectContents&quot;)">
            <display description="${contentMap.contentName} ${contentId}"/>
        </field>
        <field name="thruDate"><ignored/></field>
        <field name="submitButton"><ignored/></field>
        <field name="deleteLink" title=" " widget-style="buttontext" use-when="headerItem.equals(&quot;EditProjectContents&quot;)">
            <hyperlink also-hidden="false" description="${uiLabelMap.CommonDelete}" target="deleteProjectContent">
                <parameter param-name="contentId"/>
                <parameter param-name="workEffortId"/>
                <parameter param-name="workEffortContentTypeId"/>
                <parameter param-name="fromDate"/>
                <parameter param-name="projectId"/>
            </hyperlink>
        </field>
        <field name="downloadLink" title=" " widget-style="buttontext">
            <hyperlink description="${uiLabelMap.ContentDownload}" target="ViewSimpleContent?contentId=${contentId}"/>
        </field>
        <sort-order>
            <sort-field name="contentTypeId"/>
            <sort-field name="contentName"/>
            <sort-field name="fromDate"/>
            <sort-field name="deleteLink"/>
            <sort-field name="downloadLink"/>
        </sort-order>
    </form>
    <form name="UploadWorkEffortContent" type="upload" default-map-name="content"
        focus-field-name="contentTypeId" header-row-style="header-row" default-table-style="basic-table" target="createProjectContent?projectId=${parameters.projectId}">
        <field name="workEffortId" map-name="parameters"><hidden/></field>
        <field name="projectId" map-name="parameters"><hidden/></field>
        <field name="workEffortContentTypeId"><hidden value="PROJECT_SPEC"/></field>
        <field name="contentTypeId">
            <drop-down allow-empty="false" no-current-selected-key="DOCUMENT">
                <entity-options description="${description}" entity-name="ContentType"/>
            </drop-down>
        </field>
        <field name="mimeTypeId" >
            <drop-down allow-empty="false">
                <entity-options description="${description}" entity-name="MimeType" key-field-name="mimeTypeId"/>
            </drop-down>
        </field>
        <field name="dataResourceName" title="${uiLabelMap.CommonUpload}"><file/></field>
        <field name="createButton"><submit button-type="button"/></field>
    </form>
    <form name="ListProjectContent" type="list" paginate-target="/ListCommContent"
        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
        <actions>
            <entity-and entity-name="WorkEffortAndContentDataResource">
                <field-map field-name="workEffortId" from-field="workEffortId"/>
            </entity-and>
        </actions>
        <field name="contentTypeId"><display-entity entity-name="ContentType" description="${description}"/></field>
        <field name="contentName" widget-style="buttontext">
            <display description="${contentName}[${contentId}]"/>
        </field>
        <field name="fromDate"><display/></field>
        <field name="drMimeTypeId"><hidden/></field>
        <field name="downloadLink" title=" " widget-style="buttontext">
            <hyperlink description="${uiLabelMap.ContentDownload}" target="ViewSimpleContent?contentId=${contentId}"/>
        </field>
    </form>
    
    <!-- ProductContent -->
    <form name="ListProductContentInfos" type="list" title="" list-name="productContent" 
        odd-row-style="alternate-row" default-table-style="basic-table">
        <row-actions>
            <entity-one entity-name="Content" value-field="contentMap">
                <field-map field-name="contentId" from-field="contentId"/>
            </entity-one>
            <entity-one entity-name="ContentType" value-field="descContent">
                <field-map field-name="contentTypeId" from-field="contentMap.contentTypeId"/>
            </entity-one>
        </row-actions>
        <field name="contentTypeId"><display description="${descContent.description}"/></field>
        <field name="contentName"><display description="${contentMap.contentName} [${contentId}]"/></field>
        <field name="fromDate"><display/> </field>
        <field name="deleteLink" title=" " widget-style="buttontext">
            <hyperlink also-hidden="false" description="${uiLabelMap.CommonDelete}" target="deleteScrumProductContent">
                <parameter param-name="contentId"/>
                <parameter param-name="fromDate"/>
                <parameter param-name="productId"/>
                <parameter param-name="productContentTypeId"/>
            </hyperlink>
        </field>
        <field name="downloadLink" title=" " widget-style="buttontext">
            <hyperlink description="${uiLabelMap.ContentDownload}" target="ViewSimpleContent?contentId=${contentId}"/>
        </field>
    </form>
    <form name="UploadProductContent" extends="UploadWorkEffortContent" target="createScrumProductContent?productId=${parameters.productId}">
        <field name="productId"><hidden value="${parameters.productId}"/> </field>
        <field name="productContentTypeId"><hidden value="SPECIFICATION"/></field>
        <field name="workEffortContentTypeId"><ignored/></field>
        <field name="projectId"><ignored/></field>
        <field name="workEffortId"><ignored/></field>
         <sort-order>
            <sort-field name="productId"/>
            <sort-field name="contentId"/>
            <sort-field name="productContentTypeId"/>
            <sort-field name="contentTypeId"/>
            <sort-field name="mimeTypeId"/>
            <sort-field name="dataResourceName"/>
            <sort-field name="createButton"/>
        </sort-order>
    </form>
    <form name="ListProductContent" type="list" extends="ListProductContentInfos" list-name="productContent" paginate-target="/ListCommContent"
        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
         <row-actions>
            <entity-one entity-name="Content" value-field="contentMap">
                <field-map field-name="contentId" from-field="contentId"/>
            </entity-one>
            <entity-one entity-name="ContentType" value-field="descContent">
                <field-map field-name="contentTypeId" from-field="contentMap.contentTypeId"/>
            </entity-one>
        </row-actions>
        <field name="contentTypeId"><display description="${descContent.description}"/></field>
        <field name="contentName" widget-style="buttontext">
             <display description="${contentMap.contentName} [${contentId}]"/>
        </field>
        <field name="deleteLink"><ignored/></field>
    </form>
    <form name="AddProdBacklogNote" type="single" header-row-style="header-row" default-table-style="basic-table" 
        target="createProdBacklogNote?custRequestId=${parameters.custRequestId}&amp;productId=${parameters.productId}">
        <field name="noteName"><text/> </field>
        <field name="noteInfo"><textarea/></field>
        <field name="createButton"><submit button-type="button"/></field>
    </form>
    <form name="ListProdBacklogNote" type="list" list-name="custNoteList"
        odd-row-style="alternate-row" default-table-style="basic-table hover-bar" paginate-target="ProdBacklogNote">
        <row-actions>
            <entity-one entity-name="NoteData" auto-field-map="true"/>
        </row-actions>
        <field name="noteId"><hidden/> </field>
        <field name="noteName"><display/></field>
        <field name="noteInfo"><display/></field>
        <field name="noteDateTime"><display/></field>
        <field name="noteParty">
            <display-entity entity-name="PartyNameView"  description="${lastName}, ${firstName} ${middleName}" key-field-name="partyId"/>
        </field>
        <field name="removeNote" title=" " widget-style="buttontext">
            <hyperlink description="${uiLabelMap.CommonDelete}" target="deleteProdBacklogNote">
                <parameter param-name="noteId" from-field="noteId"/>
                <parameter param-name="custRequestId" from-field="custRequestId"/>
                <parameter param-name="productId" from-field="productId"/>
            </hyperlink>
        </field>
    </form>
    <form name="ListProdBacklogNoteInfo" extends="ListProdBacklogNote">
        <field name="removeNote"><ignored/></field>
    </form>
    <!-- Backlog Item Contents -->
    <form name="AddCustRequestContent" type="upload" default-map-name="content"
        header-row-style="header-row" default-table-style="basic-table" target="createBacklogItemContent?custRequestId=${parameters.custRequestId}&amp;productId=${parameters.productId}">
        <field name="custRequestId" map-name="parameters"><hidden/></field>
        <field name="contentTypeId">
            <drop-down allow-empty="false" no-current-selected-key="DOCUMENT">
                <entity-options description="${description}" entity-name="ContentType">
                    <entity-order-by field-name="description"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="mimeTypeId" >
            <drop-down allow-empty="false">
                <entity-options description="${description}" entity-name="MimeType" key-field-name="mimeTypeId"/>
            </drop-down>
        </field>
        <field name="dataResourceName" title="${uiLabelMap.CommonUpload}*"><file/></field>
        <field name="createButton"><submit button-type="button"/></field>
    </form>
    <form name="ListCustRequestContent" type="list" list-name="custRequestAndContents"
        odd-row-style="alternate-row" default-table-style="basic-table hover-bar" paginate-target="EditBacklogItemContent">
        <row-actions>
            <entity-one entity-name="Content" value-field="contentMap">
                <field-map field-name="contentId" from-field="contentId"/>
            </entity-one>
            <entity-one entity-name="ContentType" value-field="descContent">
                <field-map field-name="contentTypeId" from-field="contentMap.contentTypeId"/>
            </entity-one>
        </row-actions>
        <field name="contentTypeId"><display description="${descContent.description}"/></field>
        <field name="custRequestId"><hidden/></field>
        <field name="contentName"><display description="${contentMap.contentName}[${contentId}]"/></field>
        <field name="mimeTypeId"><hidden/></field>
        <field name="fromDate"><display/></field>
        <field name="deleteLink" title=" " widget-style="buttontext" >
           <hyperlink also-hidden="false" description="${uiLabelMap.CommonDelete}" target="deleteBacklogItemContent">
                <parameter param-name="custRequestId"/>
                <parameter param-name="contentId"/>
                <parameter param-name="fromDate"/>
                <parameter param-name="productId" from-field="productId"/>
                </hyperlink>
        </field>
        
        <field name="downloadLink" title=" " widget-style="buttontext">
            <hyperlink description="${uiLabelMap.ContentDownload}" target="ViewSimpleContent?contentId=${contentId}"/>
        </field>
    </form>
    <form name="ViewListCustRequestContent" type="list" list-name="custRequestAndContents" extends="ListCustRequestContent"
        odd-row-style="alternate-row" default-table-style="basic-table hover-bar" paginate-target="EditBacklogItemContent">
        <row-actions>
            <entity-one entity-name="Content" value-field="contentMap">
                <field-map field-name="contentId" from-field="contentId"/>
            </entity-one>
            <entity-one entity-name="ContentType" value-field="descContent">
                <field-map field-name="contentTypeId" from-field="contentMap.contentTypeId"/>
            </entity-one>
        </row-actions>
        <field name="contentTypeId"><display description="${descContent.description}"/></field>
        <field name="contentName" widget-style="buttontext">
             <display description="${contentMap.contentName} [${contentId}]"/>
        </field>
        <field name="deleteLink"><ignored/> </field>
        </form>
    <form name="taskRelateBacklog" type="list" separate-columns="true" list-name="projectSprintBacklogAndTasks"
        odd-row-style="alternate-row" even-row-style="even-row" header-row-style="header-row" default-table-style="basic-table hover-bar" use-row-submit="true">
        <actions>
            <entity-and entity-name="CustRequestWorkEffort" list="sprintList">
                <field-map field-name="custRequestId" from-field="parameters.custRequestId"/>
            </entity-and>
            <entity-condition entity-name="ProductBacklog" list="projectSprintBacklogAndTasks" distinct="true">
                <condition-list combine="and">
                    <condition-expr field-name="custRequestId" from-field="parameters.custRequestId"/>
                    <condition-list combine="or">
                        <condition-expr field-name="workEffortTypeId" operator="equals" value="SCRUM_TASK_ERROR"/>
                        <condition-expr field-name="workEffortTypeId" operator="equals" value="SCRUM_TASK_IMPL"/>
                        <condition-expr field-name="workEffortTypeId" operator="equals" value="SCRUM_TASK_INST"/>
                        <condition-expr field-name="workEffortTypeId" operator="equals" value="SCRUM_TASK_TEST"/>
                    </condition-list>
                </condition-list>
                <select-field field-name="workEffortId"/>
            </entity-condition>
        </actions>
        <row-actions>
            <entity-one entity-name="WorkEffort" value-field="resultTask">
                <field-map field-name="workEffortId" from-field="workEffortId"/>
            </entity-one>
            <set field="taskId" from-field="resultTask.workEffortId"/>
            <entity-and entity-name="WorkEffortPartyAssignment" list="assignTo" filter-by-date="true">
                <field-map field-name="workEffortId" from-field="taskId"/>
            </entity-and>
            <set field="partyId" value="${groovy: if (assignTo.size() != 0) return assignTo.get(0).getString(&quot;partyId&quot;)}"/>
            <set field="taskActualMilliSeconds" value="${groovy: if (resultTask.actualMilliSeconds != null) return actualMilliSeconds/3600000}"/>
            <service service-name="getScrumActualHour" result-map="result">
                <field-map field-name="taskId" from-field="taskId"/>
            </service>
            <set field="nullField" type="String"/>
            <service service-name="getScrumPlanHour" result-map="resultMap">
                <field-map field-name="taskId" from-field="taskId"/>
                <field-map field-name="custRequestId" from-field="nullField"/>
                <field-map field-name="sprintId" from-field="nullField"/>
                <field-map field-name="projectId" from-field="nullField"/>
            </service>
            <set field="taskEstimatedMilliSeconds" from-field="resultMap.planHours"/>
            <set field="taskTypeId" from-field="resultTask.workEffortTypeId"/>
            <set field="taskCurrentStatusId" from-field="resultTask.currentStatusId"/>
            <set field="taskCreatedDate" from-field="resultTask.createdDate" type="Timestamp"/>
            <set field="taskEstimatedStartDate" from-field="resultTask.estimatedStartDate"/>
            <set field="taskName" from-field="resultTask.workEffortName"/>
        </row-actions>
        <field name="taskId" title="${uiLabelMap.ScrumTask}" parameter-name="workEffortId">
            <hyperlink target="taskView" link-type="hidden-form" description="${taskName} [${taskId}]" target-window="_BLANK" target-type="intra-app">
                <parameter param-name="taskId" from-field="taskId"/>
            </hyperlink>
        </field>
        <field name="taskTypeId" title="${uiLabelMap.ScrumTaskType}">
            <display-entity entity-name="WorkEffortType" key-field-name="workEffortTypeId" description="${description}"/>
        </field>
        <field name="taskCurrentStatusId" title="${uiLabelMap.CommonStatus}">
            <display-entity entity-name="StatusItem" key-field-name="statusId" description="${description}"/>
        </field>
        <field name="partyId" title="${uiLabelMap.ScrumAssignedTo}">
            <display-entity entity-name="Person" description="${lastName} ${firstName} ${middleName}" key-field-name="partyId"/>
        </field>
        <field name="taskCreatedDate" title="${uiLabelMap.FormFieldTitle_createdDate}"><display type="date"/></field>
        <field name="taskEstimatedMilliSeconds" title="${uiLabelMap.ScrumPlannedHours}" parameter-name="planHours"><display/></field>
        <field name="taskActualMilliSeconds" title="${uiLabelMap.ScrumActualHours}" parameter-name="actualHours"><display description="${result.actualHours}"/></field>
        <field name="taskEstimatedStartDate" title="${uiLabelMap.CommonStartDate}" parameter-name="estimatedStartDate"><display type="date"/></field>
    </form>
    <form name="EditDeleteBacklogItem" type="single" target="deleteBacklogItem?custRequestId=${parameters.custRequestId}&amp;productId=${parameters.productId}">
        <actions>
            <service service-name="getScrumActualHour" result-map="resultMap">
                <field-map field-name="custRequestId" from-field="custRequestId"/>
            </service>
            <set field="actualHours" from-field="resultMap.actualHours" default-value="0" type="Double"/>
            <set field="actualHoursMessage" value="${groovy: 
                if (actualHours > 0)
                    actualHoursMessage = &quot;There are already &quot;+ actualHours +&quot; hours have been spent on this backlog item, Are you sure you want to delete?&quot;
                else
                    actualHoursMessage = &quot;Are you sure to delete selected product backlog item(s)?&quot;
                }"/>
        </actions>
        <field name="reason"><textarea/> </field>
        <field name="buttonSubmit" title="${uiLabelMap.CommonSave}" ><submit request-confirmation="true" confirmation-message="${actualHoursMessage}"/> </field>
    </form>
    <form name="DeleteProductBacklogItem" type="single" target="deleteProductBacklogItem?productId=${parameters.productId}&amp;custRequestId=${parameters.custRequestId}&amp;statusId=${parameters.statusId}">
        <actions>
            <service service-name="getScrumActualHour" result-map="resultMap">
                <field-map field-name="custRequestId" from-field="custRequestId"/>
            </service>
            <set field="actualHours" from-field="resultMap.actualHours" default-value="0" type="Double"/>
            <set field="actualHoursMessage" value="${groovy: 
                if (actualHours > 0)
                    actualHoursMessage = &quot;There are already &quot;+ actualHours +&quot; hours have been spent on this backlog item, Are you sure you want to delete?&quot;
                else
                    actualHoursMessage = &quot;Are you sure to delete selected product backlog item(s)?&quot;
                }"/>
        </actions>
        <field name="reason"><textarea/> </field>
        <field name="buttonSubmit" title="${uiLabelMap.CommonSave}" ><submit request-confirmation="true" confirmation-message="${actualHoursMessage}"/> </field>
    </form>
    <form name="ViewBacklogStatus" type="list" extends="ViewRequestStatus" extends-resource="component://order/widget/ordermgr/CustRequestForms.xml"
        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
        <field name="custRequestItemSeqId"><ignored/></field>
    </form>

    <form name="QuickAddBacklog" type="single" target="${formTarget}" default-map-name="custRequest">
        <actions>
            <set field="unplanned" from-field="parameters.unplanned"/>
        </actions>
        <field name="description" title="${uiLabelMap.ScrumProductBacklogItem}" widget-style="required" tooltip="${uiLabelMap.CommonRequired}"><text size="50" maxlength="255"/></field>
        <field name="billed" title="${uiLabelMap.ScrumBilled}">
            <drop-down allow-empty="false" no-current-selected-key="Y">
                <option key="Y" description="${uiLabelMap.CommonY}"/>
                <option key="N" description="${uiLabelMap.CommonN}"/>
            </drop-down>
        </field>
        <field name="unplanned" title="${uiLabelMap.ScrumUnplanBacklog}" event="onchange" action="javascript:document.QuickAddBacklog.action='QuickAddBacklog';document.QuickAddBacklog.submit();" widget-style="required" tooltip="${uiLabelMap.CommonRequired}">
            <drop-down allow-empty="false">
                <option key="" description="- ${uiLabelMap.CommonSelectOne} -"/>
                <option key="Y" description="${uiLabelMap.CommonYes}"/>
                <option key="N" description="${uiLabelMap.CommonNo}"/>
            </drop-down>
        </field>
        <field name="productId" title="${uiLabelMap.ScrumProductName}" use-when="${groovy: unplanned.equals(&quot;Y&quot;)}" event="onchange" action="javascript:document.QuickAddBacklog.action='QuickAddBacklog';document.QuickAddBacklog.submit();"
            widget-style="required" tooltip="${uiLabelMap.CommonRequired}">
            <drop-down allow-empty="true">
                <entity-options description="${groupName} -- ${internalName}[${productId}]" entity-name="ProductAndRole" key-field-name="productId">
                    <entity-constraint name="supportDiscontinuationDate" operator="equals" value=""/>
                    <entity-constraint name="roleTypeId" value="PRODUCT_OWNER_COMP"/>
                    <entity-order-by field-name="groupName"/>
                    <entity-order-by field-name="internalName"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="keyId" title="${uiLabelMap.ScrumProduct} ${uiLabelMap.ScrumProject} ${uiLabelMap.ScrumSprint}" use-when="${groovy: unplanned.equals(&quot;N&quot;)}" event="onchange" action="javascript:document.QuickAddBacklog.action='QuickAddBacklog';document.QuickAddBacklog.submit();"
            widget-style="required" tooltip="${uiLabelMap.CommonRequired}">
            <drop-down allow-empty="true">
                <list-options key-name="keyId" list-name="workEffortList" description="[${productId}] ${internalName} -- [${projectId}] ${projectName} -- [${sprintId}] ${sprintName}"/>
            </drop-down>
        </field>
        <field name="parentCustRequestId" title="${uiLabelMap.ScrumBacklogItemCategory}">
            <drop-down allow-empty="true">
                <list-options key-name="custRequestId" list-name="categoryList" description="[${productId}] : ${internalName} -- [${custRequestId}] : ${custRequestName}"/>
            </drop-down>
        </field>
        <field name="custEstimatedMilliSeconds" title="${uiLabelMap.ScrumPlannedTime}" tooltip="${uiLabelMap.ScrumHrs}"><text size="3"></text></field>
        <field name="story" title="${uiLabelMap.ScrumStory}" ><textarea  rows="4" cols="60"/></field>
        <field name="custSequenceNum"><hidden value="1"/></field>
        <field name="noteInfo" title="${uiLabelMap.ScrumHowToTest}" ><textarea  rows="4" cols="60"/></field>
        <field name="submitButton" title="${uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
    
    <form name="QuickAddNewTask" type="upload" target="createTaskForBacklog">
        <actions>
            <entity-condition list="custRequestList" entity-name="CustRequest">
                <condition-list combine="and">
                    <condition-list combine="or">
                        <condition-expr field-name="custRequestTypeId" value="RF_PROD_BACKLOG" operator="equals"/>
                        <condition-expr field-name="custRequestTypeId" value="RF_UNPLAN_BACKLOG" operator="equals"/>
                    </condition-list>
                    <condition-expr field-name="statusId" value="CRQ_REVIEWED" operator="equals"/>
                </condition-list>
                <order-by field-name="description"/>
            </entity-condition>
        </actions>
        <field name="custRequestId" title="Product Backlog" tooltip="Product Backlog Name [Product Backlog Id]" parameter-name="custRequestId">
            <drop-down allow-empty="false">
                <option key="" description="- ${uiLabelMap.CommonSelectOne} -"/>
                <list-options key-name="custRequestId" list-name="custRequestList" description="${description} [${custRequestId}]"/>
            </drop-down>
        </field>
        <field name="workEffortName" title="${uiLabelMap.ScrumTaskName}" required-field="true" tooltip="${uiLabelMap.ScrumToolTip100CharsMaximun}"><text/></field>
        <field name="workEffortTypeId" title="${uiLabelMap.ScrumTaskType}" required-field="true">
            <drop-down>
                <entity-options description="${description}" entity-name="WorkEffortType" key-field-name="workEffortTypeId">
                    <entity-constraint name="parentTypeId" value="SCRUM_TASK"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="planHours" title="${uiLabelMap.ScrumPlannedHours}"><text size="3" default-value="${resultMap.planHours}"/></field>
        <field name="currentStatusId"><hidden value="STS_CREATED"/></field>
        <field name="description" title="${uiLabelMap.CommonDescription}" tooltip="${uiLabelMap.CommonMax250Chars}"><textarea/></field>
        <field name="uploadedFile"><file/></field>
        <field name="contentTypeId"><hidden value="DOCUMENT"/></field>
        <field name="resourceStatusId"><hidden value="CTNT_PUBLISHED"/></field>
        <field name="workEffortContentTypeId"><hidden value="CREATED_MEDIA"/></field>
        <field name="mimeTypeId"><hidden value="application/octet-stream"/></field>
        <field name="partyId" title="${uiLabelMap.ScrumAssignedTo}" event="onchange" parameter-name="partyId">
            <drop-down allow-empty="true">
                <entity-options entity-name="ScrumPersonAndCompanyAndSecurityGroup" description="${lastName}, ${firstName} ${middleName}">
                    <entity-constraint name="groupId" value="SCRUM_TEAM"/>
                    <entity-constraint name="partyStatusId" operator="not-equals" value="PARTY_DISABLED"/>
                <entity-order-by field-name="partyId"/>
            </entity-options>
            </drop-down>
        </field>
        <field name="createButton" title="${uiLabelMap.CommonCreate}"><submit/></field>
    </form>
    <form name="NewBacklogTask" extends="QuickAddNewTask">
        <field name="custRequestId"><hidden/></field>
    </form>
    
    <form name="unplannedBacklogList" extends="ListProdBacklogBySeq" list-name="unplanBacklogItems" type="multi" target="updateProductBacklogItemRow?productId=${productId}&amp;UnplannedSequence=${UnplannedSequence}">
        <row-actions>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
            <set field="product" from-field="custRequest.description"/>
            <set field="estimatedHours" value="${groovy:custEstimatedMilliSeconds!=null?custEstimatedMilliSeconds/3600000:0;}"/>
            <set field="custRequestCategoryGroupId" from-field="parentCustRequestId"/>
        </row-actions>
        <field name="UnplannedSequence"><hidden value="Y"/></field>
        <field name="deleteFlag" position="1" title="${uiLabelMap.ScrumMoveToUnplannedSprint}" widget-style="buttontext">
            <hyperlink target="DeleteProductBacklogItem" description="${uiLabelMap.CommonDelete}">
                <parameter param-name="productId" from-field="parameters.productId"/>
                <parameter param-name="custRequestId" from-field="custRequestId"/>
                <parameter param-name="statusId" from-field="parameters.statusId"/>
            </hyperlink>
        </field>
        <!--<field name="estimatedHours" title="${uiLabelMap.ScrumPlannedHours}" use-when="&quot;${statusId}&quot;==&quot;CRQ_ACCEPTED&quot;"><text size="3"/></field>
        <field name="estimatedHours" title="${uiLabelMap.ScrumPlannedHours}" use-when="&quot;${statusId}&quot;==&quot;CRQ_REVIEWED&quot;"><display/></field>-->
        <field name="parentCustRequestId" title="${uiLabelMap.ScrumCategory}">
            <drop-down allow-empty="true">
                <entity-options description="${custRequestName}" entity-name="CustRequestAndCustRequestItem" key-field-name="custRequestId">
                    <entity-constraint name="productId" env-name="productId"/>
                    <entity-constraint name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="setToReview" title="${uiLabelMap.ScrumMoveToUnplannedSprint}" widget-style="buttontext" use-when="&quot;${statusId}&quot;==&quot;CRQ_ACCEPTED&quot;||&quot;${statusId}&quot;==&quot;CRQ_REOPENED&quot;" >
            <hyperlink description="${uiLabelMap.ScrumMoveToUnplannedSprint}" target="setUnplannedSprint">
                <parameter param-name="custRequestId" from-field="parameters.custRequestId"/>
                <parameter param-name="productId" from-field="parameters.productId"/>
                <parameter param-name="statusId" from-field="custRequest.statusId"/>
            </hyperlink>
        </field>
        <field name="setToReview" title="${uiLabelMap.ScrumMoveToUnplannedSprint}" use-when="&quot;${statusId}&quot;==&quot;CRQ_REVIEWED&quot;"><hidden /></field>
        <field name="dummy2" title="${uiLabelMap.CommonDelete}"><display description=" "/></field>
        <field name="submitButton" widget-style="buttontext"><submit button-type="text-link"/></field>
    </form>
    <form name="unplannedBacklogListForOwner" extends="unplannedBacklogList">
        <field name="estimatedHours"><display/></field>
        <field name="submitButton" widget-style="buttontext"><submit button-type="text-link"/></field>
    </form>
    <form name="unplanBacklogListItems" type="list" use-row-submit="true" list-name="listIt" target="UpdateUnplanBacklogHours" paginate-target="unplanBacklog" separate-columns="true"
        odd-row-style="alternate-row" default-table-style="hover-bar basic-table">
        <row-actions>
            <!-- get total backlog item's plan hours -->
            <set field="nullField" type="String"/>
            <service service-name="getScrumPlanHour" result-map="backlogPlanHourOutMap">
                <field-map field-name="custRequestId"/>
                <field-map field-name="sprintId" from-field="nullField"/>
                <field-map field-name="projectId" from-field="nullField"/>
            </service>
            <set field="backlogPlanHours" from-field="backlogPlanHourOutMap.planHours"/>
            <!-- get task's plan hours -->
            <service service-name="getScrumPlanHour" result-map="taskPlanHourOutMap">
                <field-map field-name="taskId" from-field="workEffortId"/>
                <field-map field-name="custRequestId" from-field="nullField"/>
                <field-map field-name="sprintId" from-field="nullField"/>
                <field-map field-name="projectId" from-field="nullField"/>
            </service>
            <set field="planHours" from-field="taskPlanHourOutMap.planHours"/>
            <!-- condition -->
            <set field="showPosition1" value="${groovy:String prev=(String)previousItem.get(&quot;custRequestId&quot;);return new Boolean(!(prev!=null&amp;&amp;prev.equals(custRequestId)));}" type="Boolean"/>
            <!-- Get list of task for each sprint backlog -->
            <entity-and entity-name="WorkEffortPartyAssignView" list="assignedTos">
                <field-map field-name="workEffortId" from-field="workEffortId"/>
            </entity-and>
            <set field="partyId" value="${assignedTos[0].partyId}"/>
            <entity-and entity-name="ScrumMemberUserLoginAndSecurityGroup" list="partyList">
                <field-map field-name="partyId" from-field="partyId"/>
            </entity-and>
            <service service-name="getScrumActualHour" result-map="result">
                <field-map field-name="taskId" from-field="workEffortId"/>
                <field-map field-name="partyId" from-field="partyId"/>
            </service>
            <set field="taskActualHours" from-field="result.actualHours"/>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
            <set field="defaultBacklogPlanHours" value="${custRequest.custEstimatedMilliSeconds/3600000}"/>
            <set field="initialPlannedHours" from-field="defaultBacklogPlanHours"/>
            <entity-and entity-name="CustRequestItem" list="custRequestItems">
                <field-map field-name="custRequestId" from-field="custRequestId"/>
            </entity-and>
            <entity-condition entity-name="CustRequestItem" list="custRequestItems">
                <condition-list combine="and">
                    <condition-expr field-name="custRequestId" from-field="custRequestId"/>
                    <condition-expr field-name="productId" operator="not-equals" from-field="nullValue"/>
                </condition-list>
            </entity-condition>
            <set field="productId" from-field="custRequestItems[0].productId"/>
        </row-actions>
        <field name="productId" position="2"><hidden/></field>
        <field name="custRequestId" title="${uiLabelMap.PageTitleUnplanBacklogItem}" position="1" use-when="showPosition1&amp;&amp;&quot;${custRequestTypeId}&quot;!=&quot;RF_SCRUM_MEETINGS&quot;">
            <display-entity entity-name="CustRequest" key-field-name="custRequestId" description=" ">
                <sub-hyperlink  target="ViewProdBacklogItem" description="${context.description} - [${custRequestId}]" link-type="hidden-form" target-window="_BLANK" link-style="buttontext">
                    <parameter param-name="custRequestId"/>
                </sub-hyperlink>
            </display-entity>
        </field>
         <field name="custRequestId" title="${uiLabelMap.ScrumSprintBacklog}" position="1" use-when="showPosition1&amp;&amp;&quot;${custRequestTypeId}&quot;==&quot;RF_SCRUM_MEETINGS&quot;" widget-style="disabled">
            <display-entity entity-name="CustRequest" key-field-name="custRequestId" description="${context.description} - [${custRequestId}]">
            </display-entity>
        </field>
        <field name="statusId" title="${uiLabelMap.ScrumStatusBacklog}" position="1" use-when="showPosition1&amp;&amp;&quot;Any&quot;.equals(paraBacklogStatusId)">
            <display-entity entity-name="StatusItem" description="${description}" key-field-name="statusId"/>
        </field>
        <field name="workEffortId" title="${uiLabelMap.ScrumTab} ${uiLabelMap.ScrumTask}" position="2" use-when="workEffortId!=null">
            <display-entity entity-name="WorkEffort" key-field-name="workEffortId" description=" ">
                <sub-hyperlink  target="taskView" description="${uiLabelMap.ScrumTab} ${workEffortName} - [${workEffortId}]" link-type="hidden-form" target-window="_BLANK">
                    <parameter param-name="taskId" value="${workEffortId}"/>
                </sub-hyperlink>
            </display-entity>
        </field>
        <field name="workEffortTypeId" title="${uiLabelMap.ScrumTab} ${uiLabelMap.ScrumTaskType}" position="2" use-when="workEffortId!=null">
            <display-entity entity-name="WorkEffortType" key-field-name="workEffortTypeId" description="${uiLabelMap.ScrumTab} ${description}"/>
        </field>
        <field name="currentStatusId" title="${uiLabelMap.CommonStatus}" position="2" use-when="!&quot;STS_COMPLETED&quot;.equals(currentStatusId)"><display-entity entity-name="StatusItem" description="${description}" key-field-name="statusId"/></field>
        <field name="currentStatusId" title="${uiLabelMap.CommonStatus}" position="2" use-when="&quot;STS_COMPLETED&quot;.equals(currentStatusId)" widget-style="alert"><display-entity entity-name="StatusItem" description="${description}" key-field-name="statusId"/></field>
        <field name="dummy1" title=" " position="1" use-when="showPosition1"><display description=" "/></field>
        <field name="dummy2" title=" " position="1" use-when="showPosition1"><display description=" "/></field>
        <field name="dummy3" title=" " position="1" use-when="showPosition1"><display description=" "/></field>
        <field name="initialPlannedHours" title="Initial Plan / Total Plan" position="1" use-when="showPosition1"><display description="${initialPlannedHours} / ${backlogPlanHours}"/></field>
        <field name="dummy4" title=" " position="1" use-when="showPosition1"><display description=" "/></field>
        <field name="dummy5" title=" " position="1" use-when="showPosition1"><display description=" "/></field>
        <field name="taskActualHours" title="${uiLabelMap.ScrumActualHours}" position="2" use-when="workEffortId!=null"><display/></field>
        <field name="planHours" title="${uiLabelMap.ScrumPlannedHours}" position="2" use-when="workEffortId!=null">
            <display/>
        </field>
        <field name="deleteButton" title=" " position="1" use-when="showPosition1&amp;&amp;!&quot;CRQ_COMPLETED&quot;.equals(&quot;${custRequest.statusId}&quot;)" widget-style="buttontext">
            <hyperlink target="DeleteUnplanBacklog" description="Delete" confirmation-message="Are you sure to delete this sprint backlog ?" link-type="hidden-form">
                <parameter param-name="workEffortId"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
            </hyperlink>
        </field>
        <field name="newTask" title=" " use-when="showPosition1&amp;&amp;!&quot;CRQ_COMPLETED&quot;.equals(&quot;${custRequest.statusId}&quot;)" widget-style="buttontext">
            <hyperlink target="NewUnplanBacklogTask" description="Add Task" link-type="hidden-form">
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId"/>
            </hyperlink>
        </field>
        <field name="dummy6" title=" " position="2" use-when="workEffortId!=null"><display description=" "/></field>
        <field name="partyId" title="${uiLabelMap.ScrumAssignedTo}" position="2" use-when="workEffortId!=null" >
            <display description="${partyList[0].lastName} ${partyList[0].firstName} ${partyList[0].middleName}"></display>
        </field>
        <field name="editTaskParty" title=" " position="2" use-when="workEffortId!=null&amp;&amp;!&quot;STS_COMPLETED&quot;.equals(currentStatusId)" widget-style="buttontext">
             <hyperlink target="EditTask" description="${uiLabelMap.CommonEdit}" link-type="hidden-form" target-window="_BLANK">
                <parameter param-name="taskId" from-field="${workEffortId}"/>
            </hyperlink>
        </field>
        <field name="deleteTaskButton" title=" " position="2" use-when="workEffortId!=null&amp;&amp;!&quot;STS_COMPLETED&quot;.equals(currentStatusId)" widget-style="buttontext">
            <hyperlink target="DeleteTaskFromUnplanBacklog" description="Delete" confirmation-message="Are you sure to delete this task ?" link-type="hidden-form">
                <parameter param-name="workEffortId" from-field="workEffortId"/>
                <parameter param-name="custRequestId"/>
                <parameter param-name="productId" from-field="parameters.productId"/>
            </hyperlink>
        </field>
        <field name="setCompleteButton" title=" " widget-style="buttontext" use-when="workEffortId!=null&amp;&amp;!&quot;STS_COMPLETED&quot;.equals(currentStatusId)"
         position="2">
            <hyperlink target="setCompleteFromUnplanBacklog" description="${uiLabelMap.ScrumSetComplete}" link-type="hidden-form">
                <parameter param-name="workEffortId" from-field="workEffortId"/>
                <parameter param-name="productId" from-field="parameters.productId"/>
            </hyperlink>
        </field>
        <field name="dummy7" title=" " position="2" use-when="workEffortId!=null"><display description=" "/></field>
    </form>
    
    <form name="unplanBacklogListItemsHideDelete" extends="unplanBacklogListItems">
        <field name="planHours" title="${uiLabelMap.ScrumPlannedHours}" position="2" use-when="workEffortId!=null"><display/></field>
        <field name="deleteButton" position="1" use-when="showPosition1"><hidden/></field>
        <field name="deleteTaskButton" position="2" use-when="workEffortId!=null"><hidden/></field>
        <sort-order>
            <sort-field name="custRequestId"/>
            <sort-field name="workEffortId"/>
            <sort-field name="statusId"/>
            <sort-field name="dummy1"/>
            <sort-field name="dummy2"/>
            <sort-field name="dummy4"/>
            <sort-field name="dummy5"/>
            <sort-field name="workEffortTypeId"/>
            <sort-field name="currentStatusId"/>
            <sort-field name="initialPlannedHours"/>
            <sort-field name="planHours"/>
            <sort-field name="newTask"/>
            <sort-field name="dummy3"/>
        </sort-order>
    </form>
    <form name="unplanBacklogListItemsForOwner" extends="unplanBacklogListItems">
        <field name="planHours" title="${uiLabelMap.ScrumPlannedHours}" position="2" use-when="workEffortId!=null"><display/></field>
        <field name="deleteButton" position="1" use-when="showPosition1"><hidden/></field>
        <field name="deleteTaskButton" position="2" use-when="workEffortId!=null"><hidden/></field>
        <field name="setCompleteButton" position="2" use-when="workEffortId!=null"><hidden/></field>
        <field name="editTaskParty" position="2" use-when="workEffortId!=null"><hidden/></field>
        <field name="newTask" use-when="showPosition1&amp;&amp;!&quot;CRQ_COMPLETED&quot;.equals(&quot;${custRequest.statusId}&quot;)"><hidden/></field>
        <sort-order>
            <sort-field name="custRequestId"/>
            <sort-field name="workEffortId"/>
            <sort-field name="statusId"/>
            <sort-field name="dummy4"/>
            <sort-field name="workEffortTypeId"/>
            <sort-field name="currentStatusId"/>
            <sort-field name="initialPlannedHours"/>
            <sort-field name="planHours"/>
            <sort-field name="newTask"/>
            <sort-field name="dummy3"/>
        </sort-order>
    </form>
    <form name="unplannedBacklogListByCategories" extends="ListProdBacklog" list-name="unplanBacklogItems" type="multi">
        <actions>
            <set field="parentCustRequestId" from-field="parameters.parentCustRequestId" default-value=""/>
        </actions> 
        <row-actions>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
            <set field="description" from-field="custRequest.description"/>
            <set field="custRequestCategoryGroupId" from-field="parentCustRequestId"/>
            <set field="estimatedHours" value="${groovy:custEstimatedMilliSeconds!=null?custEstimatedMilliSeconds/3600000:0;}"/>
            <set field="showPosition1" value="${groovy:String prev=(String)previousItem.get(&quot;parentCustRequestId&quot;);return new Boolean(!(prev!=null&amp;&amp;prev.equals(parentCustRequestId)));}" type="Boolean"/>
        </row-actions>
        <!--<field name="custRequestCategoryGroupId" position="1" use-when="${groovy:showPosition1}" title="${uiLabelMap.ScrumCategory}">
            <display-entity entity-name="CustRequest" key-field-name="custRequestId" description="${custRequestName}"/>
        </field>-->
        <field name="submitButton" widget-style="buttontext"><submit button-type="text-link"/></field>
        <field name="setToReview" title="${uiLabelMap.ScrumMoveToUnplannedSprint}" widget-style="buttontext" use-when="&quot;${statusId}&quot;==&quot;CRQ_ACCEPTED&quot;" position="2">
            <hyperlink description="${uiLabelMap.ScrumMoveToUnplannedSprint}" target="setUnplannedSprint">
                <parameter param-name="custRequestId" from-field="custRequest.custRequestId"/>
                <parameter param-name="productId" from-field="parameters.productId"/>
                <parameter param-name="statusId" value="parameters.statusId"/>
            </hyperlink>
        </field>
        <field name="setToReview" title="${uiLabelMap.ScrumMoveToUnplannedSprint}" use-when="&quot;${statusId}&quot;==&quot;CRQ_REVIEWED&quot;" position="2"><hidden /></field>
        <field name="deleteFlag" position="2" title="${uiLabelMap.CommonDelete}"/>
        <field name="dummy1" title="${uiLabelMap.ScrumMoveToUnplannedSprint}" use-when="&quot;${statusId}&quot;==&quot;CRQ_REVIEWED&quot;" position="2"><display description=" "/></field>
    </form>
    <form name="unplannedBacklogListByCategoriesForOwner" extends="unplannedBacklogListByCategories">
        <field name="estimatedHours" position="2" title="${uiLabelMap.ScrumPlannedHours}"><display/></field>
    </form>
    <form name="NewTaskForUnplanBacklog" target="createTaskForUnplanBacklog?productId=${parameters.productId}" extends="EditSprintTask" extends-resource="component://scrum/widget/TaskForms.xml">
        <actions>
            <set field="nullField" type="String"/>
            <service service-name="getScrumPlanHour" result-map="resultMap">
                <field-map field-name="custRequestId" from-field="custRequestId"/>
                <field-map field-name="sprintId" from-field="nullField"/>
            </service>
            <entity-one entity-name="CustRequest" value-field="custRequest"/>
            <set field="hoursLeft" value="${custRequest.custEstimatedMilliSeconds/1000/60/60 - resultMap.planHours}"/>
        </actions>
        <alt-target use-when="task!=null" target="createTaskForUnplanBacklog?productId=${parameters.productId}"/>
        <field name="id"><ignored/></field>
        <field name="taskId"><ignored/></field>
        <field name="workEffortId"><ignored/></field>
        <field name="projectId"><ignored/></field>
        <field name="sprintId"><ignored/></field>
        <field name="UpdateButton"><ignored/></field>
        <field name="createButton"><ignored/></field>
        <field name="partyId">
            <drop-down allow-empty="true">
                <entity-options description="${lastName} ${firstName} ${middleName}" entity-name="ScrumMemberUserLoginAndSecurityGroup" key-field-name="partyId">
                    <entity-constraint name="partyStatusId" operator="not-equals" value="PARTY_DISABLED"/>
                    <entity-constraint name="groupId" operator="equals" value="SCRUM_TEAM"/>
                    <entity-constraint name="enabled" operator="not-equals" value="N"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="custRequestId"><hidden/></field>
        <field name="planHours" title="Plan Hours"><text size="2"/></field>
        <field name="actualHours"><hidden/></field>
        <field name="createButton1" title="${uiLabelMap.CommonCreate}"><submit/></field>
    </form>
    <form name="ListProductRevisions" extends="ListTaskRevisions" extends-resource="component://scrum/widget/TaskForms.xml" paginate-target="ViewProduct" view-size="10">
        <field name="productId"><hidden value="${parameters.productId}"/></field>
    </form>
    <form name="ListBacklogRevisions" extends="ListTaskRevisions" extends-resource="component://scrum/widget/TaskForms.xml" paginate-target="ViewProdBacklogItem" view-size="10">
    </form>
    <form name="FindProductStatistics" type="single" target="ProductStatistics">
        <field name="productId" title="${uiLabelMap.ScrumProductName}">
            <drop-down>
                <entity-options description="${groupName} -- ${internalName}[${productId}]" entity-name="ProductAndRole" key-field-name="productId">
                    <entity-constraint name="supportDiscontinuationDate" operator="equals" value=""/>
                    <entity-constraint name="roleTypeId" value="PRODUCT_OWNER_COMP"/>
                    <entity-order-by field-name="groupName"/>
                    <entity-order-by field-name="internalName"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="submitButton" title="${uiLabelMap.CommonSubmit}"><submit/></field>
    </form>
</forms>
