applications/workeffort/servicedef/services.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!--
This file is subject to the terms and conditions defined in the
files 'LICENSE' and 'NOTICE', which are part of this source
code package.
-->
<services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/services.xsd">
<description>Common Application Shared WorkEffort Services</description>
<vendor>OFBiz</vendor>
<version>1.0</version>
<!-- WorkEffort services -->
<service name="interfaceWorkEffort" default-entity-name="WorkEffort" engine="interface" location="" invoke="">
<description>WorkEffort Entity Interface</description>
<auto-attributes mode="IN" include="nonpk" optional="true">
<exclude field-name="lastStatusUpdate"/>
<exclude field-name="revisionNumber"/>
<exclude field-name="createdDate"/>
<exclude field-name="createdByUserLogin"/>
<exclude field-name="lastModifiedDate"/>
<exclude field-name="lastModifiedByUserLogin"/>
</auto-attributes>
<override name="workEffortName" allow-html="any"/>
<override name="description" allow-html="any"/>
</service>
<service name="createWorkEffort" default-entity-name="WorkEffort" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffort">
<description>Create a WorkEffort Entity</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<implements service="interfaceWorkEffort"/>
<auto-attributes mode="INOUT" include="pk" optional="true"/>
<attribute name="quickAssignPartyId" type="String" mode="IN" optional="true"/>
<attribute name="requirementId" type="String" mode="IN" optional="true"/>
<attribute name="custRequestId" type="String" mode="IN" optional="true"/>
<attribute name="communicationEventId" type="String" mode="IN" optional="true"/>
<attribute name="webSiteId" type="String" mode="IN" optional="true"/><!-- for notification services -->
<override name="workEffortTypeId" optional="false"/>
<override name="workEffortName" optional="false" allow-html="any"/>
<override name="currentStatusId" optional="false"/>
<override name="description" allow-html="any"/>
</service>
<service name="createWorkEffortAndPartyAssign" default-entity-name="WorkEffort" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortAndPartyAssign">
<description>Create a WorkEffort Entity and assign to a party</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<implements service="interfaceWorkEffort"/>
<auto-attributes mode="INOUT" include="pk" optional="true"/>
<attribute name="partyId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingPartyId"/>
</type-validate>
</attribute>
<attribute name="roleTypeId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingRoleTypeId"/>
</type-validate>
</attribute>
<attribute name="statusId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingStatusId"/>
</type-validate>
</attribute>
<attribute name="quickAssignPartyId" type="String" mode="IN" optional="true"/>
<attribute name="requirementId" type="String" mode="IN" optional="true"/>
<attribute name="communicationEventId" type="String" mode="IN" optional="true"/>
<override name="workEffortTypeId" optional="false"/>
<override name="workEffortName" optional="false"/>
<override name="currentStatusId" optional="false"/>
</service>
<service name="updateWorkEffort" default-entity-name="WorkEffort" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateWorkEffort">
<description>Update a WorkEffort Entity</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<implements service="interfaceWorkEffort"/>
<auto-attributes mode="IN" include="pk" optional="false"/>
<attribute name="communicationEventId" type="String" mode="IN" optional="true"/>
<attribute name="reason" type="String" mode="IN" optional="true"/>
<attribute name="webSiteId" type="String" mode="IN" optional="true"/><!-- for notification services -->
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffort" default-entity-name="WorkEffort" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkEffort">
<description>Delete a WorkEffort Entity</description>
<auto-attributes mode="IN" include="pk" optional="false"/>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="copyWorkEffort" engine="simple" auth="true" transaction-timeout="300"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="copyWorkEffort">
<description>Copies an existing WorkEffort to a new WorkEffort.</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<attribute name="sourceWorkEffortId" mode="IN" type="String" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingSourceWorkEffortId"/>
</type-validate>
<description>The ID of the WorkEffort to copy from.</description>
</attribute>
<attribute name="targetWorkEffortId" mode="IN" type="String" optional="true">
<description>The ID of the WorkEffort copy. If empty a new WorkEffort ID will be created.</description>
</attribute>
<attribute name="copyWorkEffortAssocs" mode="IN" type="String" optional="true">
<description>Copy WorkEffort associations (Y/N). Only child WorkEffort associations will be copied.</description>
</attribute>
<attribute name="deepCopy" mode="IN" type="String" optional="true">
<description>Copy associated WorkEfforts (Y/N). Used only when copyWorkEffortAssocs = Y.</description>
</attribute>
<attribute name="excludeExpiredAssocs" mode="IN" type="String" optional="true">
<description>Exclude expired associated WorkEfforts from copying (Y/N). Used only when copyWorkEffortAssocs = Y.</description>
</attribute>
<attribute name="copyRelatedValues" mode="IN" type="String" optional="true">
<description>Copy WorkEffort related values (Y/N).</description>
</attribute>
<attribute name="excludeExpiredRelations" mode="IN" type="String" optional="true">
<description>Exclude expired WorkEffort related values from copying (Y/N). Used only when copyRelatedValues = Y.</description>
</attribute>
<attribute name="workEffortId" mode="OUT" type="String" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</attribute>
</service>
<service name="duplicateWorkEffort" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="duplicateWorkEffort" auth="true">
<description>Duplicate a Work Effort. If workEffortId is empty a new workEffortId will be generated.
Set the statusId of the new WorkEffort to this status, otherwise, set the status to the first of the
sequenceId of the statusTypeId</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<attribute name="workEffortId" type="String" mode="IN" optional="true"/>
<attribute name="oldWorkEffortId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingOldWorkEffortTypeId"/>
</type-validate>
</attribute>
<attribute name="duplicateWorkEffortAssocs" type="String" mode="IN" optional="true"/>
<attribute name="duplicateWorkEffortContents" type="String" mode="IN" optional="true"/>
<attribute name="duplicateWorkEffortNotes" type="String" mode="IN" optional="true"/>
<attribute name="duplicateWorkEffortAssignmentRates" type="String" mode="IN" optional="true"/>
<attribute name="removeWorkEffortAssocs" type="String" mode="IN" optional="true"/>
<attribute name="removeWorkEffortContents" type="String" mode="IN" optional="true"/>
<attribute name="removeWorkEffortNotes" type="String" mode="IN" optional="true"/>
<attribute name="removeWorkEffortAssignmentRates" type="String" mode="IN" optional="true"/>
<attribute name="workEffortId" type="String" mode="OUT" optional="false"/>
<attribute name="statusId" type="String" mode="IN" optional="true"/>
</service>
<!-- Communication Event WorkEffort -->
<service name="makeCommunicationEventWorkEffort" default-entity-name="WorkEffort" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="makeCommunicationEventWorkEffort" auth="true">
<description>Make a Communication Event Workeffort and create the workeffort itself if the ID not supplied</description>
<auto-attributes include="pk" mode="INOUT" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<attribute name="communicationEventId" type="String" mode="INOUT"/>
<attribute name="relationDescription" type="String" mode="IN" optional="true"/>
</service>
<!-- WorkEffortPartyAssignment services -->
<service name="assignPartyToWorkEffort" default-entity-name="WorkEffortPartyAssignment" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="assignPartyToWorkEffort">
<description>Create a WorkEffortPartyAssignment Entity</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes mode="IN" include="pk" optional="false"/>
<auto-attributes mode="IN" include="nonpk" optional="true">
<exclude field-name="statusDateTime"/>
</auto-attributes>
<override name="fromDate" mode="INOUT" optional="true"/>
<override name="partyId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingPartyId"/>
</type-validate>
</override>
<override name="roleTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingRoleTypeId"/>
</type-validate>
</override>
<override name="statusId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingStatusId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="updatePartyToWorkEffortAssignment" default-entity-name="WorkEffortPartyAssignment" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updatePartyToWorkEffortAssignment">
<description>Update a WorkEffortPartyAssignment Entity</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes mode="IN" include="pk" optional="false"/>
<auto-attributes mode="IN" include="nonpk" optional="true">
<exclude field-name="statusDateTime"/>
</auto-attributes>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="partyId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingPartyId"/>
</type-validate>
</override>
<override name="roleTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingRoleTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deletePartyToWorkEffortAssignment" default-entity-name="WorkEffortPartyAssignment" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deletePartyToWorkEffortAssignment">
<description>delete/set the thrudate on the WorkEffortPartyAssignment Entity to today</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes mode="IN" include="pk" optional="false"/>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="partyId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingPartyId"/>
</type-validate>
</override>
<override name="roleTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingRoleTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="unassignPartyFromWorkEffort" default-entity-name="WorkEffortPartyAssignment" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="unassignPartyFromWorkEffort">
<description>Delete a WorkEffortPartyAssignment Entity</description>
<permission-service service-name="workEffortGenericPermission" main-action="DELETE"/>
<auto-attributes mode="IN" include="pk" optional="false"/>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="partyId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingPartyId"/>
</type-validate>
</override>
<override name="roleTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingRoleTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="quickAssignPartyToWorkEffort" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="quickAssignPartyToWorkEffort">
<description>Quick Assign Party To WorkEffort as Owner</description>
<attribute name="workEffortId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</attribute>
<attribute name="quickAssignPartyId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingQuickAssignPartyId"/>
</type-validate>
</attribute>
</service>
<service name="quickAssignPartyToWorkEffortWithRole" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="quickAssignPartyToWorkEffortWithRole">
<description>Quick Assign Party To WorkEffort as Owner</description>
<attribute name="workEffortId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</attribute>
<attribute name="quickAssignPartyId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingQuickAssignPartyId"/>
</type-validate>
</attribute>
<attribute name="roleTypeId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingRoleTypeId"/>
</type-validate>
</attribute>
</service>
<service name="createWorkEffortNote" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortNote" auth="true">
<description>Create a WorkEffort Note</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<attribute name="workEffortId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</attribute>
<attribute name="noteInfo" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingNoteInfo"/>
</type-validate>
</attribute>
<attribute name="noteParty" type="String" mode="IN" optional="true"/>
<attribute name="noteName" type="String" mode="IN" optional="true"/>
<attribute name="internalNote" type="String" mode="IN" optional="true"/>
<attribute name="noteId" type="String" mode="OUT" optional="false"/>
</service>
<service name="updateWorkEffortNote" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateWorkEffortNote" auth="true">
<description>Update a WorkEffort Note</description>
<attribute name="workEffortId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</attribute>
<attribute name="noteId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingNoteInfo"/>
</type-validate>
</attribute>
<attribute name="internalNote" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldInternalNote"/>
</type-validate>
</attribute>
<attribute name="noteInfo" type="String" mode="IN" optional="true"/>
</service>
<!-- Services for finding Assigned WorkEfforts -->
<service name="getWorkEffortAssignedEventsForRole" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="getWorkEffortAssignedEventsForRole" >
<description>Get the active WorkEffort Events where the logged in user is assigned in the specidied role.</description>
<attribute name="createdPeriod" type="String" mode="IN" optional="true"/>
<attribute name="roleTypeId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingRoleTypeId"/>
</type-validate>
</attribute>
<attribute name="events" type="java.util.List" mode="OUT" optional="false"/>
</service>
<service name="getWorkEffortAssignedEventsForRoleOfAllParties" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="getWorkEffortAssignedEventsForRoleOfAllParties">
<description>Get the active WorkEffort Events in the specified role for all the parties.</description>
<attribute name="createdPeriod" type="String" mode="IN" optional="true"/>
<attribute name="roleTypeId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingRoleTypeId"/>
</type-validate>
</attribute>
<attribute name="events" type="java.util.List" mode="OUT" optional="false"/>
</service>
<service name="getWorkEffortAssignedTasks" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="getWorkEffortAssignedTasks">
<description>Get WorkEffort Assigned Tasks : workEffort assign to userLogin.partyId and with
workEffortTypeId = TASK and currentStatusId not in (CAL_DECLINED, CAL_DELEGATED, CAL_COMPLETED, CAL_CANCELLED) and partyAssign.statusId != PRTYASGN_UNASSIGNED
OR workEffortTypeId = PROD_ORDER_TASK and currentStatusId not in (PRUN_CANCELLED, PRUN_COMPLETED, PRUN_CLOSED)</description>
<attribute name="createdPeriod" type="String" mode="IN" optional="true"/>
<attribute name="tasks" type="java.util.List" mode="OUT" optional="false"/>
</service>
<service name="getWorkEffortAssignedActivities" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="getWorkEffortAssignedActivities">
<description>Get WorkEffort Assigned Activities : workEffort assign to userLogin.partyId and with
workEffortTypeId = ACTIVITY and currentStatusId not in (WF_COMPLETED, WF_TERMINATED, WF_ABORTED)
and partyAssign.statusId not in (CAL_DECLINED, CAL_DELEGATED, CAL_COMPLETED, CAL_CANCELLED, PRTYASGN_UNASSIGNED)</description>
<attribute name="createdPeriod" type="String" mode="IN" optional="true"/>
<attribute name="activities" type="java.util.List" mode="OUT" optional="false"/>
</service>
<service name="getWorkEffortAssignedActivitiesByRole" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="getWorkEffortAssignedActivitiesByRole">
<description>Get WorkEffort Assigned Activities By Role : same condition as getWorkEffortAssignedActivities but on view WorkEffortPartyAssignByRole
to be able to have all party roles</description>
<attribute name="createdPeriod" type="String" mode="IN" optional="true"/>
<attribute name="roleActivities" type="java.util.List" mode="OUT" optional="false"/>
</service>
<service name="getWorkEffortAssignedActivitiesByGroup" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="getWorkEffortAssignedActivitiesByGroup">
<description>Get WorkEffort Assigned Activities By Group : same condition as getWorkEffortAssignedActivities but on view WorkEffortPartyAssignByGroup
to be able to have all parties associated to userLogin.partyId by PartyRelationship</description>
<attribute name="createdPeriod" type="String" mode="IN" optional="true"/>
<attribute name="groupActivities" type="java.util.List" mode="OUT" optional="false"/>
</service>
<!-- SCIPIO: New services for finding completed WorkEfforts -->
<service name="getWorkEffortCompletedTasks" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="getWorkEffortCompletedTasks">
<description>Get WorkEffort Completed Tasks : workEffort assign to userLogin.partyId and with
workEffortTypeId = TASK and currentStatusId in (CAL_DECLINED, CAL_DELEGATED, CAL_COMPLETED, CAL_CANCELLED)
OR workEffortTypeId = PROD_ORDER_TASK and currentStatusId in (PRUN_CANCELLED, PRUN_COMPLETED, PRUN_CLOSED)</description>
<attribute name="createdPeriod" type="String" mode="IN" optional="true"/>
<attribute name="tasks" type="java.util.List" mode="OUT" optional="false"/>
</service>
<service name="getWorkEffortCompletedActivities" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="getWorkEffortCompletedActivities">
<description>Get WorkEffort Completed Activities : workEffort assign to userLogin.partyId and with
workEffortTypeId = ACTIVITY and partyAssign.statusId in (WF_COMPLETED, WF_TERMINATED, WF_ABORTED)
and currentStatusId in (CAL_DECLINED, CAL_DELEGATED, CAL_COMPLETED, CAL_CANCELLED, PRTYASGN_UNASSIGNED)</description>
<attribute name="createdPeriod" type="String" mode="IN" optional="true"/>
<attribute name="activities" type="java.util.List" mode="OUT" optional="false"/>
</service>
<!-- Worker services -->
<service name="getWorkEffort" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="getWorkEffort">
<description>Get WorkEffort</description>
<attribute name="workEffortId" type="java.lang.String" mode="INOUT" optional="true"/>
<attribute name="currentStatusId" type="java.lang.String" mode="IN" optional="true"/>
<attribute name="workEffort" type="org.ofbiz.entity.GenericValue" mode="OUT" optional="true"/>
<attribute name="canView" type="java.lang.Boolean" mode="OUT" optional="true"/>
<attribute name="tryEntity" type="java.lang.Boolean" mode="OUT" optional="true"/>
<attribute name="currentStatusItem" type="org.ofbiz.entity.GenericValue" mode="OUT" optional="true"/>
<attribute name="partyAssigns" type="java.util.Collection" mode="OUT" optional="true"/>
</service>
<service name="getWorkEffortEventsByPeriod" auth="true" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="getWorkEffortEventsByPeriod">
<description>Get WorkEffort Events by a period specified by periodType attribute (one of the
java.util.Calendar field values). Return a Map with periodStart as the key and a Collection of events for that period as value
If filterOutCanceledEvents is set to Boolean(true) then workEfforts with currentStatusId=EVENT_CANCELLED will not be returned.
To limit the events to a particular partyId, specify the partyId. To limit the events to a set of partyIds, specify a Collection of partyIds.
</description>
<attribute name="calendarType" type="String" mode="IN" optional="true">
<description>Can be either CAL_PERSONAL or CAL_MANUFACTURING, defaults to CAL_PERSONAL. The value controls the type of work efforts
returned. To bypass this behavior, use an invalid value (like VOID).</description>
</attribute>
<attribute name="partyId" type="String" mode="IN" optional="true"/>
<attribute name="partyIds" type="java.util.Collection" mode="IN" optional="true"/>
<attribute name="facilityId" type="String" mode="IN" optional="true"/>
<attribute name="fixedAssetId" type="String" mode="IN" optional="true"/>
<attribute name="workEffortTypeId" type="String" mode="IN" optional="true"/>
<attribute name="start" type="java.sql.Timestamp" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingStart"/>
</type-validate>
</attribute>
<attribute name="numPeriods" type="java.lang.Integer" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingNumPeriods"/>
</type-validate>
</attribute>
<attribute name="periodType" type="java.lang.Integer" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingNumPeriodType"/>
</type-validate>
</attribute>
<attribute name="filterOutCanceledEvents" type="java.lang.Boolean" mode="IN" optional="true"/>
<attribute name="entityExprList" type="java.util.List" mode="IN" optional="true"/>
<attribute name="periods" type="java.util.List" mode="OUT" optional="false"/>
<attribute name="maxConcurrentEntries" type="java.lang.Integer" mode="OUT" optional="false"/>
</service>
<service name="removeDuplicateWorkEfforts" auth="true" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="removeDuplicateWorkEfforts">
<description>Removes duplicate work efforts from a list of work efforts.</description>
<attribute name="workEffortIterator" type="java.util.ListIterator" mode="IN" optional="true"/>
<attribute name="workEfforts" type="java.util.List" mode="INOUT" optional="true"/>
</service>
<service name="getProductManufacturingSummaryByFacility" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="getProductManufacturingSummaryByFacility">
<description>
Create a map with an entry for each facility. The value is another map with information about
the manufacturing orders running in the facility for the given product:
incoming - incomingProductionRunList, estimatedQuantityTotal. Shows quantity of product to be produced.
outgoing - outgoingProductionRunList, estimatedQuantityTotal. Shows quantity of product to be consumed.
</description>
<attribute name="productId" type="String" mode="IN" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingProductId"/>
</type-validate>
</attribute>
<attribute name="facilityId" type="String" mode="IN" optional="true"/>
<attribute name="summaryInByFacility" type="Map" mode="OUT" optional="false"/>
<attribute name="summaryOutByFacility" type="Map" mode="OUT" optional="false"/>
</service>
<service name="createWorkEffortAssoc" default-entity-name="WorkEffortAssoc" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortAssoc">
<description>
Create a WorkEffort Assoc, for linking task to describe a project or
for linking routing with its routingTasks
</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="INOUT" optional="false"/><!-- SCIPIO: 2018-05-02: added mode="INOUT" to read back fromDate -->
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="workEffortAssocTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortAssocTypeId"/>
</type-validate>
</override>
<override name="workEffortIdFrom" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortIdFrom"/>
</type-validate>
</override>
<override name="workEffortIdTo" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortIdTo"/>
</type-validate>
</override>
<override name="fromDate" optional="true" mode="INOUT"/>
</service>
<service name="updateWorkEffortAssoc" default-entity-name="WorkEffortAssoc" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateWorkEffortAssoc">
<description>
Update a WorkEffort Assoc, for linking task to describe a project or
for linking routing with its routingTasks
</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="workEffortAssocTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortAssocTypeId"/>
</type-validate>
</override>
<override name="workEffortIdFrom" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortIdFrom"/>
</type-validate>
</override>
<override name="workEffortIdTo" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortIdTo"/>
</type-validate>
</override>
</service>
<service name="removeWorkEffortAssoc" engine="simple" default-entity-name="WorkEffortAssoc"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="removeWorkEffortAssoc">
<description>
Remove a WorkEffort Assoc, for linking task to describe a project or
for linking routing with its routingTasks
</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="workEffortAssocTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortAssocTypeId"/>
</type-validate>
</override>
<override name="workEffortIdFrom" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortIdFrom"/>
</type-validate>
</override>
<override name="workEffortIdTo" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortIdTo"/>
</type-validate>
</override>
</service>
<service name="copyWorkEffortAssocs" engine="simple" auth="true" transaction-timeout="300"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="copyWorkEffortAssocs">
<description>Copies WorkEffortAssocs from one WorkEffort to another WorkEffort. Only child WorkEffort associations will be copied.</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<attribute name="sourceWorkEffortId" mode="IN" type="String" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingSourceWorkEffortId"/>
</type-validate>
<description>The ID of the WorkEffort to copy the associations from.</description>
</attribute>
<attribute name="targetWorkEffortId" mode="IN" type="String" optional="true">
<description>The ID of the WorkEffort to copy the associations to.</description>
</attribute>
<attribute name="deepCopy" mode="IN" type="String" optional="true">
<description>Copy associated WorkEfforts (Y/N).</description>
</attribute>
<attribute name="excludeExpiredAssocs" mode="IN" type="String" optional="true">
<description>Exclude expired WorkEffort associations from copying (Y/N).</description>
</attribute>
<attribute name="copyRelatedValues" mode="IN" type="String" optional="true">
<description>Copy WorkEffort related values (Y/N). Used only when deepCopy = Y.</description>
</attribute>
<attribute name="excludeExpiredRelations" mode="IN" type="String" optional="true">
<description>Exclude expired WorkEffort related values from copying (Y/N). Used only when deepCopy = Y.</description>
</attribute>
</service>
<service name="createWorkEffortAndAssoc" engine="simple" location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortAndAssoc" auth="true">
<description>Creates a WorkEffort entity and WorkEffortAssoc</description>
<auto-attributes include="pk" mode="INOUT" optional="true" entity-name="WorkEffort"/>
<auto-attributes include="nonpk" mode="IN" optional="true" entity-name="WorkEffort"/>
<auto-attributes include="pk" mode="INOUT" optional="false" entity-name="WorkEffortAssoc"/>
<auto-attributes include="nonpk" mode="IN" optional="true" entity-name="WorkEffortAssoc"/>
<attribute name="quickAssignPartyId" type="String" mode="IN" optional="true"/>
<override name="workEffortIdTo" optional="true"/>
<override name="fromDate" optional="true"/>
<override name="currentStatusId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingCurrentStatusId"/>
</type-validate>
</override>
<override name="workEffortName" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortName"/>
</type-validate>
</override>
<override name="workEffortAssocTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortAssocTypeId"/>
</type-validate>
</override>
<override name="workEffortIdFrom" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortIdFrom"/>
</type-validate>
</override>
<override name="workEffortTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortTypeId"/>
</type-validate>
</override>
</service>
<service name="updateWorkEffortAndAssoc" engine="group" location="updateWorkEffortAndAssoc" invoke="" auth="true">
<description>Creates a WorkEffort entity and WorkEffortAssoc</description>
<auto-attributes include="pk" mode="INOUT" optional="true" entity-name="WorkEffort"/>
<auto-attributes include="nonpk" mode="IN" optional="true" entity-name="WorkEffort"/>
<auto-attributes include="pk" mode="INOUT" optional="true" entity-name="WorkEffortAssoc"/>
<auto-attributes include="nonpk" mode="IN" optional="true" entity-name="WorkEffortAssoc"/>
</service>
<service name="createWorkEffortGoodStandard" engine="simple" default-entity-name="WorkEffortGoodStandard"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortGoodStandard">
<description>
Create a WorkEffort - Product Assoc, for linking WorkEffort to In or Out Product,
for routing it's the link between Manufactured Product with its routings
</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fromDate" optional="true"/>
<override name="productId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingProductId"/>
</type-validate>
</override>
<override name="workEffortGoodStdTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortGoodStdTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
<override name="estimatedQuantity" type-convert="true"/><!-- SCIPIO: Support any type that converts to Double -->
</service>
<service name="updateWorkEffortGoodStandard" engine="simple" default-entity-name="WorkEffortGoodStandard"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateWorkEffortGoodStandard">
<description>
Update a WorkEffort - Product Assoc, for linking WorkEffort to In or Out Product,
for routing it's the link between Manufactured Product with its routings
</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="productId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingProductId"/>
</type-validate>
</override>
<override name="workEffortGoodStdTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortGoodStdTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
<override name="estimatedQuantity" type-convert="true"/><!-- SCIPIO: Support any type that converts to Double -->
</service>
<service name="removeWorkEffortGoodStandard" engine="simple" default-entity-name="WorkEffortGoodStandard"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="removeWorkEffortGoodStandard">
<description>Remove a WorkEffort - Product Assoc, for linking WorkEffort to In or Out Product,
for routing it's the link between Manufactured Product with its routings
</description>
<auto-attributes include="pk" mode="IN" optional="false"/>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="productId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingProductId"/>
</type-validate>
</override>
<override name="workEffortGoodStdTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortGoodStdTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="assignInventoryToWorkEffort" default-entity-name="WorkEffortInventoryAssign" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="assignInventoryToWorkEffort" auth="true">
<description>Create or update WorkEffortInventoryAssign</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="inventoryItemId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingInventoryItemId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
<override name="quantity" type-convert="true"/><!-- SCIPIO: improper ofbiz interface usage compatibility workaround -->
</service>
<service name="createCommunicationEventWorkEff" engine="simple" location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="makeCommunicationEventWorkEffort" auth="true">
<description>Creates a CommunicationEvent entity and CommunicationEventWorkEff</description>
<auto-attributes include="pk" mode="INOUT" optional="true" entity-name="CommunicationEvent"/>
<auto-attributes include="nonpk" mode="IN" optional="true" entity-name="CommunicationEvent"/>
<auto-attributes include="pk" mode="INOUT" optional="true" entity-name="CommunicationEventWorkEff"/>
<auto-attributes include="nonpk" mode="IN" optional="true" entity-name="CommunicationEventWorkEff"/>
</service>
<service name="updateCommunicationEventWorkEff" engine="simple" location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateCommunicationEventWorkEff" auth="true">
<description>Updates CommunicationEventWorkEff</description>
<permission-service service-name="workEffortManagerPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="CommunicationEventWorkEff"/>
<auto-attributes include="nonpk" mode="IN" optional="true" entity-name="CommunicationEventWorkEff"/>
<override name="communicationEventId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingCommunicationEventId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteCommunicationEventWorkEff" engine="simple" location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteCommunicationEventWorkEff" auth="true">
<description>Deletes CommunicationEventWorkEff</description>
<permission-service service-name="workEffortManagerPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="CommunicationEventWorkEff"/>
<override name="communicationEventId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingCommunicationEventId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="createWorkEffortRequest" engine="simple" location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortRequest" auth="true">
<description>Creates a CustRequestWorkEffort</description>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="CustRequestWorkEffort"/>
<auto-attributes include="all" mode="IN" optional="true" entity-name="CustRequest"/>
<override name="custRequestId" optional="true" mode="INOUT">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingCustRequestId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
<override name="description" allow-html="any"/>
</service>
<service name="deleteWorkEffortRequest" engine="simple" location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkEffortRequest" auth="true">
<description>Deletes a CustRequestWorkEffort</description>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="CustRequestWorkEffort"/>
<override name="custRequestId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingCustRequestId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="createWorkEffortRequestItemAndRequestItem" engine="group" location="createWorkEffortRequestItemAndRequestItem" invoke="" auth="true">
<description>Creates a CustRequestItem entity and CustRequestItemWorkEffort</description>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="CustRequestItemWorkEffort"/>
<auto-attributes include="all" mode="IN" optional="true" entity-name="CustRequestItem"/>
<attribute name="custRequestItemExists" type="java.lang.String" mode="OUT" optional="true"/>
<override name="custRequestId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingCustRequestId"/>
</type-validate>
</override>
<override name="custRequestItemSeqId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingCustRequestItemSeqId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="createWorkEffortRequestItem" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortRequestItem" auth="true">
<description>Creates a CustRequestItemWorkEffort</description>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="CustRequestItemWorkEffort"/>
<auto-attributes include="all" mode="IN" optional="true" entity-name="CustRequestItem"/>
<attribute name="custRequestItemExists" type="java.lang.String" mode="IN" optional="true"/>
<override name="custRequestId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingCustRequestId"/>
</type-validate>
</override>
<override name="custRequestItemSeqId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingCustRequestItemSeqId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortRequestItem" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkEffortRequestItem" auth="true">
<description>Deletes a CustRequestItemWorkEffort</description>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="CustRequestItemWorkEffort"/>
<override name="custRequestId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingCustRequestId"/>
</type-validate>
</override>
<override name="custRequestItemSeqId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingCustRequestItemSeqId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="checkCustRequestItemExists" engine="simple" location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="checkCustRequestItemExists" auth="true">
<description>Checks to see if a CustRequestItem exists</description>
<auto-attributes include="pk" mode="IN" optional="true" entity-name="CustRequestItem"/>
<attribute name="custRequestItemExists" type="java.lang.String" mode="OUT" optional="true"/>
</service>
<service name="createWorkEffortQuote" engine="simple" location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortQuote" auth="true">
<description>Creates a QuoteWorkEffort</description>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="QuoteWorkEffort"/>
<auto-attributes include="all" mode="IN" optional="true" entity-name="Quote"/>
<override name="quoteId" optional="false" mode="INOUT">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingQuoteId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortQuote" default-entity-name="QuoteWorkEffort" engine="simple" auth="true"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkEffortQuote">
<description>Deletes a QuoteWorkEffort</description>
<auto-attributes include="pk" mode="IN" optional="false"/>
<override name="quoteId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingQuoteId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="createWorkRequirementFulfillment" engine="simple" auth="true"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkRequirementFulfillment">
<description>Creates a WorkRequirementFulfillment</description>
<auto-attributes include="pk" mode="IN" optional="true" entity-name="WorkRequirementFulfillment"/>
<auto-attributes include="nonpk" mode="IN" optional="true" entity-name="WorkRequirementFulfillment"/>
<auto-attributes include="all" mode="IN" optional="true" entity-name="Requirement"/>
<!-- SCIPIO: 2018-09-10: TODO: REVIEW: upstream set these to optional="false", which are really optional?
<override name="workEffortId" optional="true">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
<override name="requirementId" optional="true">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingRequirementId"/>
</type-validate>
</override>
-->
</service>
<service name="deleteWorkRequirementFulfillment" engine="simple" auth="true"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkRequirementFulfillment">
<description>Deletes a WorkRequirementFulfillment</description>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="WorkRequirementFulfillment"/>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
<override name="requirementId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingRequirementId"/>
</type-validate>
</override>
</service>
<service name="createShoppingListWorkEffort" engine="simple" location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createShoppingListWorkEffort" auth="true">
<description>Creates a ShoppingListWorkEffort</description>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="ShoppingListWorkEffort"/>
<auto-attributes include="nonpk" mode="IN" optional="true" entity-name="ShoppingListWorkEffort"/>
<auto-attributes include="all" mode="IN" optional="true" entity-name="ShoppingList"/>
<override name="shoppingListId" optional="true" mode="INOUT"/>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteShoppingListWorkEffort" engine="simple" location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteShoppingListWorkEffort" auth="true">
<description>Deletes a ShoppingListWorkEffort</description>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="ShoppingListWorkEffort"/>
<override name="shoppingListId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingShoppingListId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="createOrderHeaderWorkEffort" engine="simple" auth="true"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createOrderHeaderWorkEffort">
<description>Creates a OrderHeaderWorkEffort</description>
<auto-attributes include="pk" mode="IN" optional="false" entity-name="OrderHeaderWorkEffort"/>
<auto-attributes include="nonpk" mode="IN" optional="true" entity-name="OrderHeaderWorkEffort"/>
<auto-attributes include="all" mode="IN" optional="true" entity-name="OrderHeader"/>
<override name="orderId" optional="true" mode="INOUT"/>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteOrderHeaderWorkEffort" default-entity-name="OrderHeaderWorkEffort" engine="simple" auth="true"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteOrderHeaderWorkEffort">
<description>Deletes a OrderHeaderWorkEffort</description>
<auto-attributes include="pk" mode="IN" optional="false"/>
<override name="orderId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingOrderId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="setWorkEffortFixedAssetAssign" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="setWorkEffortFixedAssetAssign" auth="true">
<description>Based on task's estimate dates, write assign entries for the fixed asset the task is assigned to</description>
<attribute mode="IN" name="workEffortId" optional="false" type="String">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</attribute>
</service>
<!-- WorkEffort-FixedAsset management services -->
<service name="createWorkEffortFixedAssetStd" engine="simple" auth="true"
default-entity-name="WorkEffortFixedAssetStd"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml"
invoke="createWorkEffortFixedAssetStd">
<description>Creates a WorkEffortFixedAssetStd entry to associate a routing task
with a fixed asset (type)</description>
<permission-service service-name="workEffortManagerPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fixedAssetTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFixedAssetTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="updateWorkEffortFixedAssetStd" engine="simple" auth="true"
default-entity-name="WorkEffortFixedAssetStd"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml"
invoke="updateWorkEffortFixedAssetStd">
<description>Updates an existing WorkEffortFixedAssetStd entry</description>
<permission-service service-name="workEffortManagerPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fixedAssetTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFixedAssetTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="removeWorkEffortFixedAssetStd" engine="simple" auth="true"
default-entity-name="WorkEffortFixedAssetStd"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml"
invoke="removeWorkEffortFixedAssetStd">
<description>Removes a WorkEffortFixedAssetStd, thus removing the association between a routing task
and a fixed asset (type)</description>
<permission-service service-name="workEffortManagerPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<override name="fixedAssetTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFixedAssetTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="createWorkEffortFixedAssetAssign" engine="simple" auth="true"
default-entity-name="WorkEffortFixedAssetAssign"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml"
invoke="createWorkEffortFixedAssetAssign">
<description>Create a WorkEffortFixedAssetAssign entry to associate a fixed asset
with a work effort (e.g. a production run task)</description>
<permission-service service-name="workEffortManagerPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fromDate" optional="true" mode="IN"/>
<override name="fixedAssetId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFixedAssetId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="updateWorkEffortFixedAssetAssign" engine="simple" auth="true"
default-entity-name="WorkEffortFixedAssetAssign"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml"
invoke="updateWorkEffortFixedAssetAssign">
<description>Update an existing WorkEffortFixedAssetAssign entry</description>
<permission-service service-name="workEffortManagerPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fixedAssetId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFixedAssetId"/>
</type-validate>
</override>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="removeWorkEffortFixedAssetAssign" engine="simple" auth="true"
default-entity-name="WorkEffortFixedAssetAssign"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml"
invoke="removeWorkEffortFixedAssetAssign">
<description>Remove a WorkEffortFixedAssign entry, which removes the association between a fixed asset
and a work effort (e.g. a production run task)</description>
<permission-service service-name="workEffortManagerPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<override name="fixedAssetId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFixedAssetId"/>
</type-validate>
</override>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<!-- work effort content services -->
<service name="createWorkEffortContent" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml"
invoke="createWorkEffortContent"
default-entity-name="WorkEffortContent" auth="true">
<description>Create a Work Effort Content</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fromDate" optional="true"/>
<override name="contentId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingContentId"/>
</type-validate>
</override>
<override name="workEffortContentTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortContentTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="updateWorkEffortContent" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml"
invoke="updateWorkEffortContent"
default-entity-name="WorkEffortContent" auth="true">
<description>Update a Work Effort Content</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="contentId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingContentId"/>
</type-validate>
</override>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="workEffortContentTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortContentTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortContent" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml"
invoke="deleteWorkEffortContent"
default-entity-name="WorkEffortContent" auth="true">
<description>Delete a Work Effort Content</description>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="contentId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingContentId"/>
</type-validate>
</override>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="workEffortContentTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortContentTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<!-- simple use content services -->
<service name="createWorkEffortTextContent" engine="group" transaction-timeout="300" auth="true">
<description>Creates a Text Document DataResource and Content Records</description>
<group>
<invoke name="createTextContent" result-to-context="true"/>
<invoke name="createWorkEffortContent"/>
</group>
</service>
<service name="updateWorkEffortTextContent" engine="group" transaction-timeout="300" auth="true">
<description>Update a Text Document DataResource and Content Records</description>
<group>
<invoke name="updateTextContent" result-to-context="true"/>
<invoke name="updateWorkEffortContent"/>
</group>
</service>
<service name="uploadWorkEffortContentFile" engine="group" transaction-timeout="300">
<description>Upload and attach a file to a WorkEffort</description>
<group>
<invoke name="createContentFromUploadedFile" result-to-context="true"/>
<invoke name="createWorkEffortContent"/>
</group>
</service>
<!-- work effort review services -->
<service name="createWorkEffortReview" default-entity-name="WorkEffortReview" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortReview" auth="true">
<description>Create a Work Effort Review</description>
<permission-service service-name="workEffortManagerPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="true"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="updateWorkEffortReview" default-entity-name="WorkEffortReview" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateWorkEffortReview" auth="true">
<description>Update a Work Effort Review</description>
<permission-service service-name="workEffortManagerPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="reviewDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingReviewDate"/>
</type-validate>
</override>
<override name="userLoginId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingUserLoginId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortReview" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkEffortReview" auth="true">
<description>Remove a Work Effort Review</description>
<permission-service service-name="workEffortManagerPermission" main-action="DELETE"/>
<auto-attributes entity-name="WorkEffortReview" include="pk" mode="IN" optional="false"/>
<override name="reviewDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingReviewDate"/>
</type-validate>
</override>
<override name="userLoginId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingUserLoginId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="indexWorkEffortKeywords" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="indexWorkEffortKeywords">
<description>Index the Keywords for a WorkEffort</description>
<attribute name="workEffortId" type="String" mode="IN" optional="false"/>
<attribute name="workEffortInstance" type="org.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="createWorkEffortKeyword" default-entity-name="WorkEffortKeyword" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortKeyword" auth="true">
<description>Create a Work Effort Keyword</description>
<permission-service service-name="workEffortManagerPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="keyword" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingKeyword"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortKeyword" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkEffortKeyword" auth="true">
<description>Remove a Work Effort Keyword</description>
<permission-service service-name="workEffortManagerPermission" main-action="DELETE"/>
<auto-attributes entity-name="WorkEffortKeyword" include="pk" mode="IN" optional="false"/>
<override name="keyword" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingKeyword"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="createWorkEffortKeywords" default-entity-name="WorkEffortKeyword" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortKeywords" auth="true">
<description>Create a Work Effort Keyword</description>
<permission-service service-name="workEffortManagerPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="keyword" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingKeyword"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortKeywords" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkEffortKeywords" auth="true">
<description>Remove all Work Effort Keyword</description>
<permission-service service-name="workEffortManagerPermission" main-action="DELETE"/>
<auto-attributes entity-name="WorkEffort" include="pk" mode="IN" optional="false"/>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<!-- Permission Services -->
<service name="workEffortManagerPermission" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/permission/WorkEffortPermissionServices.xml" invoke="workEffortManagerPermission">
<implements service="permissionInterface"/>
</service>
<service name="workEffortGenericPermission" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/permission/WorkEffortPermissionServices.xml" invoke="workEffortGenericPermission">
<implements service="permissionInterface"/>
<attribute name="workEffortId" mode="IN" type="String" optional="true"/>
<attribute name="workEffortParentId" mode="IN" type="String" optional="true"/>
</service>
<service name="timesheetUpdatePermission" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/permission/WorkEffortPermissionServices.xml" invoke="timesheetUpdatePermission">
<implements service="permissionInterface"/>
<attribute name="workEffortId" mode="IN" type="String" optional="true"></attribute>
</service>
<!-- WorkEffort Skill Standard Services -->
<service name="createWorkEffortSkillStandard" engine="simple" default-entity-name="WorkEffortSkillStandard"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortSkillStandard" auth="true">
<description>Create WorkEffortSkillStandard</description>
<auto-attributes mode="IN" include="pk" optional="false"/>
<auto-attributes mode="IN" include="nonpk" optional="true"/>
<override name="skillTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingSkillTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="updateWorkEffortSkillStandard" engine="simple" default-entity-name="WorkEffortSkillStandard"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateWorkEffortSkillStandard" auth="true">
<description>Update WorkEffortSkillStandard</description>
<auto-attributes mode="IN" include="pk" optional="false"/>
<auto-attributes mode="IN" include="nonpk" optional="true"/>
<override name="skillTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingSkillTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortSkillStandard" engine="simple" default-entity-name="WorkEffortSkillStandard"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkEffortSkillStandard" auth="true">
<description>Delete WorkEffortSkillStandard</description>
<auto-attributes mode="IN" include="pk" optional="false"/>
<override name="skillTypeId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingSkillTypeId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<!-- WorkEffort Attribute Services -->
<service name="createWorkEffortAttribute" default-entity-name="WorkEffortAttribute" engine="entity-auto" invoke="create" auth="true">
<description>Create a WorkEffort Attribute</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="attrName" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingAttrName"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="updateWorkEffortAttribute" default-entity-name="WorkEffortAttribute" engine="entity-auto" invoke="update" auth="true">
<description>Update a WorkEffort Attribute</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="attrName" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingAttrName"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortAttribute" default-entity-name="WorkEffortAttribute" engine="entity-auto" invoke="delete" auth="true">
<description>Delete a WorkEffort Attribute</description>
<permission-service service-name="workEffortGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<override name="attrName" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingAttrName"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<!-- WorkEffort Contact Mech Services -->
<service name="createWorkEffortContactMech" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortContactMech" auth="true">
<description>Create WorkEffortContactMech; if contactMechId is not provided, a new contact mech is created (if partyId is set then the new contact mech is also associated to the party)</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<auto-attributes entity-name="WorkEffortContactMech" mode="IN" include="nonpk" optional="true"/>
<auto-attributes entity-name="PartyContactMech" include="all" mode="IN" optional="true"/>
<attribute name="workEffortId" mode="IN" type="String" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</attribute>
<attribute name="contactMechTypeId" mode="IN" type="String" optional="true"/>
<attribute name="infoString" mode="IN" type="String" optional="true"></attribute>
<attribute name="contactMechPurposeTypeId" type="String" mode="IN" optional="true"/>
<attribute name="contactMechId" type="String" mode="INOUT" optional="true"/>
</service>
<service name="updateWorkEffortContactMech" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateWorkEffortContactMech" auth="true">
<description>Update WorkEffortContactMech</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes entity-name="WorkEffortContactMech" mode="IN" include="nonpk" optional="true"/>
<auto-attributes entity-name="PartyContactMech" include="all" mode="IN" optional="true"/>
<attribute name="workEffortId" mode="IN" type="String" optional="false"></attribute>
<attribute name="contactMechTypeId" mode="IN" type="String" optional="true"></attribute>
<attribute name="infoString" mode="IN" type="String" optional="true"></attribute>
<attribute name="contactMechPurposeTypeId" type="String" mode="IN" optional="true"/>
<attribute name="newContactMechId" type="String" mode="IN" optional="true"/>
<attribute name="contactMechId" type="String" mode="INOUT" optional="true"/>
</service>
<service name="deleteWorkEffortContactMech" engine="simple" default-entity-name="WorkEffortContactMech"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkEffortContactMech" auth="true">
<description>Delete WorkEffortContactMech</description>
<permission-service service-name="workEffortGenericPermission" main-action="DELETE"/>
<auto-attributes mode="IN" include="pk" optional="false"/>
</service>
<service name="createWorkEffortPostalAddress" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortPostalAddress">
<description>Create WorkEffort PostalAddress</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<implements service="createPostalAddress"/>
<implements service="createPartyPostalAddress"/>
<implements service="createWorkEffortContactMech"/>
</service>
<service name="updateWorkEffortPostalAddress" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateWorkEffortPostalAddress">
<description>Update WorkEffort PostalAddress</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<implements service="updatePostalAddress"/>
<implements service="updateWorkEffortContactMech"/>
</service>
<service name="createWorkEffortTelecomNumber" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortTelecomNumber">
<description>Create WorkEffort TelecomNumber</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<implements service="createTelecomNumber"/>
<implements service="createPartyTelecomNumber"/>
<implements service="createWorkEffortContactMech"/>
</service>
<service name="updateWorkEffortTelecomNumber" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateWorkEffortTelecomNumber">
<description>Update WorkEffort TelecomNumber</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<implements service="updateTelecomNumber"/>
<implements service="updateWorkEffortContactMech"/>
</service>
<service name="createWorkEffortEmailAddress" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortEmailAddress">
<description>Create WorkEffort Email Address</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<implements service="createWorkEffortContactMech"/>
</service>
<service name="updateWorkEffortEmailAddress" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateWorkEffortEmailAddress">
<description>Update WorkEffort Email Address</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<implements service="updateWorkEffortContactMech"/>
</service>
<!--WorkEffortInventoryProduced Services -->
<service name="createWorkEffortInventoryProduced" engine="simple" default-entity-name="WorkEffortInventoryProduced"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortInventoryProduced" auth="true">
<description>Create WorkEffortInventoryProduced</description>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="false"/>
<override name="inventoryItemId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingInventoryItemId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortInventoryProduced" engine="simple" default-entity-name="WorkEffortInventoryProduced"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkEffortInventoryProduced" auth="true">
<description>Delete WorkEffortInventoryProduced</description>
<auto-attributes mode="IN" include="pk" optional="false"/>
<!-- SCIPIO: 2018-09-10: TODO: REVIEW: from upstream, but field does not exist
<override name="contactMechId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingContactMechId"/>
</type-validate>
</override>
-->
<!-- SCIPIO: 2018-09-10: TODO: REVIEW: from upstream, but no fromDate on WorkEffortInventoryProduced currently
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
-->
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
<override name="inventoryItemId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingInventoryItemId"/>
</type-validate>
</override>
</service>
<!-- WorkEffort iCalendar Services -->
<service name="createWorkEffortICalData" default-entity-name="WorkEffortIcalData" engine="entity-auto" invoke="create" auth="true">
<description>Create WorkEffort iCalendar Data</description>
<permission-service service-name="workEffortICalendarPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="updateWorkEffortICalData" default-entity-name="WorkEffortIcalData" engine="entity-auto" invoke="update" auth="true">
<description>Update WorkEffort iCalendar Data</description>
<permission-service service-name="workEffortICalendarPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortICalData" default-entity-name="WorkEffortIcalData" engine="entity-auto" invoke="delete" auth="true">
<description>Delete WorkEffort iCalendar Data</description>
<permission-service service-name="workEffortICalendarPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="workEffortICalendarPermission" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/permission/WorkEffortPermissionServices.xml" invoke="workEffortICalendarPermission">
<description>iCalendar Permission Check</description>
<implements service="permissionInterface"/>
<attribute type="String" mode="IN" name="workEffortId" optional="true"/>
</service>
<service name="getICalWorkEfforts" engine="simple" auth="false"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="getICalWorkEfforts">
<description>Get iCalendar Work Efforts</description>
<!-- No permission checking - the servlet handles that -->
<attribute type="String" mode="IN" name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</attribute>
<attribute type="String" mode="IN" name="workEffortTypeId" optional="true"/>
<attribute type="List" mode="OUT" name="workEfforts"/>
</service>
<service name="getPartyICalUrl" engine="simple" auth="false"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="getPartyICalUrl">
<description>Get Party iCalendar URL</description>
<!-- No permission checking - the servlet handles that -->
<attribute type="String" mode="IN" name="partyId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingPartyId"/>
</type-validate>
</attribute>
<attribute type="String" mode="OUT" name="iCalUrl" optional="true"/>
</service>
<!-- WorkEffort Event Reminder Services -->
<service name="createWorkEffortEventReminder" default-entity-name="WorkEffortEventReminder" engine="entity-auto" invoke="create" auth="true">
<description>Create a WorkEffort Event Reminder</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="sequenceId" mode="OUT"/>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="updateWorkEffortEventReminder" default-entity-name="WorkEffortEventReminder" engine="entity-auto" invoke="update" auth="true">
<description>Update a WorkEffort Event Reminder</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="sequenceId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingSequenceId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortEventReminder" default-entity-name="WorkEffortEventReminder" engine="entity-auto" invoke="delete" auth="true">
<description>Delete a WorkEffort Event Reminder</description>
<permission-service service-name="workEffortGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<override name="sequenceId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingSequenceId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="processWorkEffortEventReminders" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="processWorkEffortEventReminders" auth="true">
<description>Process work effort event reminders. This service is run by the job scheduler.</description>
</service>
<service name="processWorkEffortEventReminder" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="processWorkEffortEventReminder" auth="true">
<description>Send a work effort event reminder</description>
<attribute name="reminder" mode="IN" type="GenericValue"/>
<attribute name="bodyParameters" mode="IN" type="Map"/>
</service>
<service name="migrateWorkEffortEventReminders" engine="java"
location="org.ofbiz.workeffort.workeffort.WorkEffortServices" invoke="migrateWorkEffortEventReminders" auth="true">
<description>Migrate work effort event reminders. Run this service to update work effort reminders.</description>
</service>
<!-- WorkEffort and Survey Services -->
<service name="createWorkEffortSurveyAppl" engine="simple" default-entity-name="WorkEffortSurveyAppl"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="createWorkEffortSurveyAppl" auth="true">
<description>Create a WorkEffort Survey</description>
<permission-service service-name="workEffortGenericPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fromDate" optional="true">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="surveyId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingSurveyId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="updateWorkEffortSurveyAppl" default-entity-name="WorkEffortSurveyAppl" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="updateWorkEffortSurveyAppl" auth="true">
<description>Update a WorkEffort Survey</description>
<permission-service service-name="workEffortGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fromDate" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingFromDate"/>
</type-validate>
</override>
<override name="surveyId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingSurveyId"/>
</type-validate>
</override>
<override name="workEffortId" optional="false">
<type-validate>
<fail-property resource="WorkEffortUiLabels" property="WorkEffortRequiredFieldMissingWorkEffortId"/>
</type-validate>
</override>
</service>
<service name="deleteWorkEffortSurveyAppl" default-entity-name="WorkEffortSurveyAppl" engine="simple"
location="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" invoke="deleteWorkEffortSurveyAppl" auth="true">
<description>Delete a WorkEffort Survey</description>
<permission-service service-name="workEffortGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
</service>
</services>