Пример #1
0
        // GET: Taxeoh/Details/5
        public ActionResult Details(string kun, string vk, string con, string sc)
        {
            int pagina_id = 852; //ID EN BASE DE DATOS

            FnCommon.ObtenerConfPage(db, pagina_id, User.Identity.Name, this.ControllerContext.Controller, 851);
            try
            {
                string p = Session["pais"].ToString();
                ViewBag.pais = p + ".svg";
            }
            catch
            {
                //return RedirectToAction("Pais", "Home");
            }

            var    coni   = Convert.ToInt32(con);
            TAXEOH tAXEOH = db.TAXEOHs.Where(x => x.KUNNR == kun && x.VKORG == vk && x.CONCEPTO_ID == coni && x.SOCIEDAD_ID == sc).FirstOrDefault();

            if (tAXEOH == null)
            {
                return(HttpNotFound());
            }
            //ViewBag.kun = kun;
            //ViewBag.vko = vko;
            //ViewBag.vtw = vtw;
            //ViewBag.spa = spa;
            CLIENTE cli = db.CLIENTEs.Find(vk, tAXEOH.VTWEG, tAXEOH.SPART, kun);

            ViewBag.Cliente   = cli.NAME1;
            ViewBag.NoCliente = cli.KUNNR;
            return(View(tAXEOH));
        }
Пример #2
0
        // GET: Taxeoh/Delete/5
        public ActionResult Delete(string kun, string vk, string con)
        {
            int pagina_id = 855; //ID EN BASE DE DATOS

            FnCommon.ObtenerConfPage(db, pagina_id, User.Identity.Name, this.ControllerContext.Controller, 851);

            try
            {
                string p = Session["pais"].ToString();
                ViewBag.pais = p + ".svg";
            }
            catch
            {
                //ViewBag.pais = "mx.svg";
                //return RedirectToAction("Pais", "Home");
            }

            int    ci     = Convert.ToInt32(con);
            TAXEOH tAXEOH = db.TAXEOHs.Where(x => x.KUNNR == kun && x.VKORG == vk && x.CONCEPTO_ID == ci).FirstOrDefault();

            if (tAXEOH == null)
            {
                return(HttpNotFound());
            }
            return(View(tAXEOH));
        }
Пример #3
0
        public ActionResult DeleteConfirmed(TAXEOH tx)
        {
            try
            {
                TAXEOH tAXEOH = db.TAXEOHs.Where(x => x.KUNNR == tx.KUNNR && x.VKORG == tx.VKORG && x.CONCEPTO_ID == tx.CONCEPTO_ID && x.VTWEG == tx.VTWEG).FirstOrDefault();
                tAXEOH.ACTIVO          = false;
                db.Entry(tAXEOH).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index", new { vko = tAXEOH.VKORG, vtw = tAXEOH.VTWEG, kun = tAXEOH.KUNNR, spa = tAXEOH.SPART }));
            }
            catch (Exception e)
            {
                int pagina_id = 855; //ID EN BASE DE DATOS
                FnCommon.ObtenerConfPage(db, pagina_id, User.Identity.Name, this.ControllerContext.Controller, 851);

                try
                {
                    string p = Session["pais"].ToString();
                    ViewBag.pais = p + ".svg";
                }
                catch
                {
                    //ViewBag.pais = "mx.svg";
                    //return RedirectToAction("Pais", "Home");
                }

                return(View(tx));
            }
        }
Пример #4
0
        public ActionResult Edit([Bind(Include = "SOCIEDAD_ID,PAIS_ID,VKORG,VTWEG,SPART,KUNNR,CONCEPTO_ID,TNOTA_ID,FECHAC,USUARIOC_ID,FECHAM,USUARIOM_ID,IMPUESTO_ID,PORC,PAY_T,ACTIVO")] TAXEOH tx, string MWSKZ)
        {
            if (ModelState.IsValid)
            {
                var por = db.IIMPUESTOes.Where(ip => ip.MWSKZ == MWSKZ).FirstOrDefault();
                var tax = db.TAXEOHs.Where(x => x.KUNNR == tx.KUNNR && x.VKORG == tx.VKORG && x.CONCEPTO_ID == tx.CONCEPTO_ID).FirstOrDefault();
                tax.IMPUESTO_ID     = MWSKZ;
                tax.PORC            = por.KBETR;
                tax.PAY_T           = tx.PAY_T;
                db.Entry(tax).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            int pagina_id = 853; //ID EN BASE DE DATOS

            FnCommon.ObtenerConfPage(db, pagina_id, User.Identity.Name, this.ControllerContext.Controller, 851);
            try
            {
                string p = Session["pais"].ToString();
                ViewBag.pais = p + ".svg";
            }
            catch
            {
                //ViewBag.pais = "mx.svg";
                //return RedirectToAction("Pais", "Home");
            }

            ViewBag.VKORG       = new SelectList(db.CLIENTEs, "VKORG", "NAME1", tx.VKORG);
            ViewBag.IMPUESTO_ID = new SelectList(db.IMPUESTOes, "MWSKZ", "MWSKZ", tx.IMPUESTO_ID);
            ViewBag.PAIS_ID     = new SelectList(db.PAIS, "LAND", "SPRAS", tx.PAIS_ID);
            ViewBag.SOCIEDAD_ID = new SelectList(db.SOCIEDADs, "BUKRS", "BUTXT", tx.SOCIEDAD_ID);
            ViewBag.CONCEPTO_ID = new SelectList(db.TX_CONCEPTO, "ID", "DESCRIPCION", tx.CONCEPTO_ID);
            ViewBag.TNOTA_ID    = new SelectList(db.TX_TNOTA, "ID", "DESCRIPCION", tx.TNOTA_ID);
            return(View(tx));
        }
Пример #5
0
        public ActionResult Create([Bind(Include = "SOCIEDAD_ID,PAIS_ID,VKORG,VTWEG,SPART,KUNNR,CONCEPTO_ID,TNOTA_ID,FECHAC,USUARIOC_ID,FECHAM,USUARIOM_ID,IMPUESTO_ID,PORC,PAY_T,ACTIVO")] TAXEOH tx, string kun, string vko, string vtw, string spa)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var por = db.IIMPUESTOes.Where(ip => ip.MWSKZ == tx.IMPUESTO_ID).FirstOrDefault();
                    var pa  = db.SOCIEDADs.Where(x => x.BUKRS == tx.SOCIEDAD_ID).FirstOrDefault();
                    tx.KUNNR = kun;
                    tx.VKORG = vko;
                    tx.VTWEG = vtw;
                    tx.SPART = spa;
                    if (tx.PAY_T != null && tx.PAY_T != "")
                    {
                        tx.PAY_T = tx.PAY_T.ToUpper();
                    }
                    else
                    {
                        tx.PAY_T = "";
                    }
                    tx.PAIS_ID     = pa.LAND;
                    tx.ACTIVO      = true;
                    tx.FECHAC      = DateTime.Now;
                    tx.USUARIOC_ID = User.Identity.Name;
                    tx.PORC        = por.KBETR;
                    db.TAXEOHs.Add(tx);
                    db.SaveChanges();
                    return(RedirectToAction("Index", new { vko = tx.VKORG, vtw = tx.VTWEG, kun = tx.KUNNR, spa = tx.SPART }));
                }
            }
            catch (Exception e)
            {
            }
            int pagina_id = 854; //ID EN BASE DE DATOS

            FnCommon.ObtenerConfPage(db, pagina_id, User.Identity.Name, this.ControllerContext.Controller, 851);

            try
            {
                string p = Session["pais"].ToString();
                ViewBag.pais = p + ".svg";
            }
            catch
            {
                //ViewBag.pais = "mx.svg";
                //return RedirectToAction("Pais", "Home");
            }
            ViewBag.VKORG       = new SelectList(db.CLIENTEs, "VKORG", "NAME1", tx.VKORG);
            ViewBag.IMPUESTO_ID = new SelectList(db.IMPUESTOes, "MWSKZ", "MWSKZ", tx.IMPUESTO_ID);
            ViewBag.PAIS_ID     = new SelectList(db.PAIS, "LAND", "SPRAS", tx.PAIS_ID);
            ViewBag.SOCIEDAD_ID = new SelectList(db.SOCIEDADs, "BUKRS", "BUTXT", tx.SOCIEDAD_ID);
            ViewBag.CONCEPTO_ID = new SelectList(db.TX_CONCEPTO, "ID", "DESCRIPCION", tx.CONCEPTO_ID);
            ViewBag.TNOTA_ID    = new SelectList(db.TX_TNOTA, "ID", "DESCRIPCION", tx.TNOTA_ID);
            ViewBag.kun         = kun;
            ViewBag.vko         = vko;
            ViewBag.vtw         = vtw;
            ViewBag.spa         = spa;
            return(View(tx));
        }
Пример #6
0
        public ActionResult Edit([Bind(Include = "SOCIEDAD_ID,PAIS_ID,VKORG,VTWEG,SPART,KUNNR,CONCEPTO_ID,TNOTA_ID,FECHAC,USUARIOC_ID,FECHAM,USUARIOM_ID,IMPUESTO_ID,PORC,PAY_T,ACTIVO")] TAXEOH tx, string MWSKZ)
        {
            if (ModelState.IsValid)
            {
                var por = db.IIMPUESTOes.Where(ip => ip.MWSKZ == MWSKZ).FirstOrDefault();
                var tax = db.TAXEOHs.Where(x => x.KUNNR == tx.KUNNR && x.VKORG == tx.VKORG && x.CONCEPTO_ID == tx.CONCEPTO_ID).FirstOrDefault();
                tax.IMPUESTO_ID     = MWSKZ;
                tax.PORC            = por.KBETR;
                tax.PAY_T           = tx.PAY_T;
                db.Entry(tax).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            int pagina = 853; //ID EN BASE DE DATOS

            using (TAT001Entities db = new TAT001Entities())
            {
                string u = User.Identity.Name;
                //string u = "admin";
                var user = db.USUARIOs.Where(a => a.ID.Equals(u)).FirstOrDefault();
                ViewBag.permisos = db.PAGINAVs.Where(a => a.ID.Equals(user.ID)).ToList();
                ViewBag.carpetas = db.CARPETAVs.Where(a => a.USUARIO_ID.Equals(user.ID)).ToList();
                ViewBag.usuario  = user; ViewBag.returnUrl = Request.Url.PathAndQuery;;
                ViewBag.rol      = user.PUESTO.PUESTOTs.Where(a => a.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50;
                ViewBag.Title    = db.PAGINAs.Where(a => a.ID.Equals(pagina)).FirstOrDefault().PAGINATs.Where(b => b.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50;
                ViewBag.warnings = db.WARNINGVs.Where(a => (a.PAGINA_ID.Equals(pagina) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList();
                ViewBag.textos   = db.TEXTOes.Where(a => (a.PAGINA_ID.Equals(851) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList();

                try
                {
                    string p = Session["pais"].ToString();
                    ViewBag.pais = p + ".svg";
                }
                catch
                {
                    //ViewBag.pais = "mx.svg";
                    //return RedirectToAction("Pais", "Home");
                }
                Session["spras"] = user.SPRAS_ID;
                ViewBag.lan      = user.SPRAS_ID;
            }
            ViewBag.VKORG       = new SelectList(db.CLIENTEs, "VKORG", "NAME1", tx.VKORG);
            ViewBag.IMPUESTO_ID = new SelectList(db.IMPUESTOes, "MWSKZ", "MWSKZ", tx.IMPUESTO_ID);
            ViewBag.PAIS_ID     = new SelectList(db.PAIS, "LAND", "SPRAS", tx.PAIS_ID);
            ViewBag.SOCIEDAD_ID = new SelectList(db.SOCIEDADs, "BUKRS", "BUTXT", tx.SOCIEDAD_ID);
            ViewBag.CONCEPTO_ID = new SelectList(db.TX_CONCEPTO, "ID", "DESCRIPCION", tx.CONCEPTO_ID);
            ViewBag.TNOTA_ID    = new SelectList(db.TX_TNOTA, "ID", "DESCRIPCION", tx.TNOTA_ID);
            return(View(tx));
        }
Пример #7
0
        // GET: Taxeoh/Edit/5
        public ActionResult Edit(string kun, string vk, string con)
        {
            int pagina = 853; //ID EN BASE DE DATOS

            using (TAT001Entities db = new TAT001Entities())
            {
                string u = User.Identity.Name;
                //string u = "admin";
                var user = db.USUARIOs.Where(a => a.ID.Equals(u)).FirstOrDefault();
                ViewBag.permisos = db.PAGINAVs.Where(a => a.ID.Equals(user.ID)).ToList();
                ViewBag.carpetas = db.CARPETAVs.Where(a => a.USUARIO_ID.Equals(user.ID)).ToList();
                ViewBag.usuario  = user; ViewBag.returnUrl = Request.Url.PathAndQuery;;
                ViewBag.rol      = user.PUESTO.PUESTOTs.Where(a => a.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50;
                ViewBag.Title    = db.PAGINAs.Where(a => a.ID.Equals(pagina)).FirstOrDefault().PAGINATs.Where(b => b.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50;
                ViewBag.warnings = db.WARNINGVs.Where(a => (a.PAGINA_ID.Equals(pagina) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList();
                ViewBag.textos   = db.TEXTOes.Where(a => (a.PAGINA_ID.Equals(851) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList();

                try
                {
                    string p = Session["pais"].ToString();
                    ViewBag.pais = p + ".svg";
                }
                catch
                {
                    //ViewBag.pais = "mx.svg";
                    //return RedirectToAction("Pais", "Home");
                }
                Session["spras"] = user.SPRAS_ID;
                ViewBag.lan      = user.SPRAS_ID;
            }
            int    ci     = Convert.ToInt32(con);
            TAXEOH tAXEOH = db.TAXEOHs.Where(x => x.KUNNR == kun && x.VKORG == vk && x.CONCEPTO_ID == ci).FirstOrDefault();

            if (tAXEOH == null)
            {
                return(HttpNotFound());
            }
            ViewBag.VKORG       = new SelectList(db.CLIENTEs, "VKORG", "NAME1", tAXEOH.VKORG);
            ViewBag.MWSKZ       = new SelectList(db.IMPUESTOes, "MWSKZ", "MWSKZ", tAXEOH.IMPUESTO_ID);
            ViewBag.PAIS_ID     = new SelectList(db.PAIS, "LAND", "SPRAS", tAXEOH.PAIS_ID);
            ViewBag.SOCIEDAD_ID = new SelectList(db.SOCIEDADs, "BUKRS", "BUTXT", tAXEOH.SOCIEDAD_ID);
            ViewBag.CONCEPTO_ID = new SelectList(db.TX_CONCEPTO, "ID", "DESCRIPCION", tAXEOH.CONCEPTO_ID);
            ViewBag.TNOTA_ID    = new SelectList(db.TX_TNOTA, "ID", "DESCRIPCION", tAXEOH.TNOTA_ID);
            return(View(tAXEOH));
        }
Пример #8
0
        // GET: Taxeoh/Details/5
        public ActionResult Details(string kun, string vk, string con, string sc)
        {
            int pagina = 852; //ID EN BASE DE DATOS

            using (TAT001Entities db = new TAT001Entities())
            {
                string u = User.Identity.Name;
                //string u = "admin";
                var user = db.USUARIOs.Where(a => a.ID.Equals(u)).FirstOrDefault();
                ViewBag.permisos = db.PAGINAVs.Where(a => a.ID.Equals(user.ID)).ToList();
                ViewBag.carpetas = db.CARPETAVs.Where(a => a.USUARIO_ID.Equals(user.ID)).ToList();
                ViewBag.usuario  = user; ViewBag.returnUrl = Request.Url.PathAndQuery;;
                ViewBag.rol      = user.PUESTO.PUESTOTs.Where(a => a.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50;
                ViewBag.Title    = db.PAGINAs.Where(a => a.ID.Equals(pagina)).FirstOrDefault().PAGINATs.Where(b => b.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50;
                ViewBag.warnings = db.WARNINGVs.Where(a => (a.PAGINA_ID.Equals(pagina) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList();
                ViewBag.textos   = db.TEXTOes.Where(a => (a.PAGINA_ID.Equals(851) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList();

                try
                {
                    string p = Session["pais"].ToString();
                    ViewBag.pais = p + ".svg";
                }
                catch
                {
                    //ViewBag.pais = "mx.svg";
                    //return RedirectToAction("Pais", "Home");
                }
                Session["spras"] = user.SPRAS_ID;
                ViewBag.lan      = user.SPRAS_ID;
            }
            var    coni   = Convert.ToInt32(con);
            TAXEOH tAXEOH = db.TAXEOHs.Where(x => x.KUNNR == kun && x.VKORG == vk && x.CONCEPTO_ID == coni && x.SOCIEDAD_ID == sc).FirstOrDefault();

            if (tAXEOH == null)
            {
                return(HttpNotFound());
            }
            //ViewBag.kun = kun;
            //ViewBag.vko = vko;
            //ViewBag.vtw = vtw;
            //ViewBag.spa = spa;
            return(View(tAXEOH));
        }
Пример #9
0
        public ActionResult DeleteConfirmed(TAXEOH tx)
        {
            try
            {
                TAXEOH tAXEOH = db.TAXEOHs.Where(x => x.KUNNR == tx.KUNNR && x.VKORG == tx.VKORG && x.CONCEPTO_ID == tx.CONCEPTO_ID && x.VTWEG == tx.VTWEG).FirstOrDefault();
                tAXEOH.ACTIVO          = false;
                db.Entry(tAXEOH).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            catch (Exception e)
            {
                int pagina = 855; //ID EN BASE DE DATOS
                using (TAT001Entities db = new TAT001Entities())
                {
                    string u = User.Identity.Name;
                    //string u = "admin";
                    var user = db.USUARIOs.Where(a => a.ID.Equals(u)).FirstOrDefault();
                    ViewBag.permisos = db.PAGINAVs.Where(a => a.ID.Equals(user.ID)).ToList();
                    ViewBag.carpetas = db.CARPETAVs.Where(a => a.USUARIO_ID.Equals(user.ID)).ToList();
                    ViewBag.usuario  = user; ViewBag.returnUrl = Request.Url.PathAndQuery;;
                    ViewBag.rol      = user.PUESTO.PUESTOTs.Where(a => a.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50;
                    ViewBag.Title    = db.PAGINAs.Where(a => a.ID.Equals(pagina)).FirstOrDefault().PAGINATs.Where(b => b.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50;
                    ViewBag.warnings = db.WARNINGVs.Where(a => (a.PAGINA_ID.Equals(pagina) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList();
                    ViewBag.textos   = db.TEXTOes.Where(a => (a.PAGINA_ID.Equals(851) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList();

                    try
                    {
                        string p = Session["pais"].ToString();
                        ViewBag.pais = p + ".svg";
                    }
                    catch
                    {
                        //ViewBag.pais = "mx.svg";
                        //return RedirectToAction("Pais", "Home");
                    }
                    Session["spras"] = user.SPRAS_ID;
                    ViewBag.lan      = user.SPRAS_ID;
                }
                return(View(tx));
            }
        }
Пример #10
0
        // GET: Taxeoh/Edit/5
        public ActionResult Edit(string kun, string vk, string con)
        {
            int pagina_id = 853; //ID EN BASE DE DATOS

            FnCommon.ObtenerConfPage(db, pagina_id, User.Identity.Name, this.ControllerContext.Controller, 851);

            try
            {
                string p = Session["pais"].ToString();
                ViewBag.pais = p + ".svg";
            }
            catch
            {
                //ViewBag.pais = "mx.svg";
                //return RedirectToAction("Pais", "Home");
            }

            int    ci     = Convert.ToInt32(con);
            TAXEOH tAXEOH = db.TAXEOHs.Where(x => x.KUNNR == kun && x.VKORG == vk && x.CONCEPTO_ID == ci).FirstOrDefault();

            if (tAXEOH == null)
            {
                return(HttpNotFound());
            }
            ViewBag.VKORG       = new SelectList(db.CLIENTEs, "VKORG", "NAME1", tAXEOH.VKORG);
            ViewBag.MWSKZ       = new SelectList(db.IMPUESTOes, "MWSKZ", "MWSKZ", tAXEOH.IMPUESTO_ID);
            ViewBag.PAIS_ID     = new SelectList(db.PAIS, "LAND", "SPRAS", tAXEOH.PAIS_ID);
            ViewBag.SOCIEDAD_ID = new SelectList(db.SOCIEDADs, "BUKRS", "BUTXT", tAXEOH.SOCIEDAD_ID);
            ViewBag.CONCEPTO_ID = new SelectList(db.TX_CONCEPTO, "ID", "DESCRIPCION", tAXEOH.CONCEPTO_ID);
            ViewBag.TNOTA_ID    = new SelectList(db.TX_TNOTA, "ID", "DESCRIPCION", tAXEOH.TNOTA_ID);
            CLIENTE cli = db.CLIENTEs.Find(vk, tAXEOH.VTWEG, tAXEOH.SPART, kun);

            ViewBag.Cliente   = cli.NAME1;
            ViewBag.NoCliente = cli.KUNNR;
            return(View(tAXEOH));
        }
Пример #11
0
        private string Detalle(DOCUMENTO doc, ref List <DetalleContab> contas, CONPOSAPH enca, List <DOCUMENTOF> docf, bool hijo)
        {
            contas = new List <DetalleContab>();
            TAT001Entities   db   = new TAT001Entities();
            List <CONPOSAPP> conp = new List <CONPOSAPP>();
            CLIENTE          clien;
            CUENTA           cuent;
            TCAMBIO          cambio = new TCAMBIO();
            TAXEOH           taxh   = new TAXEOH();
            List <TAXEOP>    taxp   = new List <TAXEOP>();
            MATERIAL         material;

            string[] grupos;
            string   grupo   = "";
            string   materi  = "";
            string   factura = "";

            try
            {
                try
                {
                    conp = db.CONPOSAPPs.Where(x => x.CONSECUTIVO == enca.CONSECUTIVO).ToList();
                }
                catch (Exception f)
                {
                    return("No se encontro datos de configuracion para detalle contable");
                }
                try
                {
                    clien = db.CLIENTEs.Where(x => x.KUNNR == doc.PAYER_ID).Single();
                }
                catch (Exception g)
                {
                    return("No se encontro datos de cliente para detalle contable");
                }
                try
                {
                    cuent = db.CUENTAs.Where(x => x.PAIS_ID == doc.PAIS_ID && x.SOCIEDAD_ID == doc.SOCIEDAD_ID && x.TALL_ID == doc.TALL_ID).Single();
                }
                catch (Exception h)
                {
                    return("No se encontro datos de cuenta para detalle contable");
                }
                try
                {
                    string pais = db.TAX_LAND.Where(x => x.ACTIVO == true && x.PAIS_ID == doc.PAIS_ID).Select(x => x.PAIS_ID).Single();
                    if (String.IsNullOrEmpty(pais) == false)
                    {
                        if (enca.TIPO_DOC == "DG" || enca.TIPO_DOC == "BB" || enca.TIPO_DOC == "KG")
                        {
                            try
                            {
                                taxh = db.TAXEOHs.Where(x => x.PAIS_ID == doc.PAIS_ID && x.SOCIEDAD_ID == doc.SOCIEDAD_ID && x.KUNNR == clien.KUNNR && x.CONCEPTO_ID == doc.CONCEPTO_ID).Single();
                            }
                            catch (Exception)
                            {
                                return("No se encontro datos de configuracion de taxeo");
                            }
                        }
                    }
                }
                catch (Exception z)
                {
                }
                try
                {
                    if (doc.PAIS_ID == "CO")
                    {
                        if (enca.TIPO_DOC == "DG" || enca.TIPO_DOC == "BB")
                        {
                            taxp = db.TAXEOPs.Where(x => x.PAIS_ID == doc.PAIS_ID && x.SOCIEDAD_ID == doc.SOCIEDAD_ID && x.KUNNR == clien.KUNNR && x.CONCEPTO_ID == doc.CONCEPTO_ID).ToList();
                        }
                    }
                }
                catch (Exception)
                {
                    return("No se encontro configuracion para extraccion de retencion");
                }
                if (docf.Count > 0)
                {
                    factura = docf[0].FACTURA;
                }
                if (String.IsNullOrEmpty(clien.EXPORTACION) == false)
                {
                    try
                    {
                        cambio = db.TCAMBIOs.Where(x => x.FCURR == doc.MONEDA_ID && x.TCURR == "USD" && x.GDATU == DateTime.Today).Single();
                    }
                    catch (Exception)
                    {
                        return("No se encontro el cambio de moneda de la fecha actual.");
                    }
                }

                for (int i = 0; i < conp.Count; i++)
                {
                    if (conp[i].POSICION == 1)
                    {
                        DetalleContab conta = new DetalleContab();
                        conta.POS_TYPE  = conp[i].KEY;
                        conta.ACCOUNT   = cuent.ABONO.ToString();
                        conta.COMP_CODE = doc.SOCIEDAD_ID;
                        conta.BUS_AREA  = conp[i].BUS_AREA;
                        conta.POST_KEY  = conp[i].POSTING_KEY;
                        conta.TEXT      = doc.CONCEPTO;
                        conta.BALANCE   = Conversion(Convert.ToDecimal(doc.MONTO_DOC_MD), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                        if (conp[i].POSTING_KEY == "11")
                        {
                            if (enca.TIPO_DOC == "BB")
                            {
                                if (doc.PAIS_ID == "CO")
                                {
                                    conta.BALANCE = Conversion(Convert.ToDecimal(doc.MONTO_DOC_MD + (doc.MONTO_DOC_MD * taxh.PORC / 100)), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                }
                                conta.REF_KEY1 = clien.STCD1;
                                conta.REF_KEY3 = clien.NAME1;
                                if (enca.CALC_TAXT == false)
                                {
                                    conta.TAX_CODE = conp[i].TAX_CODE;
                                }
                            }
                            else
                            {
                                conta.REF_KEY1 = conp[i].REF_KEY1;
                                conta.REF_KEY3 = conp[i].REF_KEY3;
                            }
                            conta.ACCOUNT = clien.PAYER;
                        }
                        if (conp[i].POSTING_KEY == "31")
                        {
                            conta.ACCOUNT = clien.PROVEEDOR_ID;
                            if (enca.TIPO_DOC == "KR" && doc.PAIS_ID == "CO")
                            {
                                conta.ASSIGNMENT = clien.PAYER;
                                if (enca.CALC_TAXT == false)
                                {
                                    conta.TAX_CODE = taxh.IMPUESTO_ID;
                                }
                            }
                            if (enca.TIPO_DOC == "KG" && doc.PAIS_ID == "CO")
                            {
                                conta.BALANCE = Conversion(Convert.ToDecimal(doc.MONTO_DOC_MD + (doc.MONTO_DOC_MD * taxh.PORC / 100)), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                            }
                        }
                        if (conp[i].POSTING_KEY == "50" && enca.TIPO_DOC == "RN")
                        {
                            conta.ACCOUNT = cuent.CLEARING.ToString();
                        }
                        if (conp[i].POSTING_KEY == "50" && enca.TIPO_DOC == "SA" && hijo)
                        {
                            conta.ACCOUNT = cuent.CLEARING.ToString();
                        }
                        if (doc.PAIS_ID == "CO" && enca.TIPO_DOC != "SA")
                        {
                            if (taxp.Count > 0)
                            {
                                for (int k = 0; k < taxp.Count; k++)
                                {
                                    conta.RETENCION_ID += taxp[k].RETENCION_ID + ",";
                                }
                                conta.RETENCION_ID = conta.RETENCION_ID.Substring(0, conta.RETENCION_ID.Length - 1);
                            }
                            if (enca.TIPO_SOL == "KG")
                            {
                                conta.ACCOUNT = clien.PROVEEDOR_ID;
                            }
                        }
                        contas.Add(conta);
                    }
                    else
                    {
                        List <DOCUMENTOM> docm = db.DOCUMENTOMs.Where(x => x.NUM_DOC == doc.NUM_DOC).ToList();
                        for (int j = 0; j < docm.Count; j++)
                        {
                            DetalleContab conta = new DetalleContab();
                            conta.POS_TYPE    = conp[i].KEY;
                            conta.COMP_CODE   = doc.SOCIEDAD_ID;
                            conta.BUS_AREA    = conp[i].BUS_AREA;
                            conta.POST_KEY    = conp[i].POSTING_KEY;
                            conta.TEXT        = doc.CONCEPTO;
                            conta.REF_KEY1    = clien.STCD1;
                            conta.REF_KEY3    = clien.NAME1;
                            conta.SALES_ORG   = clien.VKORG;
                            conta.DIST_CHANEL = clien.VTWEG;
                            conta.DIVISION    = clien.SPART;
                            if (enca.TIPO_DOC != "RN" && doc.PAIS_ID != "CO")
                            {
                                conta.CUSTOMER = doc.PAYER_ID;
                                conta.PRODUCT  = docm[j].MATNR;
                                if (conp[i].QUANTITY != null && conp[i].QUANTITY != 0)
                                {
                                    conta.QTY = conp[i].QUANTITY.ToString();
                                }
                                conta.AMOUNT_LC = conp[i].BASE_UNIT;
                                conta.ACCOUNT   = cuent.CARGO.ToString();
                                //conta.BALANCE = (docp[j].MONTO_APOYO * docp[j].VOLUMEN_EST).ToString();

                                //conta.BALANCE = docp[j].APOYO_REAL.ToString();
                                if (enca.TIPO_DOC == "BB" || enca.TIPO_DOC == "DG")
                                {
                                    //conta.BALANCE = docm[j].APOYO_REAL.ToString(); //KCMX notacredito
                                    conta.BALANCE = Conversion(Convert.ToDecimal(docm[j].APOYO_REAL), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                }
                                else if (enca.TIPO_DOC == "SA" && hijo)
                                {
                                    conta.BALANCE = Conversion(Convert.ToDecimal(docm[j].APOYO_REAL), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                }
                                else
                                {
                                    //conta.BALANCE = docm[j].APOYO_EST.ToString(); //KCMX solic
                                    conta.BALANCE = Conversion(Convert.ToDecimal(docm[j].APOYO_EST), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                }
                            }
                            else
                            {
                                //conta.SALES_ORG =
                                //conta.DIST_CHANEL =
                                //conta.DIVISION =
                                conta.CUSTOMER    =
                                    conta.PRODUCT = "";
                                conta.ACCOUNT     = cuent.ABONO.ToString();
                                conta.BALANCE     = Conversion(Convert.ToDecimal(docm[j].APOYO_REAL), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                if (enca.TIPO_DOC == "BB" || enca.TIPO_DOC == "SA")
                                {
                                    if (doc.PAIS_ID == "CO")
                                    {
                                        //conta.SALES_ORG = clien.VKORG;
                                        //conta.DIST_CHANEL = clien.VTWEG;
                                        //conta.DIVISION = clien.SPART;
                                        conta.SALES_DIST = clien.BZIRK;
                                        conta.CUSTOMER   = doc.PAYER_ID;
                                        conta.PRODUCT    = docm[j].MATNR;
                                        //conta.REF_KEY1 = clien.STCD1;
                                        //conta.REF_KEY3 = clien.NAME1;
                                        conta.ACCOUNT = cuent.CARGO.ToString();
                                        if (enca.TIPO_DOC == "SA")
                                        {
                                            conta.BALANCE    = Conversion(Convert.ToDecimal(docm[j].APOYO_EST), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                            conta.ASSIGNMENT = doc.PAYER_ID;
                                        }
                                        if (enca.TIPO_DOC == "BB")
                                        {
                                            conta.BALANCE = Conversion(Convert.ToDecimal(docm[j].APOYO_REAL), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                        }
                                    }
                                }
                                //if (enca.TIPO_DOC != "KG" && doc.PAIS_ID == "CO")
                                //{
                                //    //conta.BALANCE = docm[j].APOYO_EST.ToString();
                                //    conta.BALANCE = Conversion(Convert.ToDecimal(docm[j].APOYO_EST), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                //}
                                if (enca.TIPO_DOC == "KG" && doc.PAIS_ID == "CO")
                                {
                                    //conta.BALANCE = (doc.MONTO_DOC_MD + (doc.MONTO_DOC_MD * tax.PORC / 100)).ToString();
                                    conta.BALANCE  = Conversion(Convert.ToDecimal(doc.MONTO_DOC_MD + (doc.MONTO_DOC_MD * taxh.PORC / 100)), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                    conta.ACCOUNT  = cuent.CLEARING.ToString();
                                    conta.PRODUCT  = docm[j].MATNR;
                                    conta.CUSTOMER = doc.PAYER_ID;
                                }
                                if (enca.TIPO_DOC == "DG" && doc.PAIS_ID == "CO")
                                {
                                    conta.ACCOUNT  = cuent.CARGO.ToString();
                                    conta.BALANCE  = Conversion(Convert.ToDecimal(docm[j].APOYO_REAL), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                    conta.PRODUCT  = docm[j].MATNR;
                                    conta.CUSTOMER = doc.PAYER_ID;
                                    conta.REF_KEY1 = factura;
                                    conta.REF_KEY3 = clien.NAME1;
                                }
                                if (enca.TIPO_DOC == "RN")
                                {
                                    conta.ACCOUNT = cuent.CLEARING.ToString();
                                }
                            }
                            if (enca.TIPO_DOC == "KR" && doc.PAIS_ID == "CO")
                            {
                                if (enca.CALC_TAXT == false)
                                {
                                    conta.TAX_CODE = taxh.IMPUESTO_ID;
                                }
                                conta.ASSIGNMENT = clien.PAYER;
                                conta.PRODUCT    = docm[j].MATNR;
                                conta.CUSTOMER   = doc.PAYER_ID;
                                conta.ACCOUNT    = cuent.CLEARING.ToString();
                            }
                            else
                            {
                                if (enca.CALC_TAXT == false)
                                {
                                    materi   = docm[j].MATNR;
                                    material = db.MATERIALs.Where(x => x.ID == materi).First();
                                    grupos   = conp[i].MATERIALGP.Split('+');
                                    grupo    = grupos.Where(x => x == material.MATERIALGP_ID).FirstOrDefault();
                                    if (String.IsNullOrEmpty(grupo) == false)
                                    {
                                        conta.TAX_CODE = conp[i].TAXCODEGP;
                                    }
                                    else
                                    {
                                        conta.TAX_CODE = conp[i].TAX_CODE;
                                    }
                                }
                            }
                            if (enca.TIPO_DOC == "DG" || enca.TIPO_DOC == "BB")
                            {
                                if (doc.PAIS_ID != "CO")
                                {
                                    conta.REF_KEY1 = conp[i].REF_KEY1;
                                    conta.REF_KEY3 = conp[i].REF_KEY3;
                                }
                            }
                            contas.Add(conta);
                            if (enca.TIPO_DOC == "RN" || enca.TIPO_DOC == "KR" || enca.TIPO_DOC == "KG")
                            {
                                break;
                            }
                        }
                        List <DOCUMENTOP> docp = db.DOCUMENTOPs.Where(x => x.NUM_DOC == doc.NUM_DOC).ToList();
                        for (int j = 0; j < docp.Count; j++)
                        {
                            DetalleContab conta = new DetalleContab();
                            conta.POS_TYPE    = conp[i].KEY;
                            conta.COMP_CODE   = doc.SOCIEDAD_ID;
                            conta.BUS_AREA    = conp[i].BUS_AREA;
                            conta.POST_KEY    = conp[i].POSTING_KEY;
                            conta.TEXT        = doc.CONCEPTO;
                            conta.REF_KEY1    = clien.STCD1;
                            conta.REF_KEY3    = clien.NAME1;
                            conta.SALES_ORG   = clien.VKORG;
                            conta.DIST_CHANEL = clien.VTWEG;
                            conta.DIVISION    = clien.SPART;
                            if (enca.TIPO_DOC != "RN" && doc.PAIS_ID != "CO")
                            {
                                conta.CUSTOMER = doc.PAYER_ID;
                                conta.PRODUCT  = docp[j].MATNR;
                                if (conp[i].QUANTITY != null && conp[i].QUANTITY != 0)
                                {
                                    conta.QTY = conp[i].QUANTITY.ToString();
                                }
                                conta.AMOUNT_LC = conp[i].BASE_UNIT;
                                conta.ACCOUNT   = cuent.CARGO.ToString();
                                //conta.BALANCE = (docp[j].MONTO_APOYO * docp[j].VOLUMEN_EST).ToString();

                                //conta.BALANCE = docp[j].APOYO_REAL.ToString();
                                if (enca.TIPO_DOC == "BB" || enca.TIPO_DOC == "DG")
                                {
                                    //conta.BALANCE = docp[j].APOYO_REAL.ToString(); //KCMX notacredito
                                    conta.BALANCE = Conversion(Convert.ToDecimal(docp[j].APOYO_REAL), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                }
                                else if (enca.TIPO_DOC == "SA" && hijo)
                                {
                                    //conta.BALANCE = docp[j].APOYO_EST.ToString(); //KCMX solic
                                    conta.BALANCE = Conversion(Convert.ToDecimal(docp[j].APOYO_REAL), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                }
                                else
                                {
                                    conta.BALANCE = Conversion(Convert.ToDecimal(docp[j].APOYO_EST), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                }
                            }
                            else
                            {
                                //conta.SALES_ORG =
                                //conta.DIST_CHANEL =
                                //conta.DIVISION =
                                conta.CUSTOMER    =
                                    conta.PRODUCT = "";
                                conta.ACCOUNT     = cuent.ABONO.ToString();
                                conta.BALANCE     = Conversion(Convert.ToDecimal(doc.MONTO_DOC_MD), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                if (enca.TIPO_DOC == "BB" || enca.TIPO_DOC == "SA")
                                {
                                    if (doc.PAIS_ID == "CO")
                                    {
                                        //conta.SALES_ORG = clien.VKORG;
                                        //conta.DIST_CHANEL = clien.VTWEG;
                                        //conta.DIVISION = clien.SPART;
                                        conta.SALES_DIST = clien.BZIRK;
                                        conta.CUSTOMER   = doc.PAYER_ID;
                                        conta.PRODUCT    = docp[j].MATNR;
                                        //conta.REF_KEY1 = clien.STCD1;
                                        //conta.REF_KEY3 = clien.NAME1;
                                        conta.ACCOUNT = cuent.CARGO.ToString();
                                        if (enca.TIPO_DOC == "SA")
                                        {
                                            conta.ASSIGNMENT = doc.PAYER_ID;
                                            conta.BALANCE    = Conversion(Convert.ToDecimal(docp[j].APOYO_EST), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                        }
                                        if (enca.TIPO_DOC == "BB")
                                        {
                                            conta.BALANCE = Conversion(Convert.ToDecimal(docp[j].APOYO_REAL), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                        }
                                    }
                                }
                                //if (enca.TIPO_DOC != "KG" && doc.PAIS_ID == "CO")
                                //{
                                //    //conta.BALANCE = docp[j].APOYO_EST.ToString();
                                //    conta.BALANCE = Conversion(Convert.ToDecimal(docp[j].APOYO_EST), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                //}
                                if (enca.TIPO_DOC == "KG" && doc.PAIS_ID == "CO")
                                {
                                    //conta.BALANCE = (doc.MONTO_DOC_MD + (doc.MONTO_DOC_MD * tax.PORC / 100)).ToString();
                                    conta.BALANCE  = Conversion(Convert.ToDecimal(doc.MONTO_DOC_MD + (doc.MONTO_DOC_MD * taxh.PORC / 100)), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                    conta.ACCOUNT  = cuent.CLEARING.ToString();
                                    conta.PRODUCT  = docp[j].MATNR;
                                    conta.CUSTOMER = doc.PAYER_ID;
                                }
                                if (enca.TIPO_DOC == "DG" && doc.PAIS_ID == "CO")
                                {
                                    conta.ACCOUNT  = cuent.CARGO.ToString();
                                    conta.BALANCE  = Conversion(Convert.ToDecimal(docp[j].APOYO_REAL), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC).ToString();
                                    conta.PRODUCT  = docp[j].MATNR;
                                    conta.CUSTOMER = doc.PAYER_ID;
                                    conta.REF_KEY1 = factura;
                                    conta.REF_KEY3 = clien.NAME1;
                                    //conta.SALES_ORG = clien.VKORG;
                                    //conta.DIST_CHANEL = clien.VTWEG;
                                    //conta.DIVISION = clien.SPART;
                                }
                                if (enca.TIPO_DOC == "RN")
                                {
                                    conta.ACCOUNT = cuent.CLEARING.ToString();
                                }
                            }
                            if (enca.TIPO_DOC == "KR" && doc.PAIS_ID == "CO")
                            {
                                if (enca.CALC_TAXT == false)
                                {
                                    conta.TAX_CODE = taxh.IMPUESTO_ID;
                                }
                                conta.ASSIGNMENT = clien.PAYER;
                                conta.PRODUCT    = docp[j].MATNR;
                                conta.CUSTOMER   = doc.PAYER_ID;
                                conta.ACCOUNT    = cuent.CLEARING.ToString();
                            }
                            else
                            {
                                if (enca.CALC_TAXT == true)
                                {
                                    materi   = docp[j].MATNR;
                                    material = db.MATERIALs.Where(y => y.ID == materi).Single();
                                    grupos   = conp[i].MATERIALGP.Split('+');
                                    grupo    = grupos.Where(x => x == material.MATERIALGP_ID).FirstOrDefault();
                                    if (String.IsNullOrEmpty(grupo) == false)
                                    {
                                        conta.TAX_CODE = conp[i].TAXCODEGP;
                                    }
                                    else
                                    {
                                        conta.TAX_CODE = conp[i].TAX_CODE;
                                    }
                                }
                            }
                            if (enca.TIPO_DOC == "DG" || enca.TIPO_DOC == "BB")
                            {
                                if (doc.PAIS_ID != "CO")
                                {
                                    conta.REF_KEY1 = conp[i].REF_KEY1;
                                    conta.REF_KEY3 = conp[i].REF_KEY3;
                                }
                            }
                            contas.Add(conta);
                            if (enca.TIPO_DOC == "RN" || enca.TIPO_DOC == "KR" || enca.TIPO_DOC == "KG")
                            {
                                break;
                            }
                        }


                        if (enca.TIPO_DOC == "BB" && doc.PAIS_ID == "CO")
                        {
                            DetalleContab conta = new DetalleContab();
                            conta.POS_TYPE    = conp[i].KEY;
                            conta.ACCOUNT     = cuent.CLEARING.ToString();
                            conta.BALANCE     = (Conversion(Convert.ToDecimal(doc.MONTO_DOC_MD + (doc.MONTO_DOC_MD * taxh.PORC / 100)), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC) - Conversion(Convert.ToDecimal(doc.MONTO_DOC_MD), clien.EXPORTACION, Convert.ToDecimal(cambio.UKURS), ref conta.AMOUNT_LC)).ToString();
                            conta.COMP_CODE   = doc.SOCIEDAD_ID;
                            conta.BUS_AREA    = conp[i].BUS_AREA;
                            conta.POST_KEY    = conp[i].POSTING_KEY;
                            conta.TEXT        = doc.CONCEPTO;
                            conta.REF_KEY1    = clien.STCD1;
                            conta.REF_KEY3    = clien.NAME1;
                            conta.CUSTOMER    = doc.PAYER_ID;
                            conta.SALES_ORG   = clien.VKORG;
                            conta.DIST_CHANEL = clien.VTWEG;
                            conta.DIVISION    = clien.SPART;
                            conta.TAX_CODE    = conp[i].TAX_CODE;
                            contas.Add(conta);
                        }
                    }
                }
                return("");
            }
            catch (Exception e)
            {
                return("Error al obtener detalle contable");
            }
        }
Пример #12
0
        public ActionResult Create([Bind(Include = "SOCIEDAD_ID,PAIS_ID,VKORG,VTWEG,SPART,KUNNR,CONCEPTO_ID,TNOTA_ID,FECHAC,USUARIOC_ID,FECHAM,USUARIOM_ID,IMPUESTO_ID,PORC,PAY_T,ACTIVO")] TAXEOH tx, string kun, string vko, string vtw, string spa)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var por = db.IIMPUESTOes.Where(ip => ip.MWSKZ == tx.IMPUESTO_ID).FirstOrDefault();
                    var pa  = db.SOCIEDADs.Where(x => x.BUKRS == tx.SOCIEDAD_ID).FirstOrDefault();
                    tx.KUNNR       = kun;
                    tx.VKORG       = vko;
                    tx.VTWEG       = vtw;
                    tx.SPART       = spa;
                    tx.PAY_T       = tx.PAY_T.ToUpper();
                    tx.PAIS_ID     = pa.LAND;
                    tx.ACTIVO      = true;
                    tx.FECHAC      = DateTime.Now;
                    tx.USUARIOC_ID = User.Identity.Name;
                    tx.PORC        = por.KBETR;
                    db.TAXEOHs.Add(tx);
                    db.SaveChanges();
                    return(RedirectToAction("Index", new { vko = tx.VKORG, vtw = tx.VTWEG, kun = tx.KUNNR, spa = tx.SPART }));
                }
            }
            catch (Exception e)
            {
            }
            int pagina = 854; //ID EN BASE DE DATOS

            using (TAT001Entities db = new TAT001Entities())
            {
                string u = User.Identity.Name;
                //string u = "admin";
                var user = db.USUARIOs.Where(a => a.ID.Equals(u)).FirstOrDefault();
                ViewBag.permisos = db.PAGINAVs.Where(a => a.ID.Equals(user.ID)).ToList();
                ViewBag.carpetas = db.CARPETAVs.Where(a => a.USUARIO_ID.Equals(user.ID)).ToList();
                ViewBag.usuario  = user; ViewBag.returnUrl = Request.Url.PathAndQuery;;
                ViewBag.rol      = user.PUESTO.PUESTOTs.Where(a => a.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50;
                ViewBag.Title    = db.PAGINAs.Where(a => a.ID.Equals(pagina)).FirstOrDefault().PAGINATs.Where(b => b.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50;
                ViewBag.warnings = db.WARNINGVs.Where(a => (a.PAGINA_ID.Equals(pagina) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList();
                ViewBag.textos   = db.TEXTOes.Where(a => (a.PAGINA_ID.Equals(851) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList();

                try
                {
                    string p = Session["pais"].ToString();
                    ViewBag.pais = p + ".svg";
                }
                catch
                {
                    //ViewBag.pais = "mx.svg";
                    //return RedirectToAction("Pais", "Home");
                }
                Session["spras"] = user.SPRAS_ID;
                ViewBag.lan      = user.SPRAS_ID;
            }
            ViewBag.VKORG       = new SelectList(db.CLIENTEs, "VKORG", "NAME1", tx.VKORG);
            ViewBag.IMPUESTO_ID = new SelectList(db.IMPUESTOes, "MWSKZ", "MWSKZ", tx.IMPUESTO_ID);
            ViewBag.PAIS_ID     = new SelectList(db.PAIS, "LAND", "SPRAS", tx.PAIS_ID);
            ViewBag.SOCIEDAD_ID = new SelectList(db.SOCIEDADs, "BUKRS", "BUTXT", tx.SOCIEDAD_ID);
            ViewBag.CONCEPTO_ID = new SelectList(db.TX_CONCEPTO, "ID", "DESCRIPCION", tx.CONCEPTO_ID);
            ViewBag.TNOTA_ID    = new SelectList(db.TX_TNOTA, "ID", "DESCRIPCION", tx.TNOTA_ID);
            ViewBag.kun         = kun;
            ViewBag.vko         = vko;
            ViewBag.vtw         = vtw;
            ViewBag.spa         = spa;
            return(View(tx));
        }