private void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                decimal Folio;
                string  tipo = string.Empty;
                if (rbCES.Checked)
                {
                    tipo = "CE";
                }
                if (rbLinea.Checked)
                {
                    tipo = "LIN";
                }
                if (rbPPC.Checked)
                {
                    tipo = "PPC";
                }
                toolStripStatus.Text      = string.Empty;
                toolStripStatus.BackColor = Color.FromName("Control");
                toolStripStatus.ForeColor = Color.Black;

                if (this.ValidaEncabezado())
                {
                    if (this.ValidaDetalle())
                    {
                        if (tblDetalle.Rows.Count > 0)
                        {
                            string _mailVendeor = this.GetMailVendedor();
                            if (!string.IsNullOrEmpty(_mailVendeor))
                            {
                                using (SqlConnection connection = new SqlConnection(ClasesSGUV.Propiedades.conectionSGUV))
                                {
                                    using (SqlCommand comm = new SqlCommand("PJ_SolicitudProducto", connection))
                                    {
                                        comm.CommandType = CommandType.StoredProcedure;
                                        comm.Parameters.AddWithValue("@TipoConsulta", 13);
                                        comm.Parameters.AddWithValue("@Folio", string.Empty);
                                        comm.Parameters.AddWithValue("@Solicitante", cbVendedor.SelectedValue);
                                        comm.Parameters.AddWithValue("@Sucursal", cbUnidadVenta.SelectedValue);
                                        comm.Parameters.AddWithValue("@TipoSolicitud", tipo);
                                        comm.Parameters.AddWithValue("@FechaCompromiso", dtCompromiso.Value);
                                        comm.Parameters.AddWithValue("@Cliente", txtCliente.Text);
                                        comm.Parameters.AddWithValue("@Justificacion", txtJustificar.Text);
                                        comm.Parameters.AddWithValue("@Vendedor", cbVendedor.Text);
                                        comm.Parameters.AddWithValue("@Usuario", ClasesSGUV.Login.Id_Usuario);

                                        connection.Open();

                                        Folio = Convert.ToDecimal(comm.ExecuteScalar());

                                        if (Folio > 0)
                                        {
                                            txtFolio.Text = Folio.ToString("00000000");
                                            int line = 0;
                                            foreach (DataRow item in tblDetalle.Rows)
                                            {
                                                using (SqlConnection connectionDetalle = new SqlConnection(ClasesSGUV.Propiedades.conectionSGUV))
                                                {
                                                    using (SqlCommand commDetalle = new SqlCommand("PJ_SolicitudProducto", connection))
                                                    {
                                                        commDetalle.CommandType = CommandType.StoredProcedure;
                                                        commDetalle.Parameters.AddWithValue("@TipoConsulta", 14);
                                                        commDetalle.Parameters.AddWithValue("@Folio1", Folio);
                                                        commDetalle.Parameters.AddWithValue("@Line", line);
                                                        commDetalle.Parameters.AddWithValue("@Articulo", item.Field <string>("Articulo"));
                                                        commDetalle.Parameters.AddWithValue("@Descripcion", item.Field <string>("Descripcion"));
                                                        commDetalle.Parameters.AddWithValue("@Proveedor", item.Field <string>("CardCode"));
                                                        commDetalle.Parameters.AddWithValue("@Otro", item.Field <string>("Especifique Proveedor"));
                                                        commDetalle.Parameters.AddWithValue("@Linea", item.Field <int>("ItmsGrpCod"));
                                                        commDetalle.Parameters.AddWithValue("@Comprador", item.Field <string>("Comprador"));
                                                        commDetalle.Parameters.AddWithValue("@Cantidad", item.Field <decimal>("Cantidad"));
                                                        commDetalle.Parameters.AddWithValue("@Pronostico", item.Field <decimal>("Pronostico"));

                                                        connectionDetalle.Open();
                                                        commDetalle.ExecuteNonQuery();
                                                    }
                                                }
                                                line++;
                                            }

                                            if (this.CrearPDF(Folio, tipo))
                                            {
                                                // public bool Enviar(string _file, string _mailDestinatario, string _mailVendedor, string _vendedor, bool _solicitud)
                                                Cobranza.SendMail mail           = new Cobranza.SendMail();
                                                string            _mailComprador = this.GetMailCompradores(tipo);
                                                mail.Enviar(Ruta, _mailComprador, _mailVendeor, cbVendedor.Text, true);
                                            }
                                        }
                                        else
                                        {
                                            toolStripStatus.Text      = "No se ha podido enviar la solicitud.";
                                            toolStripStatus.BackColor = Color.Red;
                                            toolStripStatus.ForeColor = Color.White;
                                        }
                                    }

                                    toolStripStatus.Text      = "Su solicitud ha sido enviada.";
                                    toolStripStatus.BackColor = Color.Green;
                                    toolStripStatus.ForeColor = Color.Black;
                                    btnGuardar.Enabled        = false;
                                }
                            }
                            else
                            {
                                toolStripStatus.Text      = "El vendedor no tiene asignada una cuenta de correo";
                                toolStripStatus.BackColor = Color.Red;
                                toolStripStatus.ForeColor = Color.White;
                            }
                        }
                        else
                        {
                            toolStripStatus.Text      = "No ha ingresado artículos.";
                            toolStripStatus.BackColor = Color.Red;
                            toolStripStatus.ForeColor = Color.White;
                        }
                    }
                    else
                    {
                        toolStripStatus.Text      = "No se ha podido enviar la solicitud.";
                        toolStripStatus.BackColor = Color.Red;
                        toolStripStatus.ForeColor = Color.White;
                    }
                }
                else
                {
                    toolStripStatus.Text      = "No se ha podido enviar la solicitud.";
                    toolStripStatus.BackColor = Color.Red;
                    toolStripStatus.ForeColor = Color.White;
                }
            }
            catch (Exception ex)
            {
                toolStripStatus.Text      = ex.Message;
                toolStripStatus.BackColor = Color.Red;
                toolStripStatus.ForeColor = Color.White;
            }
        }
Example #2
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            int    Cambios = 0;
            string Mensaje = string.Empty;
            string Mail    = string.Empty;

            Mensaje = @"<style type='text/css'>
                                    table, th, td {
                                        border: 1px solid black;
                                        border-spacing: 50px 50px 50px 50px;
                                        border-collapse: collapse;
                                    }
                                    </style>

                        <br><br>
                        <table cellpadding='6'>
                        <tr>
                            <td bgcolor='#2A2627'><font size=2 face='Calibri' color='#FFFFFF'><strong>Articulo</strong></font></td>
                            <td bgcolor='#2A2627'><font size=2 face='Calibri' color='#FFFFFF'><strong>Nombre</strong></font></td>
                            <td bgcolor='#2A2627'><font size=2 face='Calibri' color='#FFFFFF'><strong>Linea<strong></font></td>
                            <td bgcolor='#2A2627'><font size=2 face='Calibri' color='#FFFFFF'><strong>Almacen</strong></font></td>
                            <td bgcolor='#2A2627'><font size=2 face='Calibri' color='#FFFFFF'><strong>Fecha</strong></font></td>
                            <td bgcolor='#2A2627'><font size=2 face='Calibri' color='#FFFFFF'><strong>Cantidad<br>Solicitada</strong></font></td>
                            <td bgcolor='#2A2627'><font size=2 face='Calibri' color='#FFFFFF'><strong>Stock<br>actual</strong></font></td>
                            <td bgcolor='#2A2627'><font size=2 face='Calibri' color='#FFFFFF'><strong>Diferencia</strong></font></td>
                            <td bgcolor='#2A2627'><font size=2 face='Calibri' color='#FFFFFF'><strong>Usuario</strong></font></td>
                        </tr>";
            foreach (DataRow item in tbl.Rows)
            {
                if (item.RowState == DataRowState.Added)
                {
                    using (SqlConnection connection = new SqlConnection(ClasesSGUV.Propiedades.conectionSGUV))
                    {
                        using (SqlCommand command = new SqlCommand("sp_VentaPerdida", connection))
                        {
                            command.CommandType    = CommandType.StoredProcedure;
                            command.CommandTimeout = 0;

                            command.Parameters.AddWithValue("@TipoConsulta", 5);
                            command.Parameters.AddWithValue("@Articulo", item.Field <string>("Artículo"));
                            command.Parameters.AddWithValue("@Almacen", item.Field <string>("Almacen"));
                            command.Parameters.AddWithValue("@ItmsGrpCod", item.Field <Int16>("ItmsGrpCode"));
                            command.Parameters.AddWithValue("@Fecha", item.Field <DateTime>("Fecha"));
                            command.Parameters.AddWithValue("@Solicitado", item.Field <decimal>("Cantidad Solicitada"));
                            command.Parameters.AddWithValue("@Stock", item.Field <decimal>("Stock actual"));
                            command.Parameters.AddWithValue("@UserId", ClasesSGUV.Login.Id_Usuario);

                            connection.Open();

                            command.ExecuteNonQuery();
                            Cambios++;

                            Mail += item.Field <string>("Correo") + ";";

                            Mensaje += @"<tr>
                                            <td><font size=2 face='Calibri' color='#000000'><strong>" + item.Field <string>("Artículo") + @"</strong></font></td>
                                            <td><font size=2 face='Calibri' color='#000000'><strong>" + item.Field <string>("Nombre") + @"</strong></font></td>
                                            <td><font size=2 face='Calibri' color='#000000'><strong>" + item.Field <string>("Línea") + @"<strong></font></td>
                                            <td><font size=2 face='Calibri' color='#000000'><strong>" + item.Field <string>("Almacen") + @"</strong></font></td>
                                            <td><font size=2 face='Calibri' color='#000000'><strong>" + item.Field <DateTime>("Fecha") + @"</strong></font></td>
                                            <td><font size=2 face='Calibri' color='#000000'><strong>" + item.Field <decimal>("Cantidad solicitada").ToString("N0") + @"</strong></font></td>
                                            <td><font size=2 face='Calibri' color='#000000'><strong>" + item.Field <decimal>("Stock actual").ToString("N0") + @"</strong></font></td>
                                            <td><font size=2 face='Calibri' color='#000000'><strong>" + item.Field <decimal>("Diferencia").ToString("N0") + @"</strong></font></td>
                                            <td><font size=2 face='Calibri' color='#000000'><strong>" + item.Field <string>("Solicitante") + @"</strong></font></td>
                                        </tr>";
                        }
                    }
                }
            }
            tbl.AcceptChanges();
            MessageBox.Show("Registro exitoso", "HalcoNET", MessageBoxButtons.OK, MessageBoxIcon.Information);

            if (Cambios > 0)
            {
                Cobranza.SendMail mail = new Cobranza.SendMail();
                mail.EnviarVentaPerdida(Mail, Mensaje + "</table><br><br>", "Venta pérdida", "*****@*****.**");
            }
            this.OnLoad(e);
        }