Beispiel #1
0
        internal Trader GetCustomer(string custcode,MyModel model,string pathToDatabase)
        {
            Trader cust = new Trader ();
            Trader comp = DataHelper.GetTrader (pathToDatabase, custcode);

            string tel = string.IsNullOrEmpty (comp.Tel) ? " " : comp.Tel.Trim ();
            string fax = string.IsNullOrEmpty (comp.Fax) ? " " : comp.Fax.Trim ();
            string addr1 =string.IsNullOrEmpty (comp.Addr1) ? "" : comp.Addr1.Trim ();
            string addr2 =string.IsNullOrEmpty (comp.Addr2) ? "" : comp.Addr2.Trim ();
            string addr3 =string.IsNullOrEmpty (comp.Addr3) ? "" : comp.Addr3.Trim ();
            string addr4 =string.IsNullOrEmpty (comp.Addr4) ? "" : comp.Addr4.Trim ();
            string gst =string.IsNullOrEmpty (comp.gst) ? "" : comp.gst.Trim ();

            cust = comp;

            string test = "";
            if (addr1!="")
                test += comp.Addr1.Trim () + "\n";
            if (addr2!="")
                test += comp.Addr2.Trim () + "\n";
            if (addr3!="")
                test += comp.Addr3.Trim () + "\n";
            if (addr4!="")
                test += comp.Addr4.Trim () + "\n";

            model.CustomerAddress = test;

            return cust;
        }
        private void LoadData()
        {
            Trader trd = new Trader ();
            using (var db = new SQLite.SQLiteConnection(pathToDatabase))
            {
                var list = db.Table<Trader>().Where(x=>x.CustCode==CUSTCODE).ToList<Trader>();
                if (list.Count > 0) {
                    trd = list [0];
                }
            }

            DisplayData (trd);
        }
Beispiel #3
0
        void DeleteCust(Trader item)
        {
            bool isDeleted = false;
            using (var db = new SQLite.SQLiteConnection (pathToDatabase)) {
                var list = db.Table<Trader> ().Where (x => x.CustCode == item.CustCode && x.CompCode == item.CompCode && x.BranchCode == item.BranchCode).ToList ();
                if (list.Count > 0) {
                    if (list [0].IsLocal) {
                        db.Delete (list [0]);
                        isDeleted = true;
                    }
                }
            }

            if (isDeleted) {
                listData.Clear ();
                populate (listData);
                SetViewDlg viewdlg = SetViewDelegate;
                listView.Adapter = new GenericListAdapter<Trader> (this, listData, Resource.Layout.ListCustDtlView, viewdlg);
            }
        }
Beispiel #4
0
        private void spinnerCust_ItemSelected(object sender, AdapterView.ItemSelectedEventArgs e)
        {
            Spinner spinner = (Spinner)sender;

            string txt = spinner.GetItemAtPosition(e.Position).ToString();

            string[] codes = txt.Split(new char[] { '|' });
            if (codes.Length < 2)
            {
                return;
            }

            trd = trds.Where(x => x.CustCode == codes[0].Trim()).FirstOrDefault();
            if (trd == null)
            {
                trd = new Trader();
            }


            txtcustname = trd.CustName.Trim();
        }
 private void DisplayData(Trader trd)
 {
     TextView code = FindViewById<TextView> (Resource.Id.txtcust_code);
     TextView name = FindViewById<TextView> (Resource.Id.txtcust_name);
     TextView addr1 = FindViewById<TextView> (Resource.Id.txtcust_addr1);
     TextView addr2 = FindViewById<TextView> (Resource.Id.txtcust_addr2);
     TextView addr3 = FindViewById<TextView> (Resource.Id.txtcust_addr3);
     TextView addr4 = FindViewById<TextView> (Resource.Id.txtcust_addr4);
     TextView tel = FindViewById<TextView> (Resource.Id.txtcust_tel);
     TextView fax = FindViewById<TextView> (Resource.Id.txtcust_fax);
     TextView gst= FindViewById<TextView> (Resource.Id.txtcust_gst);
     code.Text = trd.CustCode;
     name.Text = trd.CustName;
     addr1.Text = trd.Addr1;
     addr2.Text = trd.Addr2;
     addr3.Text = trd.Addr3;
     addr4.Text = trd.Addr4;
     tel.Text = "TEL: "+trd.Tel;
     fax.Text ="FAX: "+ trd.Fax;
     gst.Text ="GST: "+ trd.gst;
 }
Beispiel #6
0
        public static double GetUnitPrice(Trader trd, Item prd)
        {
            double unitprice = 0;

            if (trd == null)
            {
                unitprice = prd.Price;
                return(unitprice);
            }

            if (trd.CustType.ToUpper() == "OTHER")
            {
                unitprice = prd.Price;
            }
            else if (trd.CustType.ToUpper() == "RETAIL")
            {
                unitprice = prd.RetailPrice;
            }
            else if (trd.CustType.ToUpper() == "VIP")
            {
                unitprice = prd.VIPPrice;
            }
            else if (trd.CustType.ToUpper() == "WHOLESALE")
            {
                unitprice = prd.WholeSalePrice;
            }
            else
            {
                unitprice = prd.Price;
            }

            //if only SellingPirce is set, take selling price.
            if (unitprice == 0)
            {
                unitprice = prd.Price;
            }

            return(unitprice);
        }
Beispiel #7
0
        private void DisplayData(Trader trd)
        {
            TextView code  = FindViewById <TextView> (Resource.Id.txtcust_code);
            TextView name  = FindViewById <TextView> (Resource.Id.txtcust_name);
            TextView addr1 = FindViewById <TextView> (Resource.Id.txtcust_addr1);
            TextView addr2 = FindViewById <TextView> (Resource.Id.txtcust_addr2);
            TextView addr3 = FindViewById <TextView> (Resource.Id.txtcust_addr3);
            TextView addr4 = FindViewById <TextView> (Resource.Id.txtcust_addr4);
            TextView tel   = FindViewById <TextView> (Resource.Id.txtcust_tel);
            TextView fax   = FindViewById <TextView> (Resource.Id.txtcust_fax);
            TextView gst   = FindViewById <TextView> (Resource.Id.txtcust_gst);

            code.Text  = trd.CustCode;
            name.Text  = trd.CustName;
            addr1.Text = trd.Addr1;
            addr2.Text = trd.Addr2;
            addr3.Text = trd.Addr3;
            addr4.Text = trd.Addr4;
            tel.Text   = "TEL: " + trd.Tel;
            fax.Text   = "FAX: " + trd.Fax;
            gst.Text   = "GST: " + trd.gst;
        }
Beispiel #8
0
        internal Trader GetCustomer(string custcode, MyModel model, string pathToDatabase)
        {
            Trader cust = new Trader();
            Trader comp = DataHelper.GetTrader(pathToDatabase, custcode);

            string tel   = string.IsNullOrEmpty(comp.Tel) ? " " : comp.Tel.Trim();
            string fax   = string.IsNullOrEmpty(comp.Fax) ? " " : comp.Fax.Trim();
            string addr1 = string.IsNullOrEmpty(comp.Addr1) ? "" : comp.Addr1.Trim();
            string addr2 = string.IsNullOrEmpty(comp.Addr2) ? "" : comp.Addr2.Trim();
            string addr3 = string.IsNullOrEmpty(comp.Addr3) ? "" : comp.Addr3.Trim();
            string addr4 = string.IsNullOrEmpty(comp.Addr4) ? "" : comp.Addr4.Trim();
            string gst   = string.IsNullOrEmpty(comp.gst) ? "" : comp.gst.Trim();

            cust = comp;

            string test = "";

            if (addr1 != "")
            {
                test += comp.Addr1.Trim() + "\n";
            }
            if (addr2 != "")
            {
                test += comp.Addr2.Trim() + "\n";
            }
            if (addr3 != "")
            {
                test += comp.Addr3.Trim() + "\n";
            }
            if (addr4 != "")
            {
                test += comp.Addr4.Trim() + "\n";
            }

            model.CustomerAddress = test;

            return(cust);
        }
Beispiel #9
0
        public void PrintCustomerInv(ref string test, Invoice inv, string title = "CUSTOMER")
        {
            Trader comp = DataHelper.GetTrader(pathToDatabase, inv.custcode);

            test += "------------------------------------------\n";
            test += title + "\n";
            string tel   = string.IsNullOrEmpty(comp.Tel) ? " " : comp.Tel.Trim();
            string fax   = string.IsNullOrEmpty(comp.Fax) ? " " : comp.Fax.Trim();
            string addr1 = string.IsNullOrEmpty(comp.Addr1) ? "" : comp.Addr1.Trim();
            string addr2 = string.IsNullOrEmpty(comp.Addr2) ? "" : comp.Addr2.Trim();
            string addr3 = string.IsNullOrEmpty(comp.Addr3) ? "" : comp.Addr3.Trim();
            string addr4 = string.IsNullOrEmpty(comp.Addr4) ? "" : comp.Addr4.Trim();
            string gst   = string.IsNullOrEmpty(comp.gst) ? "" : comp.gst.Trim();

            //PrintLongText (ref test, comp.CustName.Trim ());
            PrintLongText(ref test, inv.description.ToUpper().Trim());

            if (addr1 != "")
            {
                test += comp.Addr1.Trim() + "\n";
            }
            if (addr2 != "")
            {
                test += comp.Addr2.Trim() + "\n";
            }
            if (addr3 != "")
            {
                test += comp.Addr3.Trim() + "\n";
            }
            if (addr4 != "")
            {
                test += comp.Addr4.Trim() + "\n";
            }

            test += "TEL:" + tel + "  FAX:" + fax + "\n";
            test += "GST NO:" + gst + "\n";
            test += "------------------------------------------\n";
        }
Beispiel #10
0
 private void DisplayData(Trader trd)
 {
     EditText code = FindViewById<EditText> (Resource.Id.txtcust_code);
     EditText name = FindViewById<EditText> (Resource.Id.txtcust_name);
     EditText addr1 = FindViewById<EditText> (Resource.Id.txtcust_addr1);
     EditText addr2 = FindViewById<EditText> (Resource.Id.txtcust_addr2);
     EditText addr3 = FindViewById<EditText> (Resource.Id.txtcust_addr3);
     EditText addr4 = FindViewById<EditText> (Resource.Id.txtcust_addr4);
     EditText tel = FindViewById<EditText> (Resource.Id.txtcust_tel);
     EditText fax = FindViewById<EditText> (Resource.Id.txtcust_fax);
     EditText gst= FindViewById<EditText> (Resource.Id.txtcust_gst);
     EditText nric = FindViewById<EditText> (Resource.Id.txtcust_nric);
     code.Text = trd.CustCode;
     code.Enabled = false;
     name.Text = trd.CustName;
     addr1.Text = trd.Addr1;
     addr2.Text = trd.Addr2;
     addr3.Text = trd.Addr3;
     addr4.Text = trd.Addr4;
     tel.Text = trd.Tel;
     fax.Text =trd.Fax;
     gst.Text =trd.gst;
     nric.Text = trd.NRIC;
 }
Beispiel #11
0
        public static double GetUnitPrice(Trader trd,Item prd)
        {
            double unitprice = 0;
            if (trd == null) {
                unitprice = prd.Price;
                return unitprice;
            }

            if (trd.CustType.ToUpper () == "OTHER") {
                unitprice = prd.Price;
            } else if (trd.CustType.ToUpper () == "RETAIL") {
                unitprice = prd.RetailPrice;
            } else if (trd.CustType.ToUpper () == "VIP") {
                unitprice = prd.VIPPrice;
            } else if (trd.CustType.ToUpper () == "WHOLESALE") {
                unitprice = prd.WholeSalePrice;
            } else {
                unitprice = prd.Price;
            }

            //if only SellingPirce is set, take selling price.
            if (unitprice==0)
                unitprice = prd.Price;

            return unitprice;
        }
Beispiel #12
0
 void EditCust(Trader item)
 {
     var intent = new Intent (this, typeof(TraderActivity));
     intent.PutExtra ("custcode", item.CustCode);
     intent.PutExtra ("editmode", "edit");
     StartActivity (intent);
 }
Beispiel #13
0
        private bool SaveTrader()
        {
            bool isSave = false;
            try {
                string comp = ((GlobalvarsApp)Application).COMPANY_CODE;
                string brn = ((GlobalvarsApp)Application).BRANCH_CODE;
                EditText code = FindViewById<EditText> (Resource.Id.txtcust_code);
                EditText name = FindViewById<EditText> (Resource.Id.txtcust_name);
                EditText addr1 = FindViewById<EditText> (Resource.Id.txtcust_addr1);
                EditText addr2 = FindViewById<EditText> (Resource.Id.txtcust_addr2);
                EditText addr3 = FindViewById<EditText> (Resource.Id.txtcust_addr3);
                EditText addr4 = FindViewById<EditText> (Resource.Id.txtcust_addr4);
                EditText tel = FindViewById<EditText> (Resource.Id.txtcust_tel);
                EditText fax = FindViewById<EditText> (Resource.Id.txtcust_fax);
                EditText gst = FindViewById<EditText> (Resource.Id.txtcust_gst);
                EditText nric = FindViewById<EditText> (Resource.Id.txtcust_nric);

                if (string.IsNullOrEmpty(code.Text))
                {
                    Toast.MakeText (this,"Customer Code is blank...", ToastLength.Long).Show ();
                    return isSave;
                }

                if (string.IsNullOrEmpty(name.Text))
                {
                    Toast.MakeText (this,"Customer Name is blank...", ToastLength.Long).Show ();
                    return isSave;
                }

                Trader trd = new Trader ();
                trd.CustCode = code.Text.ToUpper ();
                trd.Addr1 = addr1.Text.ToUpper ();
                trd.Addr2 = addr2.Text.ToUpper ();
                trd.Addr3 = addr3.Text.ToUpper ();
                trd.Addr4 = addr4.Text.ToUpper ();
                trd.CustName = name.Text.ToUpper ();
                trd.Fax = fax.Text.ToUpper ();
                trd.Tel = tel.Text.ToUpper ();
                trd.gst = gst.Text.ToUpper ();
                trd.CompCode= comp;
                trd.BranchCode= brn;
                trd.NRIC= nric.Text.ToUpper();

                using (var db = new SQLite.SQLiteConnection (pathToDatabase)) {
                    var list = db.Table<Trader> ().Where (x => x.CustCode == code.Text && x.CompCode == comp && x.BranchCode == brn).ToList ();
                    if (list.Count > 0) {
                        trd.PayCode = list [0].PayCode;
                        trd.IsLocal = list [0].IsLocal;
                        db.Update (trd);
                    } else {
                        trd.PayCode = "CASH";
                        trd.IsLocal = true;
                        db.Insert (trd);
                    }
                    isSave = true;
                }

            } catch (Exception ex) {

            }

            return isSave;
        }
Beispiel #14
0
 private bool IsValidCustTo(Trader trd)
 {
     return(trd.CustType.ToUpper() != "BILLTO");
 }
        private void InsertCustomerIntoDb(List<Customer> list)
        {
            string pathToDatabase = ((GlobalvarsApp)CallingActivity.Application).DATABASE_PATH;
            using (var db = new SQLite.SQLiteConnection(pathToDatabase))
            {
                //var list2 = db.Table<Trader>().ToList<Trader>();
                db.DeleteAll<Trader> ();// (list2);
                foreach (Customer item in list) {
                    Trader itm = new Trader ();
                    itm.CustCode = item.CustomerCode;
                    itm.CustName = item.CustomerName;
                    itm.Addr1 = item.Addr1;
                    itm.Addr2 = item.Addr2;
                    itm.Addr3 = item.Addr3;
                    itm.Addr4 = item.Addr4;
                    itm.Tel = item.Tel;
                    itm.Fax = item.Fax;
                    itm.gst = item.Gst;
                    itm.PayCode = item.PayCode;

                    db.Insert (itm);
            //					if (list2.Where (x => x.CustCode == itm.CustCode).ToList ().Count () == 0) {
            //						db.Insert (itm);
            //					} else {
            //						db.Update (itm);
            //					}
                }
            }

            if (_downloadAll) {
                FireEvent (EventID.LOGIN_DOWNCOMPLETE);
                DownloadAllhandle.Invoke(CallingActivity,list.Count,"Successfully downloaded "+list.Count.ToString()+" customer(s).");
            }else Downloadhandle.Invoke(CallingActivity,list.Count,"Successfully downloaded "+list.Count.ToString()+" customer(s).");
        }
Beispiel #16
0
        private void InsertCustomerIntoDb(List<Customer> list)
        {
            string pathToDatabase = ((GlobalvarsApp)CallingActivity.Application).DATABASE_PATH;
            using (var db = new SQLite.SQLiteConnection(pathToDatabase))
            {
                //var list2 = db.Table<Trader>().ToList<Trader>();
                db.DeleteAll<Trader> ();// (list2);
                foreach (Customer item in list) {
                    Trader itm = new Trader ();
                    itm.CustCode = item.CustomerCode;
                    itm.CustName = item.CustomerName;
                    itm.Addr1 = item.Addr1;
                    itm.Addr2 = item.Addr2;
                    itm.Addr3 = item.Addr3;
                    itm.Addr4 = item.Addr4;
                    itm.Tel = item.Tel;
                    itm.Fax = item.Fax;
                    itm.gst = item.Gst;
                    itm.PayCode = item.PayCode;
                    itm.CustType = item.CustType;
                    itm.AgentCode = item.ExtraInfo;

                    db.Insert (itm);
            //					if (list2.Where (x => x.CustCode == itm.CustCode).ToList ().Count () == 0) {
            //						db.Insert (itm);
            //					} else {
            //						db.Update (itm);
            //					}
                }
            }

            string dmsg = CallingActivity.Resources.GetString (Resource.String.msg_successdowncusts);
            dmsg = dmsg.Replace ("nn", list.Count.ToString ());

            if (_downloadAll) {
                FireEvent (EventID.LOGIN_DOWNCOMPLETE);
                DownloadAllhandle.Invoke(CallingActivity,list.Count,dmsg);
            }else Downloadhandle.Invoke(CallingActivity,list.Count,dmsg);
        }
Beispiel #17
0
        private void InsertCustomerIntoDb(List<Customer> list)
        {
            string pathToDatabase = ((GlobalvarsApp)CallingActivity.Application).DATABASE_PATH;
            string comp =((GlobalvarsApp)CallingActivity.Application).COMPANY_CODE;
            string brn =((GlobalvarsApp)CallingActivity.Application).BRANCH_CODE;

            using (var db = new SQLite.SQLiteConnection(pathToDatabase))
            {
                db.DeleteAll<Trader> ("Delete from Trader where IsLocal =0 and CompCode='"+comp+"' and BranchCode='"+brn+"'" );
                foreach (Customer item in list) {
                    Trader itm = new Trader ();
                    itm.CustCode = item.CustomerCode;
                    itm.CustName = item.CustomerName;
                    itm.Addr1 = item.Addr1;
                    itm.Addr2 = item.Addr2;
                    itm.Addr3 = item.Addr3;
                    itm.Addr4 = item.Addr4;
                    itm.Tel = item.Tel;
                    itm.Fax = item.Fax;
                    itm.gst = item.Gst;
                    itm.PayCode = item.PayCode;
                    itm.BranchCode = brn;
                    itm.CompCode = comp;
                    itm.IsLocal = false;
                    db.Insert (itm);

                }
            }

            if (_downloadAll) {
                FireEvent (EventID.LOGIN_DOWNCOMPLETE);
                DownloadAllhandle.Invoke(CallingActivity,list.Count,"Successfully downloaded "+list.Count.ToString()+" customer(s).");
            }else Downloadhandle.Invoke(CallingActivity,list.Count,"Successfully downloaded "+list.Count.ToString()+" customer(s).");
        }
Beispiel #18
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate (bundle);
            if (!((GlobalvarsApp)this.Application).ISLOGON) {
                Finish ();
            }
            SetTitle (Resource.String.title_soitementry);
            EventManagerFacade.Instance.GetEventManager().AddListener(this);
            pathToDatabase = ((GlobalvarsApp)this.Application).DATABASE_PATH;
            rights = Utility.GetAccessRights (pathToDatabase);

            SALEORDERNO = Intent.GetStringExtra ("invoiceno") ?? "AUTO";
            ITEMUID = Intent.GetStringExtra ("itemuid") ?? "AUTO";
            EDITMODE = Intent.GetStringExtra ("editmode") ?? "AUTO";
            CUSTOMER= Intent.GetStringExtra ("customer") ?? "AUTO";
            CUSTCODE= Intent.GetStringExtra ("custcode") ?? "AUTO";
            trd = DataHelper.GetTrader (pathToDatabase, CUSTCODE);
            // Create your application here
            SetContentView (Resource.Layout.SOEntry);
            spinner = FindViewById<Spinner> (Resource.Id.txtcode);
            EditText qty = FindViewById<EditText> (Resource.Id.txtqty);
            EditText price = FindViewById<EditText> (Resource.Id.txtprice);
            TextView txtInvNo =  FindViewById<TextView> (Resource.Id.txtInvnp);
            TextView txtcust =  FindViewById<TextView> (Resource.Id.txtInvcust);
            Button butFind = FindViewById<Button> (Resource.Id.newinv_bfind);
            txtInvNo.Text = SALEORDERNO;
            txtcust.Text = CUSTOMER;
            Button but = FindViewById<Button> (Resource.Id.Save);
            Button but2 = FindViewById<Button> (Resource.Id.Cancel);
            spinner.ItemSelected += new EventHandler<AdapterView.ItemSelectedEventArgs> (spinner_ItemSelected);
            but.Click += butSaveClick;
            but2.Click += butCancelClick;
            butFind.Click+= (object sender, EventArgs e) => {
                ShowItemLookUp();
            };
            qty.EditorAction += HandleEditorAction;
            qty.AfterTextChanged+= Qty_AfterTextChanged;
            price.Enabled = rights.SOEditUPrice;
            //price.EditorAction += HandleEditorAction;

            //SqliteConnection.CreateFile(pathToDatabase);
            using (var db = new SQLite.SQLiteConnection(pathToDatabase))
            {

                items = db.Table<Item> ().ToList<Item> ();
            }

            List<string> icodes = new List<string> ();
            //			foreach (Item item in items) {
            //				icodes.Add (item.ICode+" | "+item.IDesc);
            //			}
            foreach (Item item in items) {
                //icodes.Add (item.ICode+" | "+item.IDesc);
                if (item.IDesc.Length > 40) {
                    icodes.Add (item.ICode + " | " + item.IDesc.Substring(0,40)+"...");
                }else icodes.Add (item.ICode + " | " + item.IDesc);
            }

            dataAdapter = new ArrayAdapter<String>(this,Resource.Layout.spinner_item, icodes);

            // Drop down layout style - list view with radio button
            dataAdapter.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem);

            // attaching data adapter to spinner
            spinner.Adapter =dataAdapter;
            if (EDITMODE == "EDIT") {
                FIRSTLOAD="1";
                LoadData (SALEORDERNO, ITEMUID);
            }
        }
Beispiel #19
0
        private void spinnerCust_ItemSelected(object sender, AdapterView.ItemSelectedEventArgs e)
        {
            Spinner spinner = (Spinner)sender;

            string txt = spinner.GetItemAtPosition (e.Position).ToString();
            string[] codes = txt.Split (new char[]{ '|' });
            if (codes.Length <2)
                return;

            trd  =trds.Where (x => x.CustCode ==codes[0].Trim()).FirstOrDefault ();
            if (trd == null) {
                trd = new Trader ();
            }

            txtcustname = trd.CustName.Trim ();
        }
Beispiel #20
0
		private void CreateNewCN()
		{
			CNNote inv = new CNNote ();
			EditText trxdate =  FindViewById<EditText> (Resource.Id.newinv_date);
			if (!Utility.IsValidDateString (trxdate.Text)) {
				Toast.MakeText (this,Resources.GetString(Resource.String.msg_invaliddate), ToastLength.Long).Show ();	
				return;
			}
			DateTime invdate = Utility.ConvertToDate (trxdate.Text);
			DateTime tmr = invdate.AddDays (1);
			AdNumDate adNum= DataHelper.GetNumDate (pathToDatabase, invdate,"CN");
			Spinner spinner = FindViewById<Spinner> (Resource.Id.newinv_custcode);
			TextView txtinvno =FindViewById<TextView> (Resource.Id.newinv_no);
			EditText remark = FindViewById<EditText> (Resource.Id.newinv_custname);
			TextView cninvno =  FindViewById<TextView> (Resource.Id.newcninv_no);
			string prefix = apara.CNPrefix.Trim ().ToUpper ();
			if (spinner.SelectedItem == null) {
				Toast.MakeText (this, Resources.GetString(Resource.String.msg_invalidcust), ToastLength.Long).Show ();				
				spinner.RequestFocus ();
				return;			
			}

			string[] codes = spinner.SelectedItem.ToString().Split (new char[]{ '|' });
			if (codes.Length == 0)
				return;
			Invoice invInfo = DataHelper.GetInvoice (pathToDatabase, cninvno.Text);
			using (var db = new SQLite.SQLiteConnection (pathToDatabase)) {
				string invno = "";
				int runno = adNum.RunNo + 1;
				int currentRunNo =DataHelper.GetLastCNRunNo (pathToDatabase, invdate);
				if (currentRunNo >= runno)
					runno = currentRunNo + 1;
				if (invInfo != null) {
					//string[] prefixs = apara.Prefix.Trim ().ToUpper ().Split(new char[]{'|'});
					if (invInfo.trxtype == "CASH") {
						invno =prefix+ invdate.ToString ("yyMM") + runno.ToString ().PadLeft (4, '0')+"(CS)";
					}else  invno =prefix+ invdate.ToString ("yyMM") + runno.ToString ().PadLeft (4, '0')+"(INV)";
				}else	invno =prefix + invdate.ToString("yyMM") + runno.ToString().PadLeft (4, '0')+"(INV)";;
				txtinvno.Text= invno;
				inv.invdate = invdate;
				inv.trxtype = "";
				inv.created = DateTime.Now;
				inv.cnno = invno;
				inv.description = codes [1].Trim ();
				inv.amount = 0;
				inv.custcode = codes [0].Trim ();
				inv.isUploaded = false;
				inv.remark = remark.Text.ToUpper();
				inv.invno = cninvno.Text;
				if (invInfo != null) {
					inv.trxtype = invInfo.trxtype;	   		
				} else {
					Trader trd=	DataHelper.GetTrader (pathToDatabase, inv.custcode);
					if (trd != null) {
						string paycode =trd.PayCode.ToUpper ().Trim ();
						inv.trxtype = paycode;
						if (paycode.Contains ("CASH") || paycode.Contains ("COD")) {
							inv.trxtype = "CASH";	   		
						}
					}						
				}

				db.Insert (inv);
				adNum.RunNo = runno;
				if (adNum.ID >= 0)
					db.Update (adNum);
				else
					db.Insert (adNum);
			}

			ShowItemEntry (inv, codes);
		}
Beispiel #21
0
 void GetData()
 {
     trd = DataHelper.GetTrader (pathToDatabase, CUSTCODE);
     invoice = DataHelper.GetInvoice(pathToDatabase, invno);
     using (var db = new SQLite.SQLiteConnection (pathToDatabase)) {
         items = db.Table<Item> ().ToList<Item> ();
     }
 }
Beispiel #22
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            if (!((GlobalvarsApp)this.Application).ISLOGON)
            {
                Finish();
            }
            TRXTYPE   = Intent.GetStringExtra("trxtype") ?? "CASH";
            INVOICENO = Intent.GetStringExtra("invoiceno") ?? "AUTO";
            ITEMUID   = Intent.GetStringExtra("itemuid") ?? "AUTO";
            EDITMODE  = Intent.GetStringExtra("editmode") ?? "AUTO";
            CUSTOMER  = Intent.GetStringExtra("customer") ?? "AUTO";
            CUSTCODE  = Intent.GetStringExtra("custcode") ?? "AUTO";
            if (TRXTYPE == "CASH")
            {
                SetTitle(Resource.String.title_cashitementry);
            }
            else
            {
                SetTitle(Resource.String.title_invitementry);
            }
            EventManagerFacade.Instance.GetEventManager().AddListener(this);
            pathToDatabase = ((GlobalvarsApp)this.Application).DATABASE_PATH;
            rights         = Utility.GetAccessRights(pathToDatabase);

            trd = DataHelper.GetTrader(pathToDatabase, CUSTCODE);
            // Create your application here
            SetContentView(Resource.Layout.Entry);
            spinner = FindViewById <Spinner> (Resource.Id.txtcode);
            EditText qty        = FindViewById <EditText> (Resource.Id.txtqty);
            EditText price      = FindViewById <EditText> (Resource.Id.txtprice);
            TextView txtInvNo   = FindViewById <TextView> (Resource.Id.txtInvnp);
            TextView txtcust    = FindViewById <TextView> (Resource.Id.txtInvcust);
            Button   butFind    = FindViewById <Button> (Resource.Id.newinv_bfind);
            EditText txtbarcode = FindViewById <EditText> (Resource.Id.txtbarcode);

            txtInvNo.Text = INVOICENO;
            txtcust.Text  = CUSTOMER;
            Button but  = FindViewById <Button> (Resource.Id.Save);
            Button but2 = FindViewById <Button> (Resource.Id.Cancel);

            spinner.ItemSelected += new EventHandler <AdapterView.ItemSelectedEventArgs> (spinner_ItemSelected);
            but.Click            += butSaveClick;
            but2.Click           += butCancelClick;
            butFind.Click        += (object sender, EventArgs e) => {
                ShowItemLookUp();
            };
            qty.EditorAction     += HandleEditorAction;
            qty.AfterTextChanged += Qty_AfterTextChanged;

            price.Enabled = rights.InvEditUPrice;

            txtbarcode.SetOnKeyListener(this);


            //SqliteConnection.CreateFile(pathToDatabase);
            using (var db = new SQLite.SQLiteConnection(pathToDatabase))
            {
                items = db.Table <Item> ().ToList <Item> ();
            }

            List <string> icodes = new List <string> ();

            foreach (Item item in items)
            {
                //icodes.Add (item.ICode+" | "+item.IDesc);
                if (item.IDesc.Length > 40)
                {
                    icodes.Add(item.ICode + " | " + item.IDesc.Substring(0, 40) + "...");
                }
                else
                {
                    icodes.Add(item.ICode + " | " + item.IDesc);
                }
            }

            dataAdapter = new ArrayAdapter <String>(this, Resource.Layout.spinner_item, icodes);

            // Drop down layout style - list view with radio button
            //dataAdapter.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem);
            dataAdapter.SetDropDownViewResource(Resource.Layout.SimpleSpinnerDropDownItemEx);


            // attaching data adapter to spinner
            spinner.Adapter = dataAdapter;
            if (EDITMODE == "EDIT")
            {
                FIRSTLOAD = "1";
                LoadData(INVOICENO, ITEMUID);
            }
        }
Beispiel #23
0
 private bool IsValidCustTo(Trader trd)
 {
     return trd.CustType.ToUpper () != "BILLTO";
 }