Index: /branches/features/taskProcedureRework/grails-app/controllers/TaskProcedureDetailedController.groovy
===================================================================
--- /branches/features/taskProcedureRework/grails-app/controllers/TaskProcedureDetailedController.groovy	(revision 757)
+++ /branches/features/taskProcedureRework/grails-app/controllers/TaskProcedureDetailedController.groovy	(revision 758)
@@ -50,4 +50,7 @@
         if(taskProcedureInstance) {
             try {
+                taskProcedureInstance.tasks.each {
+                    it.taskProcedure = null
+                }
                 taskProcedureInstance.delete(flush:true)
                 flash.message = "TaskProcedure ${params.id} deleted"
@@ -125,8 +128,8 @@
     def save = {
         def taskProcedureInstance = new TaskProcedure(params)
-        def taskInstance = Task.get(params.taskInstance.id)
+        def taskInstance = Task.get(params.parentTask.id)
 
         if(!taskProcedureInstance.hasErrors() && taskProcedureInstance.save(flush: true)) {
-            taskProcedureInstance.addToTasks(taskInstance)
+            taskProcedureInstance.addToTasks(taskInstance) // also sets: taskInstance.taskProcedure = taskProcedureInstance
             flash.message = "TaskProcedure ${taskProcedureInstance.id} created."
             redirect(action:show,id:taskProcedureInstance.id)
Index: /branches/features/taskProcedureRework/grails-app/domain/TaskProcedure.groovy
===================================================================
--- /branches/features/taskProcedureRework/grails-app/domain/TaskProcedure.groovy	(revision 757)
+++ /branches/features/taskProcedureRework/grails-app/domain/TaskProcedure.groovy	(revision 758)
@@ -1,5 +1,9 @@
 class TaskProcedure {
 
+    Task parentTask
+
     static hasMany = [tasks: Task, maintenanceActions: MaintenanceAction]
+
+    static mappedBy = [tasks:"taskProcedure"]
 
 //     static belongsTo = []
Index: /branches/features/taskProcedureRework/grails-app/services/CreateDataService.groovy
===================================================================
--- /branches/features/taskProcedureRework/grails-app/services/CreateDataService.groovy	(revision 757)
+++ /branches/features/taskProcedureRework/grails-app/services/CreateDataService.groovy	(revision 758)
@@ -1097,12 +1097,15 @@
         //TaskProcedure
         def taskProcedureInstance
-
-        taskProcedureInstance = new TaskProcedure(name: "Daily check")
+        def taskInstance
+
+        taskInstance = Task.get(5)
+        taskProcedureInstance = new TaskProcedure(parentTask: taskInstance)
         saveAndTest(taskProcedureInstance)
-        taskProcedureInstance.addToTasks(Task.list()[0])
-
-        taskProcedureInstance = new TaskProcedure(name: "100hr Service")
+        taskProcedureInstance.addToTasks(taskInstance)
+
+        taskInstance = Task.get(7)
+        taskProcedureInstance = new TaskProcedure(parentTask: taskInstance)
         saveAndTest(taskProcedureInstance)
-        taskProcedureInstance.addToTasks(Task.list()[6])
+        taskProcedureInstance.addToTasks(taskInstance)
     }
 
Index: /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/create.gsp
===================================================================
--- /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/create.gsp	(revision 757)
+++ /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/create.gsp	(revision 758)
@@ -22,5 +22,5 @@
             </g:hasErrors>
             <g:form action="save" method="post" >
-            <input type="hidden" name="taskInstance.id" value="${taskInstance?.id}" />
+            <input type="hidden" name="parentTask.id" value="${taskInstance.id}" />
 
                 <div class="dialog">
@@ -28,14 +28,14 @@
                         <tbody>
 
-                            <g:if test="${taskInstance}">
-                                <tr class="prop">
-                                    <td valign="top" class="name">
-                                        <label for="taskInstance">Linking with Task:</label>
-                                    </td>
-                                    <td valign="top" name="taskInstance" class="value">
-                                        ${taskInstance}
-                                    </td>
-                                </tr>
-                            </g:if>
+                            <tr class="prop">
+                                <td valign="top" class="name">
+                                    <label for="taskInstance">Parent Task:</label>
+                                </td>
+                                <td valign="top" name="taskInstance" class="value">
+                                    <g:link controller="taskDetailed" action="show" id="${taskInstance.id}">
+                                        ${taskInstance.encodeAsHTML()}
+                                    </g:link>
+                                </td>
+                            </tr>
 
                         </tbody>
Index: /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/edit.gsp
===================================================================
--- /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/edit.gsp	(revision 757)
+++ /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/edit.gsp	(revision 758)
@@ -35,34 +35,39 @@
                             <tr class="prop">
                                 <td valign="top" class="name">
+                                    <label for="taskInstance">Parent Task:</label>
+                                </td>
+                                <td valign="top" name="taskInstance" class="value">
+                                    <g:link controller="taskDetailed" action="show" id="${taskProcedureInstance.parentTask.id}">
+                                        ${taskProcedureInstance.parentTask.encodeAsHTML()}
+                                    </g:link>
+                                </td>
+                            </tr>
+
+                            <tr class="prop">
+                                <td valign="top" class="name">
                                     <label for="maintenanceActions">Maintenance Actions:</label>
                                 </td>
                                 <td valign="top" class="value ${hasErrors(bean:taskProcedureInstance,field:'maintenanceActions','errors')}">
-                                    
-<ul>
-<g:each var="m" in="${taskProcedureInstance?.maintenanceActions?}">
-    <li><g:link controller="maintenanceActionDetailed" action="show" id="${m.id}">${m?.encodeAsHTML()}</g:link></li>
-</g:each>
-</ul>
-<g:link controller="maintenanceActionDetailed" params="['taskProcedure.id':taskProcedureInstance?.id]" action="create">+Add MaintenanceAction</g:link>
+
+                                    <ul>
+                                        <g:each var="m" in="${taskProcedureInstance?.maintenanceActions?}">
+                                            <li>
+                                                <g:link controller="maintenanceActionDetailed"
+                                                                action="show"
+                                                                id="${m.id}">
+                                                    ${m?.encodeAsHTML()}
+                                                </g:link>
+                                            </li>
+                                        </g:each>
+                                    </ul>
+                                    <g:link controller="maintenanceActionDetailed"
+                                                params="['taskProcedure.id':taskProcedureInstance?.id]"
+                                                action="create">
+                                        +Add MaintenanceAction
+                                    </g:link>
 
                                 </td>
-                            </tr> 
-                        
-                            <tr class="prop">
-                                <td valign="top" class="name">
-                                    <label for="tasks">Tasks:</label>
-                                </td>
-                                <td valign="top" class="value ${hasErrors(bean:taskProcedureInstance,field:'tasks','errors')}">
-                                    
-<ul>
-<g:each var="t" in="${taskProcedureInstance?.tasks?}">
-    <li><g:link controller="taskDetailed" action="show" id="${t.id}">${t?.encodeAsHTML()}</g:link></li>
-</g:each>
-</ul>
-<g:link controller="taskDetailed" params="['taskProcedure.id':taskProcedureInstance?.id]" action="create">+Add Task</g:link>
+                            </tr>
 
-                                </td>
-                            </tr> 
-                        
                         </tbody>
                     </table>
Index: /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/list.gsp
===================================================================
--- /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/list.gsp	(revision 757)
+++ /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/list.gsp	(revision 758)
@@ -39,6 +39,6 @@
 
                                 <g:sortableColumn property="id" title="Id"  params="${filterParams}" />
-
                                 <th>Task Description</th>
+                                <th>Asset</th>
 
                                 <th></th>
@@ -52,5 +52,7 @@
                                 <td>${fieldValue(bean:taskProcedureInstance, field:'id')}</td>
 
-                                <td>${taskProcedureInstance.tasks.encodeAsHTML()}</td>
+                                <td>${taskProcedureInstance.parentTask.description.encodeAsHTML()}</td>
+
+                                <td>${taskProcedureInstance.parentTask.primaryAsset?.encodeAsHTML()}</td>
 
                                 <td>
Index: /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/show.gsp
===================================================================
--- /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/show.gsp	(revision 757)
+++ /branches/features/taskProcedureRework/grails-app/views/taskProcedureDetailed/show.gsp	(revision 758)
@@ -22,12 +22,21 @@
                         <tr class="prop">
                             <td valign="top" class="name">Id:</td>
-                            
                             <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'id')}</td>
-                            
                         </tr>
-                    
+
+                        <tr class="prop">
+                            <td valign="top" class="name">
+                                <label for="taskInstance">Parent Task:</label>
+                            </td>
+                            <td valign="top" name="taskInstance" class="value">
+                                <g:link controller="taskDetailed" action="show" id="${taskProcedureInstance.parentTask.id}">
+                                    ${taskProcedureInstance.parentTask.encodeAsHTML()}
+                                </g:link>
+                            </td>
+                        </tr>
+
                         <tr class="prop">
                             <td valign="top" class="name">Maintenance Actions:</td>
-                            
+
                             <td  valign="top" style="text-align:left;" class="value">
                                 <ul>
@@ -37,20 +46,7 @@
                                 </ul>
                             </td>
-                            
+
                         </tr>
-                    
-                        <tr class="prop">
-                            <td valign="top" class="name">Tasks:</td>
-                            
-                            <td  valign="top" style="text-align:left;" class="value">
-                                <ul>
-                                <g:each var="t" in="${taskProcedureInstance.tasks}">
-                                    <li><g:link controller="taskDetailed" action="show" id="${t.id}">${t?.encodeAsHTML()}</g:link></li>
-                                </g:each>
-                                </ul>
-                            </td>
-                            
-                        </tr>
-                    
+
                     </tbody>
                 </table>
