// private void SetViewDelegate(View view,object clsobj) // { // SaleOrderDtls item = (SaleOrderDtls)clsobj; // string sqty =item.qty==0?"": item.qty.ToString (); // string sprice =item.price==0?"": item.price.ToString ("n2"); // // view.FindViewById<TextView> (Resource.Id.invitemcode).Text = item.icode; // view.FindViewById<TextView> (Resource.Id.invitemdesc).Text = item.description; // view.FindViewById<TextView> (Resource.Id.invitemqty).Text = sqty; // view.FindViewById<TextView> (Resource.Id.invitemtaxgrp).Text = item.taxgrp; // view.FindViewById<TextView> (Resource.Id.invitemtax).Text = item.tax.ToString ("n2"); // view.FindViewById<TextView> (Resource.Id.invitemprice).Text = sprice; // view.FindViewById<TextView> (Resource.Id.invitemamt).Text = item.netamount.ToString ("n2"); // // // } private void SetViewDelegate(View view, object clsobj) { SaleOrderDtls item = (SaleOrderDtls)clsobj; string sqty = item.qty == 0?"": item.qty.ToString(); string sprice = item.price == 0?"": item.price.ToString("n2"); if (item.icode == "TAX" || item.icode == "AMOUNT") { view.FindViewById <LinearLayout> (Resource.Id.linearLayout1).Visibility = ViewStates.Gone; view.FindViewById <LinearLayout> (Resource.Id.linearLayout2).Visibility = ViewStates.Visible; view.FindViewById <TextView> (Resource.Id.invitemdesc).Visibility = ViewStates.Gone; view.FindViewById <TextView> (Resource.Id.invitemTemp1).Text = item.description; view.FindViewById <TextView> (Resource.Id.invitemTemp2).Text = item.netamount.ToString("n2"); } else { view.FindViewById <LinearLayout> (Resource.Id.linearLayout2).Visibility = ViewStates.Gone; view.FindViewById <LinearLayout> (Resource.Id.linearLayout1).Visibility = ViewStates.Visible; view.FindViewById <TextView> (Resource.Id.invitemdesc).Visibility = ViewStates.Visible; view.FindViewById <TextView> (Resource.Id.invitemdesc).Text = item.description; view.FindViewById <TextView> (Resource.Id.invitemcode).Text = item.icode; view.FindViewById <TextView> (Resource.Id.invitemtax).Text = item.tax.ToString("n2"); view.FindViewById <TextView> (Resource.Id.invitemprice).Text = sprice; view.FindViewById <TextView> (Resource.Id.invitemamt).Text = item.netamount.ToString("n2"); view.FindViewById <TextView> (Resource.Id.invitemqty).Text = sqty; view.FindViewById <TextView> (Resource.Id.invitemtaxgrp).Text = item.taxgrp; } }
void Printreceipt() { SaleOrderDtls[] list; using (var db = new SQLite.SQLiteConnection(pathToDatabase)){ var ls = db.Table <SaleOrderDtls> ().Where(x => x.sono == inv.sono).ToList <SaleOrderDtls>(); list = new SaleOrderDtls[ls.Count]; ls.CopyTo(list); } //mmDevice = null; //findBTPrinter (); IPrintDocument prtInv = PrintDocManager.GetPrintDocument <PrintSalesOrder>(); prtInv.SetDocument(inv); prtInv.SetDocumentDtls(list); prtInv.SetNoOfCopy(1); prtInv.SetCallingActivity(this); if (prtInv.StartPrint()) { updatePrintedStatus(inv); } else { Toast.MakeText(this, prtInv.GetErrMsg(), ToastLength.Long).Show(); } }
private void LoadData(string sono, string uid) { TextView txtInvNo = FindViewById <TextView> (Resource.Id.txtInvnp); Spinner spinner = FindViewById <Spinner> (Resource.Id.txtcode); EditText qty = FindViewById <EditText> (Resource.Id.txtqty); //TextView desc = FindViewById<TextView> (Resource.Id.txtdesc); EditText price = FindViewById <EditText> (Resource.Id.txtprice); EditText amount = FindViewById <EditText> (Resource.Id.txtamount); //EditText taxper = FindViewById<EditText> (Resource.Id.txtinvtaxper); EditText taxamt = FindViewById <EditText> (Resource.Id.txttaxamt); //CheckBox isincl = FindViewById<CheckBox> (Resource.Id.txtinvisincl); TextView tax = FindViewById <TextView> (Resource.Id.txttax); int id = Convert.ToInt32(uid); using (var db = new SQLite.SQLiteConnection(pathToDatabase)) { var invlist = db.Table <SaleOrderDtls> ().Where(x => x.sono == sono && x.ID == id).ToList <SaleOrderDtls> (); if (invlist.Count > 0) { SaleOrderDtls soItem = invlist [0]; int index = dataAdapter.GetPosition(soItem.icode + " | " + soItem.description); Item item = items.Where(x => x.ICode == soItem.icode).FirstOrDefault(); spinner.SetSelection(index); qty.Text = soItem.qty.ToString(); price.Text = soItem.price.ToString(); taxamt.Text = soItem.tax.ToString(); tax.Text = item.taxgrp; taxper = item.tax; isInclusive = item.isincludesive; amount.Text = soItem.amount.ToString(); price.Text = soItem.price.ToString(); } } }
public void PrintSOTaxSumm(ref string test,SaleOrderDtls[] list ) { List<Item> list2 = new List<Item> (); using (var db = new SQLite.SQLiteConnection (pathToDatabase)) { list2 = db.Table<Item> ().ToList<Item> (); } var grp = from p in list group p by p.taxgrp into g select new {taxgrp = g.Key, ttltax = g.Sum (x => x.tax),ttlAmt = g.Sum (v => v.netamount)}; test += "SUMMARY\n"; test += "-------------------------------\n"; test += "TAX AMOUNT TAX AMT\n"; test += "-------------------------------\n"; // 123456789 12345678901 123456789 string pline=""; foreach (var g in grp) { var list3 =list2.Where (x => x.taxgrp == g.taxgrp).ToList (); if (list3.Count > 0) { string stax = g.taxgrp.Trim () + " @ " + list3 [0].tax.ToString () + "%"; pline = pline + stax.PadRight (10,' '); } else pline = pline + g.taxgrp.Trim().PadRight (10, ' '); pline = pline + g.ttlAmt.ToString("n2").PadLeft(11, ' ')+" "; pline = pline + g.ttltax.ToString("n2").PadLeft(9, ' '); test += pline + "\n"; pline = ""; } test += "-------------------------------\n"; }
public string PrintSODetail(SaleOrderDtls itm, int count) { string test = ""; string desc = itm.description; string pline2 = desc.ToUpper().Trim() + "\n"; pline2 = pline2 + count.ToString().PadRight(3, ' '); if (itm.qty < 0) { string sqty = "(EX)" + itm.qty.ToString().Trim(); pline2 = pline2 + sqty.PadLeft(9, ' ') + " "; } else { pline2 = pline2 + itm.qty.ToString().PadLeft(9, ' ') + " "; } pline2 = pline2 + Math.Round(itm.price, 2).ToString("n2").PadLeft(8, ' ') + " "; string stax = Math.Round(itm.tax, 2).ToString("n2") + " " + itm.taxgrp; pline2 = pline2 + stax.PadLeft(10, ' ') + " "; pline2 = pline2 + Math.Round(itm.netamount, 2).ToString("n2").PadLeft(9, ' '); test += pline2 + "\n"; return(test); }
void PrintSO(SaleOrder so, int noofcopy) { //Toast.MakeText (this, "print....", ToastLength.Long).Show (); SaleOrderDtls[] list; using (var db = new SQLite.SQLiteConnection(pathToDatabase)){ var ls = db.Table <SaleOrderDtls> ().Where(x => x.sono == so.sono).ToList <SaleOrderDtls>(); list = new SaleOrderDtls[ls.Count]; ls.CopyTo(list); } IPrintDocument prtSO = PrintDocManager.GetPrintDocument <PrintSalesOrder>(); prtSO.SetDocument(so); prtSO.SetDocumentDtls(list); prtSO.SetNoOfCopy(noofcopy); prtSO.SetCallingActivity(this); if (prtSO.StartPrint()) { updatePrintedStatus(so); var found = listData.Where(x => x.sono == so.sono).ToList(); if (found.Count > 0) { found [0].isPrinted = true; SetViewDlg viewdlg = SetViewDelegate; listView.Adapter = new GenericListAdapter <SaleOrder> (this, listData, Resource.Layout.ListItemRow, viewdlg); } } else { Toast.MakeText(this, prtSO.GetErrMsg(), ToastLength.Long).Show(); } }
void OnListItemClick(object sender, AdapterView.ItemClickEventArgs e) { SaleOrderDtls item = listData.ElementAt(e.Position); if (item.icode.IndexOf("TAX") > -1) { return; } if (item.icode.IndexOf("AMOUNT") > -1) { return; } PopupMenu menu = new PopupMenu(e.Parent.Context, e.View); menu.Inflate(Resource.Menu.popupItem); menu.Menu.RemoveItem(Resource.Id.popadd); menu.MenuItemClick += (s1, arg1) => { if (arg1.Item.ItemId == Resource.Id.popdelete) { Delete(item); } else if (arg1.Item.ItemId == Resource.Id.popedit) { EditItem(item.sono, item.ID); } }; menu.Show(); }
void Delete(SaleOrderDtls so) { var builder = new AlertDialog.Builder(this); builder.SetMessage(Resources.GetString(Resource.String.msg_confirmdelete) + "?"); builder.SetPositiveButton("YES", (s, e) => { DeleteItem(so); }); builder.SetNegativeButton("Cancel", (s, e) => { /* do something on Cancel click */ }); builder.Create().Show(); }
void Edit(SaleOrderDtls so) { //var intent = new Intent(this, typeof(SOEntryActivity)); var intent = ActivityManager.GetActivity <SOEntryActivityEx>(this.ApplicationContext); intent.PutExtra("invoiceno", so.sono); intent.PutExtra("itemuid", so.ID.ToString()); intent.PutExtra("editmode", "EDIT"); intent.PutExtra("customer", CUSTNAME); intent.PutExtra("custcode", CUSTCODE); StartActivity(intent); }
void OnListItemClick(object sender, AdapterView.ItemClickEventArgs e) { SaleOrderDtls item = listData.ElementAt(e.Position); if (item.icode.IndexOf("TAX") > -1) { return; } if (item.icode.IndexOf("AMOUNT") > -1) { return; } PopupMenu menu = new PopupMenu(e.Parent.Context, e.View); menu.Inflate(Resource.Menu.popupItem); if (!rights.SOAllowEdit) { menu.Menu.RemoveItem(Resource.Id.popedit); } if (!rights.SOAllowDelete) { menu.Menu.RemoveItem(Resource.Id.popdelete); } //if allow edit and SaleOrder printed, remove edit //printed invoice not allow to edit if (DataHelper.GetSaleOrderPrintStatus(pathToDatabase, item.sono, rights)) { menu.Menu.RemoveItem(Resource.Id.popedit); menu.Menu.RemoveItem(Resource.Id.popdelete); menu.Menu.RemoveItem(Resource.Id.popadd); } menu.MenuItemClick += (s1, arg1) => { if (arg1.Item.ItemId == Resource.Id.popadd) { NewItem(item.sono); } else if (arg1.Item.ItemId == Resource.Id.popedit) { Edit(item); } else if (arg1.Item.ItemId == Resource.Id.popdelete) { Delete(item); } }; menu.Show(); }
void populate(List <SaleOrderDtls> list) { list.Clear(); using (var db = new SQLite.SQLiteConnection(pathToDatabase)) { var list2 = db.Table <SaleOrderDtls> ().Where(x => x.sono == inv.sono) .OrderByDescending(x => x.ID) .ToList <SaleOrderDtls> (); ttlamt = 0; ttltax = 0; foreach (var item in list2) { ttlamt = ttlamt + item.netamount; ttltax = ttltax + item.tax; list.Add(item); } double roundVal = 0; double ttlNet = Utility.AdjustToNear(ttlamt + ttltax, ref roundVal); SaleOrderDtls inv1 = new SaleOrderDtls(); inv1.icode = "TAX"; inv1.netamount = ttlamt; inv1.description = "TOTAL EXCL GST"; SaleOrderDtls inv2 = new SaleOrderDtls(); inv2.icode = "AMOUNT"; inv2.netamount = ttltax; inv2.description = "TOTAL 6% GST"; SaleOrderDtls inv3 = new SaleOrderDtls(); inv3.icode = "TAX"; inv3.netamount = ttlamt + ttltax; inv3.description = "TOTAL INCL GST"; SaleOrderDtls inv4 = new SaleOrderDtls(); inv4.icode = "AMOUNT"; inv4.netamount = roundVal; inv4.description = "ROUNDING ADJUST"; SaleOrderDtls inv5 = new SaleOrderDtls(); inv5.icode = "AMOUNT"; inv5.netamount = ttlNet; inv5.description = "NET TOTAL"; list.Add(inv1); list.Add(inv2); list.Add(inv3); } }
void populate(List <SaleOrderDtls> list) { // var documents = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal); // pathToDatabase = Path.Combine(documents, "db_adonet.db"); comp = DataHelper.GetCompany(pathToDatabase); //SqliteConnection.CreateFile(pathToDatabase); using (var db = new SQLite.SQLiteConnection(pathToDatabase)) { var list1 = db.Table <SaleOrder>().Where(x => x.sono == sono).ToList <SaleOrder>(); var list2 = db.Table <SaleOrderDtls>().Where(x => x.sono == sono).ToList <SaleOrderDtls>(); var list3 = db.Table <Trader>().Where(x => x.CustCode == CUSTCODE).ToList <Trader>(); double ttlamt = 0; double ttltax = 0; if (list3.Count > 0) { CUSTNAME = list3 [0].CustName; } foreach (var item in list2) { ttlamt = ttlamt + item.netamount; ttltax = ttltax + item.tax; list.Add(item); } if (list1.Count > 0) { list1 [0].amount = ttlamt; db.Update(list1 [0]); } SaleOrderDtls inv1 = new SaleOrderDtls(); inv1.icode = "TAX"; inv1.netamount = ttlamt; inv1.description = "TOTAL EXCL GST"; SaleOrderDtls inv2 = new SaleOrderDtls(); inv2.icode = "AMOUNT"; inv2.netamount = ttltax; inv2.description = "TOTAL 6% GST"; SaleOrderDtls inv3 = new SaleOrderDtls(); inv3.icode = "TAX"; inv3.netamount = ttlamt + ttltax; inv3.description = "TOTAL INCL GST"; list.Add(inv1); list.Add(inv2); list.Add(inv3); } }
void DeleteItem(SaleOrderDtls so) { using (var db = new SQLite.SQLiteConnection(pathToDatabase)) { var list = db.Table <SaleOrderDtls>().Where(x => x.sono == sono && x.ID == so.ID).ToList <SaleOrderDtls>(); if (list.Count > 0) { db.Delete(list [0]); var arrlist = listData.Where(x => x.sono == sono && x.ID == so.ID).ToList <SaleOrderDtls>(); if (arrlist.Count > 0) { listData.Remove(arrlist [0]); SetViewDlg viewdlg = SetViewDelegate; listView.Adapter = new GenericListAdapter <SaleOrderDtls> (this, listData, Resource.Layout.InvDtlItemViewCS, viewdlg); } } } }
private void GetSaleOrderText(SaleOrder so, SaleOrderDtls[] list) { //if (string.IsNullOrEmpty(so.billTo)) prtcompHeader.PrintCompHeader (ref text); //else prtcompHeader.PrintCustomerHeader(ref text,so.billTo); prtCustHeader.PrintCustomer (ref text, so.custcode); prtHeader.PrintSOHeader (ref text, so); string dline = ""; double ttlAmt = 0; double ttltax = 0; int count = 0; foreach (SaleOrderDtls itm in list) { count += 1; dline = dline + prtDetail.PrintSODetail (itm, count); ttlAmt = ttlAmt + itm.netamount; ttltax = ttltax + itm.tax; } text += dline; prtTotal.PrintTotal (ref text, ttlAmt, ttltax); prtTaxSummary.PrintSOTaxSumm (ref text, list); prtFooter.PrintFooter (ref text); text += "\nTHANK YOU\n\n\n\n\n\n\n\n"; }
void PrintInv(SaleOrder inv,int noofcopy) { //Toast.MakeText (this, "print....", ToastLength.Long).Show (); SaleOrderDtls[] list; using (var db = new SQLite.SQLiteConnection (pathToDatabase)){ var ls= db.Table<SaleOrderDtls> ().Where (x => x.sono==inv.sono&&x.CompCode==compCode&&x.BranchCode==branchCode).ToList<SaleOrderDtls>(); list = new SaleOrderDtls[ls.Count]; ls.CopyTo (list); } mmDevice = null; findBTPrinter (); if (mmDevice != null) { StartPrint (inv, list,noofcopy); updatePrintedStatus (inv); } }
void Edit(SaleOrderDtls so) { //var intent = new Intent(this, typeof(SOEntryActivity)); var intent =ActivityManager.GetActivity<SOEntryActivityEx>(this.ApplicationContext); intent.PutExtra ("invoiceno",so.sono ); intent.PutExtra ("itemuid",so.ID.ToString() ); intent.PutExtra ("editmode","EDIT" ); intent.PutExtra ("customer",CUSTNAME ); intent.PutExtra ("custcode",CUSTCODE ); StartActivity(intent); }
private void butSaveClick(object sender,EventArgs e) { TextView txtInvNo = FindViewById<TextView> (Resource.Id.txtInvnp); Spinner spinner = FindViewById<Spinner> (Resource.Id.txtcode); EditText qty = FindViewById<EditText> (Resource.Id.txtqty); EditText price = FindViewById<EditText> (Resource.Id.txtprice); TextView txttax = FindViewById<TextView> (Resource.Id.txttax); EditText ttlamt = FindViewById<EditText> (Resource.Id.txtamount); EditText ttltax = FindViewById<EditText> (Resource.Id.txttaxamt); if (spinner.SelectedItem == null) { Toast.MakeText (this, Resources.GetString(Resource.String.msg_invaliditem), ToastLength.Long).Show (); spinner.RequestFocus (); return; } if (string.IsNullOrEmpty(qty.Text)) { Toast.MakeText (this, Resources.GetString(Resource.String.msg_invalidqty), ToastLength.Long).Show (); qty.RequestFocus (); return; } if (string.IsNullOrEmpty(price.Text)) { Toast.MakeText (this, Resources.GetString(Resource.String.msg_invalidprice), ToastLength.Long).Show (); price.RequestFocus (); return; } double stqQty = Convert.ToDouble(qty.Text); double uprice = Convert.ToDouble(price.Text); double taxval = taxper;//Convert.ToDouble(taxper.Text); double amount = Math.Round((stqQty * uprice),2); double netamount = amount; bool taxinclusice = isInclusive;// isincl.Checked; double taxamt = 0; if (taxinclusice) { double percent = (taxval/100) + 1; double amt2 =Math.Round( amount / percent,2,MidpointRounding.AwayFromZero); taxamt = amount - amt2; netamount = amount - taxamt; } else { taxamt = Math.Round(amount * (taxval / 100),2,MidpointRounding.AwayFromZero); } SaleOrderDtls so = new SaleOrderDtls (); string[] codedesc = spinner.SelectedItem.ToString ().Split (new char[]{ '|' }); so.sono = txtInvNo.Text; so.amount = amount; so.description = codedesc [1].Trim(); so.icode = codedesc [0].Trim();// spinner.SelectedItem.ToString (); so.price = uprice; so.qty = stqQty; so.tax = taxamt; so.taxgrp = txttax.Text; so.netamount = netamount; var itemlist = items.Where (x => x.ICode == so.icode).ToList<Item> (); if (itemlist.Count == 0) { Toast.MakeText (this, Resources.GetString(Resource.String.msg_invaliditem), ToastLength.Long).Show (); return; } int id = Convert.ToInt32 (ITEMUID); //so..title = spinner.SelectedItem.ToString (); using (var db = new SQLite.SQLiteConnection (pathToDatabase)) { var invlist =db.Table<SaleOrderDtls> ().Where (x => x.sono == so.sono&& x.ID==id).ToList<SaleOrderDtls> (); if (invlist.Count > 0) { SaleOrderDtls soItem = invlist [0]; soItem.amount = amount; soItem.netamount = netamount; soItem.tax = taxamt; soItem.taxgrp = txttax.Text; soItem.description = codedesc [1].Trim(); soItem.icode = codedesc [0].Trim(); //spinner.SelectedItem.ToString (); soItem.price = uprice; soItem.qty = stqQty; db.Update (soItem); }else db.Insert (so); } //spinner.SetSelection (-1); qty.Text = ""; //price.Text = ""; ttltax.Text = ""; ttlamt.Text = ""; Toast.MakeText (this, Resources.GetString(Resource.String.msg_itemadded), ToastLength.Long).Show (); }
private void AddBarCodeItem(Item prd ) { //TextView txtcnno = FindViewById<TextView> (Resource.Id.txtInvnp); double stqQty = 1; double uprice= Utility.GetUnitPrice (trd, prd); double taxval = prd.tax; double amount = Math.Round((stqQty * uprice),2); double netamount = amount; bool taxinclusice = prd.isincludesive; double taxamt = 0; if (taxinclusice) { double percent = (taxval/100) + 1; double amt2 =Math.Round( amount / percent,2,MidpointRounding.AwayFromZero); taxamt = amount - amt2; netamount = amount - taxamt; } else { taxamt = Math.Round(amount * (taxval / 100),2,MidpointRounding.AwayFromZero); } SaleOrderDtls invdtls = new SaleOrderDtls (); invdtls.sono = inv.sono; invdtls.amount = amount; invdtls.icode = prd.ICode; invdtls.price = uprice; invdtls.qty = stqQty; invdtls.tax = taxamt; invdtls.taxgrp = prd.taxgrp; invdtls.netamount = netamount; invdtls.description = prd.IDesc; //int id = Convert.ToInt32 (ITEMUID); //inv..title = spinner.SelectedItem.ToString (); using (var db = new SQLite.SQLiteConnection (pathToDatabase)) { var list =db.Table<SaleOrderDtls> ().Where (x => x.sono == inv.sono && x.icode == prd.ICode).ToList (); if (list.Count > 0) { list [0].qty = list [0].qty + 1; stqQty = list [0].qty; amount = Math.Round((stqQty * uprice),2); netamount = amount; if (taxinclusice) { double percent = (taxval/100) + 1; double amt2 =Math.Round( amount / percent,2,MidpointRounding.AwayFromZero); taxamt = amount - amt2; netamount = amount - taxamt; } else { taxamt = Math.Round(amount * (taxval / 100),2,MidpointRounding.AwayFromZero); } list [0].tax = taxamt; list [0].amount =amount; list [0].netamount = netamount; db.Update (list [0]); }else db.Insert (invdtls); } spinItem.SetSelection (-1); Toast.MakeText (this, Resources.GetString(Resource.String.msg_itemadded), ToastLength.Long).Show (); }
void populate(List<SaleOrderDtls> list) { // var documents = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal); // pathToDatabase = Path.Combine(documents, "db_adonet.db"); comp = DataHelper.GetCompany (pathToDatabase); //SqliteConnection.CreateFile(pathToDatabase); using (var db = new SQLite.SQLiteConnection(pathToDatabase)) { var list1 = db.Table<SaleOrder>().Where(x=>x.sono==sono).ToList<SaleOrder>(); var list2 = db.Table<SaleOrderDtls>().Where(x=>x.sono==sono).ToList<SaleOrderDtls>(); var list3 = db.Table<Trader>().Where(x=>x.CustCode==CUSTCODE).ToList<Trader>(); double ttlamt = 0; double ttltax = 0; if (list3.Count > 0) { CUSTNAME = list3 [0].CustName; } foreach(var item in list2) { ttlamt = ttlamt + item.netamount; ttltax = ttltax + item.tax; list.Add(item); } if (list1.Count > 0) { list1 [0].amount = ttlamt; db.Update (list1 [0]); } SaleOrderDtls inv1 = new SaleOrderDtls (); inv1.icode = "TAX"; inv1.netamount = ttlamt; inv1.description = "TOTAL EXCL GST"; SaleOrderDtls inv2 = new SaleOrderDtls (); inv2.icode = "AMOUNT"; inv2.netamount = ttltax; inv2.description = "TOTAL 6% GST" ; SaleOrderDtls inv3 = new SaleOrderDtls (); inv3.icode = "TAX"; inv3.netamount = ttlamt + ttltax; inv3.description = "TOTAL INCL GST" ; list.Add (inv1); list.Add (inv2); list.Add (inv3); } }
void populate(List<SaleOrderDtls> list) { list.Clear (); using (var db = new SQLite.SQLiteConnection (pathToDatabase)) { var list2 = db.Table<SaleOrderDtls> ().Where (x => x.sono == inv.sono) .OrderByDescending(x=>x.ID) .ToList<SaleOrderDtls> (); ttlamt = 0; ttltax = 0; foreach (var item in list2) { ttlamt = ttlamt + item.netamount; ttltax = ttltax + item.tax; list.Add (item); } double roundVal = 0; double ttlNet = Utility.AdjustToNear (ttlamt + ttltax, ref roundVal); SaleOrderDtls inv1 = new SaleOrderDtls (); inv1.icode = "TAX"; inv1.netamount = ttlamt; inv1.description = "TOTAL EXCL GST"; SaleOrderDtls inv2 = new SaleOrderDtls (); inv2.icode = "AMOUNT"; inv2.netamount = ttltax; inv2.description = "TOTAL 6% GST" ; SaleOrderDtls inv3 = new SaleOrderDtls (); inv3.icode = "TAX"; inv3.netamount = ttlamt + ttltax; inv3.description = "TOTAL INCL GST" ; SaleOrderDtls inv4 = new SaleOrderDtls (); inv4.icode = "AMOUNT"; inv4.netamount = roundVal; inv4.description = "ROUNDING ADJUST"; SaleOrderDtls inv5 = new SaleOrderDtls (); inv5.icode = "AMOUNT"; inv5.netamount = ttlNet; inv5.description = "NET TOTAL"; list.Add (inv1); list.Add (inv2); list.Add (inv3); } }
public string PrintSODetail_NTax(SaleOrderDtls itm,int count) { string test = ""; string desc = itm.description; string pline2 = desc.ToUpper().Trim()+ "\n"; pline2 = pline2 + count.ToString ().PadRight (4, ' '); if (itm.qty < 0) { string sqty = "(EX)"+itm.qty.ToString ().Trim () ; pline2 = pline2 +sqty.PadLeft (9, ' ')+" "; }else pline2 = pline2 + itm.qty.ToString ().PadLeft (9, ' ')+" "; pline2 = pline2 + Math.Round (itm.price, 2).ToString ("n2").PadLeft (12, ' ')+" "; pline2 = pline2 + Math.Round (itm.netamount, 2).ToString ("n2").PadLeft (14, ' '); test += pline2 + "\n"; return test; }
void Edit(SaleOrderDtls so) { var intent = new Intent(this, typeof(SOEntryActivity)); intent.PutExtra ("invoiceno",so.sono ); intent.PutExtra ("itemuid",so.ID.ToString() ); intent.PutExtra ("editmode","EDIT" ); intent.PutExtra ("customer",CUSTNAME ); intent.PutExtra ("custcode",CUSTCODE ); StartActivity(intent); }
void Printreceipt() { SaleOrderDtls[] list; using (var db = new SQLite.SQLiteConnection (pathToDatabase)){ var ls= db.Table<SaleOrderDtls> ().Where (x => x.sono==inv.sono).ToList<SaleOrderDtls>(); list = new SaleOrderDtls[ls.Count]; ls.CopyTo (list); } //mmDevice = null; //findBTPrinter (); IPrintDocument prtInv = PrintDocManager.GetPrintDocument<PrintSalesOrder>(); prtInv.SetDocument (inv); prtInv.SetDocumentDtls(list); prtInv.SetNoOfCopy (1); prtInv.SetCallingActivity (this); if (prtInv.StartPrint ()) { updatePrintedStatus (inv); } else { Toast.MakeText (this, prtInv.GetErrMsg(), ToastLength.Long).Show (); } }
private void AddBarCodeItem(Item prd) { //TextView txtcnno = FindViewById<TextView> (Resource.Id.txtInvnp); double stqQty = 1; double uprice = Utility.GetUnitPrice(trd, prd); double taxval = prd.tax; double amount = Math.Round((stqQty * uprice), 2); double netamount = amount; bool taxinclusice = prd.isincludesive; double taxamt = 0; if (taxinclusice) { double percent = (taxval / 100) + 1; double amt2 = Math.Round(amount / percent, 2, MidpointRounding.AwayFromZero); taxamt = amount - amt2; netamount = amount - taxamt; } else { taxamt = Math.Round(amount * (taxval / 100), 2, MidpointRounding.AwayFromZero); } SaleOrderDtls invdtls = new SaleOrderDtls(); invdtls.sono = inv.sono; invdtls.amount = amount; invdtls.icode = prd.ICode; invdtls.price = uprice; invdtls.qty = stqQty; invdtls.tax = taxamt; invdtls.taxgrp = prd.taxgrp; invdtls.netamount = netamount; invdtls.description = prd.IDesc; //int id = Convert.ToInt32 (ITEMUID); //inv..title = spinner.SelectedItem.ToString (); using (var db = new SQLite.SQLiteConnection(pathToDatabase)) { var list = db.Table <SaleOrderDtls> ().Where(x => x.sono == inv.sono && x.icode == prd.ICode).ToList(); if (list.Count > 0) { list [0].qty = list [0].qty + 1; stqQty = list [0].qty; amount = Math.Round((stqQty * uprice), 2); netamount = amount; if (taxinclusice) { double percent = (taxval / 100) + 1; double amt2 = Math.Round(amount / percent, 2, MidpointRounding.AwayFromZero); taxamt = amount - amt2; netamount = amount - taxamt; } else { taxamt = Math.Round(amount * (taxval / 100), 2, MidpointRounding.AwayFromZero); } list [0].tax = taxamt; list [0].amount = amount; list [0].netamount = netamount; db.Update(list [0]); } else { db.Insert(invdtls); } } spinItem.SetSelection(-1); Toast.MakeText(this, Resources.GetString(Resource.String.msg_itemadded), ToastLength.Long).Show(); }
void Delete(SaleOrderDtls invdtls) { var builder = new AlertDialog.Builder(this); builder.SetMessage(Resources.GetString(Resource.String.msg_confirmdelete)+"?"); builder.SetPositiveButton("YES", (s, e) => { DeleteItem(invdtls); }); builder.SetNegativeButton("Cancel", (s, e) => { /* do something on Cancel click */ }); builder.Create().Show(); }
public string OpenBTAndPrintSO(BluetoothSocket mmSocket,BluetoothDevice mmDevice,SaleOrder so,SaleOrderDtls[] list,int noofcopy ) { string msg = ""; string text = ""; PrintSO (so, list, ref text); BluetoothPrint (mmSocket, mmDevice, text, noofcopy); return msg; }
void Delete(SaleOrderDtls so) { var builder = new AlertDialog.Builder(this); builder.SetMessage("Confimr to Delete?"); builder.SetPositiveButton("YES", (s, e) => { DeleteItem(so); }); builder.SetNegativeButton("Cancel", (s, e) => { /* do something on Cancel click */ }); builder.Create().Show(); }
internal string GetSaleOrderText_Template(string templatefilename,string pathToDatabase,string userID, SaleOrder so, SaleOrderDtls[] list) { //yet to implement return ""; }
void StartPrint(SaleOrder so,SaleOrderDtls[] list,int noofcopy ) { string userid = ((GlobalvarsApp)this.Application).USERID_CODE; PrintInvHelper prnHelp = new PrintInvHelper (pathToDatabase, userid,compCode,branchCode); string msg =prnHelp.OpenBTAndPrintSO (mmSocket, mmDevice, so, list,noofcopy); Toast.MakeText (this, msg, ToastLength.Long).Show (); //AlertShow (msg); }
private void butSaveClick(object sender, EventArgs e) { TextView txtInvNo = FindViewById <TextView> (Resource.Id.txtInvnp); Spinner spinner = FindViewById <Spinner> (Resource.Id.txtcode); EditText qty = FindViewById <EditText> (Resource.Id.txtqty); EditText price = FindViewById <EditText> (Resource.Id.txtprice); TextView txttax = FindViewById <TextView> (Resource.Id.txttax); EditText ttlamt = FindViewById <EditText> (Resource.Id.txtamount); EditText ttltax = FindViewById <EditText> (Resource.Id.txttaxamt); if (spinner.SelectedItem == null) { Toast.MakeText(this, Resources.GetString(Resource.String.msg_invaliditem), ToastLength.Long).Show(); spinner.RequestFocus(); return; } if (string.IsNullOrEmpty(qty.Text)) { Toast.MakeText(this, Resources.GetString(Resource.String.msg_invalidqty), ToastLength.Long).Show(); qty.RequestFocus(); return; } if (string.IsNullOrEmpty(price.Text)) { Toast.MakeText(this, Resources.GetString(Resource.String.msg_invalidprice), ToastLength.Long).Show(); price.RequestFocus(); return; } double stqQty = Convert.ToDouble(qty.Text); double uprice = Convert.ToDouble(price.Text); double taxval = taxper; //Convert.ToDouble(taxper.Text); double amount = Math.Round((stqQty * uprice), 2); double netamount = amount; bool taxinclusice = isInclusive; // isincl.Checked; double taxamt = 0; if (taxinclusice) { double percent = (taxval / 100) + 1; double amt2 = Math.Round(amount / percent, 2, MidpointRounding.AwayFromZero); taxamt = amount - amt2; netamount = amount - taxamt; } else { taxamt = Math.Round(amount * (taxval / 100), 2, MidpointRounding.AwayFromZero); } SaleOrderDtls so = new SaleOrderDtls(); string[] codedesc = spinner.SelectedItem.ToString().Split(new char[] { '|' }); so.sono = txtInvNo.Text; so.amount = amount; so.description = codedesc [1].Trim(); so.icode = codedesc [0].Trim(); // spinner.SelectedItem.ToString (); so.price = uprice; so.qty = stqQty; so.tax = taxamt; so.taxgrp = txttax.Text; so.netamount = netamount; var itemlist = items.Where(x => x.ICode == so.icode).ToList <Item> (); if (itemlist.Count == 0) { Toast.MakeText(this, Resources.GetString(Resource.String.msg_invaliditem), ToastLength.Long).Show(); return; } int id = Convert.ToInt32(ITEMUID); //so..title = spinner.SelectedItem.ToString (); using (var db = new SQLite.SQLiteConnection(pathToDatabase)) { var invlist = db.Table <SaleOrderDtls> ().Where(x => x.sono == so.sono && x.ID == id).ToList <SaleOrderDtls> (); if (invlist.Count > 0) { SaleOrderDtls soItem = invlist [0]; soItem.amount = amount; soItem.netamount = netamount; soItem.tax = taxamt; soItem.taxgrp = txttax.Text; soItem.description = codedesc [1].Trim(); soItem.icode = codedesc [0].Trim(); //spinner.SelectedItem.ToString (); soItem.price = uprice; soItem.qty = stqQty; db.Update(soItem); } else { db.Insert(so); } } //spinner.SetSelection (-1); qty.Text = ""; //price.Text = ""; ttltax.Text = ""; ttlamt.Text = ""; Toast.MakeText(this, Resources.GetString(Resource.String.msg_itemadded), ToastLength.Long).Show(); }
void DeleteItem(SaleOrderDtls so) { using (var db = new SQLite.SQLiteConnection(pathToDatabase)) { var list = db.Table<SaleOrderDtls>().Where(x=>x.sono==sono&& x.ID==so.ID).ToList<SaleOrderDtls>(); if (list.Count > 0) { db.Delete (list [0]); var arrlist= listData.Where(x=>x.sono==sono&& x.ID==so.ID).ToList<SaleOrderDtls>(); if (arrlist.Count > 0) { listData.Remove (arrlist [0]); SetViewDlg viewdlg = SetViewDelegate; listView.Adapter = new GenericListAdapter<SaleOrderDtls> (this, listData, Resource.Layout.InvDtlItemView, viewdlg); } } } }
private void butAddClick(object sender, EventArgs e) { GetControls(); TextView txttax = FindViewById <TextView> (Resource.Id.txttax); if (!IsValidEntry()) { return; } string[] codedesc = spinItem.SelectedItem.ToString().Split(new char[] { '|' }); var itemlist = items.Where(x => x.ICode == codedesc [0].Trim()).ToList <Item> (); if (itemlist.Count == 0) { Toast.MakeText(this, Resources.GetString(Resource.String.msg_invaliditem), ToastLength.Long).Show(); return; } Item ItemCode = itemlist [0]; double stqQty = Convert.ToDouble(txtqty.Text); double uprice = Convert.ToDouble(txtprice.Text); double taxval = taxper; //Convert.ToDouble(taxper.Text); double amount = Math.Round((stqQty * uprice), 2); double netamount = amount; bool taxinclusice = isInclusive; // isincl.Checked; double taxamt = 0; if (taxinclusice) { double percent = (taxval / 100) + 1; double amt2 = Math.Round(amount / percent, 2, MidpointRounding.AwayFromZero); taxamt = amount - amt2; netamount = amount - taxamt; } else { taxamt = Math.Round(amount * (taxval / 100), 2, MidpointRounding.AwayFromZero); } using (var db = new SQLite.SQLiteConnection(pathToDatabase)) { SaleOrderDtls invdtl = new SaleOrderDtls(); if (IsEdit) { var list = db.Table <SaleOrderDtls> ().Where(x => x.sono == inv.sono && x.ID == IDdtls).ToList <SaleOrderDtls> (); if (list.Count > 0) { invdtl = list [0]; } } invdtl.sono = inv.sono; invdtl.amount = amount; invdtl.icode = codedesc [0].Trim(); // spinner.SelectedItem.ToString (); invdtl.price = uprice; invdtl.qty = stqQty; invdtl.tax = taxamt; invdtl.taxgrp = txttax.Text; invdtl.netamount = netamount; invdtl.description = ItemCode.IDesc; invdtl.isincludesive = taxinclusice; if (IsEdit) { db.Update(invdtl); } else { db.Insert(invdtl); } } IsEdit = false; IDdtls = -1; spinItem.Enabled = true; butFindItem.Enabled = true; //spinner.SetSelection (-1); txtqty.Text = ""; txtInvMode.Text = "NEW"; RefreshItemList(); }
void populate(List<SaleOrderDtls> list) { comp = DataHelper.GetCompany (pathToDatabase,compCode,branchCode); //SqliteConnection.CreateFile(pathToDatabase); using (var db = new SQLite.SQLiteConnection(pathToDatabase)) { var list1 = db.Table<SaleOrder>().Where(x=>x.sono==sono&&x.CompCode==compCode&&x.BranchCode==branchCode).ToList<SaleOrder>(); var list2 = db.Table<SaleOrderDtls>().Where(x=>x.sono==sono&&x.CompCode==compCode&&x.BranchCode==branchCode).ToList<SaleOrderDtls>(); var list3 = db.Table<Trader>().Where(x=>x.CustCode==CUSTCODE&&x.CompCode==compCode&&x.BranchCode==branchCode).ToList<Trader>(); double ttlamt = 0; double ttltax = 0; if (list3.Count > 0) { CUSTNAME = list3 [0].CustName; } foreach(var item in list2) { ttlamt = ttlamt + item.netamount; ttltax = ttltax + item.tax; list.Add(item); } if (list1.Count > 0) { list1 [0].amount = ttlamt; db.Update (list1 [0]); } SaleOrderDtls inv1 = new SaleOrderDtls (); inv1.icode = "TAX"; inv1.netamount = ttltax; SaleOrderDtls inv2 = new SaleOrderDtls (); inv2.icode = "AMOUNT"; inv2.netamount = ttlamt; list.Add (inv1); list.Add (inv2); } }
private void butAddClick(object sender,EventArgs e) { GetControls (); TextView txttax = FindViewById<TextView> (Resource.Id.txttax); if (!IsValidEntry ()) return; string[] codedesc = spinItem.SelectedItem.ToString ().Split (new char[]{ '|' }); var itemlist = items.Where (x => x.ICode == codedesc [0].Trim()).ToList<Item> (); if (itemlist.Count == 0) { Toast.MakeText (this, Resources.GetString(Resource.String.msg_invaliditem), ToastLength.Long).Show (); return; } Item ItemCode = itemlist [0]; double stqQty = Convert.ToDouble(txtqty.Text); double uprice = Convert.ToDouble(txtprice.Text); double taxval = taxper;//Convert.ToDouble(taxper.Text); double amount = Math.Round((stqQty * uprice),2); double netamount = amount; bool taxinclusice = isInclusive;// isincl.Checked; double taxamt = 0; if (taxinclusice) { double percent = (taxval/100) + 1; double amt2 =Math.Round( amount / percent,2,MidpointRounding.AwayFromZero); taxamt = amount - amt2; netamount = amount - taxamt; } else { taxamt = Math.Round(amount * (taxval / 100),2,MidpointRounding.AwayFromZero); } using (var db = new SQLite.SQLiteConnection (pathToDatabase)) { SaleOrderDtls invdtl = new SaleOrderDtls (); if (IsEdit) { var list = db.Table<SaleOrderDtls> ().Where (x => x.sono == inv.sono && x.ID == IDdtls).ToList<SaleOrderDtls> (); if (list.Count > 0) { invdtl = list [0]; } } invdtl.sono =inv.sono; invdtl.amount = amount; invdtl.icode = codedesc [0].Trim();// spinner.SelectedItem.ToString (); invdtl.price = uprice; invdtl.qty = stqQty; invdtl.tax = taxamt; invdtl.taxgrp = txttax.Text; invdtl.netamount = netamount; invdtl.description = ItemCode.IDesc; invdtl.isincludesive = taxinclusice; if (IsEdit) db.Update(invdtl); else db.Insert (invdtl); } IsEdit = false; IDdtls = -1; spinItem.Enabled = true; butFindItem.Enabled = true; //spinner.SetSelection (-1); txtqty.Text = ""; txtInvMode.Text = "NEW"; RefreshItemList (); }
void PrintInv(SaleOrder so,int noofcopy) { //Toast.MakeText (this, "print....", ToastLength.Long).Show (); SaleOrderDtls[] list; using (var db = new SQLite.SQLiteConnection (pathToDatabase)){ var ls= db.Table<SaleOrderDtls> ().Where (x => x.sono==so.sono).ToList<SaleOrderDtls>(); list = new SaleOrderDtls[ls.Count]; ls.CopyTo (list); } IPrintDocument prtSO = PrintDocManager.GetPrintDocument<PrintSalesOrder>(); prtSO.SetDocument (so); prtSO.SetDocumentDtls(list); prtSO.SetNoOfCopy (noofcopy); prtSO.SetCallingActivity (this); if (prtSO.StartPrint ()) { updatePrintedStatus (so); var found = listData.Where (x => x.sono == so.sono).ToList (); if (found.Count > 0) { found [0].isPrinted = true; SetViewDlg viewdlg = SetViewDelegate; listView.Adapter = new GenericListAdapter<SaleOrder> (this, listData, Resource.Layout.ListItemRow, viewdlg); } } else { Toast.MakeText (this, prtSO.GetErrMsg(), ToastLength.Long).Show (); } }
void PrintSO(SaleOrder so, SaleOrderDtls[] list, ref string test) { PrintCompHeader (ref test); PrintCustomer (ref test, so.custcode); PrintSOHeader (ref test, so); string dline = ""; double ttlAmt = 0; double ttltax = 0; int count = 0; foreach (SaleOrderDtls itm in list) { count += 1; dline = dline + PrintSODetail (itm, count); ttlAmt = ttlAmt + itm.netamount; ttltax = ttltax + itm.tax; } test += dline; PrintTotal (ref test, ttlAmt, ttltax); PrintSOTaxSumm (ref test, list); PrintFooter (ref test); test += "\nTHANK YOU\n\n\n\n"; }