/**
  * Build the order by part of a query.
  *
  * @param GeneralDataConfigDefault $objConfig
  *
  * @return string
  */
 protected function buildSortingQuery($objConfig)
 {
     $arrSorting = $objConfig->getSorting();
     $strReturn = '';
     $arrFields = array();
     if (!is_null($arrSorting) && is_array($arrSorting) && count($arrSorting) > 0) {
         foreach ($arrSorting as $strField => $strOrder) {
             if (!in_array($strOrder, array(DCGE::MODEL_SORTING_ASC, DCGE::MODEL_SORTING_DESC))) {
                 $strOrder = DCGE::MODEL_SORTING_ASC;
             }
             $arrFields[] = $strField . ' ' . $strOrder;
         }
         $strReturn .= ' ORDER BY ' . implode(', ', $arrFields);
     }
     return $strReturn;
 }
 /**
  * Fetch a variant of a single record by id.
  *
  * @param GeneralDataConfigDefault $objConfig
  *
  * @return InterfaceGeneralModel
  */
 public function createVariant(GeneralDataConfigDefault $objConfig)
 {
     $objItem = $this->objMetaModel->findById($objConfig->getId())->varCopy();
     if (!$objItem) {
         return null;
     }
     return new GeneralModelMetaModel($objItem);
 }