示例#1
0
        /// <summary>
        /// Descripción : Método para consultar los puntos de venta asignados a un planning general
        ///               se crea este método debido a que por Web Services generaba problemas ya que los puntos de venta
        ///               presentaban en sus datos caracteres especiales
        /// Creado por  : Ing. Mauricio Ortiz
        /// Fecha       : 21/10/2010
        /// </summary>
        /// <param name="sid_planning"></param>
        /// <returns>dtpdvplanning</returns>
        public DataTable Consultar_PDVPlanningGeneral(string sid_planning, int imalla, int isector)
        {
            DPlanning odPlanning    = new DPlanning();
            DataTable dtpdvplanning = odPlanning.Consultar_PDVPlanningGeneral(sid_planning, imalla, isector);

            return(dtpdvplanning);
        }
示例#2
0
        /// <summary>
        /// Descripción : Método para consultar los puntos de venta asignados a un planning
        /// Creado por  : Ing. Mauricio Ortiz
        /// Fecha       : 04/09/2010
        /// Modificación: 12/11/2010 se adiciona nuevos parametros scod_City ,iidNodeComType ,
        ///                             sNodeCommercial, lcod_Oficina  Ing. Mauricio Ortiz
        /// </summary>
        /// <param name="sid_planning"></param>
        /// <param name="scod_City"></param>
        /// <param name="iidNodeComType"></param>
        /// <param name="sNodeCommercial"></param>
        /// <param name="lcod_Oficina"></param>
        /// <param name="imalla"></param>
        /// <param name="isector"></param>
        /// <returns>dt</returns>
        public DataTable Consultar_PDVPlanning(
            string sid_planning,
            string scod_City,
            int iidNodeComType,
            string sNodeCommercial,
            long lcod_Oficina,
            int imalla,
            int isector)
        {
            DPlanning odPlanning = new DPlanning();

            DataTable dt =
                odPlanning.Consultar_PDVPlanning(
                    sid_planning,
                    scod_City,
                    iidNodeComType,
                    sNodeCommercial,
                    lcod_Oficina,
                    imalla,
                    isector);

            if (!odPlanning.getMessages().Equals(""))
            {
                message = odPlanning.getMessages();
            }
            else
            {
                if (dt.Rows.Count <= 0)
                {
                    message = "No se encontraron Puntos de Venta " +
                              "aplicando los filtros seleccionados";
                }
            }

            return(dt);
        }
示例#3
0
        protected void BtnCargaArchivo_Click(object sender, EventArgs e)
        {
            if ((FileUpPDV.PostedFile != null) && (FileUpPDV.PostedFile.ContentLength > 0))
            {
                string fn           = System.IO.Path.GetFileName(FileUpPDV.PostedFile.FileName);
                string SaveLocation = Server.MapPath("PDV_Planning") + "\\" + fn;

                if (SaveLocation != string.Empty)
                {
                    if (FileUpPDV.FileName.ToLower().EndsWith(".xls"))
                    {
                        OleDbConnection  oConn1 = new OleDbConnection();
                        OleDbCommand     oCmd   = new OleDbCommand();
                        OleDbDataAdapter oDa    = new OleDbDataAdapter();
                        DataSet          oDs    = new DataSet();

                        DataTable dt = new DataTable();


                        FileUpPDV.PostedFile.SaveAs(SaveLocation);

                        // oConn1.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + SaveLocation + ";Extended Properties=\"Excel 12.0 Xml;HDR=YES\"";
                        oConn1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + SaveLocation + ";Extended Properties=\"Excel 8.0; HDR=YES;\"";
                        oConn1.Open();
                        oCmd.CommandText  = "SELECT * FROM [Hoja1$]";
                        oCmd.Connection   = oConn1;
                        oDa.SelectCommand = oCmd;
                        try
                        {
                            if (this.Session["scountry"].ToString() != null)
                            {
                                oDa.Fill(oDs);
                                dt = oDs.Tables[0];
                                if (dt.Columns.Count == 8)
                                {
                                    dt.Columns[0].ColumnName = "cod_PDV";
                                    dt.Columns[1].ColumnName = "cod_Reporte";
                                    dt.Columns[2].ColumnName = "cod_SubReporte";
                                    dt.Columns[3].ColumnName = "cod_Periodo";
                                    dt.Columns[4].ColumnName = "cod_Producto";
                                    dt.Columns[5].ColumnName = "cod_Marca";
                                    dt.Columns[6].ColumnName = "cod_Familia";
                                    dt.Columns[7].ColumnName = "cod_Categoria";

                                    Gvlog.DataSource = dt;
                                    Gvlog.DataBind();

                                    for (int i = 0; i <= Gvlog.Rows.Count - 1; i++)
                                    {
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&nbsp;", "");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#160;", "");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#193;", "Á");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#201;", "É");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#205;", "Í");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#211;", "Ó");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#218;", "Ú");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#225;", "á");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#233;", "é");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#237;", "í");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#243;", "ó");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#250;", "ú");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#209;", "Ñ");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#241;", "ñ");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&amp;", "&");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#176;", "o");
                                        Gvlog.Rows[i].Cells[0].Text = Gvlog.Rows[i].Cells[0].Text.Replace("&#186;", "o");

                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&nbsp;", "");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("  ", " ");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#160;", "");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#193;", "Á");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#201;", "É");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#205;", "Í");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#211;", "Ó");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#218;", "Ú");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#225;", "á");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#233;", "é");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#237;", "í");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#243;", "ó");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#250;", "ú");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#209;", "Ñ");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#241;", "ñ");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&amp;", "&");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#176;", "o");
                                        Gvlog.Rows[i].Cells[1].Text = Gvlog.Rows[i].Cells[1].Text.Replace("&#186;", "o");
                                    }

                                    DPlanning dplanning = new DPlanning();
                                    string    cod_PDV, cod_Reporte, cod_SubReporte, cod_Periodo, cod_Producto, cod_Marca, cod_Familia, cod_Categoria;
                                    Conexion  cn = new Conexion();

                                    bool sigue = true;
                                    for (int i = 0; i <= dt.Rows.Count - 1; i++)
                                    {                                       // llenaOperativosAsignaPDVOPE();
                                        cod_PDV        = dt.Rows[i][0].ToString().Trim();
                                        cod_Reporte    = dt.Rows[i][1].ToString().Trim();
                                        cod_SubReporte = dt.Rows[i][2].ToString().Trim();
                                        cod_Periodo    = dt.Rows[i][3].ToString().Trim();
                                        cod_Producto   = dt.Rows[i][4].ToString().Trim();
                                        cod_Marca      = dt.Rows[i][5].ToString().Trim();
                                        cod_Familia    = dt.Rows[i][6].ToString().Trim();
                                        cod_Categoria  = dt.Rows[i][7].ToString().Trim();



                                        DataSet ds = oCoon.ejecutarDataSet("UP_WEB_CONSULTAR_Existencia_Panel_ptoVenta", cod_PDV, cod_Reporte, cod_Periodo, LblPlanning.Text);

                                        if (ds.Tables[0].Rows.Count > 0)
                                        {
                                            if (ds.Tables[1].Rows.Count > 0)
                                            {
                                                DataTable tipo_reporte = oCoon.ejecutarDataTable("UP_WEBXPLORA_OPE_COMBO_TIPO_REPORTE_LISTAR", Convert.ToInt32(this.Session["company_id"].ToString().Trim()), cod_Reporte);

                                                if (tipo_reporte.Rows.Count > 0 && cod_SubReporte != "")//tiene subreporte
                                                {
                                                    //pasa

                                                    this.Session["cod_SubReporte"] = cod_SubReporte;

                                                    DataTable vistas = dplanning.ValidaTipoGestion(Convert.ToInt32(this.Session["company_id"].ToString().Trim()), this.Session["Planning_CodChannel"].ToString().Trim(), Convert.ToInt32(cod_Reporte)); //obtiene los valores booleanos para las vistas de paneles
                                                    this.Session["vistas"] = vistas;

                                                    CargarOpciones1();
                                                    insertar(cod_PDV, cod_Reporte, cod_SubReporte, cod_Periodo, LblPlanning.Text, cod_Producto, cod_Marca, cod_Familia, cod_Categoria);
                                                }
                                                else if (tipo_reporte.Rows.Count == 0 && cod_SubReporte == "")//no tiene subreporte
                                                {
                                                    //pasa

                                                    this.Session["cod_SubReporte"] = cod_SubReporte;

                                                    DataTable vistas = dplanning.ValidaTipoGestion(Convert.ToInt32(this.Session["company_id"].ToString().Trim()), this.Session["Planning_CodChannel"].ToString().Trim(), Convert.ToInt32(cod_Reporte)); //obtiene los valores booleanos para las vistas de paneles
                                                    this.Session["vistas"] = vistas;

                                                    CargarOpciones1();
                                                    insertar(cod_PDV, cod_Reporte, cod_SubReporte, cod_Periodo, LblPlanning.Text, cod_Producto, cod_Marca, cod_Familia, cod_Categoria);
                                                }
                                                else
                                                {
                                                    Pmensaje.CssClass      = "MensajesSupervisor";
                                                    lblencabezado.Text     = "Sr. Usuario";
                                                    lblmensajegeneral.Text = "El Reporte " + cod_Reporte + " no concuerda con el subreporte " + cod_SubReporte;
                                                    Mensajes_Usuario();
                                                    return;
                                                }
                                            }
                                            else
                                            {
                                                Pmensaje.CssClass      = "MensajesSupervisor";
                                                lblencabezado.Text     = "Sr. Usuario";
                                                lblmensajegeneral.Text = "El Reporte " + cod_Reporte + "o el periodo " + cod_Periodo + ". No es válido o no ha sido asignado a la campaña";
                                                Mensajes_Usuario();
                                                return;
                                            }
                                        }
                                        else
                                        {
                                            Pmensaje.CssClass      = "MensajesSupervisor";
                                            lblencabezado.Text     = "Sr. Usuario";
                                            lblmensajegeneral.Text = "El punto de venta " + cod_PDV + ". No es válido o no ha sido asignado a la campaña";
                                            Mensajes_Usuario();
                                            return;
                                        }
                                    }
                                }
                                else
                                {
                                    Gvlog.DataBind();
                                    Pmensaje.CssClass      = "MensajesSupervisor";
                                    lblencabezado.Text     = "Sr. Usuario";
                                    lblmensajegeneral.Text = "El archivo seleccionado no corresponde a un archivo de panel de puntos de venta válido. Por favor verifique la estructura que fue enviada a su correo.";
                                    Mensajes_Usuario();

                                    //System.Net.Mail.MailMessage correo = new System.Net.Mail.MailMessage();
                                    //correo.From = new System.Net.Mail.MailAddress("*****@*****.**");
                                    //correo.To.Add(this.Session["smail"].ToString());
                                    //correo.Subject = "Errores en archivo de asignación de puntos de venta";
                                    //correo.IsBodyHtml = true;
                                    //correo.Priority = System.Net.Mail.MailPriority.Normal;
                                    //string[] txtbody = new string[] { "Señor(a):" + "<br/>" +
                                    //        this.Session["nameuser"].ToString() + "<br/>" + "<br/>" +



                                    //        "El archivo que usted seleccionó para la carga de asignación de puntos de venta no cumple con una estructura válida." + "<br/>" +
                                    //        "Por favor verifique que tenga 4 columnas" + "<br/>" +  "<br/>" +
                                    //        "Sugerencia : identifique las columnas de la siguiente manera para su mayor comprensión" + "<br/>" +  "<br/>" +
                                    //        "Columna 1  : Nombre de Punto de Venta" + "<br/>" +
                                    //        "Columna 2  : Mercaderista"+ "<br/>" +
                                    //        "Columna 3  : Fecha inicio" + "<br/>" +
                                    //        "Columna 4  : Fecha fin" + "<br/>" + "<br/>" + "<br/>" +
                                    //        "Nota:  No es indispensable que las columnas se identifiquen de la misma manera como se describió anteriormente  , usted puede personalizar los nombres de las columnas del archivo ." +
                                    //        "Pero tenga en cuenta que debe ingresar la información de los puntos de venta en ese orden." + "<br/>" + "<br/>" + "<br/>" +
                                    //        "Cordial Saludo" + "<br/>" + "Administrador Xplora" };

                                    //correo.Body = string.Concat(txtbody);

                                    //System.Net.Mail.SmtpClient cliente = new System.Net.Mail.SmtpClient();
                                    //cliente.Host = "mail.lucky.com.pe";

                                    //try
                                    //{
                                    //    cliente.Send(correo);
                                    //}
                                    //catch (System.Net.Mail.SmtpException)
                                    //{
                                    //}
                                }
                            }
                            else
                            {
                                Pmensaje.CssClass      = "MensajesSupervisor";
                                lblencabezado.Text     = "Sr. Usuario";
                                lblmensajegeneral.Text = "Es indispensable que cierre sesión he inicie nuevamente. su sesión expiró.";
                                Mensajes_Usuario();
                            }
                        }
                        catch (Exception ex)
                        {
                            Pmensaje.CssClass      = "MensajesSupervisor";
                            lblencabezado.Text     = "Sr. Usuario";
                            lblmensajegeneral.Text = "El archivo seleccionado no corresponde a un archivo de panel de punto de venta. Por favor verifique que el nombre de la hoja donde estan los datos sea Hoja1";
                            Mensajes_Usuario();
                        }
                        oConn1.Close();
                    }
                    else
                    {
                        Pmensaje.CssClass      = "MensajesSupervisor";
                        lblencabezado.Text     = "Sr. Usuario";
                        lblmensajegeneral.Text = "Solo se permite cargar archivos en formato Excel 2003. Por favor verifique.";
                        Mensajes_Usuario();
                    }
                }
            }
            else
            {
                Pmensaje.CssClass      = "MensajesSupervisor";
                lblencabezado.Text     = "Sr. Usuario";
                lblmensajegeneral.Text = "Es indispensable seleccionar un archivo.";
                Mensajes_Usuario();
            }
        }