コード例 #1
0
ファイル: Cargamasiva.php プロジェクト: hipogea/zega
 public function afterSave()
 {
     if ($this->isNewRecord) {
         /*  $model=new Inventario();
         		$objeto=$model->getMetaData();
         		foreach($objeto->columns as $columna)
         		{
         			echo "campo  ".$columna->name."    ancho ".$columna->size."  el tipo  : ".$columna->dbType."<br>";
         
         		}
         		print_r($objeto->columns);*/
         $this->iduser = yii::app()->user->id;
     } else {
         if ($this->numeroitems == 0) {
             $cadena = "\$modeloatratar=new " . $this->modelo . "('" . $this->escenario . "');";
             eval($cadena);
             $campos = $modeloatratar->getMetaData();
             //$modeloatratar->setScenario($this->escenario);
             //echo "el escanrio de   es :  ".$modeloatratar->getScenario();
             // Yii::app()->end();
             //$campos=$this->getMetaData();
             foreach ($campos->columns as $columna) {
                 if ($modeloatratar->isAttributeSafe(trim($columna->name))) {
                     //verificando si no se agregado antes
                     $registro = Cargamasivadet::model()->find("hidcarga=:vcarga and \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tnombrecampo=:vnombrecampo", array(':vcarga' => $this->id, ':vnombrecampo' => trim($columna->name)));
                     if (is_null($registro)) {
                         $registro = new Cargamasivadet();
                         $registro->nombrecampo = trim($columna->name);
                         $registro->hidcarga = $this->id;
                         $registro->aliascampo = trim($this->getAttributelabel($columna->name));
                         if ($modeloatratar->isAttributeRequired($columna->name)) {
                             $registro->requerida = '1';
                         }
                         $registro->activa = '1';
                         $registro->longitud = (is_null($columna->size) or trim($columna->size . '') == '') ? 20 : $columna->size;
                         $registro->tipo = $columna->dbType;
                         $registro->tipo = $columna->dbType;
                         $registro->save();
                     }
                 }
                 /*
                 											
                 											$validadores=$modeloatratar->getValidators();
                 											var_dump($validadores);
                 											yii::app()->end();
                 											$modcargadet->activa=$modeloatratar->rules();
                 											//$modcargadet->requerida=;*/
             }
         }
     }
     return parent::aftersave();
 }