void LoadDataBind()
    {
        string No = Request.QueryString["id"].ToString();//培训编号
        //string TrainingID = Request.QueryString["TrainingID"].ToString();

        string CompanyCD = ((UserInfoUtil)SessionUtil.Session["UserInfo"]).CompanyCD;

        //获取培训基本信息
        DataTable dsTrainingAsseInfo = TrainingAsseBus.PrintTrainingAsse(CompanyCD, No);
        //设置考核结果
        DataTable dtResultInfo = TrainingAsseBus.PrintTrainingDetail(CompanyCD, No);

        if (dsTrainingAsseInfo != null)
        {
            //主报表
            rd.Load(Server.MapPath(@"~/PrinttingModel/HumanManager/TrainingAsse.rpt"));
            CrystalReportViewer1.LogOnInfo.Add(ReportUtil.GetTableLogOnInfo("officedba.TrainingAsse"));
            UserInfoUtil userInfo = (UserInfoUtil)SessionUtil.Session["UserInfo"];

            //子报表
            if (dtResultInfo != null)
            {
                ReportDocument rdResultInfo = rd.Subreports["TrainingAsseResult.rpt"];
                rdResultInfo.SetDataSource(dtResultInfo);
            }

            //绑定数据
            rd.SetDataSource(dsTrainingAsseInfo);

            this.CrystalReportViewer1.ReportSource = rd;
            rd.SetParameterValue("Today", "制表人:" + userInfo.EmployeeName);
        }
    }
    protected void btnImport_Click(object sender, System.Web.UI.ImageClickEventArgs e)
    {
        try
        {
            string orderString = hiddExpOrder.Value.Trim();                                                                      //排序
            string order       = "asc";                                                                                          //排序:降序
            string orderBy     = (!string.IsNullOrEmpty(orderString)) ? orderString.Substring(0, orderString.Length - 2) : "ID"; //要排序的字段,如果为空,默认为"ID"

            if (orderString.EndsWith("_d"))
            {
                order = "desc";//排序:降序
            }
            string ord = " ORDER BY " + orderBy + " " + order;

            //获取数据
            TrainingAsseSearchModel searchModel = new TrainingAsseSearchModel();
            //设置查询条件
            //考核编号
            searchModel.AsseNo = txtTrainingAsseNo.Value.Trim();
            //培训编号
            searchModel.TrainingNo = txtTrainingNo.Value.Trim();
            //培训名称
            searchModel.TrainingName = txtTrainingName.Value.Trim();
            //培训方式
            searchModel.TrainingWayID = ddlTrainingWay.SelectedValue;
            //考评人
            searchModel.CheckPerson = txtCheckPerson.Value.Trim();
            //考评时间
            searchModel.AsseDate    = txtAsseDate.Value.Trim();
            searchModel.AsseEndDate = txtAsseEndDate.Value.Trim();

            //查询数据
            DataTable dt = TrainingAsseBus.SearchTrainingAsseInfo(searchModel);

            OutputToExecl.ExportToTableFormat(this, dt,
                                              new string[] { "考核编号", "培训编号", "培训名称", "培训方式", "培训老师", "考评人", "考核方式", "考评时间" },
                                              new string[] { "AsseNo", "TrainingNo", "TrainingName", "TrainingWayName", "TrainingTeacher", "CheckPerson", "AsseWay", "AsseDate" },
                                              "培训考核列表");
        }
        catch
        {
            ClientScript.RegisterStartupScript(this.GetType(), "Exp", "<script language=javascript>showPopup('../../../Images/Pic/Close.gif','../../../Images/Pic/note.gif','导出发生异常');</script>");
        }
    }
    /// <summary>
    /// 根据考核ID,获取考核信息,并设置到页面显示
    /// </summary>
    /// <param name="asseID">考核ID</param>
    private void InitTrainingAsseInfo(string asseID)
    {
        //查询培训信息
        DataSet dsTrainingAsseInfo = TrainingAsseBus.GetTrainingAsseInfoWithID(asseID);
        //获取培训基本信息
        DataTable dtBaseInfo = dsTrainingAsseInfo.Tables[0];

        //基本信息存在时
        if (dtBaseInfo != null && dtBaseInfo.Rows.Count > 0)
        {
            #region 设置培训基本信息
            //考核编号
            divTrainingAsseNo.InnerHtml = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "AsseNo");
            //培训
            ddlTraining.SelectedValue = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "TrainingNo");
            //考核人
            UserCheckPerson.Text = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "CheckPerson");
            //考核方式
            //ddlCheckWay.SelectedValue = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "CheckWay");
            txtCheckWay.Text = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "CheckWay");
            //考核时间
            txtCheckDate.Text = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "CheckDate");
            //填写人
            txtFillUserName.Text = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "FillUserName");
            //培训规划
            txtTrainingPlan.Text = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "TrainingPlan");
            //领导意见
            txtLeadViews.Text = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "LeadViews");
            //说明
            txtDescription.Text = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "Description");
            //考核总评
            txtGeneralComment.Text = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "GeneralComment");
            //考核备注
            txtCheckRemark.Text = GetSafeData.ValidateDataRow_String(dtBaseInfo.Rows[0], "CheckRemark");
            #endregion

            //设置考核结果
            InitAsseResultInfo(dsTrainingAsseInfo.Tables[1]);
        }
    }