<legend>Armar Nomenclador</legend>
<fieldset>
    
    
    <?php

// este formulario esta en un tab de osplan, cuando se ejecuta update osplan
// la busqueda de las practicas se hace enviando al controlador Practicas las 
//    opciones seleccionadas.
//Una vez hecha la seleccion, se envia con el formulario completo al controlador
//osplan/update
            
echo TbHtml::dropDownListControlGroup('idnomenclador',false, CHtml::listData(Nomenclador::model()->findAll(array('order' => 'nombre')), 'idnomenclador', 'nombre'),
     array(
         'prompt'=>'Seleccionar',
//         'label' =>'Nomenclador Base',
         'label'=>TbHtml::labelTb('Nomenclador base', array('color' => TbHtml::LABEL_COLOR_WARNING, 'style' => 'padding: 5px ; margin:-2px;')),

         
         // esta funcion la deshabilito y pongo el boton ajaxbutton mas abajo, para
         // enviar los datos idnomenclador junto con el filtro de tipo de practicas
         // 
//          'ajax' => array(
//                        'type' => 'GET', //request type, pongo GET para que funcione el pager en la _grillapracticas generada
//                        'dataType' => 'html',
//                        // data usa javascript, en otros casos, puede ser de la forma php array('id'=>'js:this.value')
//                        'data' => 'js:$(".tipopract:checked").serialize()+ "&idnomenclador=" + this.value',
//                        'url' => CController::createUrl('Practica/listarpracticaspornomenclador'), //url to call.
////                        'update' => "#formunidades",
//                        'success'=> 'js:function(data){ $("#form2").show();$("#formunidades").html(data).show()}',
//
                      'value'  => 'isset($data->codigo)?$data->codigo:""',
                      'htmlOptions'=>array('style'=>'width:60px;'),
                      'filter' => false,
                ),
        
         array(
                      'name'   => 'codigocarga',
                      'value'  => 'isset($data->codigocarga)?$data->codigocarga:""',
                     'htmlOptions'=>array('style'=>'width:60px;'),
                      'filter' => false,
                ),
        array(
                      'name'   => 'nombre',
                      'value'  => 'isset($data->nombre)?substr($data->nombre,0,50):""',
                      'filter' => false,
             'htmlOptions'=>array('style'=>'width:300px;'),
                ),
          array(
                      'name'   => 'idpractipo',
                      'value'  => 'isset($data->idpractipo0->nombre)?$data->idpractipo0->nombre:""',
                      'filter' => CHtml::listData(Practipo::model()->findAll(array('order'=>'nombre')),'idpractipo','nombre'),
                ),
        array(
                      'name'   => 'idnomenclador',
                      'value'  => 'isset($data->idnomenclador0->nombre)?$data->idnomenclador0->nombre:""',
                      'filter' => CHtml::listData(Nomenclador::model()->findAll(array('order'=>'nombre')),'idnomenclador','nombre'),
                ),

  ),
));
Beispiel #3
0
<?php echo $form->textFieldControlGroup($model, 'estadistica', array('size' => 60, 'maxlength' => 200)); ?>

<?php echo $form->checkBoxControlGroup($model, 'sangre'); ?>
<?php echo $form->checkBoxControlGroup($model, 'asitioweb'); ?>


    <?php echo $form->dropDownListControlGroup($model, 'idpractipo', CHtml::listData(Practipo::model()->findAll(array('order' => 'nombre')), 'idpractipo', 'nombre')); ?>
    <?php
    // al seleccionar el tipo de nomenclador, se envia por ajax la idnomenclador
    // al controlador CANTUNIDAD, accion formalta (Cantunidad/formalta)
    // la accion formalta utiliza el formulario //cantunidad/_form_alta
    // este formulario carga las unidades segun correspondan a ese nomenclador
    // y se muestra via ajax como respuesta
    
    echo $form->dropDownListControlGroup($model, 'idnomenclador', CHtml::listData(Nomenclador::model()->findAll(array('order' => 'nombre')), 'idnomenclador', 'nombre'), 
            
            array(
                'prompt'=>'Seleccionar',
                'id'=>'nomen',
                'ajax' => array(
                        'type' => 'POST', //request type
                        'dataType' => 'html',
                        'data' => array('idnomenclador' => 'js:this.value'),
                        'url' => CController::createUrl('Cantunidad/formalta'), //url to call.
                        'update' => "#formunidades",
            )
    ));
?>
    <div id="formunidades">
    </div>
Beispiel #4
0
 public function search3($idosplan)
 {
     // busqueda de las practicas incluidas en el nomencladorplan
     $criteria = new CDbCriteria();
     $criteria->compare('idosplan', $idosplan);
     $criteria->select = 'idpractica';
     $p = $this->findAll($criteria);
     // obtener arreglo de idpractica
     foreach ($p as $row) {
         $idpractica[] = $row->idpractica;
     }
     // busqueda en tabla practicas de los idnomenclador no repetidos
     //
     $criteria = new CDbCriteria();
     $criteria->addInCondition("idpractica", $idpractica);
     $criteria->select = 'idnomenclador';
     $criteria->distinct = true;
     $r = Practica::model()->findAll($criteria);
     // para cada idnomenclador obtener idunidad
     foreach ($r as $row) {
         $idnomenclador = $row->idnomenclador;
         //
         $idunidad[] = Nomenclador::model()->getUnidades($idnomenclador);
     }
     // retorna arreglo con las idunidades del nomenclador
     // recorrer doble arreglo $idunidad
     foreach ($idunidad as $row) {
         foreach ($row as $clave => $valor) {
             $unidad[] = $valor;
         }
     }
     return $unidad;
 }
 public function actionFormalta()
 {
     $idnomenclador = $_POST['idnomenclador'];
     $model = new Cantunidad();
     $unidades = Nomenclador::model()->getUnidadesNombre($idnomenclador);
     $this->renderPartial('_form_alta', array('model' => $model, 'unidades' => $unidades), false, true);
 }
Beispiel #6
0
 public function getColumnas()
 {
     return array(array('name' => 'idpractica', 'value' => 'isset($data->idpractica)?$data->idpractica:""', 'filter' => false, 'visible' => Yii::app()->user->categoria == Usuarios::SOFTWARE ? true : false), array('name' => 'codigo', 'value' => 'isset($data->codigo)?$data->codigo:""', 'filter' => false), array('name' => 'codigocarga', 'value' => 'isset($data->codigocarga)?$data->codigocarga:""', 'filter' => false), array('name' => 'nombre', 'value' => 'isset($data->nombre)?$data->nombre:""', 'filter' => false), array('name' => 'estadistica', 'value' => 'isset($data->estadistica)?$data->estadistica:""', 'filter' => false), array('name' => 'sangre', 'value' => '$data->sangre==1?"Si":"No"', 'htmlOptions' => array('style' => 'text-align:center;')), array('name' => 'asitioweb', 'value' => '$data->asitioweb==1?"Si":"No"', 'htmlOptions' => array('style' => 'text-align:center;')), array('name' => 'idpractipo', 'value' => 'isset($data->idpractipo0->nombre)?$data->idpractipo0->nombre:""', 'filter' => CHtml::listData(Practipo::model()->findAll(array('order' => 'nombre')), 'idpractipo', 'nombre')), array('name' => 'idnomenclador', 'value' => 'isset($data->idnomenclador0->nombre)?$data->idnomenclador0->nombre:""', 'filter' => CHtml::listData(Nomenclador::model()->findAll(array('order' => 'nombre')), 'idnomenclador', 'nombre')));
 }
 public function loadModel($id)
 {
     $model = Nomenclador::model()->findByPk($id);
     if ($model === null) {
         throw new CHttpException(404, Yii::t('app', 'The requested page does not exist.'));
     }
     return $model;
 }