svn commit: r1659914 - in /ofbiz/trunk/applications/manufacturing: config/ script/org/ofbiz/manufacturing/jobshopmgt/ servicedef/ webapp/manufacturing/WEB-INF/ webapp/manufacturing/WEB-INF/actions/jobshopmgt/ widget/manufacturing/

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r1659914 - in /ofbiz/trunk/applications/manufacturing: config/ script/org/ofbiz/manufacturing/jobshopmgt/ servicedef/ webapp/manufacturing/WEB-INF/ webapp/manufacturing/WEB-INF/actions/jobshopmgt/ widget/manufacturing/

jleroux@apache.org
Author: jleroux
Date: Sun Feb 15 11:38:46 2015
New Revision: 1659914

URL: http://svn.apache.org/r1659914
Log:
A patch from Pierre Smits for
"Have parties to be assigned to production run tasks" https://issues.apache.org/jira/browse/OFBIZ-5706
It is not possible to assign parties to execute one or more task in a production run.

And
"ProductionRun doesn't capture and show manufacturing organisation" https://issues.apache.org/jira/browse/OFBIZ-5709
The production run should capture the manufacturing (internal) organisation on creation.

Modified:
    ofbiz/trunk/applications/manufacturing/config/ManufacturingUiLabels.xml
    ofbiz/trunk/applications/manufacturing/script/org/ofbiz/manufacturing/jobshopmgt/ProductionRunServices.xml
    ofbiz/trunk/applications/manufacturing/servicedef/services_production_run.xml
    ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/actions/jobshopmgt/ProductionRunDeclaration.groovy
    ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/actions/jobshopmgt/ViewProductionRun.groovy
    ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/controller.xml
    ofbiz/trunk/applications/manufacturing/widget/manufacturing/JobshopScreens.xml
    ofbiz/trunk/applications/manufacturing/widget/manufacturing/ManufacturingMenus.xml
    ofbiz/trunk/applications/manufacturing/widget/manufacturing/ProductionRunForms.xml

Modified: ofbiz/trunk/applications/manufacturing/config/ManufacturingUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/manufacturing/config/ManufacturingUiLabels.xml?rev=1659914&r1=1659913&r2=1659914&view=diff
==============================================================================
--- ofbiz/trunk/applications/manufacturing/config/ManufacturingUiLabels.xml (original)
+++ ofbiz/trunk/applications/manufacturing/config/ManufacturingUiLabels.xml Sun Feb 15 11:38:46 2015
@@ -19,6 +19,9 @@
     under the License.
 -->
 <resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-properties.xsd">
+    <property key="AddParty">
+        <value xml:lang="en">Add Party</value>
+    </property>
     <property key="FormFieldTitle_allocatedCost">
         <value xml:lang="de">Verrechnete Kosten</value>
         <value xml:lang="en">Allocated Cost</value>
@@ -3771,6 +3774,10 @@
         <value xml:lang="zh">生产运行更新失败,请查看日志了解详细信息</value>
         <value xml:lang="zh-TW">生產運行更新失敗,請檢視日誌瞭解詳細資訊</value>
     </property>
+    <property key="ManufacturingProductionRunParties">
+        <value xml:lang="en">Parties</value>
+        <value xml:lang="nl">Partijen</value>
+    </property>
     <property key="ManufacturingProductionRunPrintDocuments">
         <value xml:lang="de">Dokumente für Produktionsauftrage drucken</value>
         <value xml:lang="en">Production Run Print Documents</value>

Modified: ofbiz/trunk/applications/manufacturing/script/org/ofbiz/manufacturing/jobshopmgt/ProductionRunServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/manufacturing/script/org/ofbiz/manufacturing/jobshopmgt/ProductionRunServices.xml?rev=1659914&r1=1659913&r2=1659914&view=diff
==============================================================================
--- ofbiz/trunk/applications/manufacturing/script/org/ofbiz/manufacturing/jobshopmgt/ProductionRunServices.xml (original)
+++ ofbiz/trunk/applications/manufacturing/script/org/ofbiz/manufacturing/jobshopmgt/ProductionRunServices.xml Sun Feb 15 11:38:46 2015
@@ -20,7 +20,36 @@ under the License.
 
 <simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/simple-methods-v2.xsd">
-
+    
+    
+    <simple-method method-name="createProductionRunPartyAssign"
+        short-description="Assign the selected party to the production run or task">
+        
+        <set field="productionRunId" from-field="parameters.productionRunId"/>
+        <set field="partyId" from-field="parameters.partyId"/>
+        <set field="roleTypeId" from-field="parameters.roleTypeId"/>
+        <set field="statusId" value="PRTYASGN_ASSIGNED"/>
+        <set field="parameters.statusId" value="PRTYASGN_ASSIGNED"/>
+        
+        <if-not-empty field="parameters.workEffortId">
+            <set field="workEffortId" from-field="parameters.workEffortId"/>
+        </if-not-empty>
+        <if-empty field="parameters.workEffortId">
+            <set field="parameters.workEffortId" from-field="productionRunId"/>
+            <set field="workEffortId" from-field="productionRunId"/>
+        </if-empty>
+        
+        <entity-one entity-name="WorkEffort" value-field="workEffort"/>
+        <set field="fromDate" from-field="workEffort.estimatedStartDate"/>
+        <set field="statusDateTime" from-field="workEffort.estimatedStartDate"/>
+        <set field="parameters.statusDateTime" from-field="workEffort.estimatedStartDate"/>
+        <set field="parameters.fromDate" from-field="workEffort.estimatedStartDate"/>
+        <field-to-result field="parameters.productionRunId" result-name="productionRunId" />
+        <field-to-result field="parameters.fromDate" result-name="fromDate" />
+        <call-simple-method method-name="assignPartyToWorkEffort"
+            xml-resource="component://workeffort/script/org/ofbiz/workeffort/workeffort/WorkEffortSimpleServices.xml" />
+        
+    </simple-method>
     <simple-method method-name="createProductionRunAssoc" short-description="Associate the production run to another production run">
         
         <if-compare field="parameters.workFlowSequenceTypeId" operator="equals" value="WF_PREDECESSOR">

Modified: ofbiz/trunk/applications/manufacturing/servicedef/services_production_run.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/manufacturing/servicedef/services_production_run.xml?rev=1659914&r1=1659913&r2=1659914&view=diff
==============================================================================
--- ofbiz/trunk/applications/manufacturing/servicedef/services_production_run.xml (original)
+++ ofbiz/trunk/applications/manufacturing/servicedef/services_production_run.xml Sun Feb 15 11:38:46 2015
@@ -38,6 +38,17 @@ under the License.
         <attribute name="productionRunId" type="String" mode="OUT" optional="false"/>
         <attribute name="estimatedCompletionDate" type="java.sql.Timestamp" mode="OUT" optional="true"/>
     </service>
+    <service name="createProductionRunPartyAssign" engine="simple"
+        location="component://manufacturing/script/org/ofbiz/manufacturing/jobshopmgt/ProductionRunServices.xml" invoke="createProductionRunPartyAssign" auth="false">
+        <description>
+            Associate a party to the production run
+        </description>
+        <attribute name="productionRunId" type="String" mode="INOUT" optional="false"/>
+        <attribute name="partyId" type="String" mode="IN" optional="false"/>
+        <attribute name="roleTypeId" type="String" mode="IN" optional="false"/>
+        <attribute name="workEffortId" mode="IN" type="String" optional="true"/>
+        <attribute name="fromDate" type="java.sql.Timestamp" mode="INOUT" optional="true"/>
+    </service>
     <service name="createProductionRunAssoc" engine="simple"
                 location="component://manufacturing/script/org/ofbiz/manufacturing/jobshopmgt/ProductionRunServices.xml" invoke="createProductionRunAssoc" auth="false">
         <description>

Modified: ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/actions/jobshopmgt/ProductionRunDeclaration.groovy
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/actions/jobshopmgt/ProductionRunDeclaration.groovy?rev=1659914&r1=1659913&r2=1659914&view=diff
==============================================================================
--- ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/actions/jobshopmgt/ProductionRunDeclaration.groovy (original)
+++ ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/actions/jobshopmgt/ProductionRunDeclaration.groovy Sun Feb 15 11:38:46 2015
@@ -83,8 +83,12 @@ if (productionRunId) {
         productionRunData.actualStartDate = productionRun.getGenericValue().getTimestamp("actualStartDate");
         productionRunData.actualCompletionDate = productionRun.getGenericValue().getTimestamp("actualCompletionDate");
         productionRunData.currentStatusId = productionRun.getGenericValue().currentStatusId;
-     productionRunData.facilityId = productionRun.getGenericValue().facilityId;
-
+        productionRunData.facilityId = productionRun.getGenericValue().facilityId;
+        
+        manufacturer = from("WorkEffortPartyAssignment").where("workEffortId", productionRunId, "roleTypeId", "MANUFACTURER").queryOne();
+        if (manufacturer){
+            productionRunData.manufacturerId = manufacturer.partyId;
+        }
         context.productionRunData = productionRunData;
 
         actionForm = parameters.actionForm ?: "beforeActionProductionRun";

Modified: ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/actions/jobshopmgt/ViewProductionRun.groovy
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/actions/jobshopmgt/ViewProductionRun.groovy?rev=1659914&r1=1659913&r2=1659914&view=diff
==============================================================================
--- ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/actions/jobshopmgt/ViewProductionRun.groovy (original)
+++ ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/actions/jobshopmgt/ViewProductionRun.groovy Sun Feb 15 11:38:46 2015
@@ -41,6 +41,11 @@ if (productionRunId) {
         productionRunData.quantity = productionRun.getQuantity();
         productionRunData.estimatedStartDate = productionRun.getEstimatedStartDate();
         productionRunData.estimatedCompletionDate = productionRun.getEstimatedCompletionDate();
+
+        manufacturer = from("WorkEffortPartyAssignment").where("workEffortId", productionRunId, "roleTypeId", "MANUFACTURER").queryOne();
+        if (manufacturer){
+            productionRunData.manufacturerId = manufacturer.partyId;
+        }
         context.productionRunData = productionRunData;
 
         // Find all the order items to which this production run is linked.

Modified: ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/controller.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/controller.xml?rev=1659914&r1=1659913&r2=1659914&view=diff
==============================================================================
--- ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/controller.xml (original)
+++ ofbiz/trunk/applications/manufacturing/webapp/manufacturing/WEB-INF/controller.xml Sun Feb 15 11:38:46 2015
@@ -52,6 +52,10 @@ under the License.
     </request-map>
 
     <!-- Lookup request mappings -->
+    <request-map uri="LookupPartyName">
+        <security auth="true" https="true"/>
+        <response name="success" type="view" value="LookupPartyName"/>
+    </request-map>
     <request-map uri="LookupCustomerName">
         <security auth="true" https="true"/>
         <response name="success" type="view" value="LookupCustomerName"/>
@@ -467,6 +471,19 @@ under the License.
         <security https="true" auth="true"/>
         <response name="success" type="view" value="LinkProductionRun"/>
     </request-map>
+    <request-map uri="assocProductionRunParty">
+        <security https="true" auth="true"/>
+        <response name="success" type="view" value="assocProdRunParty"/>
+    </request-map>
+    <request-map uri="createProductionRunPartyAssign">
+        <security https="true" auth="true"/>
+        <event type="service" invoke="createProductionRunPartyAssign"/>
+        <response name="success" type="view" value="ProductionRunParties"/>
+    </request-map>
+    <request-map uri="productionRunParties">
+        <security https="true" auth="true"/>
+        <response name="success" type="view" value="ProductionRunParties"/>
+    </request-map>
     <request-map uri="createProductionRunAssoc">
         <security https="true" auth="true"/>
         <event type="service" invoke="createProductionRunAssoc"/>
@@ -789,6 +806,7 @@ under the License.
     <view-map name="EditRoutingProductLink" page="component://manufacturing/widget/manufacturing/RoutingScreens.xml#EditRoutingProductLink" type="screen"/>
     <view-map name="EditRoutingTaskFixedAssets" page="component://manufacturing/widget/manufacturing/RoutingScreens.xml#EditRoutingTaskFixedAssets" type="screen"/>
     <!-- Lookup view mappings -->
+    <view-map name="LookupPartyName" type="screen" page="component://party/widget/partymgr/LookupScreens.xml#LookupPartyName"/>
     <view-map name="LookupCustomerName" type="screen" page="component://party/widget/partymgr/LookupScreens.xml#LookupCustomerName"/>
     <view-map name="LookupProduct" page="component://product/widget/catalog/LookupScreens.xml#LookupProduct" type="screen"/>
     <view-map name="LookupVariantProduct" page="component://product/widget/catalog/LookupScreens.xml#LookupVariantProduct" type="screen"/>
@@ -815,6 +833,8 @@ under the License.
     <view-map name="CreateProductionRun" page="component://manufacturing/widget/manufacturing/JobshopScreens.xml#CreateProductionRun" type="screen"/>
     <view-map name="FindProductionRun" page="component://manufacturing/widget/manufacturing/JobshopScreens.xml#FindProductionRun" type="screen"/>
     <view-map name="EditProductionRun" page="component://manufacturing/widget/manufacturing/JobshopScreens.xml#EditProductionRun" type="screen"/>
+    <view-map name="assocProdRunParty" page="component://manufacturing/widget/manufacturing/JobshopScreens.xml#AssocProdRunParty" type="screen"/>
+    <view-map name="ProductionRunParties" page="component://manufacturing/widget/manufacturing/JobshopScreens.xml#ProductionRunParties" type="screen"/>
     <view-map name="LinkProductionRun" page="component://manufacturing/widget/manufacturing/JobshopScreens.xml#LinkProductionRun" type="screen"/>
     <view-map name="PrintProductionRun" type="screenfop" page="component://manufacturing/widget/manufacturing/JobshopScreens.xml#ProductionRunPdf" content-type="application/pdf" encoding="none"/>
     <view-map name="ProductionRunDeclaration" page="component://manufacturing/widget/manufacturing/JobshopScreens.xml#ProductionRunDeclaration" type="screen"/>

Modified: ofbiz/trunk/applications/manufacturing/widget/manufacturing/JobshopScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/manufacturing/widget/manufacturing/JobshopScreens.xml?rev=1659914&r1=1659913&r2=1659914&view=diff
==============================================================================
--- ofbiz/trunk/applications/manufacturing/widget/manufacturing/JobshopScreens.xml (original)
+++ ofbiz/trunk/applications/manufacturing/widget/manufacturing/JobshopScreens.xml Sun Feb 15 11:38:46 2015
@@ -73,6 +73,18 @@ under the License.
             </widgets>
         </section>
     </screen>
+    <screen name="CreateProductionRunParty">
+        <section>
+            <actions>
+                <set field="productionRunId" from-field="parameters.productionRunId"/>
+            </actions>
+            <widgets>
+                <screenlet title="${uiLabelMap.AddParty}">
+                    <include-form name="AssocProductionRunParty" location="component://manufacturing/widget/manufacturing/ProductionRunForms.xml"/>
+                </screenlet>
+            </widgets>
+        </section>
+    </screen>
     <screen name="EditProductionRun">
         <section>
             <actions>
@@ -338,6 +350,93 @@ under the License.
             </widgets>
         </section>
     </screen>
+    <screen name="ProductionRunParties">
+        <section>
+            <actions>
+                <set field="titleProperty" value="ManufacturingProductionRunAssocs"/>
+                <set field="tabButtonItem" value="parties"/>
+                <set field="headerItem" value="jobshop"/>
+
+                <set field="productionRunId" from-field="parameters.productionRunId"/>
+                <entity-one entity-name="WorkEffort" value-field="productionRun">
+                    <field-map field-name="workEffortId" from-field="productionRunId"/>
+                </entity-one>
+                <!-- Find all the work efforts that must be completed before this one. -->
+                <entity-condition entity-name="WorkEffortAssoc" list="mandatoryWorkEfforts">
+                    <condition-list>
+                        <condition-expr field-name="workEffortIdTo" from-field="productionRunId"/>
+                        <condition-expr field-name="workEffortAssocTypeId" value="WORK_EFF_PRECEDENCY"/>
+                    </condition-list>
+                </entity-condition>
+                <!-- Find all the work efforts that are dependent from this one. -->
+                <entity-condition entity-name="WorkEffortAssoc" list="dependentWorkEfforts">
+                    <condition-list>
+                        <condition-expr field-name="workEffortIdFrom" from-field="productionRunId"/>
+                        <condition-expr field-name="workEffortAssocTypeId" value="WORK_EFF_PRECEDENCY"/>
+                    </condition-list>
+                </entity-condition>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonJobshopDecorator" location="${parameters.commonJobshopDecorator}">
+                    <decorator-section name="body">
+                            <section>
+                                <widgets>
+                                    <include-screen name="CreateProductionRunParty"/>
+                                </widgets>
+                            </section>
+                            <section>
+                                <widgets>
+                                    <include-screen name="ProductionRunPartyAssocs"/>
+                                </widgets>
+                            </section>
+                            <section>
+                                <widgets>
+                                    <container>
+                                        <include-screen name="ProductionRunTaskPartyAssocs"/>
+                                    </container>
+                                </widgets>
+                            </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="ProductionRunPartyAssocs">
+        <section>
+            <actions>
+                <set field="productionRunId" from-field="parameters.productionRunId"/>
+                <entity-one entity-name="WorkEffort" value-field="productionRun">
+                    <field-map field-name="workEffortId" from-field="productionRunId"/>
+                </entity-one>
+                <entity-condition entity-name="WorkEffortPartyAssignment" list="productionRunParties">
+                    <condition-list>
+                        <condition-expr field-name="workEffortId" from-field="productionRunId"/>
+                    </condition-list>
+                </entity-condition>
+            </actions>
+            <widgets>
+                <screenlet>
+                    <include-form name="ProductionRunPartyAssocs" location="component://manufacturing/widget/manufacturing/ProductionRunForms.xml"/>
+                </screenlet>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="ProductionRunTaskPartyAssocs">
+        <section>
+            <actions>
+                <set field="productionRunId" from-field="parameters.productionRunId"/>
+                <entity-one entity-name="WorkEffort" value-field="productionRun">
+                    <field-map field-name="workEffortId" from-field="productionRunId"/>
+                </entity-one>
+                <script location="component://manufacturing/webapp/manufacturing/WEB-INF/actions/jobshopmgt/ProductionRunTaskParties.groovy"/>
+            </actions>
+            <widgets>
+                <screenlet>
+                    <include-form name="ProductionRunTaskPartyAssocs" location="component://manufacturing/widget/manufacturing/ProductionRunForms.xml"/>
+                </screenlet>
+            </widgets>
+        </section>
+    </screen>
     <screen name="ProductionRunTasks">
         <section>
             <actions>

Modified: ofbiz/trunk/applications/manufacturing/widget/manufacturing/ManufacturingMenus.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/manufacturing/widget/manufacturing/ManufacturingMenus.xml?rev=1659914&r1=1659913&r2=1659914&view=diff
==============================================================================
--- ofbiz/trunk/applications/manufacturing/widget/manufacturing/ManufacturingMenus.xml (original)
+++ ofbiz/trunk/applications/manufacturing/widget/manufacturing/ManufacturingMenus.xml Sun Feb 15 11:38:46 2015
@@ -165,6 +165,11 @@ under the License.
                 <parameter param-name="productionRunId"/>
             </link>
         </menu-item>
+        <menu-item name="parties" title="${uiLabelMap.ManufacturingProductionRunParties}">
+            <link target="productionRunParties">
+                <parameter param-name="productionRunId"/>
+            </link>
+        </menu-item>
         <menu-item name="assocs" title="${uiLabelMap.ManufacturingProductionRunAssocs}">
             <link target="ProductionRunAssocs">
                 <parameter param-name="productionRunId"/>

Modified: ofbiz/trunk/applications/manufacturing/widget/manufacturing/ProductionRunForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/manufacturing/widget/manufacturing/ProductionRunForms.xml?rev=1659914&r1=1659913&r2=1659914&view=diff
==============================================================================
--- ofbiz/trunk/applications/manufacturing/widget/manufacturing/ProductionRunForms.xml (original)
+++ ofbiz/trunk/applications/manufacturing/widget/manufacturing/ProductionRunForms.xml Sun Feb 15 11:38:46 2015
@@ -20,6 +20,28 @@ under the License.
 
 <forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/widget-form.xsd">
+    
+    <form name="AssocProductionRunParty" target="createProductionRunPartyAssign" type="single"
+        header-row-style="header-row" default-table-style="basic-table">
+        <field name="productionRunId"><hidden/></field>
+        <field name="partyId" required-field="true"><lookup target-form-name="LookupPartyName"/></field>
+        <field name="roleTypeId" required-field="true">
+            <drop-down allow-empty="false">
+                <entity-options description="${description}" entity-name="RoleType">
+                    <entity-order-by field-name="description"/>
+                </entity-options>
+            </drop-down>
+        </field>
+        <field name="workEffortId">
+            <drop-down allow-empty="true">
+                <entity-options description="${description}" entity-name="WorkEffort" key-field-name="workEffortId">
+                    <entity-constraint name="workEffortParentId" operator="equals" value="${productionRunId}"/>
+                    <entity-order-by field-name="description"/>
+                </entity-options>
+            </drop-down>
+        </field>
+        <field name="submitButton" widget-style="smallSubmit"><submit button-type="button"/></field>
+    </form>
     <form name="CreateProductionRun" target="createProductionRun" title="" type="single"
         header-row-style="header-row" default-table-style="basic-table">
         <field name="productId" title="${uiLabelMap.ProductProductId}" required-field="true"><lookup target-form-name="LookupProduct" size="16"/></field>
@@ -103,6 +125,9 @@ under the License.
         <field name="currentStatusId">
             <display-entity entity-name="StatusItem" key-field-name="statusId" description="${description}"/>
         </field>
+        <field name="manufacturerId">
+            <display-entity entity-name="PartyNameView" key-field-name="partyId" description="${groupName} ${firstName} ${lastName} [${partyId}]"/>
+        </field>
         <field name="facilityId" title="${uiLabelMap.ProductFacilityId}">
             <drop-down>
                 <entity-options entity-name="Facility" key-field-name="facilityId" description="${facilityName} [${facilityId}]">
@@ -260,6 +285,10 @@ under the License.
         <field name="actualCompletionDate" title="${uiLabelMap.ManufacturingActualCompletionDate}"><display/></field>
         <field name="productionRunName"  title="${uiLabelMap.ManufacturingProductionRunName}"><display/></field>
         <field name="description" title="${uiLabelMap.CommonDescription}"><display/></field>
+        
+        <field name="manufacturerId">
+            <display-entity entity-name="PartyNameView" key-field-name="partyId" description="${groupName} ${firstName} ${lastName} [${partyId}]"/>
+        </field>
         <field name="facilityId" title="${uiLabelMap.FacilityFacility}">
             <display-entity entity-name="Facility" description="${facilityName} [${facilityId}]"/>
         </field>
@@ -865,6 +894,46 @@ under the License.
         </field>
         <field name="submitButton" title="${uiLabelMap.CommonAdd}" widget-style="smallSubmit"><submit button-type="button"/></field>
     </form>
+    
+    <form name="ProductionRunPartyAssocs" type="list" title="" list-name="productionRunParties"
+        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
+        
+        <field name="workEffortId"><hidden/></field>
+        <field name="productionRunId"><hidden/></field>
+        
+        <field name="partyId">
+            <display-entity entity-name="PartyNameView" description="${personalTitle} ${firstName} ${middleName} ${lastName} ${suffix} ${groupName}" also-hidden="true" cache="false">
+                
+            </display-entity>
+        </field>
+        <field name="roleTypeId" title="${uiLabelMap.CommonRole}">
+            <display-entity entity-name="RoleType" key-field-name="roleTypeId"/>
+        </field>
+        <field name="fromDate" title="${uiLabelMap.CommonFrom}"><display/></field>
+        <field name="thruDate" title="${uiLabelMap.CommonThru}"><display/></field>
+    </form>
+    <form name="ProductionRunTaskPartyAssocs" type="list" title="" list-name="productionRunTaskParties"
+        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
+        <field name="productionRunId"><hidden/></field>
+        <field name="workEffortId" title="${uiLabelMap.ManufacturingTaskName}">
+            <display-entity entity-name="WorkEffort" description="${workEffortName} - [${workEffortId}]"/>
+        </field>
+        <field name="partyId">
+            <display-entity entity-name="PartyNameView" description="${personalTitle} ${firstName} ${middleName} ${lastName} ${suffix} ${groupName}" also-hidden="true" cache="false">
+                
+            </display-entity>
+        </field>
+        <field name="roleTypeId" title="${uiLabelMap.CommonRole}">
+            <display-entity entity-name="RoleType" key-field-name="roleTypeId"/>
+        </field>
+        <field name="statusId" title="${uiLabelMap.CommonStatus}">
+            <display-entity entity-name="StatusItem" key-field-name="statusId"/>
+        </field>
+        <field name="fromDate" title="${uiLabelMap.CommonFrom}"><display/></field>
+        <field name="thruDate" title="${uiLabelMap.CommonThru}"><display/></field>
+        
+    </form>
+    
     <form name="ProductionRunTaskComponents" type="list" target="updateProductionRunComponent" paginate-target="ProductionRunComponents" title="" list-name="records"
         odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
         <row-actions>