Home C#.net Milk Inventory System C#.net with Print Receipt

Milk Inventory System C#.net with Print Receipt

8 min read
0
0
1,708

The Milk Inventory Management System is developed using c#.net and sqlserver. The project is built to manage sales and transactions. To make a new transaction, fields such as: Milk type, qty,price and payment needs to be selected. If you like to learn point of sales systems step by step, this is the right place to learn from the beginning. In this tutorial, we will learn crystal reports step by step and design and  print receipts for the payments.

Learn how to make this System Step by step

Step1 : Create the database named with “milk “ on Sqlserver.establish the database connection

SqlConnection con = new SqlConnection("Data Source=.; Initial Catalog=millk; User ID=sa; password=admin123;");

The system shall be able to select the relevant milk type.

Add the Product details into the DataGridView

After selected milk type where the user has the option to add the qty by clicking the add button to see all products details which will be shown in the below table.

Paste this code inside the add button

 private void button1_Click(object sender, EventArgs e)
        {
            string name;
            int price = 0;
            int qty;
            int tot = 0;
            if(chk1.Checked)
            {
                name = "Strawberry Milk";
                qty = int.Parse(stwqty.Value.ToString());
                price = 100;
                tot = qty * price;
                this.dataGridView1.Rows.Add(name, price,qty,tot);
            }
            if (chk2.Checked)
            {
                name = "Mango Milk";
                qty = int.Parse(manqty.Value.ToString());
                price = 80;
                tot = qty * price;
                this.dataGridView1.Rows.Add(name, price, qty, tot);
            }

            if (chk3.Checked)
            {
                name = "Vanilla Milk";
                qty = int.Parse(vanqty.Value.ToString());
                price = 50;
                tot = qty * price;
                this.dataGridView1.Rows.Add(name, price, qty, tot);
            }
            
            if (chk4.Checked)
            {
                name = "Chocolate Milk";
                qty = int.Parse(choqty.Value.ToString());
                price = 150;
                tot = qty * price;
                this.dataGridView1.Rows.Add(name, price, qty, tot);

            }

            if (chk5.Checked)
            {
                name = "Coffee Milk";
                qty = int.Parse(cofqty.Value.ToString());
                price = 70;
                tot = qty * price;
                this.dataGridView1.Rows.Add(name, price, qty, tot);

            }

            int sum = 0;
            for(int row= 0; row< dataGridView1.Rows.Count; row++)
            {
                sum = sum + Convert.ToInt32(dataGridView1.Rows[row].Cells[3].Value);
            }

            txttot.Text = sum.ToString();

        }

Calculating the Total and balance

Remove items

if you want remove items from the datagridview. select the row of table which item need to be remove. then click delete button in the datagridview.

 private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if(e.ColumnIndex == dataGridView1.Columns["delete"].Index && e.RowIndex >= 0)
            {
                dataGridView1.Rows.Remove(dataGridView1.Rows[e.RowIndex]);

                int sum = 0;
                for (int row = 0; row < dataGridView1.Rows.Count; row++)
                {
                    sum = sum + Convert.ToInt32(dataGridView1.Rows[row].Cells[3].Value);
                }

                txttot.Text = sum.ToString();


            }
        }

After that  create the method Salessave().we have to create two different tables to store data into the database. we also have to create the following tables from database..
sales tables consist of following colums – id,subtotal,pay,balance.
sales_products tables consist of following colums –id,sales_id,prodname,price,qty,total

 public void salessave()
        {
            string tot = txttot.Text;
            string pay = txtpay.Text;
            string bal = txtbal.Text;
            string sql1;
            string sql2;

            sql1 = "insert into sales(subtotal,pay,balance)values(@subtotal,@pay,@balance) select @@identity; ";
            con.Open();
            cmd1 = new SqlCommand(sql1,con);
            cmd1.Parameters.AddWithValue("@subtotal", tot);
            cmd1.Parameters.AddWithValue("@pay", pay);
            cmd1.Parameters.AddWithValue("@balance", bal);
            int lastinserid = int.Parse(cmd1.ExecuteScalar().ToString());

            string prodname;
            int price = 0;
            int qty = 0;
            int total = 0;

            for(int row=0; row<dataGridView1.Rows.Count; row++)
            {
                prodname = dataGridView1.Rows[row].Cells[0].Value.ToString();
                price = int.Parse(dataGridView1.Rows[row].Cells[1].Value.ToString());
                qty = int.Parse(dataGridView1.Rows[row].Cells[2].Value.ToString());
                total = int.Parse(dataGridView1.Rows[row].Cells[3].Value.ToString());
                sql2 = "insert into sales_product(sales_id,prodname,price,qty,total)values(@sales_id,@prodname,@price,@qty,@total)";
                cmd2 = new SqlCommand(sql2, con);
                cmd2.Parameters.AddWithValue("@sales_id", lastinserid);
                cmd2.Parameters.AddWithValue("@prodname", prodname);
                cmd2.Parameters.AddWithValue("@price", price);
                cmd2.Parameters.AddWithValue("@qty", qty);
                cmd2.Parameters.AddWithValue("@total", total);
                cmd2.ExecuteNonQuery();
            }

            print p = new print();
            p.SalesID = lastinserid;
            p.Show();
            con.Close();
        }

Call the Salessave() method inside the Print Invoice button. after calculating the total Print receipt will be released. This print receipt is design by crystal reports.

Paste this code inside the Print Invoice button

 private void button2_Click(object sender, EventArgs e)
        {

            int pay = int.Parse(txtpay.Text);
            int total = int.Parse(txttot.Text);
            int bal = pay - total;
            txtbal.Text = bal.ToString();
            salessave();

        }

Print Receipt

i have attached the video link below. which will do this tutorials step by step.

Load More Related Articles
Load More By admin
Load More In C#.net

Leave a Reply

Your email address will not be published. Required fields are marked *

Check Also

Laravel 11 CRUD Mastering RESTful API MVC with Repository Pattern

In this tutorial will teach Laravel 11 Api MVC with Repository Pattern Crud Application st…