为什么存储过程不在datagridview中更新数据?

时间:2018-02-20 12:53:36

标签: c# datagridview

我有以下存储过程,我读取datagridview中的数据和datagridview以外的一些数据(主要和详细信息)。

其实验室结果,标题数据是患者信息和请求信息datagridview中的数据是结果细节:

ALTER proc [dbo].[UPDATE_PARA_RESULTS]
@ORDER_ID int,
@NORMAL_RESULT varchar(10),
@SAMPLE_STATUS int,
@RESULT_NOTE  varchar(200),
@APPROVED_BY varchar(50),
@APPROVED_DATE datetime, 
@TESTID int,
@SERIAL int,
@TEXT varchar(50),
@VALUE varchar(50)

AS

UPDATE [dbo].[LAB_PARA_RESULTS]
   SET [ORDER_ID] = @ORDER_ID
       ,[NORMAL_RESULT] = @NORMAL_RESULT
       ,[SAMPLE_STATUS] = @SAMPLE_STATUS
       ,[RESULT_NOTE] = @RESULT_NOTE
       ,[APPROVED_BY] = @APPROVED_BY
       ,[APPROVED_DATE] = @APPROVED_DATE
       ,[VALUE] = @VALUE

where ORDER_ID = @ORDER_ID
and   TESTID   = @TESTID
and SERIAL = @SERIAL

当我保存数据时,标题详细信息保存到数据库,但datagrid视图中的数据未保存在数据库中。

datagridview中来自实验室专家窗口的数据首先由他们插入,最后一步是批准结果,如果有任何修改或更改我使用此存储过程更新它。

datagridview中的VALUE字段未更新datagridview更新后的其他列。
这是保存按钮void:

private void btnSave_Click(object sender, EventArgs e)
{

    if (radyes.Checked == true)
    {
        checknormal = 1;
    }
    if (RADNO.Checked == true)
    {
        checknormal = 2;
    }
    if (checkApproveResult.Checked == false)
    {
        for (int i = 0; i < dgvResult.Rows.Count; i++)
        {
            result.INSERT_PARA_RESULTS(Convert.ToInt32(txtsample.Text),
                                       Convert.ToInt32(txtOrder.Text), 
                                       Convert.ToInt32(txtTestId.Text),
                                      checknormal.ToString(),
                                      5,
                                      txtExamUser.Text,
                                      DateTime.Parse(DateTimeExamined.Value.ToString()),
                                      Convert.ToInt32(dgvResult.Rows[i].Cells[0].Value),
                                      dgvResult.Rows[i].Cells[1].Value.ToString(),
                                      dgvResult.Rows[i].Cells[2].Value.ToString(),
                                      "",                                    
                                      8,
                                      Convert.ToInt32(txtDept.Text),
                                      Convert.ToInt32(txtPno.Text),
                                      Convert.ToInt32(txtcustid.Text),
                                      txtReqForm.Text);
        }
        MessageBox.Show("Result Saved Successfully ", "Entering Para Result", MessageBoxButtons.OK, MessageBoxIcon.Information);

    }

    else
    {
        for (int i = 0; i < dgvResult.Rows.Count; i++)
        {
            result.UPDATE_PARA_RESULTS(Convert.ToInt32(txtOrder.Text),
                                      checknormal.ToString(),
                                      6,
                                      "",
                                      txtApprovedby.Text,
                                      DateTime.Parse(dateTimeApprove.Value.ToString()),
                                      Convert.ToInt32(txtTestId.Text),
                                      Convert.ToInt32(dgvResult.Rows[i].Cells["SERIAL"].Value),
                                      dgvResult.Rows[i].Cells["TEXT"].Value.ToString(),
                                      dgvResult.Rows[i].Cells["RESULT"].Value.ToString());

        }

        result.update_sample_status(Convert.ToInt32(txtOrder.Text));
        MessageBox.Show("Result Approved Successfully ", "Approve Result", MessageBoxButtons.OK, MessageBoxIcon.Information);

    }

    this.Close();
}

0 个答案:

没有答案