private void setItemAsDemo() { Data.SalesTransactionItemDetails Details; int iRow = dgItems.CurrentRowIndex; if (iRow >= 0) { if (dgItems[iRow, 8].ToString() != "VOID") { if (dgItems[iRow, 8].ToString().IndexOf("RETURN") == -1 && dgItems[iRow, 8].ToString().IndexOf("DEMO") == -1) { DialogResult loginresult = GetWriteAccessAndLogin(mclsSalesTransactionDetails.CashierID, AccessTypes.SetItemAsDemo); if (loginresult == DialogResult.OK) { if (MessageBox.Show("Are you sure you want to set this item DEMO?", "RetailPlus", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) { return; } Details = getCurrentRowItemDetails(); clsEvent.AddEvent("[" + lblCashier.Text + "] Setting demo item no. " + Details.ItemNo + "".PadRight(15) + ":" + Details.Description + "."); try { // override the transaction item status TransactionItemStatus _previousTransactionItemStatus = Details.TransactionItemStatus; Details.TransactionItemStatus = TransactionItemStatus.Demo; Data.SalesTransactions clsSalesTransactions = new Data.SalesTransactions(mConnection, mTransaction); mConnection = clsSalesTransactions.Connection; mTransaction = clsSalesTransactions.Transaction; clsSalesTransactions.setItemAsDemo(Details.TransactionItemsID, mclsSalesTransactionDetails.TransactionDate); clsEvent.AddEventLn("Setting demo item #: " + Details.ItemNo + "".PadRight(15) + ":" + Details.Description + ".", true); // 21May2015 :Shouldn't have an effect in the inventory. // it's already punched //ReservedAndCommitItem(Details, _previousTransactionItemStatus); clsSalesTransactions.CommitAndDispose(); InsertAuditLog(AccessTypes.VoidItem, "Voiding item #: " + Details.ItemNo + "".PadRight(15) + ":" + Details.Description + "." + " @ Branch: " + mclsTerminalDetails.BranchDetails.BranchCode); dgItems[iRow, 8] = Details.Quantity.ToString("#,##0.##") + " - DEMO"; dgItems[iRow, 9] = "0.00"; dgItems[iRow, 10] = "0.00"; dgItems[iRow, 11] = "0.00"; dgItems[iRow, 13] = "0.00"; dgItems[iRow, 14] = "0.00"; dgItems[iRow, 15] = "0.00"; dgItems[iRow, 16] = "0.00"; dgItems[iRow, 21] = TransactionItemStatus.Demo.ToString("d"); dgItems[iRow, 31] = "0.00"; //PromoApplied dgItems[iRow, 32] = "0.00"; //PurchasePrice dgItems[iRow, 33] = "0.00"; //PurchaseAmount dgItems[iRow, 43] = "0.00"; //PercentageCommision dgItems[iRow, 44] = "0.00"; //Commision dgItems[iRow, 45] = "0.00"; //RewardPoints SetItemDetails(); clsEvent.AddEventLn("Done!", true); ComputeSubTotal(); setTotalDetails(); try { DisplayItemToTurretDelegate DisplayItemToTurretDel = new DisplayItemToTurretDelegate(DisplayItemToTurret); DisplayItemToTurretDel.BeginInvoke("DEMO-" + Details.ProductCode, Details.ProductUnitCode, Details.Quantity, Details.Price, Details.Discount, Details.PromoApplied, Details.Amount, Details.VAT, Details.EVAT, null, null); } catch { } if (mclsTerminalDetails.AutoPrint == PrintingPreference.Auto) { PrintItemDelegate PrintItemDel = new PrintItemDelegate(PrintItem); PrintItemDel.BeginInvoke(Details.ItemNo, Details.ProductCode + " - DEMO ", Details.ProductUnitCode, Details.Quantity, Details.Price, Details.Discount, Details.PromoApplied, Details.Amount, Details.VAT, Details.EVAT, Details.DiscountCode, Details.ItemDiscountType, null, null); //PrintItemDel.BeginInvoke(Details.ProductCode + " - VOID ", Details.ProductUnitCode, Details.Quantity, Details.Price, Details.Discount, Details.PromoApplied, Details.Amount, Details.VAT, Details.EVAT, null, null); } } catch (Exception ex) { InsertErrorLogToFile(ex, "ERROR!!! Setting demo item." + Details.ItemNo + "".PadRight(15) + ":" + Details.Description); } } } } } }