private void InsertRLAB()
 {
     RegistroLaboratorioPedidoVDBDataContext ctx = new RegistroLaboratorioPedidoVDBDataContext();
    
     try
     {
         ctx.REGISTROLAB_INS2(0, _USUARIO, _REGISTROLAB_NUEVO.DOCU_ID, ref _Reglab_ID, _REGISTROLAB_NUEVO.ESTDOC_ID,
             _REGISTROLAB_NUEVO.REGLAB_FECHA, _REGISTROLAB_NUEVO.DOCU_ID_ORIGEN, _REGISTROLAB_NUEVO.DOCU_NUMERO_ORIGEN,
             _REGISTROLAB_NUEVO.ARTI_ID1, _REGISTROLAB_NUEVO.REGLAB_ANOTACIONES, _REGISTROLAB_NUEVO.REGLAB_XML,
             _REGISTROLAB_NUEVO.SUREFERENCIA, _REGISTROLAB_NUEVO.CLIE_ID, _REGISTROLAB_NUEVO.NIVURG_ID,
             _REGISTROLAB_NUEVO.REGLAB_HORA, _REGISTROLAB_NUEVO.REGLAB_FECHAMUESTREO, _REGISTROLAB_NUEVO.REGLAB_HORAMUESTREO,
             _REGISTROLAB_NUEVO.REGLAB_FECHAMAXIMA, _REGISTROLAB_NUEVO.REGLAB_HORAMAXIMA, _REGISTROLAB_NUEVO.REGLAB_EMPRESAMUESTREO,
             _REGISTROLAB_NUEVO.REGLAB_MUESTREADOR, _REGISTROLAB_NUEVO.REGLAB_FECHARECOGIDA, _REGISTROLAB_NUEVO.REGLAB_HORARECOGIDA,
             _REGISTROLAB_NUEVO.REGLAB_EMPRESARECOGIDA, _REGISTROLAB_NUEVO.REGLAB_RECOGEDOR, _REGISTROLAB_NUEVO.REGLAB_PERSONAENTRADA,
             _REGISTROLAB_NUEVO.MUESTRA_DESCRIPCION, _REGISTROLAB_NUEVO.MUESTRA_REF1, _REGISTROLAB_NUEVO.MUESTRA_REF2,
             _REGISTROLAB_NUEVO.MUESTRA_REF3, _REGISTROLAB_NUEVO.MUESTRA_OBSERVACIONES, _REGISTROLAB_NUEVO.MUESTREADOR_PERS_ID,
             _REGISTROLAB_NUEVO.RECOGEDOR_PERS_ID);
         _REGISTROLAB_NUEVO.REGLAB_ID = _Reglab_ID;
         MessageBox.Show("Documento guardado Correctamente");
         this.DialogResult = DialogResult.OK;
         this.Close();
     }
     catch (Exception e)
     {
         MessageBox.Show("Error al insertar " + e);
     }
     
 }
        private void UpdateRLAB()
        {
            RegistroLaboratorioPedidoVDBDataContext ctx = new RegistroLaboratorioPedidoVDBDataContext();
            PedidosDBDataContext pvctx = new PedidosDBDataContext();                   
            var rlab = from r in pvctx.REGISTROLAB
                       where r.DOCU_ID == _REGISTROLAB_NUEVO.DOCU_ID && r.REGLAB_ID == _REGISTROLAB_NUEVO.REGLAB_ID
                       select r;
            if (rlab.Count() > 0)
            {
                try
                {
                    ctx.REGISTROLAB_UPD1(0, _USUARIO, _REGISTROLAB_NUEVO.DOCU_ID, _REGISTROLAB_NUEVO.REGLAB_ID, _REGISTROLAB_NUEVO.REGLAB_FECHA,
                        _REGISTROLAB_NUEVO.ARTI_ID1, _REGISTROLAB_NUEVO.REGLAB_ANOTACIONES, _REGISTROLAB_NUEVO.REGLAB_XML, _REGISTROLAB_NUEVO.SUREFERENCIA,
                        _REGISTROLAB_NUEVO.CLIE_ID, _REGISTROLAB_NUEVO.NIVURG_ID, _REGISTROLAB_NUEVO.REGLAB_HORA, _REGISTROLAB_NUEVO.REGLAB_FECHAMUESTREO,
                        _REGISTROLAB_NUEVO.REGLAB_HORAMUESTREO, _REGISTROLAB_NUEVO.REGLAB_FECHAMAXIMA, _REGISTROLAB_NUEVO.REGLAB_HORAMAXIMA, _REGISTROLAB_NUEVO.REGLAB_EMPRESAMUESTREO, _REGISTROLAB_NUEVO.REGLAB_MUESTREADOR, _REGLAB_EXISTENTE.REGLAB_FECHARECOGIDA,
                        _REGISTROLAB_NUEVO.REGLAB_HORARECOGIDA, _REGISTROLAB_NUEVO.REGLAB_EMPRESARECOGIDA, _REGISTROLAB_NUEVO.REGLAB_RECOGEDOR,
                        _REGISTROLAB_NUEVO.REGLAB_PERSONAENTRADA, _REGISTROLAB_NUEVO.MUESTRA_DESCRIPCION, _REGISTROLAB_NUEVO.MUESTRA_REF1,
                        _REGISTROLAB_NUEVO.MUESTRA_REF2, _REGISTROLAB_NUEVO.MUESTRA_REF3, _REGISTROLAB_NUEVO.MUESTRA_OBSERVACIONES,
                        _REGISTROLAB_NUEVO.MUESTREADOR_PERS_ID, _REGISTROLAB_NUEVO.RECOGEDOR_PERS_ID);
                    _REGISTROLAB_NUEVO.REGLAB_ID = _Reglab_ID;
                    MessageBox.Show("Documento Actualizado Correctamente");
                    this.DialogResult = DialogResult.OK;
                    this.Close();
                }
                catch (Exception e)
                {
                    MessageBox.Show("Casque en " + e);
                }


                // Alternativa al procedimiento almacenado
                /*foreach (REGISTROLAB r in rlab)
                {
                    r.ARTI_ID1 = _REGISTROLAB_NUEVO.ARTI_ID1;
                    r.CLIE_ID = _REGISTROLAB_NUEVO.CLIE_ID;
                    r.DOCU_ID = _REGISTROLAB_NUEVO.DOCU_ID;
                    r.REGLAB_FECHAMAXIMA = _REGISTROLAB_NUEVO.REGLAB_FECHAMAXIMA;
                    // poner los demás
                }
                try
                {
                    pvctx.SubmitChanges();
                }
                catch (Exception e)
                {
                    MessageBox.Show("Casque en " + e);
                }*/
            }
            else
            {
                MessageBox.Show("No se puede actualizar si no existe RLAB válido");
            }

        }