public AddMultiBarcodeItem(ref StockEngine sEngine) { frmSingleInputBox fsiGetBarcode = new frmSingleInputBox("Enter the barcode for the new multi-barcode item", ref sEngine); fsiGetBarcode.ShowDialog(); if (fsiGetBarcode.Response != "$NONE") { Barcode = fsiGetBarcode.Response; frmSingleInputBox fsiGetDesc = new frmSingleInputBox("Enter the description for the new multi-barcode item", ref sEngine); fsiGetDesc.ShowDialog(); if (fsiGetDesc.Response != "$NONE") { frmListOfShops flos = new frmListOfShops(ref sEngine); flos.ShowDialog(); frmListOfTills flot = new frmListOfTills(ref sEngine, flos.SelectedShopCode); flot.ShowDialog(); System.Windows.Forms.MessageBox.Show("When the till is free, it will temporarily move to this computer. Enter the number 0 as your ID, and enter the transaction as you would like it to appear when you enter " + fsiGetBarcode.Response + " at the till. Then press the space bar and the till program will quit back to this", "Instructions", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Information); sEngine.RunTillSoftware(); string[] sData = sEngine.GetStoredTransactionFromTill(Convert.ToInt32(flot.sSelectedTillCode)); int nOfLines = 0; foreach (string line in sData) { if (line.Contains(',')) { nOfLines++; } } string[] sBarcodes = new string[nOfLines]; decimal[] dQuantities = new decimal[nOfLines]; decimal[] dAmountPerItem = new decimal[nOfLines]; for (int i = 0; i < nOfLines; i++) { string[] sTemp = sData[i].Split(','); sBarcodes[i] = sTemp[0]; dQuantities[i] = Convert.ToDecimal(sTemp[1]); dAmountPerItem[i] = Convert.ToDecimal(sTemp[2]) / dQuantities[i]; } sEngine.AddMultiItemItem(fsiGetBarcode.Response, fsiGetDesc.Response, flos.SelectedShopCode, sBarcodes, dQuantities, dAmountPerItem); if (System.Windows.Forms.MessageBox.Show("Upload changes to all tills now?", "Upload?", System.Windows.Forms.MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes) { sEngine.CopyWaitingFilesToTills(); } } else { Barcode = "$NULL"; } } else { Barcode = "$NULL"; } }
void TillCount_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.F5) { // Add Till frmAddTill fat = new frmAddTill(ref sEngine, sShopCode); fat.ShowDialog(); fat.Dispose(); } else if (e.KeyCode == Keys.F6) { // Edit Till frmListOfTills ft = new frmListOfTills(ref sEngine, sShopCode); ft.ShowDialog(); string sCode = ft.sSelectedTillCode; ft.Dispose(); if (sCode != "NULL") { frmAddTill fat = new frmAddTill(ref sEngine, sShopCode); fat.ShowTillDetails(sCode); fat.ShowDialog(); fat.Dispose(); } } else if (e.KeyCode == Keys.F7) { // Remove Till frmListOfTills ft = new frmListOfTills(ref sEngine, sShopCode); ft.ShowDialog(); string sCode = ft.sSelectedTillCode; ft.Dispose(); if (sCode != "NULL") { if (MessageBox.Show("Are you sure that you want to remove the till with code " + sCode + "?", "Remove TilL", MessageBoxButtons.YesNo) == DialogResult.Yes) { { // Remove till sEngine.RemoveTill(sCode); } } } } else if (e.KeyCode == Keys.Enter) { AskAndClose(); } InputTextBox("TILL_COUNT").Text = sEngine.NumberOfTills(sShopCode).ToString(); }