Exemplo n.º 1
0
        /// <summary>
        /// Click event for the Dispense button in the Dispense tab.
        /// Dispenses the items corresponding to each SKU in the listbox.
        /// </summary>
        private void btn_D_Dispense_Click(object sender, EventArgs e)
        {
            SpecsRecord sr     = new SpecsRecord();
            int         tdskus = 0;

            foreach (DataRow dr in dispenseTable.Rows)
            {
                //Assemble the record
                sr.SKU           = Convert.ToUInt16(dr[0]);
                sr.SphereOD      = Convert.ToSingle(dr[1]);
                sr.CylOD         = Convert.ToSingle(dr[2]);
                sr.AxisOD        = Convert.ToInt16(dr[3]);
                sr.AddOD         = Convert.ToSingle(dr[4]);
                sr.SphereOS      = Convert.ToSingle(dr[5]);
                sr.CylOS         = Convert.ToSingle(dr[6]);
                sr.AxisOS        = Convert.ToInt16(dr[7]);
                sr.AddOS         = Convert.ToSingle(dr[8]);
                sr.Type          = dr[9].ToString();
                sr.Gender        = dr[10].ToString();
                sr.Size          = dr[11].ToString();
                sr.Tint          = dr[12].ToString();
                sr.DateAdded     = dr[13].ToString();
                sr.DateDispensed = (DateTime.Today).ToString();
                sr.Comment       = dr[14].ToString();

                tdskus++;
                Mydb.Dispense(sr, true);  //Dispense the record
            }

            if (tdskus > 0)
            {
                //Clean up the controls and the form.
                dispenseTable.Clear();
                lbox_D_ToDispense.Items.Clear();
                tb_D_SphereOD.Clear();
                tb_D_CylOD.Clear();
                tb_D_AxisOD.Clear();
                tb_D_AddOD.Clear();
                tb_D_SphereOS.Clear();
                tb_D_CylOS.Clear();
                tb_D_AxisOS.Clear();
                tb_D_AddOS.Clear();
                tb_D_Comment.Clear();
                rb_D_NoTint.Checked    = true;
                rb_D_LightTint.Checked = false;
                rb_D_DarkTint.Checked  = false;
                rb_D_Small.Checked     = true;
                rb_D_Medium.Checked    = false;
                rb_D_Large.Checked     = false;
                rb_D_Unisex.Checked    = true;
                rb_D_Male.Checked      = false;
                rb_D_Female.Checked    = false;
                rb_D_Single.Checked    = true;
                rb_D_Multi.Checked     = false;
                tb_D_EnterSKU.Clear();
                tb_D_EnterSKU.Focus();

                //Reload the inventory display
                Mydb.GetCurrentInventory();
                dt_V_DispensedTable.Clear();
                Mydb.GetTable(dt_V_DispensedTable, SSTable.Dispensed);

                if (tdskus > 1)
                {
                    MessageBox.Show(String.Format("Successfully dispensed {0} pairs of glasses.", tdskus),
                                    "Dispense Successful", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                }
                else
                {
                    MessageBox.Show("Successfully dispensed 1 pair of glasses.",
                                    "Dispense Successful", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                }

                IncrementOps(tdskus); //Increment ops by the number of records dispensed, if the appropriate prefs are set
            }
            else
            {
                MessageBox.Show("No glasses were dispensed; no SKUs were specified.",
                                "Dispense Unsuccessful", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }