public function actionCreate($idosplan)
 {
     $model = new Arancel();
     $model->idosplan = $idosplan;
     // ver si existe nomenclador antes de cargar aranceles
     $nomencladorplan = new Nomencladorplan('search');
     $nomencladorplan->idosplan = $idosplan;
     if ($nomencladorplan->search()->itemCount == 0) {
         // si no existe, mostrar mensaje y redirigir
         $this->setFlash('notice', array('title' => 'Mensaje', 'content' => 'Esta cuenta no tiene Nomenclador !'));
         $this->redirect(array('/osplan/manage'));
     }
     // analizar acreditacionplan
     $modelplan = Osplan::model()->findByPk($idosplan);
     // variable para pedir en _form las unidades segun acreditacion profesional
     $acreditacion = false;
     if ($modelplan->idacreditacionosplan == Acreditacionosplan::ACREDITADO_O_NO_ACREDITADO) {
         //// habilitar el select en el formulario de carga
         // de arancel para permitir cargar los  aranceles para acreditado /no acreditado
         $acreditacion = true;
     }
     if (isset($_POST['Arancel'])) {
         $model->setAttributes($_POST['Arancel']);
         try {
             // valido aca, ya que hay dos save() mas abajo y no se mostrarian los errores
             if (!$model->validate()) {
                 throw new Exception();
             }
             // cuando Acreditacionosplan NO DISCRIMINA
             // grabar dos registros en arancel con
             // idacreditacion 1 y 2, ACREDITADO  y NO ACREDITADO
             if ($modelplan->idacreditacionosplan == Acreditacionosplan::NO_DISCRIMINA) {
                 $model->idacreditacion = Acreditacionosplan::ACREDITADO;
                 $model->save();
                 $model = new Arancel();
                 $model->setAttributes($_POST['Arancel']);
                 $model->idacreditacion = Acreditacionosplan::NO_ACREDITADO;
                 $model->save();
             } else {
                 // para los otros casos de acreditacionosplan
                 $model->save();
             }
             $this->setFlash('notice', array('title' => 'Mensaje', 'content' => 'Se grabó correctamente.'));
             $this->redirect(array('manage', 'idosplan' => $model->idosplan));
         } catch (Exception $e) {
             // para el caso de error por clave duplicado, lo detecto y
             // pongo mensaje personalizado.
             // Para otro error, dejo el texto del error original
             $mensaje = $e->getCode() == 23000 ? "Ya existe ese Arancel !" : $e->getMessage();
             //                       $model->addError('', var_dump($e));
             $model->addError('', $mensaje);
         }
     }
     $this->render('create', array('model' => $model, 'acreditacion' => $acreditacion, 'modelplan' => $modelplan));
 }