Пример #1
0
 public function Pasacomprasolo($identidaddetalle, $hidguia)
 {
     //id del detalle solpe y el id de la cabecera de lacomrpa
     $modelodesolpe = Desolpe::Model()->findByPk($identidaddetalle);
     $docompratemporal = Docomprat::Model()->find("iddesolpe=:xiddesolpe and estadodetalle not in ('40')", array(":xiddesolpe" => $modelodesolpe->id));
     if ($docompratemporal === null) {
         $docompratemporal = new Docomprat();
         $docompratemporal->tipoimputacion = $modelodesolpe->tipimputacion;
         $docompratemporal->codentro = $modelodesolpe->centro;
         $docompratemporal->codigoalma = $modelodesolpe->codal;
         $docompratemporal->descri = $modelodesolpe->txtmaterial;
         $docompratemporal->detalle = $modelodesolpe->textodetalle;
         $docompratemporal->ceco = $modelodesolpe->imputacion;
         $docompratemporal->um = $modelodesolpe->um;
         $docompratemporal->tipoitem = $modelodesolpe->tipsolpe;
         $docompratemporal->cant = $modelodesolpe->cant;
         $docompratemporal->codart = $modelodesolpe->codart;
         $docompratemporal->punit = 0;
         $docompratemporal->iddesolpe = $modelodesolpe->id;
         $docompratemporal->iddocompra = -1;
         //importante para que pueda pasar al terompral como un regiustro agregado
         $docompratemporal->hidguia = $hidguia;
         //importante para que pueda pasar al terompral como un regiustro agregado
         $docompratemporal->setscenario('clonasolpe');
         //crietria para filtrar la cantidad de items del detalle
         $criterio = new CDbCriteria();
         $criterio->condition = "hidguia=:nguia  AND idsesion=:idsesionx";
         $criterio->params = array(':nguia' => $hidguia, ':idsesionx' => Yii::app()->user->getId());
         $docompratemporal->item = str_pad(Docomprat::model()->count($criterio) + 1, 3, "0", STR_PAD_LEFT);
         //$docompratemporal->estadodetalle='99';
         $docompratemporal->save();
         //echo $docompratemporal->save();
         //Yii::app()->end();
     }
 }
Пример #2
0
 public function actionAgregarsolpe($idcabeza, $cest)
 {
     //VERIFICADO PRIMERO SI ES POSIBLE AGREGAR MAS ITEMS
     if ($cest == '10' or $cest == '99') {
         $model = new Docomprat();
         //$model->valorespordefecto();
         // Uncomment the following line if AJAX validation is needed
         $this->performAjaxValidation1($model);
         if (isset($_POST['Docomprat'])) {
             $model->attributes = $_POST['Docomprat'];
             //$model->codocu='024'; ///detalle OcompraZACION
             //crietria para filtrar la cantidad de items del detalle
             $criterio = new CDbCriteria();
             $criterio->condition = "hidguia=:nguia  AND idsesion=:idsesionx";
             $criterio->params = array(':nguia' => $idcabeza, ':idsesionx' => Yii::app()->user->getId());
             $model->item = str_pad(Docomprat::model()->count($criterio) + 1, 3, "0", STR_PAD_LEFT);
             //str_pad($somevariable,$anchocampo,"0",STR_PAD_LEFT);
             ////con esto calculamos el numero de items
             $model->setscenario("solpe");
             if ($model->save()) {
                 if (!empty($_GET['asDialog'])) {
                     //Close the dialog, reset the iframe and update the grid
                     echo CHtml::script("window.parent.\$('#cru-dialogdetalle').dialog('close');\n\t\t\t\t\t\t\t\t\t\t\t\t\t                    window.parent.\$('#cru-detalle').attr('src','');\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\twindow.parent.\$.fn.yiiGridView.update('detalle-grid');\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\twindow.parent.\$.fn.yiiGridView.update('resumen-grid');\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t");
                     Yii::app()->end();
                 }
             }
         }
         if (!empty($_GET['asDialog'])) {
             $this->layout = '//layouts/iframe';
         }
         $this->render('_form_detalle_solpe', array('model' => $model, 'idcabeza' => $idcabeza));
     } else {
         //si ya cambio el estado impisble agregar mas items
         if (!empty($_GET['asDialog'])) {
             $this->layout = '//layouts/iframe';
         }
         $this->render('vw_imposible', array());
     }
 }