Exemplo n.º 1
0
        private void botGuardar_Click(object sender, EventArgs e)
        {
            if (FuncionesUtiles.estanVacios(new List <TextBox> {
                textPostNets, textCalle, textRazonSocial, textNumero
            }) || comboBoxRubro.SelectedIndex == -1)
            {
                string mensaje = "Debe completar los siguientes campos:";
                if (textRazonSocial.Text == "")
                {
                    mensaje += "\n-Razón social";
                }
                if (comboBoxRubro.SelectedIndex == -1)
                {
                    mensaje += "\n-Rubro";
                }
                if (textPostNets.Text == "")
                {
                    mensaje += "\n-Post-nets";
                }
                if (textCalle.Text == "")
                {
                    mensaje += "\n-Calle";
                }
                if (textNumero.Text == "")
                {
                    mensaje += "\n-Número";
                }
                MessageBox.Show(mensaje, "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
            }
            else
            {
                //campos completos, verificar los numericos
                if (!FuncionesUtiles.sonNumericos(new List <TextBox> {
                    textNumero
                }))
                {
                    //hay campos numericos con valores no numericos
                    string mensaje = "Los siguientes campos deben ser numéricos y positivos:";
                    if (!FuncionesUtiles.esNumerico(textNumero) && !FuncionesUtiles.estaVacio(textNumero))
                    {
                        mensaje += "\n-Número";
                    }
                    MessageBox.Show(mensaje, "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
                }
                else
                {
                    //campos correctos, verificar unicidad de la razon social
                    SqlConnection con = Conexion.conectar();
                    con.Open();
                    SqlCommand com = new SqlCommand("select * from ntvc.beneficiario where razon_social = @razon_social", con);
                    com.Parameters.AddWithValue("@razon_social", textRazonSocial.Text);
                    SqlDataReader reader = com.ExecuteReader();
                    if (reader.Read())
                    {
                        //razon social repetida
                        reader.Close();
                        MessageBox.Show("La razón social ya se encuentra en el sistema.", "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
                    }
                    else
                    {
                        //hacer insert
                        reader.Close();
                        string cod_rubro = "";
                        com = new SqlCommand("select cod_rubro from ntvc.rubro where descripcion = @descripcion", con);
                        com.Parameters.AddWithValue("@descripcion", comboBoxRubro.Items[comboBoxRubro.SelectedIndex].ToString().Trim());
                        reader = com.ExecuteReader();
                        if (reader.Read())
                        {
                            cod_rubro = reader["cod_rubro"].ToString().Trim();
                        }
                        reader.Close();
                        string insert = "Insert into NTVC.beneficiario (razon_social, dir_calle, dir_nro, dir_piso, dir_dpto, habilitado, cod_rubro)";
                        insert += " values(@razon_social, @dir_calle, @dir_numero, @dir_piso, @dir_depto, @habilitado, @cod_rubro)";
                        com     = new SqlCommand(insert, con);
                        com.Parameters.AddWithValue("@razon_social", textRazonSocial.Text);
                        com.Parameters.AddWithValue("@dir_calle", textCalle.Text);
                        com.Parameters.AddWithValue("@dir_numero", textNumero.Text);
                        com.Parameters.AddWithValue("@dir_piso", textPiso.Text);
                        com.Parameters.AddWithValue("@dir_depto", textDepto.Text);
                        com.Parameters.AddWithValue("@habilitado", 1);
                        com.Parameters.AddWithValue("@cod_rubro", cod_rubro);
                        com.ExecuteNonQuery();

                        //insert de postnets
                        string cod_beneficiario = "";
                        com = new SqlCommand("select cod_beneficiario from ntvc.beneficiario where razon_social = @razon_social", con);
                        com.Parameters.AddWithValue("@razon_social", textRazonSocial.Text);
                        reader = com.ExecuteReader();
                        if (reader.Read())
                        {
                            cod_beneficiario = reader["cod_beneficiario"].ToString().Trim();
                        }
                        reader.Close();
                        foreach (string serial in serials)
                        {
                            string cod_postnet = "";
                            com = new SqlCommand("select cod_postnet from ntvc.postnet where nro_serie = @serial", con);
                            com.Parameters.AddWithValue("@serial", serial);
                            reader = com.ExecuteReader();
                            if (reader.Read())
                            {
                                cod_postnet = reader["cod_postnet"].ToString().Trim();
                            }
                            reader.Close();
                            com = new SqlCommand("insert into ntvc.beneficiario_postnet (cod_beneficiario, cod_postnet) values (@cod_beneficiario, @cod_postnet)", con);
                            com.Parameters.AddWithValue("@cod_beneficiario", cod_beneficiario);
                            com.Parameters.AddWithValue("@cod_postnet", cod_postnet);
                            com.ExecuteNonQuery();
                        }
                        MessageBox.Show("El beneficiario ha sido agregado.", "Alta exitosa", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.None);
                        this.Close();
                    }
                    con.Close();
                }
            }
        }
Exemplo n.º 2
0
 private void botGuardar_Click(object sender, EventArgs e)
 {
     if (FuncionesUtiles.estanVacios(new List <TextBox> {
         textApellido, textCalle, textDNI, textMail, textNombre, textNumero, textTelefono
     }) || comboBoxTD.SelectedIndex == -1 || comboBox1.SelectedIndex == -1)
     {
         string mensaje = "Debe completar los siguientes campos:";
         if (textNombre.Text == "")
         {
             mensaje += "\n-Nombre";
         }
         if (textApellido.Text == "")
         {
             mensaje += "\n-Apellido";
         }
         if (comboBoxTD.SelectedIndex == -1)
         {
             mensaje += "\n-Tipo de documento";
         }
         if (textDNI.Text == "")
         {
             mensaje += "\n-Documento";
         }
         if (comboBox1.SelectedIndex == -1)
         {
             mensaje += "\n-Provincia";
         }
         if (textTelefono.Text == "")
         {
             mensaje += "\n-Teléfono";
         }
         if (textMail.Text == "")
         {
             mensaje += "\n-Mail";
         }
         if (textCalle.Text == "")
         {
             mensaje += "\n-Calle";
         }
         if (textNumero.Text == "")
         {
             mensaje += "\n-Número";
         }
         MessageBox.Show(mensaje, "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
     }
     else
     {
         //campos completos, verificar los numericos
         if (!FuncionesUtiles.sonNumericos(new List <TextBox> {
             textDNI, textNumero, textTelefono
         }))
         {
             //hay campos numericos con valores no numericos
             string mensaje = "Los siguientes campos deben ser numéricos y positivos:";
             if (!FuncionesUtiles.esNumerico(textDNI) && !FuncionesUtiles.estaVacio(textDNI))
             {
                 mensaje += "\n-Documento";
             }
             if (!FuncionesUtiles.esNumerico(textTelefono) && !FuncionesUtiles.estaVacio(textTelefono))
             {
                 mensaje += "\n-Teléfono";
             }
             if (!FuncionesUtiles.esNumerico(textNumero) && !FuncionesUtiles.estaVacio(textNumero))
             {
                 mensaje += "\n-Número";
             }
             MessageBox.Show(mensaje, "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
         }
         else
         {
             //campos correctos, verificar unicidad del DNI
             SqlConnection con = Conexion.conectar();
             con.Open();
             SqlCommand com = new SqlCommand("select * from ntvc.cliente where doc = @doc and tipo_doc = @tipo", con);
             com.Parameters.AddWithValue("@tipo", FuncionesUtiles.obtenerTipoDoc(comboBoxTD.SelectedIndex));
             com.Parameters.AddWithValue("@doc", textDNI.Text);
             SqlDataReader reader = com.ExecuteReader();
             if (reader.Read())
             {
                 //dni repetido
                 reader.Close();
                 MessageBox.Show("El Documento ya se encuentra en el sistema.", "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
             }
             else
             {
                 //hacer insert
                 reader.Close();
                 string cod_prov = "";
                 com = new SqlCommand("select cod_provincia from ntvc.provincia  where nombre = @nombre_prov", con);
                 com.Parameters.AddWithValue("@nombre_prov", comboBox1.Items[comboBox1.SelectedIndex].ToString().Trim());
                 reader = com.ExecuteReader();
                 if (reader.Read())
                 {
                     cod_prov = reader["cod_provincia"].ToString().Trim();
                 }
                 reader.Close();
                 string insert = "Insert into NTVC.cliente (nombre, apellido, tipo_doc, doc, mail, telefono, dir_calle, dir_nro, dir_piso, dir_dpto, habilitado, cod_provincia)";
                 insert += " values(@nombre, @apellido, @tipo_doc, @doc, @mail, @telefono, @dir_calle, @dir_numero, @dir_piso, @dir_depto, @habilitado, @cod_provincia)";
                 com     = new SqlCommand(insert, con);
                 com.Parameters.AddWithValue("@nombre", textNombre.Text);
                 com.Parameters.AddWithValue("@apellido", textApellido.Text);
                 com.Parameters.AddWithValue("@tipo_doc", FuncionesUtiles.obtenerTipoDoc(comboBoxTD.SelectedIndex));
                 com.Parameters.AddWithValue("@doc", textDNI.Text);
                 com.Parameters.AddWithValue("@mail", textMail.Text);
                 com.Parameters.AddWithValue("@telefono", textTelefono.Text);
                 com.Parameters.AddWithValue("@dir_calle", textCalle.Text);
                 com.Parameters.AddWithValue("@dir_numero", textNumero.Text);
                 com.Parameters.AddWithValue("@dir_piso", textPiso.Text);
                 com.Parameters.AddWithValue("@dir_depto", textDepto.Text);
                 com.Parameters.AddWithValue("@habilitado", 1);
                 com.Parameters.AddWithValue("@cod_provincia", cod_prov);
                 com.ExecuteNonQuery();
                 MessageBox.Show("El cliente ha sido agregado.", "Alta exitosa", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.None);
                 this.Close();
             }
             con.Close();
         }
     }
 }
Exemplo n.º 3
0
        private void botModificar_Click(object sender, EventArgs e)
        {
            if (FuncionesUtiles.estanVacios(new List <TextBox> {
                textApellido, textCalle, textMail, textNombre, textNumero, textTelefono
            }) || comboBox1.SelectedIndex == -1)
            {
                string mensaje = "Debe completar los siguientes campos:";
                if (textNombre.Text == "")
                {
                    mensaje += "\n-Nombre";
                }
                if (textApellido.Text == "")
                {
                    mensaje += "\n-Apellido";
                }
                if (comboBox1.SelectedIndex == -1)
                {
                    mensaje += "\n-Provincia";
                }
                if (textTelefono.Text == "")
                {
                    mensaje += "\n-Teléfono";
                }
                if (textMail.Text == "")
                {
                    mensaje += "\n-Mail";
                }
                if (textCalle.Text == "")
                {
                    mensaje += "\n-Calle";
                }
                if (textNumero.Text == "")
                {
                    mensaje += "\n-Número";
                }
                MessageBox.Show(mensaje, "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
            }
            else
            {
                //campos completos, verificar los numericos
                if (!FuncionesUtiles.sonNumericos(new List <TextBox> {
                    textNumero, textTelefono
                }))
                {
                    //hay campos numericos con valores no numericos
                    string mensaje = "Los siguientes campos deben ser numéricos y positivos:";
                    if (!FuncionesUtiles.esNumerico(textTelefono) && !FuncionesUtiles.estaVacio(textTelefono))
                    {
                        mensaje += "\n-Teléfono";
                    }
                    if (!FuncionesUtiles.esNumerico(textNumero) && !FuncionesUtiles.estaVacio(textNumero))
                    {
                        mensaje += "\n-Número";
                    }
                    MessageBox.Show(mensaje, "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
                }
                else
                {
                    //campos correctos
                    SqlConnection con = Conexion.conectar();
                    con.Open();
                    //hacer update
                    string     cod_prov = "";
                    SqlCommand com      = new SqlCommand("select cod_provincia from ntvc.provincia  where nombre = @nombre_prov", con);
                    com.Parameters.AddWithValue("@nombre_prov", comboBox1.Items[comboBox1.SelectedIndex].ToString().Trim());
                    SqlDataReader reader = com.ExecuteReader();
                    if (reader.Read())
                    {
                        cod_prov = reader["cod_provincia"].ToString().Trim();
                    }
                    reader.Close();
                    string update = "UPDATE NTVC.cliente set nombre = @nombre, apellido = @apellido, mail = @mail, telefono = @telefono,";
                    update += " dir_calle = @dir_calle, dir_nro = @dir_numero, dir_piso = @dir_piso, dir_dpto = @dir_depto, habilitado = @habilitado, cod_provincia = @cod_provincia";
                    update += " where doc = @doc and tipo_doc = @tipo_doc";
                    com     = new SqlCommand(update, con);
                    com.Parameters.AddWithValue("@nombre", textNombre.Text);
                    com.Parameters.AddWithValue("@apellido", textApellido.Text);
                    com.Parameters.AddWithValue("@tipo_doc", tipo_doc_);
                    com.Parameters.AddWithValue("@doc", doc_);
                    com.Parameters.AddWithValue("@mail", textMail.Text);
                    com.Parameters.AddWithValue("@telefono", textTelefono.Text);
                    com.Parameters.AddWithValue("@dir_calle", textCalle.Text);
                    com.Parameters.AddWithValue("@dir_numero", textNumero.Text);
                    com.Parameters.AddWithValue("@dir_piso", textPiso.Text);
                    com.Parameters.AddWithValue("@dir_depto", textDepto.Text);
                    if (chkHabilitado.CheckState == CheckState.Checked)
                    {
                        com.Parameters.AddWithValue("@habilitado", 1);
                    }
                    else
                    {
                        com.Parameters.AddWithValue("@habilitado", 0);
                    }
                    com.Parameters.AddWithValue("@cod_provincia", cod_prov);
                    com.ExecuteNonQuery();
                    MessageBox.Show("El cliente ha sido modificado.", "Modificación exitosa", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.None);
                    this.Close();

                    con.Close();
                }
            }
        }
Exemplo n.º 4
0
        private void botEfectuarCompra_Click(object sender, EventArgs e)
        {
            //verificar campos llenos
            if (FuncionesUtiles.estanVacios(new List<TextBox> { textBeneficiario, textFecha, textMonto, textNumeroTarjeta }) || comboBoxPostNet.SelectedIndex == -1)
            {
                string mensaje = "Debe completar los siguientes campos:";
                if (textBeneficiario.Text == "")
                {
                    mensaje += "\n-Beneficiario";
                }
                if (textFecha.Text == "")
                {
                    mensaje += "\n-Fecha";
                }
                if (textMonto.Text == "")
                {
                    mensaje += "\n-Monto";
                }
                if (textNumeroTarjeta.Text == "")
                {
                    mensaje += "\n-Número de tarjeta";
                }
                if (comboBoxPostNet.SelectedIndex == -1)
                {
                    mensaje += "\n-Post-net";
                }
                MessageBox.Show(mensaje, "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
            }
            else
            {
                //campos completos, verificar los numericos
                if (!FuncionesUtiles.sonNumericos(new List<TextBox> { textNumeroTarjeta }) || !FuncionesUtiles.esDecimal(textMonto))
                {
                    //hay campos numericos con valores no numericos
                    string mensaje = "Los siguientes campos deben ser numéricos y positivos:";
                    if (!FuncionesUtiles.esDecimal(textMonto))
                    {
                        mensaje += "\n-Monto";
                    }
                    if (!FuncionesUtiles.esNumerico(textNumeroTarjeta))
                    {
                        mensaje += "\n-Número de tarjeta";
                    }
                    MessageBox.Show(mensaje, "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
                }
                else
                {
                    //campos correctos, verificar numero de tarjeta
                    SqlConnection con = Conexion.conectar();
                    con.Open();
                    SqlCommand com = new SqlCommand("select * from ntvc.tarjeta where nro_tarjeta = @nro_tarjeta", con);
                    com.Parameters.AddWithValue("@nro_tarjeta", textNumeroTarjeta.Text);
                    SqlDataReader reader = com.ExecuteReader();
                    if (!reader.Read())
                    {
                        //no existe la tarjeta
                        reader.Close();
                        MessageBox.Show("No existe la tarjeta.", "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
                    }
                    else
                    {
                        if (reader["habilitado"].ToString().Trim() == "0")
                        {
                            reader.Close();
                            MessageBox.Show("La tarjeta se encuentra inhabilitada.", "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
                        }
                        else
                        {
                            decimal credito_actual = Convert.ToDecimal(reader["credito"].ToString().Trim());
                            decimal monto = Convert.ToDecimal(textMonto.Text.Trim());
                            if ( credito_actual < monto)
                            {
                                reader.Close();
                                MessageBox.Show("La tarjeta no posee crédito suficiente para realizar la operación.", "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
                            }
                            else
                            {
                                //todo piola, hacer la transaccion

                                //actualizar credito
                                string cod_tarjeta = reader["cod_tarjeta"].ToString().Trim();
                                decimal credito_nuevo = Convert.ToDecimal(reader["credito"].ToString().Trim()) - Convert.ToDecimal(textMonto.Text);
                                reader.Close();
                                com = new SqlCommand("update ntvc.tarjeta set credito = @credito where cod_tarjeta = @cod_tarjeta", con);
                                com.Parameters.AddWithValue("@credito", credito_nuevo);
                                com.Parameters.AddWithValue("@cod_tarjeta", cod_tarjeta);
                                com.ExecuteNonQuery();
                                string cod_postnet = cods_postnets_[comboBoxPostNet.SelectedIndex];

                                //obtener codigo de compra
                                string codigo_compra = "";
                                com = new SqlCommand("select top 1 codigo from ntvc.compra order by codigo desc", con);
                                reader = com.ExecuteReader();
                                if (reader.Read())
                                {
                                    codigo_compra = reader["codigo"].ToString().Trim();
                                }
                                reader.Close();

                                //insertar compra
                                string insert = "insert into ntvc.compra (codigo, fecha, monto, cod_tarjeta, cod_beneficiario, cod_postnet) values ";
                                insert += "(@codigo, @fecha, @monto, @cod_tarjeta, @cod_beneficiario, @cod_postnet)";
                                com = new SqlCommand(insert, con);
                                com.Parameters.AddWithValue("@codigo", codigo_compra);
                                com.Parameters.AddWithValue("@fecha", textFecha.Text);
                                com.Parameters.AddWithValue("@monto", Convert.ToDecimal(textMonto.Text));
                                com.Parameters.AddWithValue("@cod_tarjeta", cod_tarjeta);
                                com.Parameters.AddWithValue("@cod_beneficiario", cod_beneficiario_);
                                com.Parameters.AddWithValue("@cod_postnet", cod_postnet);
                                com.ExecuteNonQuery();
                                this.Close();
                                Saldo form = new Saldo();
                                form.labelSaldo.Text = "La compra ha sido efectuada exitosamente.\nSu saldo es " + credito_nuevo.ToString() + ".";
                                form.ShowDialog(this);
                            }
                        }
                    }
                    con.Close();
                }
            }
        }
Exemplo n.º 5
0
        private void botCargarCredito_Click(object sender, EventArgs e)
        {
            if (FuncionesUtiles.estanVacios(new List <TextBox> {
                textNumeroTarjeta, textFecha, textMonto
            }))
            {
                string mensaje = "Debe completar los siguientes campos:";
                if (FuncionesUtiles.estaVacio(textNumeroTarjeta))
                {
                    mensaje += "\n-Número de tarjeta";
                }
                if (FuncionesUtiles.estaVacio(textFecha))
                {
                    mensaje += "\n-Fecha";
                }
                if (FuncionesUtiles.estaVacio(textMonto))
                {
                    mensaje += "\n-Monto";
                }
                MessageBox.Show(mensaje, "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
            }
            else
            {
                if (!FuncionesUtiles.sonNumericos(new List <TextBox> {
                    textNumeroTarjeta
                }) || !FuncionesUtiles.esDecimal(textMonto))
                {
                    //hay campos numericos con valores no numericos
                    string mensaje = "Los siguientes campos deben ser numéricos y positivos:";
                    if (!FuncionesUtiles.esDecimal(textMonto))
                    {
                        mensaje += "\n-Monto";
                    }
                    if (!FuncionesUtiles.esNumerico(textNumeroTarjeta))
                    {
                        mensaje += "\n-Número de tarjeta";
                    }
                    MessageBox.Show(mensaje, "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
                }
                else
                {
                    //el valor de numero de tarjeta es numerico
                    SqlConnection con = Conexion.conectar();
                    SqlCommand    com = new SqlCommand("select * from NTVC.TARJETA where nro_tarjeta = @nro_tarjeta", con);
                    com.Parameters.AddWithValue("@nro_tarjeta", this.textNumeroTarjeta.Text);
                    con.Open();
                    SqlDataReader reader = com.ExecuteReader();
                    //veo si el numero de tarjeta existe

                    if (reader.Read())
                    {
                        //la tarjeta existe

                        //verifico que este habilitada
                        if (reader["habilitado"].ToString().Trim() == "1")
                        {
                            string  cod_tarjeta   = reader["cod_tarjeta"].ToString().Trim();
                            decimal credito_nuevo = Convert.ToDecimal(reader["credito"].ToString().Trim()) + Convert.ToDecimal(textMonto.Text);
                            reader.Close();
                            com = new SqlCommand("update ntvc.tarjeta set credito = @credito where cod_tarjeta = @cod_tarjeta", con);
                            com.Parameters.AddWithValue("@credito", credito_nuevo);
                            com.Parameters.AddWithValue("@cod_tarjeta", cod_tarjeta);
                            com.ExecuteNonQuery();
                            com = new SqlCommand("insert into ntvc.carga (cod_tarjeta, fecha,monto) values (@cod_tarjeta, @fecha, @monto)", con);
                            com.Parameters.AddWithValue("@cod_tarjeta", cod_tarjeta);
                            com.Parameters.AddWithValue("@fecha", this.textFecha.Text);
                            com.Parameters.AddWithValue("@monto", this.textMonto.Text);
                            com.ExecuteNonQuery();
                            this.Close();
                            BoletoElectronicoDesktop.Facturación.Saldo form = new BoletoElectronicoDesktop.Facturación.Saldo();
                            form.labelSaldo.Text = "La carga ha sido efectuada exitosamente.\nSu saldo es " + credito_nuevo.ToString() + ".";
                            form.ShowDialog(this);
                        }
                        else
                        {
                            //la tarjeta esta deshabilitada
                            reader.Close();
                            MessageBox.Show("La tarjeta se encuentra inhabilitada.", "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
                        }
                        con.Close();
                    }
                    else
                    {
                        MessageBox.Show("El número de tarjeta ingresado no existe.", "Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Hand);
                        reader.Close();
                        con.Close();
                    }
                }
            }
        }