public function pipelineConsignmentsAction() { $start = 0; $end = $this->_request->getParam('counter', 10); $form = new Form_PipelineConsignments(); $form->addRows($start, $end); $em = Zend_Registry::get('doctrine'); $em->getConnection()->beginTransaction(); try { if ($this->_request->isPost()) { if ($form->isValid($this->_request->getPost())) { $pipeline_consignments = new Model_PipelineConsignments(); $pipeline_consignments->form_values = $form->getValues(); $pipeline_consignments->form_values['counter'] = $end; $result = $pipeline_consignments->addPipelineConsignments(); if ($result) { $this->view->success = "Pipeline Consignments has been received successfully."; $form->reset(); } else { $this->view->error = "Please enter atleast one row data."; } } } else { $draft = new Model_PipelineConsignments(); $saved_draft = $draft->getPipelineConsignmentsDraft(); if ($saved_draft != false) { $sum = count($saved_draft); $end = $sum + 10; $form->addRows($start, $end); $form->from_warehouse_id->setValue($saved_draft[0]->getFromWarehouse()->getPkId()); $form->expected_arrival_date->setValue($saved_draft[0]->getExpectedArrivalDate()->format("d/m/Y")); $form->reference_number->setValue($saved_draft[0]->getReferenceNumber()); $form->stakeholder_activity_id->setValue($saved_draft[0]->getStakeholderActivity()->getPkId()); $form->description->setValue($saved_draft[0]->getDescription()); for ($i = 0; $i < $sum; $i++) { $rows = "rows" . $i; $form->{$rows}->item_pack_size_id->setValue($saved_draft[$i]->getItemPackSize()->getPkId()); $form->populateManufacturer($saved_draft[$i]->getItemPackSize()->getPkId(), $rows); $form->{$rows}->manufacturer_id->setValue($saved_draft[$i]->getManufacturer()->getPkId()); $form->{$rows}->vvm_type_id->setValue($saved_draft[$i]->getVvmType()->getPkId()); $form->{$rows}->batch_number->setValue($saved_draft[$i]->getBatchNumber()); $form->{$rows}->production_date->setValue($saved_draft[$i]->getProductionDate()->format("d/m/Y")); $form->{$rows}->expiry_date->setValue($saved_draft[$i]->getExpiryDate()->format("d/m/Y")); $form->{$rows}->unit_price->setValue($saved_draft[$i]->getUnitPrice()); $form->{$rows}->quantity->setValue($saved_draft[$i]->getQuantity()); } } } $em->getConnection()->commit(); } catch (Exception $e) { $em->getConnection()->rollback(); $em->close(); } $this->view->form = $form; $this->view->start = $start; $this->view->end = $end; }