コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }