Dalam membuat aplikasi terkait inventory, kita mungkin akan memasukkan SN (serial number). Dalam sistem database, setiap sn akan masuk dalam setiap baris untuk memudahkan tracking, tetapi dalam melakukan input akan lebih baik jika kita bisa melakukan input bebarapa sekaligus.

Dalam Yii Framework kita dapat memodifikasi pada

  1. views/_form.php
        <div class=”row”>
            <?php echo $form->labelEx($model,’sn’); ?>
            <?php
             echo $form->textarea($model,’sn’,array(‘cols’=>30,’rows’=>5));
             ?>
            <?php echo $form->error($model,’sn’); ?>
        </div>
  2. Pada controller bagian create ubah menjadi seperti
        public function actionCreate($receive_item_id)
        {
            $model=new ReceiveOrderSn;
            $model->receive_item_id=(int)$receive_item_id;

            // Uncomment the following line if AJAX validation is needed
            // $this->performAjaxValidation($model);
            $cd_status_old=0;
            if ($model->receiveItem->receiveOrder->cd_status!=$cd_status_old)
            {
                $this->redirect(array(‘receiveItem/view’,’id’=>$model->receive_item_id));
                
            }

            if(isset($_POST[‘ReceiveOrderSn’]))
            {
                $model->attributes=$_POST[‘ReceiveOrderSn’];
                $trx=$model->dbConnection->beginTransaction();
                try
                {
                    $sn_asli=$model->sn;
                    $s_sn=$sn_asli;
                    $s_sn=ereg_replace(“\r\n”,”\n”,$s_sn);
                    $a_sn=explode(“\n”,$s_sn);
                    $total_sn=count($a_sn);
                    
                    for ($s=0;$s<$total_sn;$s++)
                    {
                        $model=new ReceiveOrderSn;
                        $model->receive_item_id=$receive_item_id;
                        $model->sn=$a_sn[$s];

                        $model->save();
                    }
                    
                    $trx->commit();
                    Yii::app()->user->setFlash(“pesan”,”Add Success”);
                    //$this->redirect(array(‘view’,’id’=>$model->ros_id));
                    $this->redirect(array(‘receiveItem/view’,’id’=>$model->receive_item_id));

                }
                catch(Exception $e)
                {
                   Yii::app()->user->setFlash(“pesan”,”ERROR: “.$e->getMessage());
                   $trx->rollback();
                }
            }
            if ($sn_asli)
            {
                $model->sn=$sn_asli;
            }

            $this->render(‘create’,array(
                ‘model’=>$model,
            ));
        }

Dengan demikian maka input awal SN bisa banyak Serial Number sekaligus

Kunjungi www.proweb.co.id untuk menambah wawasan anda.

Input SN (Serial Number) di Yii