public void setItemProducts(string itemNumber) { var idItem = Item_Master.RetrieveData(oCon, "", "", itemNumber, 0); Session["idItem"] = idItem.Rows[0][0].ToString(); DataTable ldata = Item_Serial.GetDetailsForCostAdjustment(oCon, itemNumber); if (ldata.Rows[0][0].ToString() == "") { txtOnHandQty.Text = "0"; } else { txtOnHandQty.Text = ldata.Rows[0][0].ToString(); } if (ldata.Rows[0][1].ToString() == "") { txtCostPerUnit.Text = "0"; } else { txtCostPerUnit.Text = ldata.Rows[0][1].ToString(); } if (ldata.Rows[0][0].ToString() == "") { txtCostAdjQty.Text = "0"; } else { txtCostAdjQty.Text = ldata.Rows[0][0].ToString(); } txtOnHandCost.Text = (Convert.ToDecimal(txtOnHandQty.Text) * Convert.ToDecimal(txtCostPerUnit.Text)).ToString(); }
public bool Save_SO_Detail(int idSOHeader, int idItem, decimal Qty, decimal Cost, string UM, decimal Discount, decimal Amount, decimal Tax_Amount) { bool returnValue = true; StringBuilder sQuery = new StringBuilder(); try { sQuery.Append(@"INSERT INTO a_SO_Detail (idSOHeader ,idItem ,Qty ,Cost ,UM ,Discount ,Tax_Amount ,Amount) VALUES (@idSOHeader ,@idItem ,@Qty ,@Cost ,@UM ,@Discount ,@Tax_Amount ,@Amount) "); oCon.Open(); using (SqlCommand cmd = new SqlCommand()) { cmd.Connection = oCon; cmd.CommandText = sQuery.ToString(); cmd.CommandType = CommandType.Text; SqlParameter parm2 = new SqlParameter { ParameterName = "@idSOHeader", SqlDbType = SqlDbType.Int, Value = idSOHeader }; cmd.Parameters.Add(parm2); SqlParameter parm3 = new SqlParameter { ParameterName = "@idItem", SqlDbType = SqlDbType.Int, Value = idItem }; cmd.Parameters.Add(parm3); SqlParameter parm4 = new SqlParameter { ParameterName = "@Qty", SqlDbType = SqlDbType.Int, Value = Qty }; cmd.Parameters.Add(parm4); SqlParameter parm5 = new SqlParameter { ParameterName = "@Cost", SqlDbType = SqlDbType.Decimal, Value = Cost }; cmd.Parameters.Add(parm5); SqlParameter parm6 = new SqlParameter { ParameterName = "@UM", SqlDbType = SqlDbType.NVarChar, Value = UM }; cmd.Parameters.Add(parm6); SqlParameter parm7 = new SqlParameter { ParameterName = "@Discount", SqlDbType = SqlDbType.Decimal, Value = Discount }; cmd.Parameters.Add(parm7); SqlParameter parm8 = new SqlParameter { ParameterName = "@Tax_Amount", SqlDbType = SqlDbType.Decimal, Value = Tax_Amount }; cmd.Parameters.Add(parm8); SqlParameter parm9 = new SqlParameter { ParameterName = "@Amount", SqlDbType = SqlDbType.Decimal, Value = Amount }; cmd.Parameters.Add(parm9); if (cmd.ExecuteNonQuery() >= 1) { bool save = Item_Serial.UpdateAllocQuantity(oCon, idItem, decimal.ToInt32(Qty)); if (save == true) { returnValue = true; } else { returnValue = false; } } else { returnValue = false; } cmd.Dispose(); cmd.Parameters.Clear(); } oCon.Close(); } catch { //throw new ArgumentException(ex.Message); } return(returnValue); }
protected void btnSaveCostAdj_Click(object sender, EventArgs e) { string CostAdjNum = Cost_Adjustment.GetLastCostAdjNum(oCon); if (CostAdjNum == null) { CostAdjNum = "CF000000"; } CostAdjNum = CostAdjNum.Substring(2); int CostAdjNum_ = int.Parse(CostAdjNum) + 1; string CostAdjNumber = "CF" + CostAdjNum_.ToString("000000"); Cost_Adjustment_Model Cost_Adjustment_Model = new Cost_Adjustment_Model { CostAdjustNumber = CostAdjNumber, idItem = Convert.ToInt32(Session["idItem"].ToString()), InitialCost = Convert.ToDecimal(txtCostPerUnit.Text), InitialQuantity = Convert.ToInt32(txtOnHandQty.Text), AdjustedCostPerUnit = Convert.ToDecimal(txtCostAdjPerUnit.Text), AdjustedQuantity = Convert.ToInt32(txtCostAdjQty.Text), AdjustedAmount = Convert.ToDecimal(txtCostAdjAmt.Text), DocumentNumber = txtDocNumber.Text, Transaction_Date = DateTime.Now, Remarks = txtCARemarks.Text, user_id_chg_by = Session["User_Domain"].ToString() }; bool save = Cost_Adjustment.Save(oCon, Cost_Adjustment_Model); if (save == true) { bool updateCost = Item_Serial.UpdateCost(oCon, Convert.ToInt32(Session["idItem"].ToString()), Convert.ToDecimal(txtCostAdjPerUnit.Text)); if (updateCost == true) { Item_Master.RecomputeItemCost(oCon, Convert.ToInt32(Session["idItem"].ToString())); Trans_History_Model trans_History_Model = new Trans_History_Model { Trans_Code = "COF", Item_Number = txtItemSearch.Text, Site = "WH-JMS", UM = "UT", Doc_No = txtDocNumber.Text, Serial_No = "", Reason_Code = "", Trans_Date = DateTime.Now, Order_No = "", Invoice_No = "", Reference_No = "", Trans_Qty = Convert.ToInt32(txtCostAdjQty.Text), Trans_Amt = Convert.ToDecimal(txtCostAdjAmt.Text), Remarks = txtCARemarks.Text, user_domain = Session["User_Domain"].ToString() }; Trans_History.Save(oCon, trans_History_Model); HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Saving Complete! Cost Adjustment # : " + CostAdjNumber + ControlChars.Quote + ");</script>"); ClearAdj(); } else { HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Error in updating cost" + ControlChars.Quote + ");</script>"); } } else { HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Error in saving cost adjustment" + ControlChars.Quote + ");</script>"); } }
protected void btnTransfer_Click(object sender, EventArgs e) { string transcode = ""; string sourcesite = ""; string ordernumber = ""; bool result = false; if (lblStockCode.Text == "PUR" || lblStockCode.Text == "STI") { transcode = "STO"; ordernumber = ""; } else if (lblStockCode.Text == "STO") { transcode = "STI"; ordernumber = ""; } if (ddlSourceSite.SelectedValue.ToString() == "WH-JMS") { transcode = "STO"; } else { transcode = "STI"; } string idSO = Stock_Transfer_Header.GetLastDocNumber(oCon); string doc_number = ""; if (idSO == null) { idSO = DateTime.Now.Year.ToString() + "000"; } idSO = idSO.Substring(4); int idSO_ = int.Parse(idSO) + 1; doc_number = DateTime.Now.Year.ToString() + idSO_.ToString("000"); if (dvstockcode.Visible == true && dvuploadexcel.Visible == false) { sourcesite = ""; Stock_Transfer_Header_Model sthm = new Stock_Transfer_Header_Model { Doc_Number = doc_number, STR_Number = txtSTRNumber.Text, //Qty = qty, Site_From = sourcesite, Site_To = ddlDestinationSite.SelectedItem.Text, timestamp = DateTime.Now }; int idSTHeader = Stock_Transfer_Header.Save(oCon, sthm); if (idSTHeader != 0) { int iditem = 0; int destSite = Convert.ToInt32(ddlDestinationSite.SelectedValue.ToString()); bool check = Item_Master.CheckIfExist(oCon, txtSearchItemNumber.Text, destSite); if (check == true) { iditem = Item_Master.RetrieveIdItem(oCon, txtSearchItemNumber.Text, destSite); } else if (check == false) { int oldIdItem = Item_Master.RetrieveIdItem(oCon, txtSearchItemNumber.Text, 2); var imm = Item_Master.RetrieveData(oCon, "", "", "", oldIdItem); var isc = Item_Subclass.RetrieveData(oCon, imm.Rows[0][1].ToString(), "", imm.Rows[0][2].ToString()); if (destSite == 9) { Item_Master_Model item_Master_Model = new Item_Master_Model { idClass = Convert.ToInt32(imm.Rows[0][1].ToString()), idSubClass = 12, ItemNumber = "JBW-" + imm.Rows[0][4].ToString(), Principal_SKU = imm.Rows[0][4].ToString(), Description = imm.Rows[0][5].ToString(), Site = destSite.ToString(), Unit_Weight = 0, Weight_UM = "", UM = "UT", OnHand_Qty = 0, Alloc_Qty = 0, Total_Qty = 0, Ave_Cost = 0, Total_Cost = 0 }; iditem = Item_Master.Save(oCon, item_Master_Model); } else { Item_Master_Model item_Master_Model = new Item_Master_Model { idClass = Convert.ToInt32(imm.Rows[0][1].ToString()), idSubClass = Convert.ToInt32(imm.Rows[0][2].ToString()), ItemNumber = isc[0].Subclass_Name.Substring(0, 4) + "-" + imm.Rows[0][4].ToString(), Principal_SKU = imm.Rows[0][4].ToString(), Description = imm.Rows[0][5].ToString(), Site = destSite.ToString(), Unit_Weight = 0, Weight_UM = "", UM = "UT", OnHand_Qty = 0, Alloc_Qty = 0, Total_Qty = 0, Ave_Cost = 0, Total_Cost = 0 }; iditem = Item_Master.Save(oCon, item_Master_Model); } } Stock_Transfer_Detail_Model stdm = new Stock_Transfer_Detail_Model { idItem = iditem, Qty = 1, idSTHeader = idSTHeader }; int idstdetail = Stock_Transfer_Detail.Save(oCon, stdm); Stock_Transfer_Serial_Model stsm = new Stock_Transfer_Serial_Model { idSerial = Item_Serial.RetrieveIdSerial(oCon, txtSearchSerialNumber.Text), idSTDetail = idstdetail }; Stock_Transfer_Serial.Save(oCon, stsm); Item_Serial.UpdateStockStatus(oCon, txtSearchSerialNumber.Text.Trim(), "N"); Trans_History_Model trans_History_Model = new Trans_History_Model { Trans_Code = transcode, Item_Number = txtSearchItemNumber.Text, Site = ddlDestinationSite.SelectedItem.Text, UM = "UT", Doc_No = doc_number, Serial_No = txtSearchSerialNumber.Text.Trim(), Reason_Code = "", Trans_Date = DateTime.Now, Order_No = ordernumber, Invoice_No = txtSTRNumber.Text, Reference_No = txtSTRNumber.Text, Trans_Qty = -1, Trans_Amt = Trans_History.GetSerialCost(oCon, txtSearchItemNumber.Text, txtSearchSerialNumber.Text), Remarks = "", user_domain = Session["User_Domain"].ToString() }; Trans_History.Save(oCon, trans_History_Model); result = true; } } else if (dvstockcode.Visible == false && dvuploadexcel.Visible == true) { sourcesite = ddlSourceSite.SelectedItem.Text; int sourceSite = Convert.ToInt32(ddlSourceSite.SelectedValue.ToString()); int destSite = Convert.ToInt32(ddlDestinationSite.SelectedValue.ToString()); DataTable dtUpload = new DataTable(); DataTable dtCheck = new DataTable(); StreamReader SR = new StreamReader(fuTransfer.PostedFile.InputStream); string line; DataRow rowUpload; DataRow rowCheck; dtUpload.Columns.Add(new DataColumn()); dtCheck.Columns.Add(new DataColumn()); dtUpload.Columns.Add(new DataColumn()); dtCheck.Columns.Add(new DataColumn()); try { do { line = SR.ReadLine().Trim(); if (line != string.Empty) { rowUpload = dtUpload.NewRow(); rowCheck = dtCheck.NewRow(); //line = line.ToString().Replace(",", "_"); //line = line.ToString().Replace("'", ""); line = line.Trim(); rowUpload.ItemArray = line.Split(','); dtUpload.Rows.Add(rowUpload); rowCheck.ItemArray = line.Split(','); dtCheck.Rows.Add(rowCheck); } else { break; } }while (true); } catch { } int duplicateCount = 0; int notInDatabaseCount = 0; int invalidCode = 0; for (var x = 0; x <= dtCheck.Rows.Count - 1; x++) { int counter = 0; for (var y = 0; y <= dtUpload.Rows.Count - 1; y++) { if (dtCheck.Rows[x][1].ToString() == dtUpload.Rows[y][1].ToString()) { counter = counter + 1; if (counter > 1) { duplicateCount = duplicateCount + 1; } } } if (Item_Serial.CheckDuplicate(oCon, dtCheck.Rows[x][1].ToString(), 0, dtCheck.Rows[x][0].ToString(), sourceSite) == 0) { notInDatabaseCount = notInDatabaseCount + 1; } string serialLastCode = Trans_History.GetItemLastState(oCon, dtCheck.Rows[x][0].ToString(), dtCheck.Rows[x][1].ToString()); if (serialLastCode != ddlSourceSite.SelectedItem.Text) { invalidCode = invalidCode + 1; } } if (invalidCode == 0) { if (duplicateCount == 0) { if (notInDatabaseCount == 0) { Stock_Transfer_Header_Model sthm = new Stock_Transfer_Header_Model { Doc_Number = doc_number, STR_Number = txtSTRNumber.Text, //Qty = qty, Site_From = sourcesite, Site_To = ddlDestinationSite.SelectedItem.Text, timestamp = DateTime.Now }; int idSTHeader = Stock_Transfer_Header.Save(oCon, sthm); if (idSTHeader != 0) { DataSet dsUpload = new DataSet(); for (var x = 0; x <= dtUpload.Rows.Count - 1; x++) { if (x == 0 || dtUpload.Rows[x][0].ToString() != dtUpload.Rows[x - 1][0].ToString()) { dsUpload.Tables.Add(dtUpload.Rows[x][0].ToString()); dsUpload.Tables[dtUpload.Rows[x][0].ToString()].Columns.Add(new DataColumn()); dsUpload.Tables[dtUpload.Rows[x][0].ToString()].Columns.Add(new DataColumn()); DataRow dr = dsUpload.Tables[dtUpload.Rows[x][0].ToString()].NewRow(); dr[0] = dtUpload.Rows[x][0]; dr[1] = dtUpload.Rows[x][1]; dsUpload.Tables[dtUpload.Rows[x][0].ToString()].Rows.Add(dr); } else if (dtUpload.Rows[x][0].ToString() == dtUpload.Rows[x - 1][0].ToString()) { DataRow dr = dsUpload.Tables[dtUpload.Rows[x][0].ToString()].NewRow(); dr[0] = dtUpload.Rows[x][0]; dr[1] = dtUpload.Rows[x][1]; dsUpload.Tables[dtUpload.Rows[x][0].ToString()].Rows.Add(dr); } } for (int x = 0; x <= dsUpload.Tables.Count - 1; x++) { int iditem = 0; bool check = Item_Master.CheckIfExist(oCon, dsUpload.Tables[x].Rows[0][0].ToString(), destSite); if (check == true) { iditem = Item_Master.RetrieveIdItem(oCon, dsUpload.Tables[x].Rows[0][0].ToString(), destSite); } else if (check == false) { int oldIdItem = Item_Master.RetrieveIdItem(oCon, txtSearchItemNumber.Text, 2); var imm = Item_Master.RetrieveData(oCon, "", "", "", oldIdItem); var isc = Item_Subclass.RetrieveData(oCon, imm.Rows[0][1].ToString(), "", imm.Rows[0][2].ToString()); if (destSite == 9) { Item_Master_Model item_Master_Model = new Item_Master_Model { idClass = Convert.ToInt32(imm.Rows[0][1].ToString()), idSubClass = 12, ItemNumber = "JBW-" + imm.Rows[0][4].ToString(), Principal_SKU = imm.Rows[0][4].ToString(), Description = imm.Rows[0][5].ToString(), Site = destSite.ToString(), Unit_Weight = 0, Weight_UM = "", UM = "UT", OnHand_Qty = 0, Alloc_Qty = 0, Total_Qty = 0, Ave_Cost = 0, Total_Cost = 0 }; iditem = Item_Master.Save(oCon, item_Master_Model); } else { Item_Master_Model item_Master_Model = new Item_Master_Model { idClass = Convert.ToInt32(imm.Rows[0][1].ToString()), idSubClass = Convert.ToInt32(imm.Rows[0][2].ToString()), ItemNumber = isc[0].Subclass_Name.Substring(0, 4) + "-" + imm.Rows[0][4].ToString(), Principal_SKU = imm.Rows[0][4].ToString(), Description = imm.Rows[0][5].ToString(), Site = destSite.ToString(), Unit_Weight = 0, Weight_UM = "", UM = "UT", OnHand_Qty = 0, Alloc_Qty = 0, Total_Qty = 0, Ave_Cost = 0, Total_Cost = 0 }; iditem = Item_Master.Save(oCon, item_Master_Model); } } Stock_Transfer_Detail_Model stdm = new Stock_Transfer_Detail_Model { idItem = iditem, Qty = dsUpload.Tables[x].Rows.Count, // = Item_Serial.RetrieveidItem(oCon, dtUpload.Rows[x][1].ToString()), idSTHeader = idSTHeader }; int idstdetail = Stock_Transfer_Detail.Save(oCon, stdm); for (int y = 0; y <= dsUpload.Tables[x].Rows.Count - 1; y++) { Stock_Transfer_Serial_Model stsm = new Stock_Transfer_Serial_Model { idSerial = Item_Serial.RetrieveIdSerial(oCon, dsUpload.Tables[x].Rows[y][1].ToString()), idSTDetail = idstdetail }; Stock_Transfer_Serial.Save(oCon, stsm); int transqty = 0; if (transcode == "STO") { Item_Serial.UpdateStockStatus(oCon, dsUpload.Tables[x].Rows[y][1].ToString(), "N"); transqty = -1; } else { Item_Serial.UpdateStockStatus(oCon, dsUpload.Tables[x].Rows[y][1].ToString(), "Y"); transqty = 1; } Item_Serial.UpdateIdItem(oCon, dsUpload.Tables[x].Rows[y][1].ToString(), iditem); Trans_History_Model trans_History_Model = new Trans_History_Model { Trans_Code = transcode, Item_Number = dsUpload.Tables[x].Rows[y][0].ToString(), Site = ddlDestinationSite.SelectedItem.Text, UM = "PC", Doc_No = doc_number, Serial_No = dsUpload.Tables[x].Rows[y][1].ToString(), Reason_Code = "", Trans_Date = DateTime.Now, Order_No = ordernumber, Invoice_No = txtSTRNumber.Text, Reference_No = txtSTRNumber.Text, Trans_Qty = transqty, Trans_Amt = Trans_History.GetSerialCost(oCon, txtSearchItemNumber.Text, txtSearchSerialNumber.Text), Remarks = "", user_domain = Session["User_Domain"].ToString() }; Trans_History.Save(oCon, trans_History_Model); } } result = true; } } else { result = false; //lblVerify.Text = "There are " + notInDatabaseCount.ToString() + " serial numbers that are not included in the specified item number."; HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "There are " + notInDatabaseCount.ToString() + " serial numbers that is not in the database." + ControlChars.Quote + ");</script>"); } } else { result = false; //lblVerify.Text = "Duplicate serial numbers detected in file : " + duplicateCount.ToString(); HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Duplicate serial numbers detected in file : " + duplicateCount.ToString() + ControlChars.Quote + ");</script>"); } } else { result = false; //lblVerify.Text = "Duplicate serial numbers detected in file : " + duplicateCount.ToString(); HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Incorrect serial numbers' last location in file : " + duplicateCount.ToString() + ControlChars.Quote + ");</script>"); } } if (result == true) { Response.Write(@"<script>window.open ('/Forms/DownloadReports/DownloadStockTransfer.aspx?DocumentNumber=" + doc_number + "&STRNumber=" + txtSTRNumber.Text + "&SourceSite=" + sourcesite + "&DestinationSite=" + ddlDestinationSite.SelectedItem.Text + "','_blank');</script>"); dvStockTransfer.Visible = false; btnOpenModal.Visible = false; Item_Master.InventoryCheckForError(oCon); getHistory(txtSearchItemNumber.Text, txtSearchSerialNumber.Text); } }
private decimal computeCost(string idItem, string itemQuantity, string itemCost) { decimal dCharges = 0; decimal dFinalPOAmount = 0; decimal dPercentage = 0; decimal dComputedCharge = 0; decimal dItemCost = 0; decimal dFinalItemCost = 0; decimal dItemCostQuantity = 0; decimal dItemQuantity = Convert.ToDecimal(itemQuantity); decimal dPOQuantity = Convert.ToDecimal(txtPOQuantity.Text); //Convert.ToDecimal(txtBrokerage.Text); //Convert.ToDecimal(txtCEDEC.Text); //Convert.ToDecimal(txtCustomsStamps.Text); //Convert.ToDecimal(txtDeliveryCharges.Text); //Convert.ToDecimal(txtDocumentaryStamps.Text); //Convert.ToDecimal(txtDocumentationCharges.Text); //Convert.ToDecimal(txtForkliftCost.Text); //Convert.ToDecimal(txtFreightCharges.Text); //Convert.ToDecimal(txtHandlingFee.Text); //Convert.ToDecimal(txtImportDuties.Text); //Convert.ToDecimal(txtImportProcessingFee.Text); //Convert.ToDecimal(txtImportationInsurance.Text); //Convert.ToDecimal(txtMiscellaneous.Text); //Convert.ToDecimal(txtNotarialFee.Text); //Convert.ToDecimal(txtOtherCharges.Text); //Convert.ToDecimal(txtProcessingFee.Text); //Convert.ToDecimal(txtWarehouseStorageCharges.Text); //Convert.ToDecimal(txtXerox.Text); dCharges = Convert.ToDecimal(txtTotalCharges.Text); //Convert.ToDecimal(txtBrokerage.Text) + Convert.ToDecimal(txtCEDEC.Text) + Convert.ToDecimal(txtCustomsStamps.Text) + Convert.ToDecimal(txtDeliveryCharges.Text) + Convert.ToDecimal(txtDocumentaryStamps.Text) + Convert.ToDecimal(txtDocumentationCharges.Text) + Convert.ToDecimal(txtForkliftCost.Text) + Convert.ToDecimal(txtFreightCharges.Text) + Convert.ToDecimal(txtHandlingFee.Text) + Convert.ToDecimal(txtImportDuties.Text) + Convert.ToDecimal(txtImportProcessingFee.Text) + Convert.ToDecimal(txtImportationInsurance.Text) + Convert.ToDecimal(txtMiscellaneous.Text) + Convert.ToDecimal(txtNotarialFee.Text) + Convert.ToDecimal(txtOtherCharges.Text) + Convert.ToDecimal(txtProcessingFee.Text) + Convert.ToDecimal(txtWarehouseStorageCharges.Text) + Convert.ToDecimal(txtXerox.Text); if (txtForexRate.Text.Trim() != "" && Decimal.ToInt32(Convert.ToDecimal(txtForexRate.Text)) != 0) { dFinalPOAmount = Convert.ToDecimal(txtForexRate.Text) * Convert.ToDecimal(txtPOAmount.Text); dItemCost = Convert.ToDecimal(txtForexRate.Text) * Convert.ToDecimal(itemCost); } else { dFinalPOAmount = Convert.ToDecimal(txtPOAmount.Text); dItemCost = Convert.ToDecimal(itemCost); } if (ddlPurchase.SelectedIndex == 1) { dPercentage = (dItemCost * dItemQuantity) / dFinalPOAmount; dComputedCharge = dPercentage * dCharges; dItemCostQuantity = dItemCost * dItemQuantity; dFinalItemCost = (dComputedCharge + dItemCostQuantity) / dItemQuantity; } else if (ddlPurchase.SelectedIndex == 2) { dComputedCharge = dCharges / dPOQuantity; dFinalItemCost = dComputedCharge + dItemCost; } if (ddlUnitPrice.SelectedIndex == 1) { dFinalItemCost = Convert.ToDecimal(dFinalItemCost.ToString("N4")); } else if (ddlUnitPrice.SelectedIndex == 2) { DataTable averageCost = Item_Serial.AverageCosting(oCon, idItem); decimal dTotalInventoryCost = 0; //decimal dAverageCost = 0; int inventoryStock = 0; for (int x = 0; x <= averageCost.Rows.Count - 1; x++) { dTotalInventoryCost = dTotalInventoryCost + Convert.ToDecimal(averageCost.Rows[x][3].ToString()); inventoryStock = inventoryStock + Convert.ToInt32(averageCost.Rows[x][1].ToString()); } dFinalItemCost = ((dFinalItemCost * dItemQuantity) + dTotalInventoryCost) / (dItemQuantity + inventoryStock); dFinalItemCost = Convert.ToDecimal(dFinalItemCost.ToString("N4")); } dFinalItemCost = Convert.ToDecimal(Convert.ToDouble(dFinalItemCost) * 1.02); return(dFinalItemCost); }
protected void btnUploadReplacementSerial_Click(object sender, EventArgs e) { StreamReader SR = new StreamReader(uploadReplacementSerial.PostedFile.InputStream); string line = SR.ReadLine(); string[] strArray = line.Split(','); DataTable dtUpload = new DataTable(); DataRow rowUpload; DataTable dtCheck = new DataTable(); DataRow rowCheck; dtUpload.Columns.Add(new DataColumn()); dtCheck.Columns.Add(new DataColumn()); try { do { line = SR.ReadLine().Trim(); if (line != string.Empty) { rowUpload = dtUpload.NewRow(); rowCheck = dtCheck.NewRow(); line = line.ToString().Replace(",", "_"); line = line.ToString().Replace("'", ""); line = line.Trim(); rowUpload.ItemArray = line.Split(','); dtUpload.Rows.Add(rowUpload); rowCheck.ItemArray = line.Split(','); dtCheck.Rows.Add(rowCheck); } else { break; } }while (true); } catch { } int duplicateCount = 0; int notInDatabaseCount = 0; int TransHistDuplicate = 0; for (var x = 0; x <= dtCheck.Rows.Count - 1; x++) { int counter = 0; for (var y = 0; y <= dtUpload.Rows.Count - 1; y++) { if (dtCheck.Rows[x][0].ToString() == dtUpload.Rows[y][0].ToString()) { counter = counter + 1; if (counter > 1) { duplicateCount = duplicateCount + 1; } } } if (Item_Serial.CheckDuplicate(oCon, dtCheck.Rows[x][0].ToString(), Convert.ToInt32(Session["idItem"].ToString())) == 1) { notInDatabaseCount = notInDatabaseCount + 1; } if (Trans_History.CheckDuplicate(oCon, dtCheck.Rows[x][0].ToString(), Convert.ToInt32(Session["idItem"].ToString()), txtSONumber.Text) == 0) { TransHistDuplicate = TransHistDuplicate + 1; } } if (duplicateCount == 0) { if (notInDatabaseCount == 0) { if (TransHistDuplicate == 0) { string dtName = "Rep" + Session["rowIndex"].ToString() + "-" + Session["Item_Number"].ToString(); Session[dtName] = dtUpload; lblVerify.Text = "Serial numbers verified!"; btnSaveReturn.Visible = true; //HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Serial numbers verified!" + ControlChars.Quote + ");</script>"); } else { lblVerify.Text = "There are " + TransHistDuplicate.ToString() + " serial numbers that is already returned."; //HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "There are " + notInDatabaseCount.ToString() + " serial numbers that is not in the database." + ControlChars.Quote + ");</script>"); } } else { lblVerify.Text = "There are " + notInDatabaseCount.ToString() + " serial numbers that are not included in the specified item number."; //HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "There are " + notInDatabaseCount.ToString() + " serial numbers that is not in the database." + ControlChars.Quote + ");</script>"); } } else { lblVerify.Text = "Duplicate serial numbers detected in file : " + duplicateCount.ToString(); //HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Duplicate serial numbers detected in file : " + duplicateCount.ToString() + ControlChars.Quote + ");</script>"); } }
protected void btnSaveAllReturn_Click(object sender, EventArgs e) { if (ddlReasonCode.SelectedValue.Trim().ToString() == "210" || ddlReasonCode.SelectedValue.Trim().ToString() == "165") { string idSLR = Return_Header.GetLastSLRNumber(oCon); string SLR_Number = ""; if (idSLR == "") { idSLR = "SLR000000"; } idSLR = idSLR.Substring(3); int idSLR_ = int.Parse(idSLR) + 1; SLR_Number = "SLR" + idSLR_.ToString("000000"); string isreplacement = ""; isreplacement = "Y"; Return_Header_Model rhm = new Return_Header_Model { SLR_Number = SLR_Number, SO_Number = txtSONumber.Text, Customer_Code = txtCustomerCode.Text, Auth_Number = txtAuthorizationNumber.Text, isReplacement = isreplacement, Document_Number = txtInvoiceNumber.Text, Site = ddlSite.SelectedValue, Reason_Code = ddlReasonCode.SelectedValue, Date_Returned = DateTime.Parse(txtReturnDate.Text), Remarks = txtSRERemarks.Text }; int ReturnHeaderid = Return_Header.Save(oCon, rhm); DataSet ReturnDataSet = (DataSet)Session["ReturnDataSet"]; foreach (GridViewRow row in grvItemDetails.Rows) { string tablename = "Rep" + row.RowIndex.ToString() + "-" + row.Cells[2].Text; DataTable dtReplacement = ReturnDataSet.Tables[tablename]; string tablename2 = row.RowIndex.ToString() + "-" + row.Cells[2].Text; DataTable dtUpload = ReturnDataSet.Tables[tablename]; if (ReturnHeaderid != 0) { Return_Detail_Model rdm = new Return_Detail_Model { idReturnHeader = ReturnHeaderid, idItem = Convert.ToInt32(row.Cells[0].Text), Returned_Qty = Convert.ToInt32(dtUpload.Rows.Count), Returned_Cost = Convert.ToDecimal(row.Cells[4].Text) }; int returnDetailId = Return_Detail.Save(oCon, rdm); if (returnDetailId != 0) { for (var y = 0; y <= dtUpload.Rows.Count - 1; y++) { Item_Serial.ReturnStock(oCon, Convert.ToInt32(row.Cells[0].Text), dtUpload.Rows[y][0].ToString(), dtReplacement.Rows[y][0].ToString()); Return_Serial_Model rsm = new Return_Serial_Model { idReturnDetail = returnDetailId, Serial_No = dtUpload.Rows[y][0].ToString(), Replacement_Serial = dtReplacement.Rows[y][0].ToString() }; bool saveValue = Return_Serial.Save(oCon, rsm); if (saveValue == true) { Trans_History_Model trans_History_Model = new Trans_History_Model { Trans_Code = "SRE", Item_Number = row.Cells[2].Text, Site = ddlSite.SelectedItem.Text, UM = "UT", Doc_No = SLR_Number, Serial_No = dtUpload.Rows[y][0].ToString(), Reason_Code = ddlReasonCode.SelectedValue.ToString(), Trans_Date = DateTime.Now, Order_No = txtSONumber.Text, Invoice_No = txtInvoiceNumber.Text, Reference_No = txtAuthorizationNumber.Text, Trans_Qty = 1, Trans_Amt = Convert.ToDecimal(row.Cells[4].Text), Remarks = txtSRERemarks.Text, user_domain = Session["User_Domain"].ToString() }; Trans_History.Save(oCon, trans_History_Model); } } } } } Item_Master.InventoryCheckForError(oCon); clearReturns(); Response.Write("<script>window.open('/Forms/DownloadReports/DownloadSalesReturn.aspx?SLR_Number=" + SLR_Number + "','_blank');</script>"); } else if (ddlReasonCode.SelectedValue.Trim().ToString() == "169") { string idSLR = Return_Header.GetLastSLRNumber(oCon); string SLR_Number = ""; if (idSLR == "") { idSLR = "SLR000000"; } idSLR = idSLR.Substring(3); int idSLR_ = int.Parse(idSLR) + 1; SLR_Number = "SLR" + idSLR_.ToString("000000"); string isreplacement = ""; isreplacement = "N"; Return_Header_Model rhm = new Return_Header_Model { SLR_Number = SLR_Number, SO_Number = txtSONumber.Text, Customer_Code = txtCustomerCode.Text, Auth_Number = txtAuthorizationNumber.Text, isReplacement = isreplacement, Document_Number = txtInvoiceNumber.Text, Site = ddlSite.SelectedValue, Reason_Code = ddlReasonCode.SelectedValue, Date_Returned = DateTime.Parse(txtReturnDate.Text), Remarks = txtSRERemarks.Text }; int ReturnHeaderid = Return_Header.Save(oCon, rhm); DataSet ReturnDataSet = (DataSet)Session["ReturnDataSet"]; foreach (GridViewRow row in grvItemDetails.Rows) { string tablename = row.RowIndex.ToString() + "-" + row.Cells[2].Text; DataTable dtUpload = ReturnDataSet.Tables[tablename]; if (ReturnHeaderid != 0) { Return_Detail_Model rdm = new Return_Detail_Model { idReturnHeader = ReturnHeaderid, idItem = Convert.ToInt32(row.Cells[0].Text), Returned_Qty = Convert.ToInt32(dtUpload.Rows.Count), Returned_Cost = Convert.ToDecimal(row.Cells[4].Text) }; int returnDetailId = Return_Detail.Save(oCon, rdm); if (returnDetailId != 0) { for (var y = 0; y <= dtUpload.Rows.Count - 1; y++) { Item_Serial.ReturnStock(oCon, dtUpload.Rows[y][0].ToString(), row.Cells[2].Text); Return_Serial_Model rsm = new Return_Serial_Model { idReturnDetail = returnDetailId, Serial_No = dtUpload.Rows[y][0].ToString(), Replacement_Serial = "" }; bool saveValue = Return_Serial.Save(oCon, rsm); if (saveValue == true) { Trans_History_Model trans_History_Model = new Trans_History_Model { Trans_Code = "SRE", Item_Number = row.Cells[2].Text, Site = ddlSite.SelectedValue.ToString(), UM = "UT", Doc_No = SLR_Number, Serial_No = dtUpload.Rows[y][0].ToString(), Reason_Code = ddlReasonCode.SelectedValue.ToString(), Trans_Date = DateTime.Now, Order_No = txtSONumber.Text, Invoice_No = txtInvoiceNumber.Text, Reference_No = txtAuthorizationNumber.Text, Trans_Qty = 1, Trans_Amt = Convert.ToDecimal(row.Cells[4].Text), Remarks = txtSRERemarks.Text, user_domain = Session["User_Domain"].ToString() }; Trans_History.Save(oCon, trans_History_Model); } } } } } Item_Master.InventoryCheckForError(oCon); clearReturns(); Response.Write("<script>window.open('/Forms/DownloadReports/DownloadSalesReturn.aspx?SLR_Number=" + SLR_Number + "','_blank');</script>"); } else { string idSLR = Return_Header.GetLastSLRNumber(oCon); string SLR_Number = ""; if (idSLR == "") { idSLR = "SLR000000"; } idSLR = idSLR.Substring(3); int idSLR_ = int.Parse(idSLR) + 1; SLR_Number = "SLR" + idSLR_.ToString("000000"); string isreplacement = ""; isreplacement = "N"; Return_Header_Model rhm = new Return_Header_Model { SLR_Number = SLR_Number, SO_Number = txtSONumber.Text, Customer_Code = txtCustomerCode.Text, Auth_Number = txtAuthorizationNumber.Text, isReplacement = isreplacement, Document_Number = txtInvoiceNumber.Text, Site = ddlSite.SelectedValue, Reason_Code = ddlReasonCode.SelectedValue, Date_Returned = DateTime.Parse(txtReturnDate.Text), Remarks = txtSRERemarks.Text }; int ReturnHeaderid = Return_Header.Save(oCon, rhm); DataSet ReturnDataSet = (DataSet)Session["ReturnDataSet"]; foreach (GridViewRow row in grvItemDetails.Rows) { string tablename = row.RowIndex.ToString() + "-" + row.Cells[2].Text; DataTable dtUpload = ReturnDataSet.Tables[tablename]; if (ReturnHeaderid != 0) { Return_Detail_Model rdm = new Return_Detail_Model { idReturnHeader = ReturnHeaderid, idItem = Convert.ToInt32(row.Cells[0].Text), Returned_Qty = Convert.ToInt32(dtUpload.Rows.Count), Returned_Cost = Convert.ToDecimal(row.Cells[4].Text) }; int returnDetailId = Return_Detail.Save(oCon, rdm); if (returnDetailId != 0) { for (var y = 0; y <= dtUpload.Rows.Count - 1; y++) { Item_Serial.ReturnStock(oCon, Convert.ToInt32(row.Cells[0].Text), dtUpload.Rows[y][0].ToString()); Return_Serial_Model rsm = new Return_Serial_Model { idReturnDetail = returnDetailId, Serial_No = dtUpload.Rows[y][0].ToString(), Replacement_Serial = "" }; bool saveValue = Return_Serial.Save(oCon, rsm); if (saveValue == true) { Trans_History_Model trans_History_Model = new Trans_History_Model { Trans_Code = "SRE", Item_Number = row.Cells[2].Text, Site = ddlSite.SelectedValue.ToString(), UM = "UT", Doc_No = SLR_Number, Serial_No = dtUpload.Rows[y][0].ToString(), Reason_Code = ddlReasonCode.SelectedValue.ToString(), Trans_Date = DateTime.Now, Order_No = txtSONumber.Text, Invoice_No = txtInvoiceNumber.Text, Reference_No = txtAuthorizationNumber.Text, Trans_Qty = 1, Trans_Amt = Convert.ToDecimal(row.Cells[4].Text), Remarks = txtSRERemarks.Text, user_domain = Session["User_Domain"].ToString() }; Trans_History.Save(oCon, trans_History_Model); } } } } } Item_Master.InventoryCheckForError(oCon); clearReturns(); Response.Write("<script>window.open('/Forms/DownloadReports/DownloadSalesReturn.aspx?SLR_Number=" + SLR_Number + "','_blank');</script>"); } }
protected void btnSave_Click(object sender, EventArgs e) { MIR_Header_Model MIR_Header_Model = new MIR_Header_Model { RequestNo = txtRequestNo.Text, ReferenceNo = txtRefNo.Text, POCMNumber = txtPOCMNum.Text, PreparedBy = txtPreparedBy.Text, Remarks = txtRemarks.Text, RequestDate = Convert.ToDateTime(txtDate.Text, System.Globalization.CultureInfo.InvariantCulture), Requestor = txtRequestor.Text }; int idMIRheader = MIR_Header.Save(oCon, MIR_Header_Model); DataTable dtTempData = (DataTable)Session["TempData"]; for (int x = 0; x <= dtTempData.Rows.Count - 1; x++) { int idItem = Convert.ToInt32(dtTempData.Rows[x][0].ToString()); string item_number = dtTempData.Rows[x][1].ToString(); int qty = Convert.ToInt32(dtTempData.Rows[x][2].ToString()); decimal cost = Convert.ToDecimal(dtTempData.Rows[x][3].ToString()); MIR_Detail_Model MIR_Detail_Model = new MIR_Detail_Model { idMIRHeader = idMIRheader, Cost = cost, Quantity = qty, idItem = idItem }; int idMIRdetail = MIR_Detail.Save(oCon, MIR_Detail_Model); string dtname = "Ser" + idItem.ToString() + "-" + item_number; var dt = (DataTable)Session[dtname]; for (int y = 0; y <= dt.Rows.Count - 1; y++) { Item_Serial_Model item_Serial_Model = new Item_Serial_Model { idItem = idItem, Serial_No = dt.Rows[y][0].ToString(), InStock = "Y", PO_Number = "", timestamp = DateTime.Now, Unit_Comp = "", Unit_Cost = cost, user_change = Session["User_Domain"].ToString() }; Item_Serial.Save(oCon, item_Serial_Model); int idSerial = Item_Serial.RetrieveIdSerial(oCon, dt.Rows[y][0].ToString()); MIR_Serial_Model MIR_Serial_Model = new MIR_Serial_Model { idMIRDetail = idMIRdetail, idSerial = idSerial }; MIR_Serial.Save(oCon, MIR_Serial_Model); Trans_History_Model trans_History_Model = new Trans_History_Model { Trans_Code = "MIR", Item_Number = item_number, Site = "WH-JMS", UM = "UT", Doc_No = txtRequestNo.Text, Serial_No = dt.Rows[y][0].ToString(), Reason_Code = "", Trans_Date = DateTime.Now, Order_No = "", Invoice_No = "", Reference_No = txtRefNo.Text, Trans_Qty = 1, Trans_Amt = cost, Remarks = txtRemarks.Text, user_domain = Session["User_Domain"].ToString() }; Trans_History.Save(oCon, trans_History_Model); } } Item_Master.InventoryCheckForError(oCon); clearAll(); dvView.Visible = true; dvCreate.Visible = false; HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "MIR Saved!" + ControlChars.Quote + ");</script>"); }
protected void btnAddToTempGv_Click(object sender, EventArgs e) { try { string extension = System.IO.Path.GetExtension(fuUploadSerial.FileName); if (extension == ".csv") { int qty = Convert.ToInt32(txtQuantity.Text); StreamReader SR = new StreamReader(fuUploadSerial.PostedFile.InputStream); string line = SR.ReadLine(); string[] strArray = line.Split(','); DataTable dtUpload = new DataTable(); DataRow rowUpload; DataTable dtCheck = new DataTable(); DataRow rowCheck; dtUpload.Columns.Add(new DataColumn()); dtCheck.Columns.Add(new DataColumn()); DataTable dtForSave = new DataTable(); //dtForSave.Columns.Add("idSerial"); dtForSave.Columns.Add("Serial_No"); try { do { line = SR.ReadLine().Trim(); if (line != string.Empty) { rowUpload = dtUpload.NewRow(); rowCheck = dtCheck.NewRow(); line = line.ToString().Replace(",", "_"); line = line.ToString().Replace("'", ""); line = line.Trim(); rowUpload.ItemArray = line.Split(','); dtUpload.Rows.Add(rowUpload); rowCheck.ItemArray = line.Split(','); dtCheck.Rows.Add(rowCheck); } else { break; } }while (true); } catch { } if (qty == dtUpload.Rows.Count) { int duplicateCount = 0; int notInDatabaseCount = 0; int notInStock = 0; for (var x = 0; x <= dtCheck.Rows.Count - 1; x++) { int counter = 0; for (var y = 0; y <= dtUpload.Rows.Count - 1; y++) { if (dtCheck.Rows[x][0].ToString() == dtUpload.Rows[y][0].ToString()) { counter = counter + 1; if (counter > 1) { duplicateCount = duplicateCount + 1; } } } if (Item_Serial.CheckDuplicate(oCon, dtCheck.Rows[x][0].ToString(), Convert.ToInt32(Session["idItem"].ToString())) == 0) { notInDatabaseCount = notInDatabaseCount + 1; } if (Item_Serial.CheckIfInStock(oCon, dtCheck.Rows[x][0].ToString()) == 0) { notInStock = notInStock + 1; } if (duplicateCount == 0) { if (notInStock == 0) { if (notInDatabaseCount == 0) { //int idSerial = Item_Serial.RetrieveIdSerial(oCon, dtUpload.Rows[x][0].ToString()); DataRow dr = dtForSave.NewRow(); //dr[0] = idSerial; //dr[1] = dtCheck.Rows[x][0].ToString(); dr[0] = dtCheck.Rows[x][0].ToString(); dtForSave.Rows.Add(dr); } } } } if (notInStock == 0) { if (duplicateCount == 0) { if (notInDatabaseCount == 0) { var dt = (DataTable)Session["TempData"]; DataRow dr2 = dt.NewRow(); int iditem = Convert.ToInt32(Session["idItem"].ToString()); dr2[0] = iditem; dr2[1] = txtItemNumber.Text; dr2[2] = txtQuantity.Text; dr2[3] = txtCost.Text; dt.Rows.Add(dr2); Session.Remove("TempData"); Session["TempData"] = dt; gvTempGv.DataSource = dt; gvTempGv.DataBind(); string dtName = "Ser" + Session["idItem"].ToString() + "-" + txtItemNumber.Text; Session[dtName] = dtForSave; clearItemDetails(); dvItemDetails.Visible = false; dvAddNewProduct.Visible = false; } else { HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "There are " + notInDatabaseCount.ToString() + " serial numbers that is not in the database." + ControlChars.Quote + ");</script>"); } } else { HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Duplicate serial numbers detected in file : " + duplicateCount.ToString() + ControlChars.Quote + ");</script>"); } } else { HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Serial Numbers not in stock : " + notInStock.ToString() + ControlChars.Quote + ");</script>"); } } else { HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Uploaded file quantity is not equal to quantity entered! " + ControlChars.Quote + ");</script>"); } } else { HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Please upload a CSV file! " + ControlChars.Quote + ");</script>"); } } catch (Exception ex) { HttpContext.Current.Response.Write("<script>alert(" + ControlChars.Quote + "Please select a file! " + ControlChars.Quote + ");</script>"); } }
protected void gvView_SelectedIndexChanged(object sender, EventArgs e) { Session["WorkMode"] = "View"; dvView.Visible = false; dvCreate.Visible = true; GridViewRow row = gvView.SelectedRow; int idMIRHeader = Convert.ToInt32(row.Cells[0].Text.Trim()); txtRequestNo.Text = row.Cells[1].Text.Trim(); txtRequestor.Text = row.Cells[2].Text.Trim(); txtRefNo.Text = row.Cells[3].Text.Trim(); txtPOCMNum.Text = row.Cells[4].Text.Trim(); txtDate.Text = Convert.ToDateTime(row.Cells[5].Text.Trim()).ToShortDateString(); txtPreparedBy.Text = row.Cells[6].Text.Trim(); txtRemarks.Text = row.Cells[7].Text.Trim(); var source = new DataTable(); source.Columns.Add("idItem"); source.Columns.Add("Item Number"); source.Columns.Add("Qty"); source.Columns.Add("Cost"); var detail = MIR_Detail.RetrieveData(oCon, idMIRHeader, 0); for (int x = 0; x <= detail.Count - 1; x++) { int iditem = detail[x].idItem; var master = Item_Master.RetrieveData(oCon, iditem); string itemnumber = master[0].ItemNumber; DataRow dr = source.NewRow(); dr[0] = iditem; dr[1] = itemnumber; dr[2] = detail[x].Quantity; dr[3] = detail[x].Cost; source.Rows.Add(dr); var serial = MIR_Serial.RetrieveData(oCon, detail[x].idMIRDetail, 0); var serialList = new DataTable(); serialList.Columns.Add("Serial Number"); for (int y = 0; y <= serial.Count - 1; y++) { var dtSerial = Item_Serial.RetrieveData(oCon, serial[y].idSerial); DataRow dr2 = serialList.NewRow(); dr2[0] = dtSerial[0].Serial_No; serialList.Rows.Add(dr2); } string dtName = "Ser" + iditem + "-" + itemnumber; Session[dtName] = serialList; } gvTempGv.DataSource = source; gvTempGv.DataBind(); btnSave.Visible = false; btnCancel.Visible = false; btnAddItemModal.Visible = false; }