protected void BtnCancelOrder_Click(object sender, EventArgs e) { StringBuilder lineBuild = new StringBuilder(); string lineError = ""; try { no = tcNo.Text; docNo = tcDocNo.Text; string validateMsg = string.Empty; bool allValidLines = true; int rowCount = 0; int controlCount = 0; if (!String.IsNullOrWhiteSpace(txtZendeskTicketNo.Text) || !String.IsNullOrEmpty(txtZendeskTicketNo.Text)) { if (txtZendeskTicketNo.Text.Length == 7) { int.TryParse(txtZendeskTicketNo.Text, out zendeskTicketNo); } else { validateMsg = "Zendesk Ticket # should be 7 numeric characters."; } } if (validateMsg == string.Empty) { foreach (TableRow row in tblCancelOrderTableDetails.Rows) { rowCount++; string itemNo = string.Empty; int qtyLine = 0; int actionQty = 0; string reasonCode = string.Empty; controlCount = 0; foreach (TableCell cell in row.Cells) { if (cell.ID.Contains("itemNo_")) { itemNo = cell.Text.ToString(); } if (cell.ID.Contains("itemQuanity_")) { int.TryParse(cell.Text.ToString(), out qtyLine); } foreach (Control c in cell.Controls) { controlCount++; if (c.GetType() == typeof(TextBox)) { string value = ((TextBox)c).Text; int.TryParse(value, out actionQty); } if (c.GetType() == typeof(DropDownList)) { int index = ((DropDownList)c).SelectedIndex; List <ReturnReason> sr = (List <ReturnReason>)Session["ReturnReasons"]; List <ReturnReason> rl = new List <ReturnReason>(); foreach (ReturnReason item in sr) { if (item.Category == "Cancel Order" || item.Category == "") { rl.Add(item); } } reasonCode = (rl)[index].ReasonCode; } } string lineValidMessage = string.Empty; if ((rowCount > 1 && controlCount == 2 && actionQty != 0)) { lineValidMessage = ValidateLine(itemNo, qtyLine, actionQty, reasonCode); if (lineValidMessage == "Valid Line Input") { lineBuild.Append(itemNo).Append(":"); lineBuild.Append(actionQty).Append(":"); lineBuild.Append(reasonCode).Append(","); } else { allValidLines = false; if (lineError == "") { lineError = lineValidMessage; } } } } } if (allValidLines) { string lineValues = lineBuild.ToString(); SendService ss = new SendService(); ss.CancelOrder(no, docNo, lineValues, zendeskTicketNo); Session["NoUserInteraction"] = true; Session["SearchValue"] = "ORDER CANCELLED"; ClientScript.RegisterStartupScript(this.GetType(), "cancelledOrder", "alert('Order " + no + " has been successfully cancelled.');", true); ClientScript.RegisterStartupScript(this.GetType(), "closeCancelOrder", "CloseAfterCancel();", true); } else { ClientScript.RegisterStartupScript(this.GetType(), "lineError", "alert('" + lineError + "');", true); } } else { ClientScript.RegisterStartupScript(this.GetType(), "validateMsg", "alert('" + validateMsg + "');", true); } } catch (Exception ex) { Log.Error(ex.Message, ex); ClientScript.RegisterStartupScript(this.GetType(), "exceptionAlert", "alert('" + ex.Message.Replace("'", "\"") + "');", true); if (ex.Message.ToLower().Contains("session")) { ClientScript.RegisterStartupScript(this.GetType(), "closeErrorAlert", "parent.window.close();", true); } } }