protected void displayOrder() { ReturnsDAO dao = new ReturnsDAO(); bool skuaAlreadyScanned = false; string scannstring = Regex.Replace(tbPackageBarcode.Text, "[^.0-9]", ""); tbPackageBarcode.Text = ""; lblMessage.Visible = false; lblItemsReturned.Text = ""; lblItemsReturned.Visible = false; if (_ordernumber != null) { try { _skuToFind = dao.getSKU(scannstring); } catch { // Not a SKU so if we are not yet editing an order - try and see if it is a valid order if (_itemHashTable == null || _itemHashTable.Count == 0) { DataSet dsorder = GetOrder(scannstring); if (dsorder.Tables[0].Rows.Count > 0) { // If we are called from a store, and the returned order is a store order then // display error message and don't allow the user to continue. if (DisplayStoreOrderMessage(scannstring)) { return; } populateOrderDetails(dsorder); _focusindex = -1; tbPackageBarcode.Text = ""; createDataTable(); BindGrid(); return; } else { lblMessage.Visible = true; lblMessage.Text = "Invalid item/order: " + scannstring; tbPackageBarcode.Text = ""; return; } } else { lblMessage.Visible = true; lblMessage.Text = "Invalid item: " + scannstring; tbPackageBarcode.Text = ""; return; } } int inx = 0; _itemHashTable = (Hashtable)ViewState["itemsprocessed"]; foreach (GridViewRow gridrow in gvItems.Rows) { CheckBox cb = (CheckBox)gridrow.Cells[EDITCHECKBOXCELL].FindControl("cbEdited"); bool cbenabled = cb != null && cb.Enabled ? true : false; if (gridrow.Cells[SKUVALCELL].Text == _skuToFind && cbenabled) { if (_itemHashTable == null || !_itemHashTable.Contains(inx)) { gvItems.EditIndex = inx; _focusindex = inx; lblMessage.Text = ""; lblMessage.Visible = false; BindGrid(); return; } skuaAlreadyScanned = true; } inx++; } // If no SKUs have been processed and an order number has been entered then change to processing new order if (_itemHashTable == null || _itemHashTable.Count == 0) { DataSet dsorder = GetOrder(scannstring); if (dsorder.Tables[0].Rows.Count > 0) { // If we are called from a store, and the returned order is a store order then // display error message and don't allow the user to continue. if (DisplayStoreOrderMessage(scannstring)) { return; } populateOrderDetails(dsorder); _focusindex = -1; tbPackageBarcode.Text = ""; createDataTable(); BindGrid(); return; } else { lblMessage.Visible = true; lblMessage.Text = skuaAlreadyScanned ? "SKU " + _skuToFind + " already scanned" : "SKU " + _skuToFind + " not found on order"; } } else { lblMessage.Visible = true; lblMessage.Text = skuaAlreadyScanned ? "SKU " + _skuToFind + " already scanned" : "SKU " + _skuToFind + " not found on order"; } } else { // If we are called from a store, and the returned order is a store order then // display error message and don't allow the user to continue. if (DisplayStoreOrderMessage(scannstring)) { return; } populateOrderDetails(GetOrder(scannstring)); _focusindex = -1; tbPackageBarcode.Text = ""; createDataTable(); BindGrid(); } }
protected void rtbPackageBarcode_TextChanged(object sender, EventArgs e) { ReturnsDAO dao = new ReturnsDAO(); bool skuaAlreadyScanned = false; if (_ordernumber != null) { try { _skuToFind = dao.getSKU(rtbPackageBarcode.Text); } catch { DataSet dsorder = GetOrder(rtbPackageBarcode.Text); if (dsorder.Tables[0].Rows.Count > 0) { populateOrderDetails(dsorder); _focusindex = -1; rtbPackageBarcode.Text = ""; createDataTable(); BindGrid(); return; } else { lblMessage.Visible = true; lblMessage.Text = "Invalid scan: " + rtbPackageBarcode.Text; rtbPackageBarcode.Text = ""; return; } } int inx = 0; _itemHashTable = (Hashtable)ViewState["itemsprocessed"]; foreach (GridViewRow gridrow in gvItems.Rows) { CheckBox cb = (CheckBox)gridrow.Cells[0].FindControl("cbEdited"); bool cbenabled = cb != null && cb.Enabled ? true : false; if (gridrow.Cells[1].Text == _skuToFind && cbenabled) { if (_itemHashTable == null || !_itemHashTable.Contains(inx)) { gvItems.EditIndex = inx; _focusindex = inx; lblMessage.Text = ""; lblMessage.Visible = false; BindGrid(); return; } skuaAlreadyScanned = true; } inx++; } // If no SKUs have been processed and an order number has been entered then change to processing new order if (_itemHashTable == null || _itemHashTable.Count > 0) { DataSet dsorder = GetOrder(rtbPackageBarcode.Text); if (dsorder.Tables[0].Rows.Count > 0) { populateOrderDetails(dsorder); _focusindex = -1; rtbPackageBarcode.Text = ""; createDataTable(); BindGrid(); return; } else { lblMessage.Visible = true; lblMessage.Text = skuaAlreadyScanned ? "SKU " + _skuToFind + " already scanned" : "SKU " + _skuToFind + " not found on order"; } } else { lblMessage.Visible = true; lblMessage.Text = skuaAlreadyScanned ? "SKU " + _skuToFind + " already scanned" : "SKU " + _skuToFind + " not found on order"; } } else { populateOrderDetails(GetOrder(rtbPackageBarcode.Text)); _focusindex = -1; rtbPackageBarcode.Text = ""; createDataTable(); BindGrid(); } }