|
Bye the way. Can I ask if my photo can be seen? I don't know if it saved properly.
|
|
|
|
|
oh my god don't I feel stupid.
I'll give it a try. Thanks
|
|
|
|
|
Okay I apologise for pasting so much info but I've done as you said. My code looks like this, but I get the null error which I've shown you at the bottom.
If you can help, I'll vote you high for every message you've sent to me today. I notice that I got this same error when I was using my normal insert statement. what am I doing wrong you think?
SqlCommand sqlC = new SqlCommand("sp_InsertEmployee", myConnection);
sqlC.CommandType = CommandType.StoredProcedure;
sqlC.Parameters.Add(new SqlParameter("@Firstname", SqlDbType.VarChar, 0, "Firstname"));
sqlC.Parameters.Add(new SqlParameter("@Lastname", SqlDbType.VarChar, 50, "Lastname"));
sqlC.Parameters.Add(new SqlParameter("@Role", SqlDbType.VarChar, 0, "Role"));
sqlC.Parameters.Add(new SqlParameter("@Manager", SqlDbType.VarChar, 50, "Manager"));
sqlC.Parameters.Add(new SqlParameter("@Division", SqlDbType.VarChar, 0, "Division"));
//sqlC.Parameters[0].Value = 4;
sqlC.Parameters[0].Value = FirsttextBox.Text.ToString();
sqlC.Parameters[1].Value = LasttextBox.Text.ToString();
sqlC.Parameters[2].Value = RolecomboBox1.Text.ToString();
sqlC.Parameters[3].Value = ManagercomboBox1.Text.ToString();
sqlC.Parameters[4].Value = DivisioncomboBox1.Text.ToString();
int i = sqlC.ExecuteNonQuery();
Error::::Cannot insert the value NULL into column 'RoleID', table 'Dev_RST.dbo.employees'; column does not allow nulls. INSERT fails.
The statement has been terminated.
|
|
|
|
|
Okay it works only slightly but what I notice from this is that the firstname and lastname are update in employees but I've noticed also that I just want the ID's corresponding to that name to be updated also in the employee table istead of saving new entries into the other tables. For example there are now multiple roles called developer, or graduate just with different ID's when what I actually need to do is just update the employee table with the new person and the ID that corresponds to their selected role.
Thanks and sorry for being a pain.
|
|
|
|
|
In reponse to Michael & Vikram, yes, you should be using transactions on multiple statements. The example I provided to you was based on your original post. If your intentions are not alwasy to insert records, then you will need to modify the stored procedure to check for the Roles, Managers, etc. If found then update your employee table. You will need to know SQL. If you are using a Listbox or Combobox, you can also save the PK in the control collection and just pass that to your stored procedure. There are many ways to kill this bird, it just depends on your requirements.
|
|
|
|
|
Okay but what about my last question. how do I update the employee table wiht the ID corresponding the combobox selection.
EG. Employee table has empID, RoleID, DivisioID etc. But then I have a Role table with roleid description and role, and division table with divisionid, division etc.
When a user enters a new employee name, and selects role for example, the employee table should update with a new name and put the correct roleID against the role.
Obviously I'm not good with sql at all.
|
|
|
|
|
I've also been advised that I can do this by creating multiple insert statements in the same block. Is this possible?
If so how?
string sql =
sql =
sql=
etc etc?????? Is this how you would do it? To me it would insert the data but it won't be related to each other. EG. I need to update the division, manager, role table when I insert a new employee.
|
|
|
|
|
Hi!
I am trying to create an XML Element that has XML attribute and appened it to and existing XML document.
how do i do this?
Do the prosedure is:
1)create attributes (2 - 3).
2) create Element and attach the attributes? (How?)
3) append to an Element list? Or XMLDoc? (How)
Thanks
|
|
|
|
|
|
1)
XmlAttribute myAttrib = new XmlAttribute();
myAttrib.Value = "Some value";
2) on then XmlDocument you opened (I'm going to use xmlDoc as an example)
XmlNode myNode = xmlDoc.CreateElement("tagname");
myNode.AppendChild(xmlDoc.CreateTextElement("The tag's text node Value"));
3) use the .AppendChild() as above to attach to the Document node
xmlDoc.DocumentElement.AppendChild(myNode);
*note* you need to use .Save() to well save the changes/appends
-Spacix
All your skynet questions[^] belong to solved
|
|
|
|
|
How do i attch the attribute to the new node?
is it before i append it?
Thanks
|
|
|
|
|
look at the .Attributes.Append() method for a XmlNode...
|
|
|
|
|
hi all , how you doing ??
I need to create about 50 button every one had an image ..
my Question is how I can determine which button I pressed ?!
please give me a hint ....
and here is my code .....
private void CreateButtons()<br />
{<br />
for (int x =0 ; x < 10 ; x++)<br />
{<br />
bs = new Button();<br />
bs.ImageList = imageList1;<br />
bs.ImageIndex = x;<br />
bs.Size = new Size(17,17);<br />
bs.Location = new Point(x * 17 , 0);<br />
bs.Visible = true;<br />
bs.Click += new EventHandler(bs_Click);<br />
Controls.Add (bs);<br />
}<br />
}<br />
<br />
private void bs_Click(object sender, System.EventArgs e)<br />
{<br />
Console.WriteLine ("Which Button I pressed");<br />
<br />
}
I know nothing , I know nothing
|
|
|
|
|
build the buttons into an array of buttons?
I think you can do this...
Button[] bs = new Button[10];
for (int x = 0; x < 10; x++)
{
bs[x] = new Button();
bs[i].ImageList = imageList1;
bs[x].ImageIndex = x;
bs[x].Size = new Size(17, 17);
bs[x].Location = new Point(x * 17, 0);
bs[x].Visible = true;
bs[x].Click += new EventHandler(bs_Click);
Controls.Add (bs);
}
private void bs_Click(object sender, System.EventArgs e)
{
Console.WriteLine ("The Button I pressed is {0}", sender.ToString().Split(',')[0].Split('.')[4]);
}
edit: to draw 50 in 5 rows of 10 stagger the array
Button[] bs = new Button[50];
for (int y = 0; y < 5; y++)
{
for (int x = 0; x < 10; x++)
{
bs[x] = new Button();
bs[i].ImageList = imageList1;
bs[x].ImageIndex = x;
bs[x].Size = new Size(17, 17);
bs[x].Location = new Point(x * 17, y * 17);
bs[x].Visible = true;
bs[x].Click += new EventHandler(bs_Click);
Controls.Add(bs);
}
}
-- modified at 17:54 Wednesday 29th August, 2007
|
|
|
|
|
thank you so much
this is exactly what i need ,
you solve a big prb ,
I know nothing , I know nothing
|
|
|
|
|
The sender object passed to the event handler is a reference to the button.
|
|
|
|
|
I tend to put a value (perhaps an int) in the Button's Tag property, then check the sender's Tag.
|
|
|
|
|
If you have "about 50 buttons" on your form, then it is a very poorly designed application. It will suffer from performance issues and more.
only two letters away from being an asset
|
|
|
|
|
thank all of you for your replay
I appreciated it ...
thanks.......
dear Mark , first thanks for advice
second the 50 button I am using in my form will be use to change Icon of Treeview Node
I mean every button has an icon or an image with dimension ( 17 , 17 )
when I click one , the Treenode item must had that button icon ...
plus my form size is 170 * 250 contains those tiny button ,
but Dear SpacixOne give me a good solution
have a good day ,
Kind regards
I know nothing , I know nothing
|
|
|
|
|
Besides the poor UI and performance, you're making the coding and maintenance much more difficult.
What happens, sometime in the future, if you remove one of the icons, or want to add more? You're left with redesigning your form to accommodate.
Have you thought about using a dropdownlist, or list view to display and select these icons? You would have one button worry about, and an easy way to maintain and enhance the application.
only two letters away from being an asset
|
|
|
|
|
hai, I have question since there were many article implementing low-level hooking in C#.
i couldn't manage to find how to determine when we click the middle button or double-clicked the mouse using low-level mouse hook.
is there any way / method to do that?
i'm using unmanaged c++ dll wrapper (WilsonGlobalHook) from this site.
thx
|
|
|
|
|
|
thankz for the answer,
but I have look throughout that article before, and those article/project only cover the "left" and "right" clicks button.
any way to determine "middle" clicks?
low-level hooking problem maybe?
|
|
|
|
|
Got it,
I'm sorry before...
the class I used only handle WM_LBUTTONDOWN / WMLBUTTONUP and WM_RBUTTONDOWN / WMRBUTTONUP..
so just modify the class a little bit and add WM_MBUTTONDOWN / MBUTTONUP and maybe the double click handler to modify it.
yeah..
thankz a lot..
|
|
|
|
|
Hi,
I am currently returning an XmlDocument from a webservice using the following:
<br />
[OperationContract]<br />
[FaultContract(typeof(Anaqua.Domain.AnaquaServiceError))]<br />
[XmlSerializerFormat]<br />
public XmlDocument GetLawUpdateGenerationXML(short versionNum)<br />
{<br />
}<br />
Then in my page that consumes the webservice I did the following:
<br />
XmlDocument doc = (XmlDocument)svc.GetLawUpdateGenerationXML(internalVersionNumber);<br />
However it is saying:
Cannot convert type 'System.Xml.XmlElement' to 'System.Xml.XmlDocument'
Now I think this is because of the serialization using[XmlSerializerFormat]
So how would I go about reading the XML into and XML Document?
Regards
Paul Custance
|
|
|
|