<?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="ViewProduct" 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>
