private bool CreateAdjustment(AdjustmentActionTypes adjActionTypes, int stageId, int productId) { sol_Stage = sol_Stage_Sp.Select(stageId); if (sol_Stage == null) { MessageBox.Show(String.Format("StageID not found ({0}) ", stageId)); return(false); } DateTime dt = sol_Stage.Date; if (checkBoxDate.Checked) { dt = Main.rc.FechaActual; } Sol_Stage sol_StageAdjustment = new Sol_Stage(); sol_StageAdjustment.ShipmentID = sol_ShipmentAdjustment.ShipmentID; sol_StageAdjustment.UserID = sol_Stage.UserID; sol_StageAdjustment.UserName = sol_Stage.UserName; //sol_StageAdjustment.Date = dt; sol_StageAdjustment.Date = Main.rc.FechaActual; // ; // Properties.Settings.Default.FechaActual;; sol_StageAdjustment.TagNumber = sol_Stage.TagNumber + "A"; sol_StageAdjustment.ContainerID = sol_Stage.ContainerID; sol_StageAdjustment.ContainerDescription = sol_Stage.ContainerDescription; sol_StageAdjustment.ProductID = sol_Stage.ProductID; sol_StageAdjustment.ProductName = sol_Stage.ProductName; sol_StageAdjustment.Dozen = 0; //not used anymore sol_Stage.Dozen * -1; sol_StageAdjustment.Quantity = sol_Stage.Quantity * -1; sol_StageAdjustment.Price = sol_Stage.Price; sol_StageAdjustment.Remarks = sol_Stage.Remarks; sol_StageAdjustment.Status = sol_Stage.Status; //in case there is no default value in the db sol_StageAdjustment.DateClosed = DateTime.Parse("1753-01-01 12:00:00.000"); switch (adjActionTypes) { case AdjustmentActionTypes.Return: //remove it //sol_StageAdjustment.TagNumber = sol_Stage.TagNumber; sol_StageAdjustment.Dozen = sol_Stage.Dozen * -1; sol_StageAdjustment.Quantity = sol_Stage.Quantity * -1; //sol_StageAdjustment.Status = sol_Stage.Status; sol_Stage_Sp.Insert(sol_StageAdjustment); //add an adjustment to return to inventory sol_StageAdjustment.ShipmentID = 0; sol_StageAdjustment.TagNumber = textBoxNewTagNumber.Text; //sol_Stage.TagNumber sol_StageAdjustment.Dozen = 0; //not used anymore sol_Stage.Dozen; sol_StageAdjustment.Quantity = sol_Stage.Quantity; sol_StageAdjustment.Status = "I"; //sol_Stage.Status; sol_Stage_Sp.Insert(sol_StageAdjustment); ////remove it from shipment //sol_Stage.ShipmentID = 0; //sol_Stage.TagNumber = textBoxNewTagNumber.Text; //sol_Stage.Status = "I"; //sol_Stage_Sp.Update(sol_Stage); MessageBox.Show( string.Format( @"Tag Number {0} has been added to inventory. Note: This tag is in inventory and is no longer linked to the previous shipment. Therefore, the new tag will not be removed if you delete the adjustment." , textBoxNewTagNumber.Text )); return(true); //break; case AdjustmentActionTypes.Remove: break; //case AdjustmentActionTypes.Add: // break; case AdjustmentActionTypes.Adjust: //create reverse adjustment to remove original quantity sol_Stage_Sp.Insert(sol_StageAdjustment); //create adjustment with new product if (productId > 0) { if (sol_Product_Sp == null) { sol_Product_Sp = new Sol_Product_Sp(Properties.Settings.Default.WsirDbConnectionString); } sol_Product = sol_Product_Sp.Select(productId); sol_StageAdjustment.ProductID = productId; sol_StageAdjustment.ProductName = sol_Product.ProName; //sol_StageAdjustment.Dozen = sol_Stage.Dozen; //sol_StageAdjustment.Quantity = sol_Stage.Quantity; } int newQuantity = 0; int.TryParse(textBoxNewQuantity.Text, out newQuantity); sol_StageAdjustment.Quantity = newQuantity; sol_StageAdjustment.Dozen = 0; //not used anymore newQuantityOfDozens; break; //case AdjustmentActionTypes.Change: // //create reverse adjustment to remove original product // sol_Stage_Sp.Insert(sol_StageAdjustment); // //create adjustment with new product // if (sol_Product_Sp == null) // sol_Product_Sp = new Sol_Product_Sp(Properties.Settings.Default.WsirDbConnectionString); // sol_Product = sol_Product_Sp.Select(productId); // sol_StageAdjustment.ProductID = productId; // sol_StageAdjustment.ProductName = sol_Product.ProName; // sol_StageAdjustment.Dozen = sol_Stage.Dozen; // sol_StageAdjustment.Quantity = sol_Stage.Quantity; // break; //case AdjustmentActionTypes.Delete: // break; default: break; } sol_Stage_Sp.Insert(sol_StageAdjustment); return(true); }
private bool AddStagedRow() { //if(osi == null) // osi = new SirLib.ObtenerSiguienteId(Properties.Settings.Default.WsirDbConnectionString); sol_Stage = new Sol_Stage(); if (sol_Agency != null && sol_Agency.AutoGenerateTagNumber ) { AutoGenerateTagNumber(); sol_Stage.TagNumber = textBoxTagNumber.Text; } //sol_Stage.StageID = osi.Id("Sol_Stage", "StageId", null, null); if (membershipUser == null) { membershipUser = Membership.GetUser(Properties.Settings.Default.UsuarioNombre); } if (membershipUser == null) { MessageBox.Show("User does not exits, cannot close the Container"); return(false); } sol_Stage.UserID = (Guid)membershipUser.ProviderUserKey; sol_Stage.UserName = Properties.Settings.Default.UsuarioNombre; sol_Stage.Date = Main.rc.FechaActual; // ; // Properties.Settings.Default.FechaActual;; sol_Stage.Status = "I"; //InProcess //sol_Stage.TagNumber = osi.Id("Sol_Stage", "Cast(TagNumber as int)", null, null).ToString(); //in case there is no default value in the db sol_Stage.DateClosed = DateTime.Parse("1753-01-01 12:00:00.000"); try { sol_Stage_Sp.Insert(sol_Stage); } catch { //try once more if (sol_Agency != null && sol_Agency.AutoGenerateTagNumber ) { AutoGenerateTagNumber(); } try { sol_Stage_Sp.Insert(sol_Stage); } catch (Exception e) { CajaDeMensaje.Show("SqlError", "Error trying to add a new Staged Container row, try again later please", e.Message, CajaDeMensajeImagen.Error); sol_Stage = null; return(false); } } return(true); }