private REGISTROLAB ComprobarSiExisteRlab()
 {
     PedidosDBDataContext ctx = new PedidosDBDataContext();
     var rlab = from registro in ctx.REGISTROLAB
                where registro.DOCU_ID_ORIGEN == _Pedido.DOCU_ID && registro.DOCU_NUMERO_ORIGEN == _Pedido.PEDID_ID
                select registro;
     if (rlab.Count() > 0)
     {
         return rlab.First();
     }
     else
         return null;
 }
Exemplo n.º 2
0
        private bool ValidarDatosINS()
        {

            PedidosDBDataContext dc = new PedidosDBDataContext();
            short? TIPO = 0; 
            string USUARIO = _USU_ID;
            string DOCU_ID = _DOCU_ID;
            string PEDID_ID = this.txtPEDID_ID.Text;
            string PEDID_SUREFERENCIA = this.txtPEDID_SUREFERENCIA.Text;
            int CLIE_ID = Utilidades.UtilsTipos.toInt(this.txtCLIE_ID.Text); // No nulo, necesita validar
            var clie = from c in dc.CLIENTES
                       where c.CLIE_ID == CLIE_ID
                       select c;
            if (clie.Count() == 0 )
            {
                MessageBox.Show("Error: Campo solicitante no válido");
                this.txtCLIE_ID.Select();
                return false;
            }

            int CLIE_ID1 = Utilidades.UtilsTipos.toInt(this.txtCLIE_ID1.Text); // No nulo, necesita validar
            var clie1 = from c in dc.CLIENTES
                        where c.CLIE_ID == CLIE_ID
                        select c;
            if (clie1.Count() == 0)
            {
                MessageBox.Show("Error: Campo envío (cliente) no válido");
                return false;
            }
            int CLIE_ID2 = Utilidades.UtilsTipos.toInt(this.txtCLIE_ID2.Text); // No nulo, necesita validar
            var clie2 = from c in dc.CLIENTES
                       where c.CLIE_ID == CLIE_ID
                       select c;
            if (clie2.Count() == 0)
            {
                MessageBox.Show("Error: Campo Facturación (cliente) no válido");
                return false;
            }
            int CLIE_ID3 = Utilidades.UtilsTipos.toInt(this.txtCLIE_ID3.Text); // No nulo, necesita validar
            var clie3 = from c in dc.CLIENTES
                       where c.CLIE_ID == CLIE_ID
                       select c;
            if (clie3.Count() == 0)
            {
                MessageBox.Show("Error: Campo Pago (cliente) no válido");
                return false;
            }
            if (!this.dtpPEDID_FECHA.Checked)
            {
                MessageBox.Show("Error: No ha confirmado la fecha del documento");
                this.dtpPEDID_FECHA.Select();
                return false;
            }
            string PEDID_FECHA = this.dtpPEDID_FECHA.Value.ToString("yyyy-MM-dd"); // No nulo, necesita validar
            if (!this.dtpPEDID_FECHAP.Checked)
            {
                MessageBox.Show("Error: No ha confirmado la fecha prevista");
                this.dtpPEDID_FECHAP.Select();
                return false;
            }
            string PEDID_FECHAP = this.dtpPEDID_FECHAP.Value.ToString("yyyy-MM-dd"); // No nulo, necesita validar
            string PEDID_FECHAM = null;
            if(this.dtpPEDID_FECHAM.Checked) PEDID_FECHAM = this.dtpPEDID_FECHAM.Value.ToString("yyyy-MM-dd"); // Necesita validar
            string PEDID_FECHAPG = null; // No se lo que es; // Necesita validar
            string ALMA_ID = null; // No se usa
            int? PERS_ID = Utilidades.UtilsTipos.toIntN(this.txtPERS_ID.Text); // Necesita validar
            var pers_id = from c in dc.PERSONAL
                          where c.PERS_ID == PERS_ID
                          select c;
            if (PERS_ID != null && pers_id.Count() == 0)
            {
                MessageBox.Show("Error: Receptor no válido");
                return false;
            }
            int? PERS_ID1 = Utilidades.UtilsTipos.toIntN(this.txtPERS_ID1.Text); // Necesita validar
            var pers_id1 = from c in dc.PERSONAL
                          where c.PERS_ID == PERS_ID1
                          select c;
            if (PERS_ID1 != null && pers_id1.Count() == 0)
            {
                MessageBox.Show("Error: campo recoge muestra no válido");
                return false;
            }

            string ESTDOC_ID = this.txtESTDOC_ID.Text; // No nulo, necesita validar
            var estdoc_id = from e in dc.DOCUMENTOS_ESTADOS
                            where e.ESTDOC_ID == ESTDOC_ID
                            select e;
            if (estdoc_id.Count() == 0)
            {
                MessageBox.Show("Error: revise el estado del documento");
                return false;
            }
            int? GRDE_ID = Utilidades.UtilsTipos.toIntN(txtGRDE_ID.Text); // Necesita validar
            int? IRPF_ID = Utilidades.UtilsTipos.toIntN(txtIRPF_ID.Text); // Necesita validar
            int? PEDID_RECFIN = Utilidades.UtilsTipos.toIntN(txtPEDID_RECFIN.Text); // Necesita validar
            string MONEDA_ID = this.txtMONEDA_ID.Text; // No nulo, necesita validar 
            var moneda = from c in dc.MONEDAS
                         where c.MONEDA_ID == MONEDA_ID
                         select c;
            if(moneda.Count() == 0)
            {
                MessageBox.Show("Error: moneda no válida");
                return false;
            }
            int FPAGO_ID = Utilidades.UtilsTipos.toInt(txtFPAGO_ID.Text);   // No nulo, necesita validar  
            var fpago = from c in dc.FORMAS_PAGO
                        where c.FPAGO_ID == FPAGO_ID
                        select c;
            if(fpago.Count() == 0)
            {
                MessageBox.Show("Error: Forma de pago no válida");
                return false;
            }
            string PEDID_ENTIDAD = txtPEDID_ENTIDAD.Text; // No nulo
            string PEDID_DIRPAGO = txtPEDID_DIRPAGO.Text; // No nulo
            short PEDID_BANCO = (short)Utilidades.UtilsTipos.toInt(txtPEDID_BANCO.Text);
            short PEDID_SUCURSAL = (short)Utilidades.UtilsTipos.toInt(txtPEDID_SUCURSAL.Text);
            short PEDID_DC = (short)Utilidades.UtilsTipos.toInt(txtPEDID_DC.Text); 
            string PEDID_CC = txtPEDID_CC.Text; 
            string TIPORT_ID = txtTIPORT_ID.Text;
            var tiport_id = from c in dc.TIPOS_PORTE
                            where c.TIPORT_ID == TIPORT_ID
                            select c;
            if (tiport_id.Count() == 0)
            {
                MessageBox.Show("Error: Tipo de porte no válido");
                this.txtTIPORT_ID.Select();
                return false;
            }

            short PEDID_ENTREGA = (short)Utilidades.UtilsTipos.toInt(txtPEDID_ENTREGA.Text); 
            string PEDID_ANOTACIONES = txtPEDID_ANOTACIONES.Text; 
            string DOCUD_NOMBRE = txtDOCUD_NOMBRE.Text;
            string DOCUD_RAZONSOCIAL = txtDOCUD_RAZONSOCIAL.Text;
            string DOCUD_NIF = txtDOCUD_NIF.Text;
            string DOCUD_DIRECCION = txtDOCUD_DIRECCION.Text;
            string DOCUD_CP = txtDOCU_CP.Text;
            string DOCUD_POBLACION = txtDOCUD_POBLACION.Text;
            string DOCUD_PROVINCIA = txtDOCUD_PROVINCIA.Text;
            string PAIS_ID = txtPAIS_ID.Text;
            var pais_id = from c in dc.PAISES
                          where c.PAIS_ID == PAIS_ID
                          select c;
            if (pais_id.Count() == 0)
            {
                MessageBox.Show("Error: Campo país no válido");
                return false;
            }
            string DOCUD_TELEFONO = txtDOCUD_TELEFONO.Text;
            string DOCUD_TELEFONO1 = txtDOCU_TELEFONO1.Text;
            string DOCUD_MOVIL = txtDOCU_MOVIL.Text;
            string DOCUD_EMAIL = txtDOCUD_EMAIL.Text;
            string DOCUD_WEB = txtDOCUD_WEB.Text;
            string DOCUD_EAN = txtDOCUD_EAN.Text;
            string CLIEGF_ID = null; // No se mete al crear el acta            
            string HORA_AVISO = "";
            if (this.dtpHORA_AVISO.Checked)
            HORA_AVISO = dtpHORA_AVISO.Value.ToString(); // No nulo, necesita validar
            string PEDID_B = ""; // No nulo, necesita validar
            string ARTI_ID = this.txtARTI_ID.Text; //necesita validar
            var arti_id = from c in dc.ARTICULOS
                          where c.ARTI_ID == ARTI_ID
                          select c;
            if (arti_id.Count() == 0)
            {
                ARTI_ID = null;
            }
            int? AGENTE_EXTERNO = Utilidades.UtilsTipos.toIntN(txtAGENTE.Text);
            int? AGENTE_INTERNO = Utilidades.UtilsTipos.toIntN(txtAGENTE.Text);
            int? REPRE_ID = Utilidades.UtilsTipos.toIntN(txtREPRE_ID.Text);            
            string APLICA_PRECIO_MEDIADOR = "1";
            if (xBoxAplicaPrecios.Checked)
            {
                APLICA_PRECIO_MEDIADOR = "0";
            }
            string XML = "<?xml version=\"1.0\" encoding=\"windows-1252\"?><ROOT />";

            this.txtPEDID_ID.Text = ctx.INS(TIPO, USUARIO, DOCU_ID, ref PEDID_ID, PEDID_SUREFERENCIA,
            CLIE_ID, CLIE_ID1, CLIE_ID2, CLIE_ID3, PEDID_FECHA, PEDID_FECHAP, PEDID_FECHAM,
            PEDID_FECHAPG, ALMA_ID, PERS_ID, PERS_ID1, ESTDOC_ID, GRDE_ID, IRPF_ID, PEDID_RECFIN,
            MONEDA_ID, FPAGO_ID, PEDID_ENTIDAD, PEDID_DIRPAGO, PEDID_BANCO, PEDID_SUCURSAL, PEDID_DC,
            PEDID_CC, TIPORT_ID, PEDID_ENTREGA, PEDID_ANOTACIONES, DOCUD_NOMBRE, DOCUD_RAZONSOCIAL,
            DOCUD_NIF, DOCUD_DIRECCION, DOCUD_CP, DOCUD_POBLACION, DOCUD_PROVINCIA, PAIS_ID, DOCUD_TELEFONO,
            DOCUD_TELEFONO1, DOCUD_MOVIL, DOCUD_EMAIL, DOCUD_WEB, DOCUD_EAN, CLIEGF_ID, HORA_AVISO, PEDID_B,
            ARTI_ID, AGENTE_EXTERNO, AGENTE_INTERNO, REPRE_ID, APLICA_PRECIO_MEDIADOR, XML);
            _PEDID_ID = this.txtPEDID_ID.Text;
            MessageBox.Show("Acta creada Correctamente");
            insert = false;
            dc.Dispose();
            return true; 
         
        }
Exemplo n.º 3
0
        private void AbrirRLAB()
        {
            // Se monta el objeto pedido para enviarlo al RLAB
            PedidosDBDataContext ctx = new PedidosDBDataContext();
            PEDIDOSV pv;
            var pedido = from este in ctx.PEDIDOSV
                         where este.DOCU_ID == txtDOCU_ID.Text && este.PEDID_ID == txtPEDID_ID.Text
                         select este;
            if (pedido.Count() > 0)
                pv = pedido.First();

            else
            {
                MessageBox.Show("Error al intentar abrir la ventana de RLAB. El pedido aun no se ha guardado");
                return;
            }
            // Validar matriz
            var articulo = from matriz in ctx.ARTICULOS
                           where matriz.ARTI_ID == pv.ARTI_ID
                           select matriz;
            if (articulo.Count() == 0)
            {
                MessageBox.Show("No se puede crear RLAB si no hay una matriz válida");
                return;
            }
            RegistroLaboratorioPedidoV rlab = new RegistroLaboratorioPedidoV();
            rlab._USUARIO = this._USU_ID;
            rlab._Pedido = pv;
            rlab.ShowDialog();
            if (rlab.DialogResult == DialogResult.OK)
            {
                this.txtREGLAB_ID.Text = rlab._Reglab_ID;
            }
        }
Exemplo n.º 4
0
        private void txtCLIE_ID_TextChanged(object sender, EventArgs e)
        {
            // Cierra alertas previas
            foreach (Form frm in Application.OpenForms)
            {
                if (frm.GetType() == typeof(Auxiliares.Alertas.AlertaPopUp))
                {
                    frm.Close();
                    frm.Dispose();
                    break;
                }
            }

            PedidosDBDataContext dc = new PedidosDBDataContext();
            
            var cliente = from c in dc.CLIENTES
                          where c.CLIE_ID == Utilidades.UtilsTipos.toInt(txtCLIE_ID.Text)
                          select c;
            if (cliente.Count() != 0)
            {
                // Comprobación de bloqueos
                var cliente_bloqueo = from cb in dc.CLIENTE_BLOQUEO
                                      where cb.CLIE_ID == cliente.First().CLIE_ID && cb.ACTA == true
                                      select cb.CLIE_ID;
                if (cliente_bloqueo.Count() > 0)
                {
                    MessageBox.Show("El cliente seleccionado tiene las actas bloqueadas. Por favor, avise al responsable para gestionar el problema debidamente.");
                    bloqueo = true;
                    return;
                }
                else
                {
                    bloqueo = false;
                }
                // Comprobación de alertas
                Auxiliares.Alertas.AlertaPopUp popup = new Auxiliares.Alertas.AlertaPopUp();
                popup.docu_id = _DOCU_ID;
                popup.clie_id = cliente.First().CLIE_ID;
                popup.Text = cliente.First().CLIE_DESCRIPCION;
                popup.Visible = false;
                popup.Show();
                if (popup.mensajes == 0)
                {
                    popup.Close();
                    popup.Dispose();
                }
                else
                {
                    popup.Visible = true;
                    popup.TopMost = true;
                }
                
            }
            dc.Dispose();
         
            
        }
Exemplo n.º 5
0
        private void lblCrearDetalle_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            
            PedidosDBDataContext dc = new PedidosDBDataContext();
            string PEDID_ID = txtPEDID_ID.Text;
            var pedid_id = from p in dc.PEDIDOSV
                           where p.PEDID_ID == PEDID_ID
                           select p;

            if (pedid_id.Count() == 0)
            {
                MessageBox.Show("Debe guardar el pedido antes de crear el detalle");
                insert = true;
                return;
            }
            string ARTI_ID = txtARTI_ID.Text;
            var arti_id = from a in dc.ARTICULOS
                          where a.ARTI_ID == ARTI_ID
                          select a;
            if (arti_id.Count() == 0)
            {
                MessageBox.Show("Indique la matriz antes de crear el detalle");
                return;
            }

            AbrirCrearDetalle();
            

        }
 private void txtREGLAB_PERSONAENTRADA_TextChanged(object sender, EventArgs e)
 {
     PedidosDBDataContext ctx = new PedidosDBDataContext();
     var nombre = from persona in ctx.PERSONAL
                  where persona.PERS_ID == Utilidades.UtilsTipos.toInt(txtREGLAB_PERSONAENTRADA.Text)
                  select persona.PERS_NOMBRE;
     if (nombre.Count() > 0)
          lblPERS_NOMBRE.Text = nombre.First();
     else
         lblPERS_NOMBRE.Text = string.Empty;
 }
 private void txtREGLAB_RECOGEDOR_TextChanged(object sender, EventArgs e)
 {
     PedidosDBDataContext ctx = new PedidosDBDataContext();
     var ids = from persona in ctx.PERSONAL
               where persona.PERS_NOMBRE == txtREGLAB_RECOGEDOR.Text
               select persona.PERS_ID.ToString();
     if (ids.Count() > 0)
         txtRECOGEDOR_PERS_ID.Text = ids.First();
     else
         txtRECOGEDOR_PERS_ID.Text = string.Empty;
 }
 private void txtNIVURG_ID_TextChanged(object sender, EventArgs e)
 {
     PedidosDBDataContext ctx = new PedidosDBDataContext();
     var urgencias = from urg in ctx.NIVEL_URGENCIA
                     where urg.NIVURG_ID == Utilidades.UtilsTipos.toInt(txtNIVURG_ID.Text)
                     select urg.NIVURG_DESCRIPCION;
     if (urgencias.Count() > 0)
         lblNIVURG_DESCRIPCION.Text = urgencias.First();
     else
         lblNIVURG_DESCRIPCION.Text = string.Empty;
     ctx.Dispose();            
 }
 private bool validarPersonaFitosoil(int pers_id)
 {
     PedidosDBDataContext ctx = new PedidosDBDataContext();
     var persona = from p in ctx.PERSONAL
                   where p.PERS_ID == pers_id
                   select p;
     if (persona.Count() > 0)
     {
         return true;
     }
     else
     {
         return false;
     }
 }
Exemplo n.º 10
0
        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");
            }

        }
Exemplo n.º 11
0
 private void Autocompleta(TextBox tb)
 {
     PedidosDBDataContext ctx = new PedidosDBDataContext();
     AutoCompleteStringCollection a = new AutoCompleteStringCollection();
     if(txtREGLAB_EMPRESAMUESTREO.Text == "0")
     {
         tb.AutoCompleteMode = AutoCompleteMode.Append;
         var nombres = from n in ctx.PERSONAL
                   select n.PERS_NOMBRE;                
         List<string> lista = nombres.ToList(); 
         foreach (string s in lista)
         {
             a.Add(s);
         }
         tb.AutoCompleteCustomSource = a;                     
     }
     else
     {
         tb.AutoCompleteMode = AutoCompleteMode.None;
         tb.AutoCompleteSource = AutoCompleteSource.None;
         return;
     }
 }
Exemplo n.º 12
0
        private void BuscarUsuario()
        {
            // Llamar al proc. alm. que valida el usuario.
            PedidosDBDataContext ctx = new PedidosDBDataContext();

            // Consulta Linq para obtener el nombre de la persona que rellena el registro
            string pers_id, pers_nombre;
            var query = from usuario in ctx.USUARIOS
                        join persona in ctx.PERSONAL on usuario.USU_ID equals persona.USU_ID
                        where (usuario.USU_ID == _USUARIO)
                        select new { persona.PERS_ID, persona.PERS_NOMBRE };
            
            List<string> per_usu = new List<string>();
            if (query.Count() > 0)
            {
                pers_id = query.First().PERS_ID.ToString();
                pers_nombre = query.First().PERS_NOMBRE;
                this.txtREGLAB_PERSONAENTRADA.Text = pers_id; // REGLAB_PERSONAENTRADA
                this.lblPERS_NOMBRE.Text = pers_nombre; // Solo descriptivo. No va a bbdd
            }
            ctx.Dispose();
        }
Exemplo n.º 13
0
        // A ejecutar cuando no hay REGLAB asociado al pedido
        private void GenerarNuevoRLAB()
        {
            PedidosDBDataContext ctx = new PedidosDBDataContext();
            // Obtener el cliente
            this.lblCLIE_ID.Text = this._Pedido.CLIE_ID.ToString();

            // Obtener matriz
            string arti_id = _Pedido.ARTI_ID;
            var matriz = from articulo in ctx.ARTICULOS
                         where articulo.ARTI_ID == arti_id
                         select articulo.ARTI_ID1;
            if (matriz.Count() > 0)
            {
                lblARTI_ID1.Text = matriz.First().ToString();
            }

            lblDOCU_ID.Text = "RLAB"; // _REGISTROLAB.DOCU_ID
            lblDOCU_ID_ORIGEN.Text = this._Pedido.DOCU_ID;
            lblDOCU_NUMERO_ORIGEN.Text = this._Pedido.PEDID_ID;

            ValidarOtrosCamposNoEditables();

            dtpFechaEntradaMuestra.Value = DateTime.Now; // REGLAB_FECHA en formato toString("yyyy-MM-dd")
            dtpHoraEntradaMuestra.Value = DateTime.Now; // REGLAB_HORA en formato toString("HH:mm");  

            cbREGLAB_EMPRESAMUESTREO.SelectedIndex = 0;
            cbREGLAB_EMPRESARECOGIDA.SelectedIndex = 0;

            BuscarUsuario();             
           
        }
Exemplo n.º 14
0
        private void ValidarOtrosCamposNoEditables()
        {
            PedidosDBDataContext ctx = new PedidosDBDataContext();
            // Validar Cliente (Rellena el campo descripción)
            int c = Utilidades.UtilsTipos.toInt(lblCLIE_ID.Text);
            var cliente = from cli in ctx.CLIENTES
                          where cli.CLIE_ID == c
                          select cli.CLIE_DESCRIPCION;
            if (cliente.Count() > 0)
            {
                lblCLIE_DESCRIPCION.Text = cliente.First();
            }
            else
            {
                lblCLIE_DESCRIPCION.Text = string.Empty;
            }

            // Validar Matriz (Rellena ARTI_ID y ARTI_DESCRIPCIÓN, a partir de ARTI_ID1)
            int m = Utilidades.UtilsTipos.toInt(lblARTI_ID1.Text);
            var matriz = from mt in ctx.ARTICULOS
                         where mt.ARTI_ID1 == m
                         select new { mt.ARTI_ID, mt.ARTI_DESCRIPCION };
            if (matriz.Count() > 0)
            {
                lblARTI_ID.Text = matriz.First().ARTI_ID;
                lblARTI_DESCRIPCION.Text = matriz.First().ARTI_DESCRIPCION;
            }
            else
            {
                lblARTI_DESCRIPCION.Text = string.Empty;
            }

            // Validar Documento
            var documento = from doc in ctx.DOCUMENTOS
                            where doc.DOCU_ID == lblDOCU_ID_ORIGEN.Text
                            select doc.DOCU_DESCRIPCION;
            if (documento.Count() > 0)
            {
                lblDOCU_DESCRIPCION.Text = documento.First();
            }
            else lblDOCU_DESCRIPCION.Text = string.Empty;
            ctx.Dispose();            
        }