Hi learningmrs,
Refer below code.
protected void Btnsubmit_Click1(object sender, EventArgs e)
{
string id = txtEmp.Text;
string effectiveDate = txteffdt.Text,
action = txtAction.Text,
actionReason = ddlActionReason.Text,
status = "A/I";
int effectiveSequence = 0;
DataTable dt = GetData();
DataRow[] dr = dt.Select("EmpId='" + id + "' AND Effdt='" + effectiveDate + "'");
if (dr.Length > 0)
{
effectiveSequence = Convert.ToInt32(dt.Select("EmpId='" + id + "' AND Effdt='" + effectiveDate + "'")[0]["EffectiveSequence"]);
string query = "INSERT INTO Employee VALUES(@EffectiveDate, @EffectiveSequence, @EmpID, @Action, @ActionReason, @Status)";
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = query;
cmd.Parameters.AddWithValue("@EffectiveDate", effectiveDate);
cmd.Parameters.AddWithValue("@EffectiveSequence", effectiveSequence + 1);
cmd.Parameters.AddWithValue("@EmpID", id);
cmd.Parameters.AddWithValue("@Action", action);
cmd.Parameters.AddWithValue("@ActionReason", actionReason);
cmd.Parameters.AddWithValue("@Status", status);
this.Insert(cmd);
}
}
else
{
using (SqlCommand cmd = new SqlCommand())
{
string query = "INSERT INTO Employee VALUES(@EffectiveDate, @EffectiveSequence, @EmpID, @Action, @ActionReason, @Status)";
cmd.CommandText = query;
cmd.Parameters.AddWithValue("@EffectiveDate", effectiveDate);
cmd.Parameters.AddWithValue("@EffectiveSequence", 0);
cmd.Parameters.AddWithValue("@EmpID", id);
cmd.Parameters.AddWithValue("@Action", action);
cmd.Parameters.AddWithValue("@ActionReason", actionReason);
cmd.Parameters.AddWithValue("@Status", status);
this.Insert(cmd);
}
}
DataRow[] drEmployees = dt.Select("EmpId='" + id + "'");
foreach (DataRow row in drEmployees)
{
DataRow[] dr1 = dt.Select("Effdt='" + row["EffectiveDate"].ToString() + "'");
using (SqlCommand cmd = new SqlCommand())
{
string query = "INSERT INTO Employee VALUES(@EffectiveDate, @EffectiveSequence, @EmpID, @Action, @ActionReason, @Status)";
cmd.CommandText = query;
cmd.Parameters.AddWithValue("@EffectiveDate", effectiveDate);
cmd.Parameters.AddWithValue("@EmpID", id);
cmd.Parameters.AddWithValue("@Action", action);
cmd.Parameters.AddWithValue("@ActionReason", actionReason);
cmd.Parameters.AddWithValue("@Status", status);
effectiveSequence = Convert.ToInt32(dt.Select("Effdt='" + row["EffectiveDate"].ToString() + "'")[0]["EffectiveSequence"]);
cmd.Parameters.AddWithValue("@EffectiveSequence", effectiveSequence + 1);
this.Insert(cmd);
}
}
}
private DataTable GetData()
{
string conString = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
string query = "SELECT * FROM Employees";
SqlCommand cmd = new SqlCommand(query);
using (SqlConnection con = new SqlConnection(conString))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.Connection = con;
sda.SelectCommand = cmd;
using (DataTable dt = new DataTable())
{
sda.Fill(dt);
return dt;
}
}
}
}
private void Insert(SqlCommand cmd)
{
string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
cmd.Connection = con;
con.Open();
cmd.ExecuteScalar();
con.Close();
}
}