public ActionResult Edit([Bind(Include = "TRNO,VDATE,CONO,COADDRID,ATTN,REM,SEQNO,POSTBool,STAMP")] CSDNM cSDNM) { if (ModelState.IsValid) { ASIDBConnection newdb = new ASIDBConnection(); db.Entry(cSDNM).State = EntityState.Modified; try { CSDNM curRec = newdb.CSDNMs.Find(cSDNM.TRNO); if (curRec.STAMP == cSDNM.STAMP) { cSDNM.STAMP = cSDNM.STAMP + 1; db.SaveChanges(); int page = (int)Session["CSDNMPage"]; return(RedirectToAction("Index", new { page = page })); } else { ModelState.AddModelError(string.Empty, "Record is modified"); } } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { //string message = string.Format("{0}:{1}", // validationErrors.Entry.Entity.ToString(), // validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException ModelState.AddModelError(validationError.PropertyName, validationError.ErrorMessage); } } } catch (DbUpdateException ex) { UpdateException updateException = (UpdateException)ex.InnerException; if (updateException != null) { if (updateException.InnerException != null) { var sqlException = (FirebirdSql.Data.FirebirdClient.FbException)updateException.InnerException; foreach (var error in sqlException.Errors) { if (error.Message != null) { ModelState.AddModelError(string.Empty, error.Message); } } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } catch (Exception e) { ModelState.AddModelError(string.Empty, e.Message); } finally { newdb.Dispose(); } } ViewBag.CSDND = db.CSDNDs.Where(x => x.TRNO == cSDNM.TRNO); ViewBag.CONAME = db.CSCOMSTRs.Where(x => x.CONO == cSDNM.CONO).Select(y => y.CONAME).FirstOrDefault(); ViewBag.CONO = new SelectList(db.CSCOMSTRs.Select(x => new { CONO = x.CONO, CONAME = x.CONAME + " (" + x.CONO + ")" }).OrderBy(y => y.CONAME), "CONO", "CONAME", cSDNM.CONO); ViewBag.ATTNDESC = new SelectList(db.CSCOPICs.Where(x => x.CONO == cSDNM.CONO).Select(x => new { PRSNAME = x.CSPR.PRSNAME, PRSDESC = x.CSPR.PRSNAME }).OrderBy(y => y.PRSDESC), "PRSNAME", "PRSDESC", cSDNM.ATTN); ViewBag.COADDR = new SelectList(db.CSCOADDRs.Where(x => x.CONO == cSDNM.CONO).Select(x => new { COADDR = x.CONO + "|" + x.ADDRID, COADDRDESC = x.ADDRTYPE + " | " + x.MAILADDR + " | " + x.ADDR1 + " " + x.ADDR2 + " " + x.ADDR3 }), "COADDR", "COADDRDESC", cSDNM.COADDR); ViewBag.Title = "Edit Debit Note"; return(View("Edit", cSDNM)); }
public ActionResult DeleteConfirmed(string id) { CSDNM cSDNM = db.CSDNMs.Find(MyHtmlHelpers.ConvertByteStrToId(id)); if (cSDNM != null) { List <CSDND> cSDNDList = cSDNM.CSDNDs.ToList(); int refcnt = cSDNM.CSDNDs.Sum(x => x.refcnt); if (refcnt > 0) { ModelState.AddModelError(string.Empty, refcnt.ToString() + " Details has been touched. Cannot Delete record"); } else { CSDNDsController detc = new CSDNDsController(); try { foreach (CSDND rec in cSDNDList) { detc.DeleteRow(db, id, rec.TRID); } db.CSDNMs.Remove(cSDNM); db.SaveChanges(); int page = (int)Session["CSDNMPage"]; return(RedirectToAction("Index", new { page = page })); } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { //string message = string.Format("{0}:{1}", // validationErrors.Entry.Entity.ToString(), // validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException ModelState.AddModelError(validationError.PropertyName, validationError.ErrorMessage); } } } catch (DbUpdateException ex) { UpdateException updateException = (UpdateException)ex.InnerException; if (updateException != null) { if (updateException.InnerException != null) { var sqlException = (FirebirdSql.Data.FirebirdClient.FbException)updateException.InnerException; foreach (var error in sqlException.Errors) { if (error.Message != null) { ModelState.AddModelError(string.Empty, error.Message); } } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } finally { detc.Dispose(); } } } ViewBag.page = Session["CSDNMPage"]; ViewBag.CSDND = db.CSDNDs.Where(x => x.TRNO == cSDNM.TRNO); ViewBag.CONAME = db.CSCOMSTRs.Where(x => x.CONO == cSDNM.CONO).Select(y => y.CONAME).FirstOrDefault(); ViewBag.CONO = new SelectList(db.CSCOMSTRs.Select(x => new { CONO = x.CONO, CONAME = x.CONAME + " (" + x.CONO + ")" }).OrderBy(y => y.CONAME), "CONO", "CONAME", cSDNM.CONO); ViewBag.ATTNDESC = new SelectList(db.CSCOPICs.Where(x => x.CONO == cSDNM.CONO).Select(x => new { PRSNAME = x.CSPR.PRSNAME, PRSDESC = x.CSPR.PRSNAME }).OrderBy(y => y.PRSDESC), "PRSNAME", "PRSDESC", cSDNM.ATTN); ViewBag.COADDR = new SelectList(db.CSCOADDRs.Where(x => x.CONO == cSDNM.CONO).Select(x => new { COADDR = x.CONO + "|" + x.ADDRID, COADDRDESC = x.ADDRTYPE + " | " + x.MAILADDR + " | " + x.ADDR1 + " " + x.ADDR2 + " " + x.ADDR3 }), "COADDR", "COADDRDESC", cSDNM.COADDR); ViewBag.Title = "Delete Debit Note"; return(View("Edit", cSDNM)); }
public ActionResult Create([Bind(Include = "TRNO,VDATE,CONO,COADDRID,ATTN,REM,SEQNO,POSTBool,STAMP")] CSDNM cSDNM) { if (ModelState.IsValid) { SALASTNO serialTbl = db.SALASTNOes.Find("CSDN"); if (serialTbl != null) { CSCOMSTR cSCOMSTR = db.CSCOMSTRs.Find(cSDNM.CONO); if (cSCOMSTR != null) { try { string prefix = serialTbl.LASTPFIX; int MaxNo = serialTbl.LASTNOMAX; bool AutoGen = serialTbl.AUTOGEN == "Y"; if (AutoGen) { serialTbl.LASTNO = serialTbl.LASTNO + 1; cSDNM.TRNO = serialTbl.LASTNO.ToString("D10"); serialTbl.STAMP = serialTbl.STAMP + 1; db.Entry(serialTbl).State = EntityState.Modified; } cSDNM.STAMP = 1; // increment company seqno count before using it in transaction cSCOMSTR.SEQNO = cSCOMSTR.SEQNO + 1; cSCOMSTR.STAMP = cSCOMSTR.STAMP + 1; cSDNM.SEQNO = cSCOMSTR.SEQNO; db.Entry(cSCOMSTR).State = EntityState.Modified; db.CSDNMs.Add(cSDNM); db.SaveChanges(); //return Edit(MyHtmlHelpers.ConvertIdToByteStr(cSDNM.TRNO), 1); return(RedirectToAction("Edit", new { id = MyHtmlHelpers.ConvertIdToByteStr(cSDNM.TRNO), page = 1 })); } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { //string message = string.Format("{0}:{1}", // validationErrors.Entry.Entity.ToString(), // validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException ModelState.AddModelError(validationError.PropertyName, validationError.ErrorMessage); } } } catch (DbUpdateException ex) { UpdateException updateException = (UpdateException)ex.InnerException; if (updateException != null) { if (updateException.InnerException != null) { var sqlException = (FirebirdSql.Data.FirebirdClient.FbException)updateException.InnerException; foreach (var error in sqlException.Errors) { if (error.Message != null) { ModelState.AddModelError(string.Empty, error.Message); } } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } catch (Exception e) { db.CSDNMs.Remove(cSDNM); ModelState.AddModelError(string.Empty, e.Message); } finally { } } else { ModelState.AddModelError(string.Empty, "Unable to find company #"); } } } ViewBag.CSDND = db.CSDNDs.Where(x => x.TRNO == cSDNM.TRNO); ViewBag.CONAME = db.CSCOMSTRs.Where(x => x.CONO == cSDNM.CONO).Select(y => y.CONAME).FirstOrDefault(); ViewBag.CONO = new SelectList(db.CSCOMSTRs.Select(x => new { CONO = x.CONO, CONAME = x.CONAME + " (" + x.CONO + ")" }).OrderBy(y => y.CONAME), "CONO", "CONAME", cSDNM.CONO); ViewBag.ATTNDESC = new SelectList(db.CSCOPICs.Where(x => x.CONO == cSDNM.CONO).Select(x => new { PRSNAME = x.CSPR.PRSNAME, PRSDESC = x.CSPR.PRSNAME }).OrderBy(y => y.PRSDESC), "PRSNAME", "PRSDESC", cSDNM.ATTN); ViewBag.COADDR = new SelectList(db.CSCOADDRs.Where(x => x.CONO == cSDNM.CONO).Select(x => new { COADDR = x.CONO + "|" + x.ADDRID, COADDRDESC = x.ADDRTYPE + " | " + x.MAILADDR + " | " + x.ADDR1 + " " + x.ADDR2 + " " + x.ADDR3 }), "COADDR", "COADDRDESC", cSDNM.COADDR); ViewBag.Title = "Create Debit Note"; return(View("Edit", cSDNM)); }
public PartialViewResult Search() { CSDNM searchRec = null; //searchRec.CONO = pSearchCode; //searchRec.CONAME = pSearchName; if (Session["SearchDNMRec"] != null) { searchRec = (CSDNM)Session["SearchDNMRec"]; } else { searchRec = new CSDNM(); searchRec.VDATE = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1); searchRec.DUEDATE = searchRec.VDATE.AddMonths(1); searchRec.DUEDATE = searchRec.DUEDATE.AddDays(-1); } if (Session["SearchDNMSort"] == null) { Session["SearchDNMSort"] = "TRNO"; } ; List <SelectListItem> listItems = new List <SelectListItem>(); listItems.Add(new SelectListItem { Text = "Company Name", Value = "CONAME", Selected = (string)Session["SearchDNMSort"] == "CONAME" }); listItems.Add(new SelectListItem { Text = "Ref #", Value = "TRNO", Selected = (string)Session["SearchDNMSort"] == "TRNO" }); listItems.Add(new SelectListItem { Text = "Ref # Latest", Value = "TRNOLAST", Selected = (string)Session["SearchDNMSort"] == "TRNOLAST" }); listItems.Add(new SelectListItem { Text = "Date", Value = "VDATE", Selected = (string)Session["SearchDNMSort"] == "VDATE" }); listItems.Add(new SelectListItem { Text = "Date Latest", Value = "VDATELAST", Selected = (string)Session["SearchDNMSort"] == "VDATELAST" }); listItems.Add(new SelectListItem { Text = "Archive", Value = "ARCHIVE", Selected = (string)Session["SearchDNMSort"] == "ARCHIVE" }); ViewBag.SORTBY = listItems; return(PartialView("Partial/Search", searchRec)); }
public IQueryable <CSDNM> CurrentSelection() { string pSearchCode = ""; string pSearchName = ""; string pSearchDNM = ""; DateTime pSearchVdate = DateTime.Parse("01/01/0001"); DateTime pSearchDdate = DateTime.Parse("01/01/0001"); if (Session["SearchDNMRec"] != null) { CSDNM searchRec = (CSDNM)(Session["SearchDNMRec"]); pSearchCode = searchRec.CSCOMSTR.COREGNO ?? ""; pSearchName = searchRec.CSCOMSTR.CONAME ?? ""; pSearchVdate = searchRec.VDATE; pSearchDdate = searchRec.DUEDATE; pSearchDNM = searchRec.TRNO ?? ""; } else { // start with current month pSearchVdate = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1); pSearchDdate = pSearchVdate.AddMonths(1); pSearchDdate = pSearchDdate.AddDays(-1); } IQueryable <CSDNM> cSDNMs = db.CSDNMs; if ((string)Session["SearchDNMSort"] != "ARCHIVE") { cSDNMs = db.CSDNMs.Where(x => x.POST == "N"); } else { cSDNMs = db.CSDNMs.Where(x => x.POST == "Y"); } if (pSearchCode != "") { cSDNMs = cSDNMs.Where(x => x.CSCOMSTR.COREGNO.Contains(pSearchCode.ToUpper())); } ; if (pSearchName != "") { cSDNMs = cSDNMs.Where(x => x.CSCOMSTR.CONAME.Contains(pSearchName.ToUpper())); } ; if (pSearchVdate != DateTime.Parse("01/01/0001")) { cSDNMs = cSDNMs.Where(x => x.VDATE >= pSearchVdate); } ; if (pSearchDdate != DateTime.Parse("01/01/0001")) { cSDNMs = cSDNMs.Where(x => x.VDATE <= pSearchDdate); } ; if (pSearchDNM != "") { if (pSearchDNM.Length > 8) { cSDNMs = cSDNMs.Where(x => x.TRNO == pSearchDNM); } else { cSDNMs = cSDNMs.Where(x => x.TRNO.Contains(pSearchDNM)); } } ; if (Session["RPT_START"] == null) { Session["RPT_START"] = pSearchVdate; } if (Session["RPT_END"] == null) { Session["RPT_END"] = pSearchDdate; } DateTime rptStart; DateTime.TryParse(Session["RPT_START"].ToString(), out rptStart); DateTime rptEnd; DateTime.TryParse(Session["RPT_END"].ToString(), out rptEnd); ViewBag.RPT_START = rptStart; ViewBag.RPT_END = rptEnd; cSDNMs = cSDNMs.Include(e => e.CSCOMSTR).Include(f => f.CSCOADDR).Include(g => g.CSDNDs); if ((string)Session["SearchDNMSort"] == "CONAME") { cSDNMs = cSDNMs.OrderBy(n => n.CSCOMSTR.CONAME); } else if ((string)Session["SearchDNMSort"] == "VDATE") { cSDNMs = cSDNMs.OrderBy(n => n.VDATE); } else if ((string)Session["SearchDNMSort"] == "VDATELAST") { cSDNMs = cSDNMs.OrderByDescending(n => n.VDATE); } else if ((string)Session["SearchDNMSort"] == "TRNOLAST") { cSDNMs = cSDNMs.OrderByDescending(n => n.TRNO); } else { cSDNMs = cSDNMs.OrderBy(n => n.TRNO); } return(cSDNMs); }
public ActionResult Create([Bind(Include = "TRNO,TRID,CASECODE,ITEMTYPE,ITEMDESC,ITEMSPEC,TAXRATE,ITEMAMT1,TAXAMT1,NETAMT1,ITEMAMT2,TAXAMT2,NETAMT2,ITEMAMT,TAXAMT,NETAMT,STAMP")] CSDND cSDND) { if (ModelState.IsValid) { CSDND lastRec = db.CSDNDs.Where(m => m.TRNO == cSDND.TRNO).OrderByDescending(n => n.TRID).FirstOrDefault(); if (lastRec == null) { cSDND.TRID = 1; } else { cSDND.TRID = lastRec.TRID + 1; } db.CSDNDs.Add(cSDND); CSDNM parent = db.CSDNMs.Find(cSDND.TRNO); if (parent != null) { try { CSTRANM cSTRANM = db.CSTRANMs.Find("CSDN", cSDND.TRNO, cSDND.TRID); if (cSTRANM == null) { cSTRANM = new CSTRANM(); cSTRANM.STAMP = 0; UpdateCSTRANM(parent, cSDND, cSTRANM); db.CSTRANMs.Add(cSTRANM); } else { ModelState.AddModelError(string.Empty, "CSTRANM record already Existed"); throw new Exception("CSTRANM record already Existed"); //UpdateCSTRANM(parent, cSDND, cSTRANM); //db.Entry(cSTRANM).State = EntityState.Modified; } db.SaveChanges(); return(RedirectToAction("Edit", "CSDNMs", new { id = MyHtmlHelpers.ConvertIdToByteStr(cSDND.TRNO) })); } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { //string message = string.Format("{0}:{1}", // validationErrors.Entry.Entity.ToString(), // validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException ModelState.AddModelError(validationError.PropertyName, validationError.ErrorMessage); } } } catch (DbUpdateException ex) { UpdateException updateException = (UpdateException)ex.InnerException; if (updateException != null) { if (updateException.InnerException != null) { var sqlException = (FirebirdSql.Data.FirebirdClient.FbException)updateException.InnerException; foreach (var error in sqlException.Errors) { if (error.Message != null) { ModelState.AddModelError(string.Empty, error.Message); } } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } } else { ModelState.AddModelError(string.Empty, "Parent Record is missing"); } } ViewBag.CASECODE = new SelectList(db.CSCASEs, "CASECODE", "CASEDESC", cSDND.CASECODE); ViewBag.ITEMTYPE = new SelectList(db.CSITEMs, "ITEMTYPE", "ITEMDESC", cSDND.ITEMTYPE); return(View("Edit", cSDND)); }
protected void UpdateCSTRANM(CSDNM cSDNM, CSDND cSDND, CSTRANM cSTRANM) { cSTRANM.SOURCE = "CSDN"; cSTRANM.SOURCENO = cSDNM.TRNO; cSTRANM.SOURCEID = cSDND.TRID; cSTRANM.CONO = cSDNM.CONO; cSTRANM.JOBNO = null; cSTRANM.CASENO = null; cSTRANM.CASECODE = cSDND.CASECODE; cSTRANM.ENTDATE = cSDNM.VDATE; cSTRANM.TRTYPE = cSDND.ITEMTYPE; cSTRANM.TRDESC = cSDND.ITEMDESC; cSTRANM.TRITEM1 = cSDND.ITEMAMT1; cSTRANM.TRITEM2 = cSDND.ITEMAMT2; cSTRANM.TRITEM = cSDND.ITEMAMT1 + cSDND.ITEMAMT2; cSTRANM.TRTAX1 = cSDND.TAXAMT1; cSTRANM.TRTAX2 = cSDND.TAXAMT2; cSTRANM.TRTAX = cSDND.TAXAMT1 + cSDND.TAXAMT2; cSTRANM.TRAMT1 = cSDND.NETAMT1; cSTRANM.TRAMT2 = cSDND.NETAMT2; cSTRANM.TRAMT = cSDND.NETAMT1 + cSDND.NETAMT2; cSTRANM.TRSIGN = "DB"; cSTRANM.TRSITEM1 = cSDND.ITEMAMT1; cSTRANM.TRSITEM2 = cSDND.ITEMAMT2; cSTRANM.TRSITEM = cSDND.ITEMAMT1 + cSDND.ITEMAMT2; cSTRANM.TRSTAX1 = cSDND.TAXAMT1; cSTRANM.TRSTAX2 = cSDND.TAXAMT2; cSTRANM.TRSTAX = cSDND.TAXAMT1 + cSDND.TAXAMT2; cSTRANM.TRSAMT1 = cSDND.NETAMT1; cSTRANM.TRSAMT2 = cSDND.NETAMT2; cSTRANM.TRSAMT = cSDND.NETAMT1 + cSDND.NETAMT2; cSTRANM.TRITEMOS1 = cSDND.ITEMAMT1; cSTRANM.TRITEMOS2 = cSDND.ITEMAMT2; cSTRANM.TRITEMOS = cSDND.ITEMAMT1 + cSDND.ITEMAMT2; cSTRANM.TRTAXOS1 = cSDND.TAXAMT1; cSTRANM.TRTAXOS2 = cSDND.TAXAMT2; cSTRANM.TRTAXOS = cSDND.TAXAMT1 + cSDND.TAXAMT2; cSTRANM.TROS1 = cSDND.NETAMT1; cSTRANM.TROS2 = cSDND.ITEMAMT2; cSTRANM.TROS = cSDND.NETAMT1 + cSDND.NETAMT2; cSTRANM.APPITEM = 0; cSTRANM.APPITEM1 = 0; cSTRANM.APPITEM2 = 0; cSTRANM.APPTAX = 0; cSTRANM.APPTAX1 = 0; cSTRANM.APPTAX2 = 0; cSTRANM.APPAMT = 0; cSTRANM.APPAMT1 = 0; cSTRANM.APPAMT2 = 0; cSTRANM.APPTYPE = null; cSTRANM.APPNO = null; cSTRANM.APPID = null; cSTRANM.COMPLETE = "N"; cSTRANM.COMPLETED = DateTime.Parse("01/01/3000"); cSTRANM.SEQNO = cSDNM.SEQNO; cSTRANM.REFCNT = 0; cSTRANM.STAMP = cSTRANM.STAMP + 1; }