示例#1
0
        public List <PRESUPUESTOP> cargarPresupuestoCPT(HttpPostedFileBase file, string[] sociedad, string[] periodo, string[] anio, ref string mensaje, string idioma, int pagina)
        {
            TAT001Entities      db            = new TAT001Entities();
            List <PRESUPUESTOP> pRESUPUESTOPS = new List <PRESUPUESTOP>();
            PRESUPUESTOP        pRESUPUESTOP  = new PRESUPUESTOP();
            List <string[]>     datosPresu    = new List <string[]>();
            StreamReader        strem         = new StreamReader(file.InputStream);

            string[]      lines;
            bool          prilinea = true, primero = true;
            string        material = "";
            int           i = 1, ide = 0;
            List <REGION> sociedades = db.REGIONs.Where(x => sociedad.Contains(x.SOCIEDAD)).ToList();

            try
            {
                while (strem.Peek() > -1)
                {
                    if (prilinea)
                    {
                        prilinea = false;
                        lines    = strem.ReadLine().Insert(4, ",").Replace("\"", "").Split(',');
                    }
                    else
                    {
                        lines = strem.ReadLine().Insert(4, ",").Replace("\"", "").Split(',');
                        if (primero)
                        {
                            material             = lines[5].Trim();
                            pRESUPUESTOP.ANIO    = lines[1].Trim();
                            pRESUPUESTOP.POS     = i;
                            pRESUPUESTOP.MES     = mes(lines[0].Trim());
                            pRESUPUESTOP.VERSION = lines[2].Trim();
                            if (lines[3].Length == 12)
                            {
                                pRESUPUESTOP.PAIS   = lines[3].Substring(0, 6).Trim();
                                pRESUPUESTOP.REGION = lines[3].Substring(6, 6).Trim();
                            }
                            else
                            {
                                pRESUPUESTOP.REGION = lines[3].Substring(0, 6).Trim();
                            }
                            pRESUPUESTOP.MONEDA   = lines[4].Trim();
                            pRESUPUESTOP.MATERIAL = lines[5].Trim();
                            pRESUPUESTOP.BANNER   = lines[6].Trim();
                            primero = false;
                        }
                        if (material != lines[5])
                        {
                            material = lines[5].Trim();
                            if (filtrocarga(pRESUPUESTOP.REGION, pRESUPUESTOP.ANIO, pRESUPUESTOP.MES, sociedades, periodo, anio, true))
                            {
                                pRESUPUESTOPS.Add(new PRESUPUESTOP
                                {
                                    ID       = pRESUPUESTOP.ID,
                                    ANIO     = pRESUPUESTOP.ANIO,
                                    POS      = pRESUPUESTOP.POS,
                                    MES      = pRESUPUESTOP.MES,
                                    VERSION  = pRESUPUESTOP.VERSION,
                                    PAIS     = pRESUPUESTOP.PAIS,
                                    REGION   = pRESUPUESTOP.REGION,
                                    MONEDA   = pRESUPUESTOP.MONEDA,
                                    MATERIAL = pRESUPUESTOP.MATERIAL,
                                    BANNER   = pRESUPUESTOP.BANNER.PadLeft(10, '0'),
                                    NETLB    = pRESUPUESTOP.NETLB,
                                    TOTCS    = pRESUPUESTOP.TOTCS,
                                    ADVER    = pRESUPUESTOP.ADVER,
                                    DIRLB    = pRESUPUESTOP.DIRLB,
                                    OVHDF    = pRESUPUESTOP.OVHDF,
                                    OVHDV    = pRESUPUESTOP.OVHDV,
                                    PKGMT    = pRESUPUESTOP.PKGMT,
                                    RAWMT    = pRESUPUESTOP.RAWMT,
                                    CONPR    = pRESUPUESTOP.CONPR,
                                    POP      = pRESUPUESTOP.POP,
                                    DSTRB    = pRESUPUESTOP.DSTRB,
                                    GRSLS    = pRESUPUESTOP.GRSLS,
                                    CSHDC    = pRESUPUESTOP.CSHDC,
                                    FREEG    = pRESUPUESTOP.FREEG,
                                    PMVAR    = pRESUPUESTOP.PMVAR,
                                    PURCH    = pRESUPUESTOP.PURCH,
                                    RECUN    = pRESUPUESTOP.RECUN,
                                    RSRDV    = pRESUPUESTOP.RSRDV,
                                    VVX17    = pRESUPUESTOP.VVX17,
                                    OTHTA    = pRESUPUESTOP.OTHTA,
                                    CORPM    = pRESUPUESTOP.CORPM,
                                    SPA      = pRESUPUESTOP.SPA
                                });
                            }
                            pRESUPUESTOP = new PRESUPUESTOP();
                            i++;
                            pRESUPUESTOP.ANIO    = lines[1].Trim();
                            pRESUPUESTOP.POS     = i;
                            pRESUPUESTOP.MES     = mes(lines[0].Trim());
                            pRESUPUESTOP.VERSION = lines[2].Trim();
                            if (lines[3].Length == 12)
                            {
                                pRESUPUESTOP.PAIS   = lines[3].Substring(0, 6).Trim();
                                pRESUPUESTOP.REGION = lines[3].Substring(6, 6).Trim();
                            }
                            else
                            {
                                pRESUPUESTOP.REGION = lines[3].Substring(0, 6).Trim();
                            }
                            pRESUPUESTOP.MONEDA   = lines[4].Trim();
                            pRESUPUESTOP.MATERIAL = lines[5].Trim();
                            pRESUPUESTOP.BANNER   = lines[6].Trim();
                            decide(lines[7].Trim(), ref pRESUPUESTOP, Convert.ToDouble(lines[8].Trim()));
                        }
                        else
                        {
                            decide(lines[7].Trim(), ref pRESUPUESTOP, Convert.ToDouble(lines[8].Trim()));
                        }
                    }
                }
                if (filtrocarga(pRESUPUESTOP.REGION, pRESUPUESTOP.ANIO, pRESUPUESTOP.MES, sociedades, periodo, anio, true))
                {
                    pRESUPUESTOPS.Add(new PRESUPUESTOP
                    {
                        ID       = pRESUPUESTOP.ID,
                        ANIO     = pRESUPUESTOP.ANIO,
                        POS      = pRESUPUESTOP.POS,
                        MES      = pRESUPUESTOP.MES,
                        VERSION  = pRESUPUESTOP.VERSION,
                        PAIS     = pRESUPUESTOP.PAIS,
                        REGION   = pRESUPUESTOP.REGION,
                        MONEDA   = pRESUPUESTOP.MONEDA,
                        MATERIAL = pRESUPUESTOP.MATERIAL,
                        BANNER   = pRESUPUESTOP.BANNER.PadLeft(10, '0'),
                        NETLB    = pRESUPUESTOP.NETLB,
                        TOTCS    = pRESUPUESTOP.TOTCS,
                        ADVER    = pRESUPUESTOP.ADVER,
                        DIRLB    = pRESUPUESTOP.DIRLB,
                        OVHDF    = pRESUPUESTOP.OVHDF,
                        OVHDV    = pRESUPUESTOP.OVHDV,
                        PKGMT    = pRESUPUESTOP.PKGMT,
                        RAWMT    = pRESUPUESTOP.RAWMT,
                        CONPR    = pRESUPUESTOP.CONPR,
                        POP      = pRESUPUESTOP.POP,
                        DSTRB    = pRESUPUESTOP.DSTRB,
                        GRSLS    = pRESUPUESTOP.GRSLS,
                        CSHDC    = pRESUPUESTOP.CSHDC,
                        FREEG    = pRESUPUESTOP.FREEG,
                        PMVAR    = pRESUPUESTOP.PMVAR,
                        PURCH    = pRESUPUESTOP.PURCH,
                        RECUN    = pRESUPUESTOP.RECUN,
                        RSRDV    = pRESUPUESTOP.RSRDV,
                        VVX17    = pRESUPUESTOP.VVX17,
                        OTHTA    = pRESUPUESTOP.OTHTA,
                        CORPM    = pRESUPUESTOP.CORPM,
                        SPA      = pRESUPUESTOP.SPA
                    });
                }
                pRESUPUESTOP = new PRESUPUESTOP();
                if (pRESUPUESTOPS.Count == 0)
                {
                    mensaje = mensajes(5, idioma, pagina);//"No se encontraron datos en el archivo CPT de acuerdo al filtro de datos";
                }
            }
            catch (Exception e)
            {
                mensaje = mensajes(7, idioma, pagina);//"Formato de archivo para carga CPT incorrecto";
            }
            return(pRESUPUESTOPS);
        }
示例#2
0
        private void decide(string concepto, ref PRESUPUESTOP presu, double data)
        {
            switch (concepto)
            {
            case "NETLB":
                if (presu.NETLB == null)
                {
                    presu.NETLB = data;
                }
                else
                {
                    presu.NETLB += data;
                }
                break;

            case "TOTCS":
                if (presu.TOTCS == null)
                {
                    presu.TOTCS = data;
                }
                else
                {
                    presu.TOTCS += data;
                }
                break;

            case "ADVER":
                if (presu.ADVER == null)
                {
                    presu.ADVER = data;
                }
                else
                {
                    presu.ADVER += data;
                }
                break;

            case "DIRLB":
                if (presu.DIRLB == null)
                {
                    presu.DIRLB = data;
                }
                else
                {
                    presu.DIRLB += data;
                }
                break;

            case "OVHDF":
                if (presu.OVHDF == null)
                {
                    presu.OVHDF = data;
                }
                else
                {
                    presu.OVHDF += data;
                }
                break;

            case "OVHDV":
                if (presu.OVHDV == null)
                {
                    presu.OVHDV = data;
                }
                else
                {
                    presu.OVHDV += data;
                }
                break;

            case "PKGMT":
                if (presu.PKGMT == null)
                {
                    presu.PKGMT = data;
                }
                else
                {
                    presu.PKGMT += data;
                }
                break;

            case "RAWMT":
                if (presu.RAWMT == null)
                {
                    presu.RAWMT = data;
                }
                else
                {
                    presu.RAWMT += data;
                }
                break;

            case "CONPR":
                if (presu.CONPR == null)
                {
                    presu.CONPR = data;
                }
                else
                {
                    presu.CONPR += data;
                }
                break;

            case "POP":
                if (presu.POP == null)
                {
                    presu.POP = data;
                }
                else
                {
                    presu.POP += data;
                }
                break;

            case "DSTRB":
                if (presu.DSTRB == null)
                {
                    presu.DSTRB = data;
                }
                else
                {
                    presu.DSTRB += data;
                }
                break;

            case "GRSLS":
                if (presu.GRSLS == null)
                {
                    presu.GRSLS = data;
                }
                else
                {
                    presu.GRSLS += data;
                }
                break;

            case "CSHDC":
                if (presu.CSHDC == null)
                {
                    presu.CSHDC = data;
                }
                else
                {
                    presu.CSHDC += data;
                }
                break;

            case "FREEG":
                if (presu.FREEG == null)
                {
                    presu.FREEG = data;
                }
                else
                {
                    presu.FREEG += data;
                }
                break;

            case "PMVAR":
                if (presu.PMVAR == null)
                {
                    presu.PMVAR = data;
                }
                else
                {
                    presu.PMVAR += data;
                }
                break;

            case "PURCH":
                if (presu.PURCH == null)
                {
                    presu.PURCH = data;
                }
                else
                {
                    presu.PURCH += data;
                }
                break;

            case "RECUN":
                if (presu.RECUN == null)
                {
                    presu.RECUN = data;
                }
                else
                {
                    presu.RECUN += data;
                }
                break;

            case "RSRDV":
                if (presu.RSRDV == null)
                {
                    presu.RSRDV = data;
                }
                else
                {
                    presu.RSRDV += data;
                }
                break;

            case "VVX17":
                if (presu.VVX17 == null)
                {
                    presu.VVX17 = data;
                }
                else
                {
                    presu.VVX17 += data;
                }
                break;

            case "OTHTA":
                if (presu.OTHTA == null)
                {
                    presu.OTHTA = data;
                }
                else
                {
                    presu.OTHTA += data;
                }
                break;

            case "CORPM":
                if (presu.CORPM == null)
                {
                    presu.CORPM = data;
                }
                else
                {
                    presu.CORPM += data;
                }
                break;

            case "SPA":
                if (presu.SPA == null)
                {
                    presu.SPA = data;
                }
                else
                {
                    presu.SPA += data;
                }
                break;

            default:
                break;
            }
        }
示例#3
0
        private void decide(string concepto, ref PRESUPUESTOP presu, double data)
        {
            switch (concepto)
            {
            case "NETLB":
                presu.NETLB = data;
                break;

            case "TOTCS":
                presu.TOTCS = data;
                break;

            case "ADVER":
                presu.ADVER = data;
                break;

            case "DIRLB":
                presu.DIRLB = data;
                break;

            case "OVHDF":
                presu.OVHDF = data;
                break;

            case "OVHDV":
                presu.OVHDV = data;
                break;

            case "PKGMT":
                presu.PKGMT = data;
                break;

            case "RAWMT":
                presu.RAWMT = data;
                break;

            case "CONPR":
                presu.CONPR = data;
                break;

            case "POP":
                presu.POP = data;
                break;

            case "DSTRB":
                presu.DSTRB = data;
                break;

            case "GRSLS":
                presu.GRSLS = data;
                break;

            case "CSHDC":
                presu.CSHDC = data;
                break;

            case "FREEG":
                presu.FREEG = data;
                break;

            case "PMVAR":
                presu.PMVAR = data;
                break;

            case "PURCH":
                presu.PURCH = data;
                break;

            case "RECUN":
                presu.RECUN = data;
                break;

            case "RSRDV":
                presu.RSRDV = data;
                break;

            case "VVX17":
                presu.VVX17 = data;
                break;

            case "OTHTA":
                presu.OTHTA = data;
                break;

            case "CORPM":
                presu.CORPM = data;
                break;

            case "SPA":
                presu.SPA = data;
                break;

            default:
                break;
            }
        }