private string job_orden(string LMS, string orden)
        {
            LMS = LMS.Substring(0, 9);///

            con.conectar("NV");
            SqlCommand    comand7 = new SqlCommand("SELECT [COD_ORDEN] FROM [LDN].[PEDIDO_DET] where LMS LIKE '%" + LMS + "%'  group by [COD_ORDEN]", con.cmdnv);
            SqlDataReader dr7     = comand7.ExecuteReader();

            while (dr7.Read())
            {
                orden = Convert.ToString(dr7["COD_ORDEN"]);
            }
            dr7.Close();

            con.Desconectar("NV");

            if (orden == null || orden == "" || orden == string.Empty)
            {
                error = "NO_LAB";
                textBox1.Clear();
                marcado mar = new marcado();
                mar.ShowDialog();
            }


            return(orden);
        }
        private void insert()
        {
            ID_LAB_ANT = data.Substring(0, 2);


            ID_LAB_NEW = obtener_idlab(LOGIN.usuario_.ToUpper(), "");
            int caracteres = data.Length;

            if (codigotipo == "ORDEN")
            {
                ORDEN = data.Substring(3, (caracteres - 3));
            }
            else if (codigotipo == "JOB")
            {
                ORDEN = job_orden(data.Substring(3, (caracteres - 3)), "");
            }

            string reproce = reproceso(ORDEN, "1");

            //sql_insert();
            ///30406
            ///
            #region codigo comentado...
            // if (existe_marcacionbod(ORDEN))
            //{
            //  if (existe_marcacion(ORDEN, ID_LAB_NEW, reproce))
            //{
            #region codigo comentado...

            /*
             * if (reproce.Substring(0, 1) == "R")
             * {
             *
             *  //marcado mar = new marcado();
             *  //mar.ShowDialog();
             * }
             *
             * else
             * {
             *  con.conectar("LESA");
             *  SqlCommand cmd3 = new SqlCommand();
             *  cmd3.Connection = con.cmdls;
             *  Guid GuD = Guid.NewGuid();
             *  cmd3.CommandText = "  INSERT INTO [LDN].["+Exten_+"].[LABORATORIO_SEG] ([ID_LAB],[ID_ORDER],[FECHA_ING],[REPROCESO],[FECHA_REPRO],[ROWID],[USER_INGRESO],[USER_AUTORIZA_REP],[ESTADO]) values (@ID_LAB,@ID_ORDER,@FECHA_ING,@REPROCESO,@FECHA_REPRO,@ROWID,@USER_INGRESO,@USER_AUTORIZA_REP,@ESTADO) ";
             *  cmd3.Parameters.Add("@ID_LAB", SqlDbType.NVarChar).Value = ID_LAB_NEW;
             *  cmd3.Parameters.Add("@ID_ORDER", SqlDbType.VarChar).Value = ORDEN;
             *  cmd3.Parameters.Add("@FECHA_ING", SqlDbType.DateTime).Value = Convert.ToDateTime(fecha);
             *  cmd3.Parameters.Add("@REPROCESO", SqlDbType.NVarChar).Value = reproce;
             *  cmd3.Parameters.Add("@FECHA_REPRO", SqlDbType.DateTime).Value = Convert.ToDateTime(fecha);
             *  cmd3.Parameters.Add("@ROWID", SqlDbType.UniqueIdentifier).Value = GuD;
             *  cmd3.Parameters.Add("@USER_INGRESO", SqlDbType.NVarChar).Value = LOGIN.usuario_;
             *  cmd3.Parameters.Add("@USER_AUTORIZA_REP", SqlDbType.NVarChar).Value = "NA";
             *  cmd3.Parameters.Add("@ESTADO", SqlDbType.Char).Value = "P";
             *
             *  cmd3.ExecuteNonQuery();
             *
             *  con.Desconectar("LESA");
             *
             *  update_estado();
             *
             *  ORDEN_SHOW = ORDEN;
             *  textBox1.Clear();
             *  //marcado mar = new marcado();
             *  //mar.ShowDialog();
             *
             * }
             */
            #endregion codigo comentado...
            //}

            //else
            //{
            //  textBox1.Clear();
            //}


            #endregion codigo comentado...


            if (existe_marcacion_lab_actual(ORDEN, ID_LAB_ANT))
            {
                update_estado();

                con.conectar("LESA");
                SqlCommand cmd3 = new SqlCommand();
                cmd3.Connection = con.cmdls;
                Guid GuD = Guid.NewGuid();
                cmd3.CommandText = "  INSERT INTO [LDN].[" + Exten_ + "].[LABORATORIO_SEG] ([ID_LAB],[ID_ORDER],[FECHA_ING],[REPROCESO],[FECHA_REPRO],[ROWID],[USER_INGRESO],[USER_AUTORIZA_REP],[ESTADO]) values (@ID_LAB,@ID_ORDER,@FECHA_ING,@REPROCESO,@FECHA_REPRO,@ROWID,@USER_INGRESO,@USER_AUTORIZA_REP,@ESTADO) ";
                cmd3.Parameters.Add("@ID_LAB", SqlDbType.NVarChar).Value            = ID_LAB_NEW;
                cmd3.Parameters.Add("@ID_ORDER", SqlDbType.VarChar).Value           = ORDEN;
                cmd3.Parameters.Add("@FECHA_ING", SqlDbType.DateTime).Value         = Convert.ToDateTime(fecha);
                cmd3.Parameters.Add("@REPROCESO", SqlDbType.NVarChar).Value         = 'N';
                cmd3.Parameters.Add("@FECHA_REPRO", SqlDbType.DateTime).Value       = Convert.ToDateTime(fecha);
                cmd3.Parameters.Add("@ROWID", SqlDbType.UniqueIdentifier).Value     = GuD;
                cmd3.Parameters.Add("@USER_INGRESO", SqlDbType.NVarChar).Value      = LOGIN.usuario_;
                cmd3.Parameters.Add("@USER_AUTORIZA_REP", SqlDbType.NVarChar).Value = "NA";
                cmd3.Parameters.Add("@ESTADO", SqlDbType.Char).Value = "P";

                cmd3.ExecuteNonQuery();

                con.Desconectar("LESA");



                ORDEN_SHOW = ORDEN;
                error      = "CORRECTO";
                textBox1.Clear();
                marcado mar = new marcado();
            }
            else
            {
                ///que es lo que la orden no tiene para indicar el error...
                ///1. codigo de barras
                ///no esta en el laboratorio
                ///si esta en el laboratorio pero no hay registro en el area que la an mandado y la estan escaneandno en otro lugar..

                if (codigo_barras_job())
                {
                    //mensaje notiene codigo del lms no tiene...
                    error = "NO_LAB";

                    ORDEN_SHOW = ORDEN;
                    marcado mar = new marcado();
                    mar.ShowDialog();
                    textBox1.Clear();
                }
                else if (con_estado_laboratorio())
                {
                    ///mensaje no esta en el laboratorio...

                    error = "LMS";

                    ORDEN_SHOW = ORDEN;
                    marcado mar = new marcado();
                    mar.ShowDialog();
                    textBox1.Clear();
                }
            }
        }
        private void insert()
        {
            ID_LAB_ANT = data.Substring(0, 2);


            ID_LAB_NEW = obtener_idlab(LOGIN.usuario_.ToUpper(), "");
            int caracteres = data.Length;

            if (codigotipo == "ORDEN")
            {
                ORDEN = data.Substring(3, (caracteres - 3));
                error = "NO";
            }
            else if (codigotipo == "JOB")
            {
                ORDEN = job_orden(data.Substring(3, (caracteres - 3)), "");
            }
            string reproce = reproceso(ORDEN, "1");


            if (existe_marcacionbod(ORDEN))
            {
                if (existe_marcacion(ORDEN, ID_LAB_NEW, reproce))
                {
                    if (reproce.Substring(0, 1) == "R")
                    {
                        con.conectar("LESA");
                        SqlCommand cmd3 = new SqlCommand();
                        cmd3.Connection = con.cmdls;
                        Guid GuD = Guid.NewGuid();
                        cmd3.CommandText = "  INSERT INTO [LDN].[" + Exten_ + "].[LABORATORIO_SEG] ([ID_LAB],[ID_ORDER],[FECHA_ING],[REPROCESO],[FECHA_REPRO],[ROWID],[USER_INGRESO],[USER_AUTORIZA_REP],[ESTADO]) values (@ID_LAB,@ID_ORDER,@FECHA_ING,@REPROCESO,@FECHA_REPRO,@ROWID,@USER_INGRESO,@USER_AUTORIZA_REP,@ESTADO) ";
                        cmd3.Parameters.Add("@ID_LAB", SqlDbType.NVarChar).Value            = ID_LAB_NEW;
                        cmd3.Parameters.Add("@ID_ORDER", SqlDbType.VarChar).Value           = ORDEN;
                        cmd3.Parameters.Add("@FECHA_ING", SqlDbType.DateTime).Value         = Convert.ToDateTime(fecha);
                        cmd3.Parameters.Add("@REPROCESO", SqlDbType.NVarChar).Value         = reproce;
                        cmd3.Parameters.Add("@FECHA_REPRO", SqlDbType.DateTime).Value       = Convert.ToDateTime(fecha);
                        cmd3.Parameters.Add("@ROWID", SqlDbType.UniqueIdentifier).Value     = GuD;
                        cmd3.Parameters.Add("@USER_INGRESO", SqlDbType.NVarChar).Value      = LOGIN.usuario_;
                        cmd3.Parameters.Add("@USER_AUTORIZA_REP", SqlDbType.NVarChar).Value = "NA";
                        cmd3.Parameters.Add("@ESTADO", SqlDbType.Char).Value = "P";

                        cmd3.ExecuteNonQuery();

                        con.Desconectar("LESA");

                        update_estado(); /// solo cambia el estado..

                        ORDEN_SHOW = ORDEN;
                        textBox1.Clear();

                        //marcado mar = new marcado();
                        //mar.ShowDialog();
                    }

                    else
                    {
                        con.conectar("LESA");
                        SqlCommand cmd3 = new SqlCommand();
                        cmd3.Connection = con.cmdls;
                        Guid GuD = Guid.NewGuid();
                        cmd3.CommandText = "  INSERT INTO [LDN].[" + Exten_ + "].[LABORATORIO_SEG] ([ID_LAB],[ID_ORDER],[FECHA_ING],[REPROCESO],[FECHA_REPRO],[ROWID],[USER_INGRESO],[USER_AUTORIZA_REP],[ESTADO]) values (@ID_LAB,@ID_ORDER,@FECHA_ING,@REPROCESO,@FECHA_REPRO,@ROWID,@USER_INGRESO,@USER_AUTORIZA_REP,@ESTADO) ";
                        cmd3.Parameters.Add("@ID_LAB", SqlDbType.NVarChar).Value            = ID_LAB_NEW;
                        cmd3.Parameters.Add("@ID_ORDER", SqlDbType.VarChar).Value           = ORDEN;
                        cmd3.Parameters.Add("@FECHA_ING", SqlDbType.DateTime).Value         = Convert.ToDateTime(fecha);
                        cmd3.Parameters.Add("@REPROCESO", SqlDbType.NVarChar).Value         = reproce;
                        cmd3.Parameters.Add("@FECHA_REPRO", SqlDbType.DateTime).Value       = Convert.ToDateTime(fecha);
                        cmd3.Parameters.Add("@ROWID", SqlDbType.UniqueIdentifier).Value     = GuD;
                        cmd3.Parameters.Add("@USER_INGRESO", SqlDbType.NVarChar).Value      = LOGIN.usuario_;
                        cmd3.Parameters.Add("@USER_AUTORIZA_REP", SqlDbType.NVarChar).Value = "NA";
                        cmd3.Parameters.Add("@ESTADO", SqlDbType.Char).Value = "P";

                        cmd3.ExecuteNonQuery();

                        con.Desconectar("LESA");

                        update_estado();

                        ORDEN_SHOW = ORDEN;
                        textBox1.Clear();
                        //marcado mar = new marcado();
                        //mar.ShowDialog();
                    }
                }

                else
                {
                    textBox1.Clear();
                }
            }
            else if (existe_marcacion_lab_actual(ORDEN, ID_LAB_ANT))
            {
                con.conectar("LESA");
                SqlCommand cmd3 = new SqlCommand();
                cmd3.Connection = con.cmdls;
                Guid GuD = Guid.NewGuid();
                cmd3.CommandText = "  INSERT INTO [LDN].[" + Exten_ + "].[LABORATORIO_SEG] ([ID_LAB],[ID_ORDER],[FECHA_ING],[REPROCESO],[FECHA_REPRO],[ROWID],[USER_INGRESO],[USER_AUTORIZA_REP],[ESTADO]) values (@ID_LAB,@ID_ORDER,@FECHA_ING,@REPROCESO,@FECHA_REPRO,@ROWID,@USER_INGRESO,@USER_AUTORIZA_REP,@ESTADO) ";
                cmd3.Parameters.Add("@ID_LAB", SqlDbType.NVarChar).Value            = ID_LAB_NEW;
                cmd3.Parameters.Add("@ID_ORDER", SqlDbType.VarChar).Value           = ORDEN;
                cmd3.Parameters.Add("@FECHA_ING", SqlDbType.DateTime).Value         = Convert.ToDateTime(fecha);
                cmd3.Parameters.Add("@REPROCESO", SqlDbType.NVarChar).Value         = 'N';
                cmd3.Parameters.Add("@FECHA_REPRO", SqlDbType.DateTime).Value       = Convert.ToDateTime(fecha);
                cmd3.Parameters.Add("@ROWID", SqlDbType.UniqueIdentifier).Value     = GuD;
                cmd3.Parameters.Add("@USER_INGRESO", SqlDbType.NVarChar).Value      = LOGIN.usuario_;
                cmd3.Parameters.Add("@USER_AUTORIZA_REP", SqlDbType.NVarChar).Value = "NA";
                cmd3.Parameters.Add("@ESTADO", SqlDbType.Char).Value = "P";

                cmd3.ExecuteNonQuery();

                con.Desconectar("LESA");

                update_estado();

                ORDEN_SHOW = ORDEN;
                textBox1.Clear();
                //marcado mar = new marcado();
                //mar.ShowDialog();
            }
            else
            {
                textBox1.Clear();
                ORDEN_SHOW = ORDEN;
                error      = "NOLAB";
                marcado mar = new marcado();
                mar.ShowDialog();
            }
        }