function ProcessMessages()
 {
     $primaryKeyValues = $this->grid->GetPrimaryKeyValuesFromGet();
     $this->grid->GetDataset()->SetSingleRecordState($primaryKeyValues);
     $this->grid->GetDataset()->Open();
     if ($this->grid->GetDataset()->Next()) {
         $this->CheckRLSEditGrant();
         $columns = $this->grid->GetEditColumns();
         array_walk($columns, create_function('$column', '$column->ProcessMessages();'));
     } else {
         RaiseCannotRetrieveSingleRecordError();
     }
     $this->grid->GetDataset()->Close();
 }
 public function RenderRecordCardView(RecordCardView $recordCardView)
 {
     $Grid = $recordCardView->GetGrid();
     $linkBuilder = null;
     $primaryKeyMap = array();
     $Grid->GetDataset()->Open();
     $Row = array();
     if ($Grid->GetDataset()->Next()) {
         $linkBuilder = $Grid->CreateLinkBuilder();
         $linkBuilder->AddParameter(OPERATION_PARAMNAME, OPERATION_PRINT_ONE);
         $keyValues = $Grid->GetDataset()->GetPrimaryKeyValues();
         for ($i = 0; $i < count($keyValues); $i++) {
             $linkBuilder->AddParameter("pk{$i}", $keyValues[$i]);
         }
         $primaryKeyMap = $Grid->GetDataset()->GetPrimaryKeyValuesMap();
         $rowValues = $Grid->GetDataset()->GetFieldValues();
         $this->renderingRecordCardView = true;
         try {
             foreach ($Grid->GetSingleRecordViewColumns() as $Column) {
                 $Row[] = $Grid->renderCell($this, $Column, $rowValues);
             }
         } catch (Exception $e) {
             $this->renderingRecordCardView = false;
             throw $e;
         }
         $this->renderingRecordCardView = false;
     } else {
         RaiseCannotRetrieveSingleRecordError();
     }
     $customParams = array();
     $this->DisplayTemplate($Grid->GetPage()->GetCustomTemplate(PagePart::VerticalGrid, PageMode::ModalView, 'view/record_card_view.tpl', $customParams), array('Grid' => $Grid, 'Columns' => $Grid->GetSingleRecordViewColumns()), array_merge($customParams, array('PrintOneRecord' => $Grid->GetPage()->GetPrinterFriendlyAvailable(), 'PrintRecordLink' => $linkBuilder->GetLink(), 'Title' => $Grid->GetPage()->GetShortCaption(), 'PrimaryKeyMap' => $primaryKeyMap, 'ColumnCount' => count($Grid->GetSingleRecordViewColumns()), 'Row' => $Row)));
 }
示例#3
0
 public function GetViewSingleRowViewData(Renderer $renderer)
 {
     $detailViewData = array();
     $this->GetDataset()->Open();
     $linkBuilder = null;
     if ($this->GetDataset()->Next()) {
         $linkBuilder = $this->CreateLinkBuilder();
         $linkBuilder->AddParameter(OPERATION_PARAMNAME, OPERATION_PRINT_ONE);
         $keyValues = $this->GetDataset()->GetPrimaryKeyValues();
         for ($i = 0; $i < count($keyValues); $i++) {
             $linkBuilder->AddParameter("pk{$i}", $keyValues[$i]);
         }
         $primaryKeyMap = $this->GetDataset()->GetPrimaryKeyValuesMap();
         foreach ($this->details as $detail) {
             $detailViewData[] = array('Link' => $detail->GetSeparateViewLink(), 'Caption' => $detail->GetCaption());
         }
         return array('Details' => $detailViewData, 'CancelUrl' => $this->GetReturnUrl(), 'PrintOneRecord' => $this->GetPage()->GetPrinterFriendlyAvailable(), 'PrintRecordLink' => $linkBuilder->GetLink(), 'Title' => $this->GetPage()->GetShortCaption(), 'PrimaryKeyMap' => $primaryKeyMap, 'Row' => $this->GetViewSingleRowColumnViewData($renderer));
     } else {
         RaiseCannotRetrieveSingleRecordError();
         return null;
     }
 }
示例#4
0
 public function RenderRecordCardView(RecordCardView $recordCardView)
 {
     $Grid = $recordCardView->GetGrid();
     $linkBuilder = null;
     $primaryKeyMap = array();
     $Grid->GetDataset()->Open();
     $Row = array();
     if ($Grid->GetDataset()->Next()) {
         $linkBuilder = $Grid->CreateLinkBuilder();
         $linkBuilder->AddParameter(OPERATION_PARAMNAME, OPERATION_PRINT_ONE);
         $keyValues = $Grid->GetDataset()->GetPrimaryKeyValues();
         for ($i = 0; $i < count($keyValues); $i++) {
             $linkBuilder->AddParameter("pk{$i}", $keyValues[$i]);
         }
         $primaryKeyMap = $Grid->GetDataset()->GetPrimaryKeyValuesMap();
         $rowValues = $Grid->GetDataset()->GetFieldValues();
         foreach ($Grid->GetSingleRecordViewColumns() as $Column) {
             $columnName = $Grid->GetDataset()->IsLookupField($Column->GetName()) ? $Grid->GetDataset()->IsLookupFieldNameByDisplayFieldName($Column->GetName()) : $Column->GetName();
             $columnRenderResult = '';
             $customRenderColumnHandled = false;
             $Grid->OnCustomRenderColumn->Fire(array($columnName, $Column->GetData(), $rowValues, &$columnRenderResult, &$customRenderColumnHandled));
             $columnRenderResult = $customRenderColumnHandled ? $columnRenderResult : $this->Render($Column);
             $Row[] = $columnRenderResult;
         }
     } else {
         RaiseCannotRetrieveSingleRecordError();
     }
     $customParams = array();
     $this->DisplayTemplate($Grid->GetPage()->GetCustomTemplate(PagePart::VerticalGrid, PageMode::ModalView, 'view/record_card_view.tpl', $customParams), array('Grid' => $Grid, 'Columns' => $Grid->GetSingleRecordViewColumns()), array_merge($customParams, array('PrintOneRecord' => $Grid->GetPage()->GetPrinterFriendlyAvailable(), 'PrintRecordLink' => $linkBuilder->GetLink(), 'Title' => $Grid->GetPage()->GetShortCaption(), 'PrimaryKeyMap' => $primaryKeyMap, 'ColumnCount' => count($Grid->GetSingleRecordViewColumns()), 'Row' => $Row)));
 }