Solved

C# code

Posted on 2014-04-11
10
325 Views
Last Modified: 2014-04-11
Hi guys ,

I wrote some button code to updating data column.

Actually, what I'm trying to do is when I click the Button update it will copy over what I selected in the select status dropbox to the textbox Current status then update the column.

here is my code and also I attached screenshot.

//update button updating statu send email
        private void button1_Click(object sender, EventArgs e)
        {

            string conn = "Data Source=srv-db-02;Initial Catalog=rmsmasterdbtest;Persist Security Info=True;User ID=test;Password=masterB4";
            string Query = "update rmsmasterdbtest.dbo.serial set serialnumber='" + this.txtsn.Text + "' ,serialnumber3='" + this.txtstatus.Text + "' where serialnumber='" + this.txtsn.Text + "' ;";

            
            SqlConnection Myconn = new SqlConnection(conn);
            SqlCommand cmd = new SqlCommand(Query, Myconn);
            SqlDataReader Reader;

            try
            {
                if (combStatus.SelectedIndex == 0)
                {
                    txtstatus.Text = "OK";
                }
                if (combStatus.SelectedIndex == 1)
                {
                    txtstatus.Text = "Damaged";
                }
                if (combStatus.SelectedIndex == 2)
                {
                    txtstatus.Text = "Repair in Progress";
                }
                if (combStatus.SelectedIndex == 3)
                {
                    txtstatus.Text = "Repaired";
                }
                if (combStatus.SelectedIndex == 4)
                {
                    txtstatus.Text = "Loaner";
                }

                combStatus.Items.Add(txtstatus.Text);



                try
                {
                    Myconn.Open();
                    Reader = cmd.ExecuteReader();
                    MessageBox.Show("Updated Status");



                    while (Reader.Read())
                    {

                    }




                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                Myconn.Close();
            }

Open in new window

Capture.JPG
0
Comment
Question by:Moti Mashiah
  • 5
  • 4
10 Comments
 
LVL 18

Expert Comment

by:Jerry Miller
ID: 39994655
Are you getting error messages or is it not updating the data?

The one thing that I see is that you should test the textbox values (this.txtsn.Text  for example) to make sure that they have a value before sending them in a query.
0
 
LVL 1

Author Comment

by:Moti Mashiah
ID: 39994731
I don't get any error message I just have to click twice on the update button to get it update in the database. the first click don't update the database.

 string conn = "Data Source=srv-db-02;Initial Catalog=rmsmasterdbtest;Persist Security Info=True;User ID=test;Password=masterB4";
            string Query = "update rmsmasterdbtest.dbo.serial set serialnumber='" + this.txtsn.Text + "' ,serialnumber3='" + this.txtstatus.Text + "' where serialnumber='" + this.txtsn.Text + "' ;";

            
            SqlConnection Myconn = new SqlConnection(conn);
            SqlCommand cmd = new SqlCommand(Query, Myconn);
            SqlDataReader Reader;

           
                if (combStatus.SelectedIndex == 0)
                {
                    txtstatus.Text = "OK";
                }
                if (combStatus.SelectedIndex == 1)
                {
                    txtstatus.Text = "Damaged";
                }
                if (combStatus.SelectedIndex == 2)
                {
                    txtstatus.Text = "Repair in Progress";
                }
                if (combStatus.SelectedIndex == 3)
                {
                    txtstatus.Text = "Repaired";
                }
                if (combStatus.SelectedIndex == 4)
                {
                    txtstatus.Text = "Loaner";
                }

                combStatus.Items.Add(this.txtstatus.Text);



                try
                {
                    Myconn.Open();
                    Reader = cmd.ExecuteReader();
                    MessageBox.Show("Updated Status");

Open in new window

0
 
LVL 15

Expert Comment

by:jorge_toriz
ID: 39994956
Can you try with this one?
//update button updating statu send email
        private void button1_Click(object sender, EventArgs e)
        {

            string conn = "Data Source=srv-db-02;Initial Catalog=rmsmasterdbtest;Persist Security Info=True;User ID=test;Password=masterB4";

            SqlConnection Myconn = new SqlConnection(conn);

            
            try
            {
                if (combStatus.SelectedIndex == 0)
                {
                    txtstatus.Text = "OK";
                }
                if (combStatus.SelectedIndex == 1)
                {
                    txtstatus.Text = "Damaged";
                }
                if (combStatus.SelectedIndex == 2)
                {
                    txtstatus.Text = "Repair in Progress";
                }
                if (combStatus.SelectedIndex == 3)
                {
                    txtstatus.Text = "Repaired";
                }
                if (combStatus.SelectedIndex == 4)
                {
                    txtstatus.Text = "Loaner";
                }

                combStatus.Items.Add(txtstatus.Text);



                try
                {
                    string Query = "update rmsmasterdbtest.dbo.serial set serialnumber='" + this.txtsn.Text + "' ,serialnumber3='" + this.txtstatus.Text + "' where serialnumber='" + this.txtsn.Text + "' ;";
                    SqlCommand cmd = new SqlCommand(Query, Myconn);
                    SqlDataReader Reader;


                    Myconn.Open();
                    Reader = cmd.ExecuteReader();
                    MessageBox.Show("Updated Status");



                    while (Reader.Read())
                    {

                    }




                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                Myconn.Close();
            }

Open in new window

0
Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

 
LVL 1

Author Comment

by:Moti Mashiah
ID: 39995180
After I wrote your code it asking me for catch " expected catch or finally"
0
 
LVL 15

Accepted Solution

by:
jorge_toriz earned 500 total points
ID: 39995205
Ups, sorry, I wrote the code on Notepad and I didn't notice that, here is the fixed code:
//update button updating statu send email
        private void button1_Click(object sender, EventArgs e)
        {

            string conn = "Data Source=srv-db-02;Initial Catalog=rmsmasterdbtest;Persist Security Info=True;User ID=test;Password=masterB4";

            SqlConnection Myconn = new SqlConnection(conn);

            
            try
            {
                if (combStatus.SelectedIndex == 0)
                {
                    txtstatus.Text = "OK";
                }
                if (combStatus.SelectedIndex == 1)
                {
                    txtstatus.Text = "Damaged";
                }
                if (combStatus.SelectedIndex == 2)
                {
                    txtstatus.Text = "Repair in Progress";
                }
                if (combStatus.SelectedIndex == 3)
                {
                    txtstatus.Text = "Repaired";
                }
                if (combStatus.SelectedIndex == 4)
                {
                    txtstatus.Text = "Loaner";
                }

                combStatus.Items.Add(txtstatus.Text);



                try
                {
                    string Query = "update rmsmasterdbtest.dbo.serial set serialnumber='" + this.txtsn.Text + "' ,serialnumber3='" + this.txtstatus.Text + "' where serialnumber='" + this.txtsn.Text + "' ;";
                    SqlCommand cmd = new SqlCommand(Query, Myconn);
                    SqlDataReader Reader;


                    Myconn.Open();
                    Reader = cmd.ExecuteReader();
                    MessageBox.Show("Updated Status");



                    while (Reader.Read())
                    {

                    }




                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                Myconn.Close();
            } 

Open in new window

0
 
LVL 1

Author Comment

by:Moti Mashiah
ID: 39995234
Thank you very much now it works.

I have another small issue when I select some message from the dropbox and and click update it is update the database and duplicating the combobox item
0
 
LVL 15

Expert Comment

by:jorge_toriz
ID: 39995283
Are you working on a windows application or web application?

I need to know it because the ComboBox is different from DropDownList.
0
 
LVL 1

Author Comment

by:Moti Mashiah
ID: 39995293
windows form application
0
 
LVL 15

Assisted Solution

by:jorge_toriz
jorge_toriz earned 500 total points
ID: 39995438
Instead of:
combStatus.Items.Add(txtstatus.Text);

Open in new window


Put:
if (combStatus.Items.IndexOf(txtstatus.Text) == -1)
    combStatus.Items.Add(txtstatus.Text);

Open in new window

0
 
LVL 1

Author Closing Comment

by:Moti Mashiah
ID: 39995462
Great help solved my problem
0

Featured Post

Problems using Powershell and Active Directory?

Managing Active Directory does not always have to be complicated.  If you are spending more time trying instead of doing, then it's time to look at something else. For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Entity Framework is a powerful tool to help you interact with the DataBase but still doesn't help much when we have a Stored Procedure that returns more than one resultset. The solution takes some of out-of-the-box thinking; read on!
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
Established in 1997, Technology Architects has become one of the most reputable technology solutions companies in the country. TA have been providing businesses with cost effective state-of-the-art solutions and unparalleled service that is designed…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

825 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question