Friday, August 9, 2013

prepopulated data from database on a web form textbox - On Editing the value is not captured back to database

prepopulated data from database on a web form textbox - On Editing the
value is not captured back to database

I have a web form , which does the following.
on Page init i have a dropdown that gets populated. this part works fine
and its enclosed in if(!ISPostBack) {} routine. This part works fine.
Now when i select a value from dropdownlist, then all of my text box
fields are populated with values from database, with field grayedout from
editing. This happens with in a if(IsPostBack) {} which is also fine.
I have a check box, upon clicking the check box, all of the textbox fields
are now available for editing. This also happens within a if (IsPostBack)
{} for renabling all of the textbox fields in the routine
protected void performUpdate_CheckedChanged(object sender, EventArgs e) {
if (performUpdate.Checked) { performDeactivate.Enabled = false;
txtFirstName.Enabled = true;
txtLastName.Enabled = true;
txtContactNumber.Enabled = true; } // just enabling all of the
textbox fields donot worry about closing brackets.
Now coming to the problem, when I change the text on the textbox and click
submit - which has a routine to update the database, Database is not
updated. It's as though i submitted the exact same values. Except the
updatedate field is timestamped with current time.
Here is my submit button code..
if (IsPostBack)
{
using (SqlConnection myConnection = new
SqlConnection(ConfigurationManager.ConnectionStrings["3stepMacro"].ToString()))
{
bldSQL = "UPDATE dbo.LoanOwnerStamp SET FirstName
=@FirstName,LastName = @LastName,ContactNumber =
@ContactNumber,ContactExt= @ContactExt ,EmailAddress=
@EmailAddress,Fax= @Fax, LocationCity= @LocationCity,
LocationState = @LocationState,BeginWorkHrs=
@BeginWorkHrs,BeginWorkTime = @BeginWorkTime,EndWorkHrs=
@EndWorkHrs,EndWorkTime= @EndWorkTime,Zone=
@Zone,TeamMemberLanId= @TeamMemberLanId,ManagerId=
@ManagerId ,UpdatedDate= @UpdateDate WHERE TeamMemberLanId
= @TeamMemberLanId";
// using (SqlCommand updatetLSTeamMember = new
SqlCommand("sp_UpdateTeamMemberProfile", myConnection))
using (SqlCommand updatetLSTeamMember = new
SqlCommand(bldSQL, myConnection))
{
// updatetLSTeamMember.CommandType =
CommandType.StoredProcedure;
// string wrokingHrs = ddlBeginHrs.SelectedValue + "
" + ddlBeginTime.SelectedValue + " " + lblTo.Text + " "
+ ddlEndHrs.SelectedValue + " " +
ddlEndTime.SelectedValue;
/* updatetLSTeamMember.Parameters.Add("@FirstName",
SqlDbType.VarChar, 25).Value = txtFirstName.Text;
updatetLSTeamMember.Parameters.Add("@LastName",
SqlDbType.VarChar, 30).Value = txtLastName.Text;
updatetLSTeamMember.Parameters.Add("@ContactNumber",
SqlDbType.VarChar, 20).Value = txtContactNumber.Text;
updatetLSTeamMember.Parameters.Add("@ContactExt",
SqlDbType.VarChar, 20).Value = txtContactExt.Text;
updatetLSTeamMember.Parameters.Add("@EmailAddress",
SqlDbType.VarChar, 100).Value = txtEmailAddress.Text;
updatetLSTeamMember.Parameters.Add("@Fax",
SqlDbType.VarChar, 25).Value = txtFax.Text;
updatetLSTeamMember.Parameters.Add("@LocationCity",
SqlDbType.VarChar, 20).Value = txtLocationCity.Text;
updatetLSTeamMember.Parameters.Add("@LocationState",
SqlDbType.VarChar, 20).Value = txtState.Text;
updatetLSTeamMember.Parameters.Add("@BeginWorkHrs",
SqlDbType.Int).Value =
ddlBeginHrs.SelectedValue.ToString();
updatetLSTeamMember.Parameters.Add("@BeginWorkTime",
SqlDbType.VarChar, 20).Value =
ddlBeginTime.SelectedValue.ToString();
updatetLSTeamMember.Parameters.Add("@EndWorkHrs",
SqlDbType.Int).Value =
ddlEndHrs.SelectedValue.ToString();
updatetLSTeamMember.Parameters.Add("@EndWorkTime",
SqlDbType.VarChar, 20).Value =
ddlEndTime.SelectedValue.ToString();
updatetLSTeamMember.Parameters.Add("@Zone",
SqlDbType.VarChar, 20).Value =
ddlZone.SelectedItem.Text;
updatetLSTeamMember.Parameters.Add("@TeamMemberLanId",
SqlDbType.VarChar, 20).Value =
txtTeamMemberLaniId.Text;
updatetLSTeamMember.Parameters.Add("@ManagerId",
SqlDbType.VarChar, 20).Value = gblUserId;
updatetLSTeamMember.Parameters.Add("@UpdateDate",
SqlDbType.DateTime).Value =
DateTime.Now.ToLocalTime(); */
updatetLSTeamMember.Parameters.AddWithValue("@FirstName",
gblFirstName );
updatetLSTeamMember.Parameters.AddWithValue("@LastName",
txtLastName.Text);
updatetLSTeamMember.Parameters.AddWithValue("@ContactNumber",
txtContactNumber.Text);
updatetLSTeamMember.Parameters.AddWithValue("@ContactExt",
txtContactExt.Text);
updatetLSTeamMember.Parameters.AddWithValue("@EmailAddress",
txtEmailAddress.Text);
updatetLSTeamMember.Parameters.AddWithValue("@Fax",
txtFax.Text);
updatetLSTeamMember.Parameters.AddWithValue("@LocationCity",
txtLocationCity.Text);
updatetLSTeamMember.Parameters.AddWithValue("@LocationState",
txtState.Text);
updatetLSTeamMember.Parameters.AddWithValue("@BeginWorkHrs",
ddlBeginHrs.SelectedValue.ToString());
updatetLSTeamMember.Parameters.AddWithValue("@BeginWorkTime",
ddlBeginTime.SelectedValue.ToString());
updatetLSTeamMember.Parameters.AddWithValue("@EndWorkHrs",
ddlEndHrs.SelectedValue.ToString());
updatetLSTeamMember.Parameters.AddWithValue("@EndWorkTime",
ddlEndTime.SelectedValue.ToString());
updatetLSTeamMember.Parameters.AddWithValue("@Zone",
ddlZone.SelectedItem.Text);
updatetLSTeamMember.Parameters.AddWithValue("@TeamMemberLanId",
txtTeamMemberLaniId.Text);
updatetLSTeamMember.Parameters.AddWithValue("@ManagerId",
gblUserId);
updatetLSTeamMember.Parameters.AddWithValue("@UpdateDate",
DateTime.Now.ToLocalTime());
updatetLSTeamMember.CommandText = bldSQL;
updatetLSTeamMember.CommandType = CommandType.Text;
// pID =
updatetLSTeamMember.Parameters.Add("@return_value",
SqlDbType.Int);
// pID.Direction = ParameterDirection.Output;
try
{
if (updatetLSTeamMember.Connection.State ==
ConnectionState.Closed)
{
updatetLSTeamMember.Connection.Open();
}
// string idcat =
updatetLSTeamMember.ExecuteNonQuery().ToString();
rowsAffected = updatetLSTeamMember.ExecuteNonQuery();
// string idcat =
updatetLSTeamMember.Parameters["@return_value"].SqlValue.ToString();
if (rowsAffected == 1)
{
success = rowsAffected.ToString();
lblError.Text = "Successfully Updated a Team
Member!";
lblCode.Text = success.ToString();
return;
}
else if (rowsAffected == 0)
{
fail = rowsAffected.ToString();
lblError.Text = "Team Member-No Rows Affected !!";
lblCode.Text = fail.ToString();
return;
}
/*
rowsAffected =
insertLSTeamMember.ExecuteNonQuery();
if (rowsAffected == 1)
{
carryOn = rowsAffected;
lblLoanStamp.Text =
"Successfully Added a
Manager!";
lblReturnCode.Text =
carryOn.ToString();
return;
}
else if (rowsAffected == -1)
{
carryOn = rowsAffected;
lblLoanStamp.Text =
"Manager Already exists,
Use Update / Deactivate for
Maintenance !!";
lblReturnCode.Text =
carryOn.ToString();
return;
}
*/
} // end try
Now my concern is Page_load routine i have to have it as if(IsPostBack),
because it has to query the db and pre-populate the text fields. Now my
submit button never takes any of the text changes.. why is that none of my
textbox changed value is captured and submitted tothe data base. The form
just send back everything as is with a new time stamp on the updateddate
column. Any help is appreciated. Thanks.

No comments:

Post a Comment