コード例 #1
0
    protected void btSearch2_Click(object sender, EventArgs e)
    {
        string depid     = ddlDepart.SelectedValue.ToString();
        string roomid    = ddlRoom.SelectedValue.ToString();
        string classname = tbClass.Text;
        string roomname  = ddlRoom.SelectedItem.Text.TrimEnd();
        int    week1     = Convert.ToInt16(ddlWeek1.SelectedValue);
        int    week2     = Convert.ToInt16(ddlWeek2.SelectedValue);
        string sqlStr    = "select RTRIM(t.currentFlag) as currentFlag  ,dp.strDepart ,aaa.* from(select aa.*,w.datePeriod,w.intWeek as wWeek ,w.yearID as wYear,d.strRoomName,d.depid from (select l.applyid,a.id,RTRIM(l.strName) as strName,RTRIM(a.strClass) as strClass,RTRIM(a.strTeacher) as strTeacher,a.strRemark ,l.yearID, a.roomid, a.intDay, a.intStartNum, a.intEndNum, a.strWeekReg, a.strWeekData, s.intweek from ApplyList l inner join RoomApply a on l.applyid = a.applyid inner join RoomApplySub s on a.id = s.F_id  where a.strClass like '%" + classname + "%' and s.intWeek >= " + week1 + " and s.intWeek <= " + week2 + " ) as aa	right join WeekStartEnd w on w.yearID = aa.yearID right join RoomDetail d on d.roomid = aa.roomid where aa.strClass like  '%" + classname + "%' and w.intWeek = aa.intWeek and  d.roomid = aa.roomid) as aaa left join TitleStartEnd t on aaa.wYear = t.yearID inner join Department dp on aaa.depid = dp.depid where t.currentFlag = 'true'";
        string printStr  = "RNT";

        Label lbTitle = new Label();

        lbTitle.ID   = classname + "Title";
        lbTitle.Text = classname;
        GridViewPlaceHolder.Controls.Add(lbTitle);

        for (int i = week1; i <= week2; i++)
        {
            string    titleStr = "select distinct w.datePeriod,w.intWeek from WeekStartEnd w,TitleStartEnd t where w.yearID = t.yearID and t.currentFlag = 'true' and w.intWeek = " + i;
            DataTable titleDT  = CommonClass.getDataTable(titleStr);
            Label     lbWeek   = new Label();
            lbWeek.ID   = "week" + i;
            lbWeek.Text = "第" + i + "周 " + titleDT.Rows[0]["datePeriod"].ToString();
            GridViewPlaceHolder.Controls.Add(lbWeek);

            DataTable dt = PrintTabClass.PrintTab_Week_DT(i, sqlStr, printStr);

            GridView gvTemp = new GridView();
            gvTemp.ID = "gv" + i;
            gvTemp.HorizontalAlign = HorizontalAlign.Center;
            gvTemp            = PrintTabClass.DynamicGenerateColumns(gvTemp, dt);
            gvTemp.DataSource = dt;
            gvTemp.DataBind();
            //合并单元格
            for (int j = 1; j < gvTemp.Columns.Count; j++)
            {
                CommonClass.GroupRows(gvTemp, j);
            }

            GridViewPlaceHolder.Controls.Add(gvTemp);

            HtmlGenericControl spanTemp = new HtmlGenericControl("div"); //创建一个span标签
            spanTemp.ID = "div" + i;
            spanTemp.Style.Add("page-break-before", "always");           //属性
            GridViewPlaceHolder.Controls.Add(spanTemp);                  //添加到页面
        }
    }
コード例 #2
0
    private void DataBindRepeater()
    {
        int    prtWeekNum = Convert.ToInt16(ddlWeek.SelectedValue);
        string prtDep     = ddlDep.SelectedValue;
        string prtsql     = "select aaa.*,t.currentFlag,RTRIM(de.strDepart) as strDepart from (select  aa.*,RTRIM(d.strRoomName) as strRoomName,d.depid from (select distinct s.intWeek, a.roomid,a.intDay,a.intStartNum,a.intEndNum,l.yearID,RTRIM(l.strName) as strName,RTRIM(a.strClass) as strClass,RTRIM(a.strTeacher) as strTeacher from RoomApply a inner join ApplyList l on a.applyid = l.applyid	inner join RoomApplySub s on a.id = s.F_id) as aa inner join RoomDetail d on aa.roomid = d.roomid where aa.intWeek = "+ prtWeekNum + " and d.depid = '" + prtDep + "') as aaa inner join TitleStartEnd t on aaa.yearID = t.yearID and t.currentFlag = 'true'inner join Department de on aaa.depid = de.depid";

        this.Repeater1.DataSource = PrintTabClass.PrintTab_SUM_DT(prtsql);
        this.Repeater1.DataBind();

        for (int i = 1; i <= 7; i++) // 遍历每一列
        {
            string tdTd     = "td";
            string tdIdName = tdTd + i.ToString();
            MergeCell(tdIdName); // 把当前列的td的ID文本作为方法的参数
        }
    }