资讯详情

datalist嵌套repeater(采购检验ISO标准参考)

前台:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AddInspection.aspx.cs" Inherits="StockManager_PurchasingInspection_AddInspection" %>

<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title>添加采购检验单</title> <base target="_self" /> <link href="../../css/form.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="../../js/childWindow.js"></script>

<script type="text/javascript" src="../../js/ShowCalendar.js"></script>

<script type="text/javascript" src="../../js/Ajax.js"></script>

<script language="javascript" type="text/javascript"> function ReEnter(a) { openWindow("SelectIn.aspx",700,600) a.style.border="#cdcdcd 1px solid"; } function add(){ // var DataList1 = document.getElementById("DataList1");// if(DataList1.items.length<1)// { // alert("没有项目需要测试!");// return false; // }

if($("Select1").value=="请选择") { alert("请选检查员!"); $("Select1").style.border="red 1px solid"; return false;} var person = document.getElementById("Select1").value;///采购检验员 var date = document.getElementById("startDate").value;//检查日期 if(date=="") {alert("请输入检验日期!"); return false;} var Input=document.getElementsByTagName("input"); var str=""; var ArrayList =new Array(); var j = Input.length; debugger; for(var i=0;i<j;i ) { if(Input[i].type=="text"&&Input[i].name=="Text1") { var strId =Input[i].value; // var WpBm = document.getElementById("TextCode_" strId).value;///材料编码 var strRKNum = document.getElementById("Text1_" strId).value;//允许入库数量 var strDHSL = document.getElementById("TextDHSL_" strId).value;//到货量 if(strRKNum=="") {alert("请输入仓库数量!"); return false;} if(parseInt(strRKNum)>parseInt(strDHSL)) {alert("入库数量不得大于到货数量!"); return false;} var strMain = strId "," WpBm "," strRKNum ; var HasDetail = false; for(var k=0;k<j;k ) { //HasDetail = false; if(Input[k].type=="text"&&Input[k].id=="TextDetail_" strId) { HasDetail = true; var strCheck = Input[k].value; &nbs;                  var strDetail = strId + strCheck;                    var strCJ = document.getElementById("TextCJ_"+strDetail).value;                    var strHG = document.getElementById("TextHG_"+strDetail).value;                    var strZS = document.getElementById("TextZS_"+strDetail).value;                    var strBZ = document.getElementById("TextBZ_"+strDetail).value;                                        if(strCJ=="")                    {alert("请输入抽检数量!"); return false;}                    if(strHG=="")                    {alert("请输入合格数量!"); return false;}                                        if(parseInt(strHG)>parseInt(strCJ))                    {alert("合格数量不能大于抽检数量!"); return false;}                                        if(str=="")                    {                     str = strMain + "," + strCJ + "," + strHG + "," + strZS + "," + strBZ + "," + strCheck;                    }                    else                    {                     str+="|"+strMain + "," + strCJ + "," + strHG + "," + strZS + "," + strBZ + "," + strCheck;                    }                    //str+= strMain + "," + strCJ + "," + strHG + "," + strZS + "," + strBZ + "," + strCheck+"|";                  }            }            if(HasDetail == false)            {                 if(str=="")                {                 str = strMain;                }                else                {                 str+="|"+strMain;                }            }                    } //            if(str=="")//            { //              strMain+="|"+strMain;//            }          }    document.getElementById("HdMessage").value = str;//    if(str=="")//    { //       document.getElementById("HdMessage").value = strMain;//    }//    else//    { //       document.getElementById("HdMessage").value = str;//    }//    sendRequest("GenerateInspection.aspx?danhao="+danhao//        +"&person="+ person//        +"&i_dh=" +i_dh//        +"&date=" +date//        +"&UserCode="+UserCode//      //        +"&M="+escape(str),"AddStock");   }    </script>

</head><body οnlοad="DivScroll(true);RowClassChange();">    <form id="form1" runat="server">        <div id="main">            <div id="nei">                <div id="top">                    添加采购检验单</div>                <div id="top2">                    采购检验单号:<input type="text" name="TxtCGJYD" class="a1" id="TxtCGJYD" runat="server" />                    采购收料单号:<input type="text" name="TxtJYD" class="a1" id="TxtJYD" runat="server" readonly="readOnly"                        style="background-color: transparent; border-top-style: none; border-right-style: none;                        border-left-style: none; border-bottom-style: none; width: 100px;" />                    收料仓库:<input type="text" name="TxtSLCK" class="a1" id="TxtSLCK" runat="server" readonly="readOnly"                        style="background-color: transparent; border-top-style: none; border-right-style: none;                        border-left-style: none; border-bottom-style: none; width: 100px;" />                    检验员:<input type="text" name="txtInspection" class="a1" id="Select1" runat="server"                        value="请选择" readonly="readOnly" style="background-color: #EFFDFC" οnfοcus="ReEnter(this)" /><input                            id="Button3" runat="server" class="a2" οnclick="ReEnter(this)" type="button"                            value="..." />                    检验日期:<input type="text" name="startDate" class="a1" id="startDate" runat="server"                        οnfοcus="ShowCalendar('startDate');" readonly="readOnly" style="background-color: #EFFDFC" />                    <input type="submit" name="Submit" value="选择采购收料单" class="a2" id="Submit3" runat="server"                        οnclick="javascript:openWindow('SelectInspection.aspx',600,600);" />                    <input type="button" name="Submit" value="历史记录" class="a2" id="Submit1" runat="server"                        οnclick="javascript:window.location.replace('Inspection.aspx');" /></div>                <br />                <div id="center">                    <asp:Repeater ID="DataList1" runat="server" OnItemDataBound="DataList1_ItemDataBound">                        <HeaderTemplate>                            <table>                                <tr>                                    <td class="HeaderTemplate">                                        上级BOM编码</td>                                    <td class="HeaderTemplate">                                        BOM编码</td>                                    <td class="HeaderTemplate">                                        名称</td>                                    <td class="HeaderTemplate">                                        规格</td>                                    <td class="HeaderTemplate">                                        图纸号</td>                                    <td class="HeaderTemplate">                                        型号</td>                                    <td class="HeaderTemplate">                                        材质</td>                                    <td class="HeaderTemplate">                                        到货数量</td>                                    <td class="HeaderTemplate">                                        允许入库数量</td>                                    <td class="HeaderTemplate">                                        单价</td>                                </tr>                        </HeaderTemplate>                        <ItemTemplate>                            <tr>                                <td class="ItemTemplate ">                                    <%# Eval("TOPBOMSN")%>                                </td>                                <td class="ItemTemplate ">                                    <%# Eval("BOMSN")%>                                </td>                                <td class="ItemTemplate ">                                    <%# Eval("BomName")%>                                </td>                                <td class="ItemTemplate ">                                    <%# Eval("Size")%>                                </td>                                <td class="ItemTemplate ">                                    <%# Eval("ImageNo")%>                                </td>                                <td class="ItemTemplate ">                                    <%# Eval("Model")%>                                </td>                                <td class="ItemTemplate ">                                    <%# Eval("Qulity")%>                                </td>                                <td class="ItemTemplate ">                                    <input id="TextDHSL_<%#Eval("MID")%>" value=" <%# Eval("i_arrival_num")%>" style="width: 50px;                                        background-color: transparent; border-top-style: none; border-right-style: none;                                        border-left-style: none; border-bottom-style: none;" type="text" readonly="readonly" />                                </td>                                <td class="ItemTemplate ">                                    <input id="Text1_<%#Eval("MID")%>" value=" <%# Eval("i_arrival_num")%>" style="width: 50px"                                        οnkeyup="value=value.replace(/[^/d]/g,'')" type="text" />                                </td>                                <td class="ItemTemplate ">                                    <%# Eval("m_price")%>                                    <asp:HiddenField ID="HiddenField1" runat="server" Value='<%#Eval("Check_Buy_ClassSN")%>' />                                    <asp:HiddenField ID="HiddenField2" runat="server" Value='<%#Eval("i_arrival_num")%>' />                                    <asp:HiddenField ID="HiddenField3" runat="server" Value='<%#Eval("MID")%>' />                                </td>                                <td class="ItemTemplate " style="display: none">                                    <input id="Text1" name="Text1" value='<%#Eval("MID")%>' type="text" />                                    <input id="TextCode_<%#Eval("MID")%>" value='<%#Eval("BOMSN")%>' type="text" />                                </td>                            </tr>                            <tr>                                <td colspan="10" style="text-align: left; padding-left: 25px; background-image: url(../../images_index/L.gif);                                    background-repeat: no-repeat; background-position: 6px top;" id="Details_rp1">                                    <asp:Repeater ID="rp1" runat="server">                                        <HeaderTemplate>                                            <table style="margin: 2px; border: Double 3px #5D7B9D; width: 96%">                                                <tr>                                                    <th>                                                        质检项目名称</th>                                                    <th>                                                        IL</th>                                                    <th>                                                        AQL</th>                                                    <th>                                                        Ac</th>                                                    <th>                                                        Re</th>                                                    <th>                                                        抽检数量</th>                                                    <th>                                                        合格数量</th>                                                    <th>                                                        证书是否齐全</th>                                                    <th style="width: 150px">                                                        备注</th>                                                    <th style="display: none">                                                        bn</th>                                                </tr>                                        </HeaderTemplate>                                        <ItemTemplate>                                            <tr>                                                <th class="detail">                                                    <%# Eval("ZjName")%>                                                </th>                                                <th class="detail">                                                    <%# Eval("IL")%>                                                </th>                                                <th class="detail">                                                    <%# Eval("AQl")%>                                                </th>                                                <th class="detail">                                                    <%# Eval("Ac")%>                                                </th>                                                <th class="detail">                                                    <%# Eval("Re")%>                                                </th>                                                <th class="detail">                                                    <input id="TextCJ_<%#Eval("MID")%><%#Eval("ZjBM")%>" type="text" value="<%# Eval("i_spot_check_num")%>"                                                        class="a1" style="width: 40px" οnkeyup="value=value.replace(/[^/d]/g,'')" />                                                </th>                                                <th class="detail">                                                    <input id="TextHG_<%#Eval("MID")%><%#Eval("ZjBM")%>" type="text" class="a1" style="width: 40px"                                                        value="<%# Eval("i_spot_check_num")%>" οnkeyup="value=value.replace(/[^/d]/g,'')" />                                                </th>                                                <th class="detail">                                                    <select id="TextZS_<%#Eval("MID")%><%#Eval("ZjBM")%>" class="a1" style="width: 40px">                                                        <option selected="selected" value="1">是</option>                                                        <option value="0">否</option>                                                    </select>                                                </th>                                                <th class="detail" style="width: 150px">                                                    <input id="TextBZ_<%#Eval("MID")%><%#Eval("ZjBM")%>" class="a1" type="text" style="width: 150px" />                                                </th>                                                <th class="detail" style="display: none">                                                    <input id="TextDetail_<%#Eval("MID")%>" value="<%#Eval("ZjBM")%>" type="text" />                                                </th>                                            </tr>                                        </ItemTemplate>                                        <FooterTemplate>                                            </table>                                        </FooterTemplate>                                    </asp:Repeater>                                </td>                            </tr>                        </ItemTemplate>                        <FooterTemplate>                            </table>                        </FooterTemplate>                    </asp:Repeater>                </div>                <div id="foo1">                    <asp:Button ID="Submit2" runat="server" class="a2" Text="检  验" OnClientClick="return add()"                        OnClick="LinkButton1_Click" Font-Underline="True" />                    <%--<input type="submit" name="Submit2263" value="检  验" class="a2" id="Submit2" runat="server"                        οnclick="return add()"/>--%>                    <div style="display: none">                        &nbsp;</div>                </div>                <div id="foot">                    &nbsp;</div>                <asp:HiddenField ID="HdSrcKey" runat="server" />                <asp:HiddenField ID="HfUserCode" runat="server" />                <asp:HiddenField ID="HdMessage" runat="server" />                <asp:HiddenField ID="HdChecker" runat="server" />            </div>        </div>    </form></body></html>

 

 

后台:

 

using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Collections.Generic;

public partial class StockManager_PurchasingInspection_AddInspection : System.Web.UI.Page{

    protected void Page_Load(object sender, EventArgs e)    {         if (!IsPostBack)        {             this.TxtCGJYD.Value = Hst.Common.BillNumAuto.GenerateBillNum("T_ReceiveBuy", "Rid", "C");            HfUserCode.Value = Acurity.AcurityCheck.GetUserMessage(1, Page, 2);            this.Submit2.Visible = false;            this.startDate.Value = DateTime.Now.ToString("yyyy-MM-dd");                    }        else        {                        Bind();        }    }    //数据绑定    protected void Bind()    {         if (Request.Form["TxtJYD"].ToString() == "") return;        Hst.BLL.T_ReceiveM bll = new Hst.BLL.T_ReceiveM();        DataTable dt = bll.GetListM("RSN='" + Request.Form["TxtJYD"].ToString() + "'").Tables[0];        if (dt.Rows.Count == 0)        {             Response.Write("此BOM没有设置质检类别!");        }        else        {             this.Submit2.Visible = true;            this.DataList1.DataSource = dt;            this.DataList1.DataBind();        }    }      protected void DataList1_ItemDataBound(object sender, RepeaterItemEventArgs e)    {         if (e.Item.ItemIndex!=-1)        {             string Check_Buy_ClassSN = ((HiddenField)e.Item.FindControl("HiddenField1")).Value;            string MID = ((HiddenField)e.Item.FindControl("HiddenField3")).Value;            string num = ((HiddenField)e.Item.FindControl("HiddenField2")).Value;            Repeater rp = (Repeater)e.Item.FindControl("rp1");            DataSet ds = Hst.StockManager.Inspection.Getlist(MID, Check_Buy_ClassSN, num);            if (ds != null)            {                 rp.DataSource = ds.Tables[0];                rp.DataBind();            }

        }    }    protected void LinkButton1_Click(object sender, EventArgs e)    {                  List<string> sqllist = new List<string>();        string strsql;        int index = 0;        string BuyPlanSN = "";        string UserCode = HfUserCode.Value;

        #region //采购收料记录:T_ReceiveBuy                strsql = "update T_ReceiveBuy set CheckSn='" + Request.Form["TxtCGJYD"]                    + "',Checker='" + HdChecker.Value                    + "',CheckDate='" + Request.Form["startDate"]                    + "',i_state='已检验'"                    + " where RSN='" + Request.Form["TxtJYD"] + "'";        sqllist.Add(strsql);                #endregion        string ReturnsNum = Hst.Common.BillNumAuto.GenerateBillNum("T_StockLog", "LID", "R");//退货单号        string M = this.HdMessage.Value;        string[] Array = M.Split('|');

        for (int i = 0; i < Array.Length; i++)        {             string[] ArrayDetail = Array[i].Split(',');

            #region 采购收料物料:T_ReceiveM            strsql = "update T_ReceiveM set allowNumber = " + ArrayDetail[2]                + " where MID=" + ArrayDetail[0];            sqllist.Add(strsql);            #endregion            strsql = "select Check_Buy_ClassSN, i_arrival_num,m_price,TOPBOMSN,T_ReceiveM.BOMSN,BuyPlanSN from T_ReceiveM left join T_Bom on T_ReceiveM.BOMSN = T_Bom.BOMSN where T_ReceiveM.MID="                + ArrayDetail[0];            DataRow dr = Hst.DBUtility.DbHelperSQL.Query(strsql).Tables[0].Rows[0];

            #region//退货单明细            int DhNum = int.Parse(dr[1].ToString());            int HgNum = int.Parse(ArrayDetail[2]);                       if (DhNum > HgNum)            {                 index = sqllist.Count;                int thNum = DhNum - HgNum;//退货数量

                decimal m_money = thNum * Convert.ToDecimal(dr[2].ToString());//金额                     strsql = "insert into T_StockPro(LSN,BOMSN,OutNumber, OutPrice, "                      + "OutSumPrice"                      + ")values('"                      + ReturnsNum + "','"                      + ArrayDetail[1] + "',"                      + thNum + ","                      + dr[2].ToString() + ","                      + m_money + ")";

                sqllist.Add(strsql);

            }            #endregion

            #region//更新采购计划单明细            strsql = "update T_buyPlanPro set InspectionNum=isnull(InspectionNum,0)+"                       + DhNum + ",Status=case when Status in ('部分分配','部分收料') then Status when  isnull(PlanNumber,0) > isnull(InspectionNum,0)+" + DhNum                       + " then '部分检验' else '全部检验' end "                       + " where BOMSN='" + dr["BOMSN"].ToString()                       + "' and TopBOMSN='" + dr["TopBOMSN"].ToString() + "' and BuyPlanSN='" + dr["BuyPlanSN"].ToString() + "'";            sqllist.Add(strsql);            if (BuyPlanSN == "")                BuyPlanSN = dr["BuyPlanSN"].ToString();            else                BuyPlanSN += "," + dr["BuyPlanSN"].ToString();            #endregion            if (dr[0].ToString() != "")            {                 DataTable dt = Hst.StockManager.Inspection.Getlist(ArrayDetail[0], dr[0].ToString(), dr[1].ToString()).Tables[0];                #region 收料检测结果:T_ReceiveCheck                for (int k = 0; k < dt.Rows.Count; k++)                {

                    string strHGNum = Array[i].Split(',')[4];//合格数量                    string ZSQQ = Array[i].Split(',')[5]; //证书是否齐全                    string Remarks = Array[i].Split(',')[6];//备注                    string CheckNum = Array[i].Split(',')[3];//备注                    decimal HGL;                    if (CheckNum == "0" || strHGNum == "0" || CheckNum == "" || strHGNum == "")                    {                         HGL = 0;                    }                    else                    {                         //合格率限制                        HGL = Math.Round(Convert.ToDecimal(strHGNum) / Convert.ToDecimal(CheckNum), 2);                    }

                    if (k != dt.Rows.Count - 1)                        i += 1;                    //int CheckNum;//抽检数量                    //if (dt.Rows[k]["IL"].ToString() == "")                    //{                     //    HGL = 0;

                    //}                    //else                    //{                     //    HGL = Math.Round(Convert.ToDecimal(strHGNum) / Convert.ToDecimal(dt.Rows[k]["i_spot_check_num"].ToString()), 2);                    //    CheckNum = Convert.ToInt32(dt.Rows[0]["i_spot_check_num"].ToString());                    //}                    //string RSN = Hst.DBUtility.DbHelperSQL.GetSingle("select RSN from T_ReceiveM where MID=" + ArrayDetail[0]).ToString();//物料收料编码

                    strsql = "insert into T_ReceiveCheck(MSN,CheckSN,IL,AQL, "                          + "Ac,Re,CheckNum,OKNum,OKPecent,IsBook,"                          + "Remarks,ReceiveCheckSN,TopBomSN)values('"                          + ArrayDetail[1] + "','"                          + dt.Rows[k]["ZjBM"].ToString() + "','"                          + dt.Rows[k]["IL"].ToString() + "','"                          + dt.Rows[k]["AQL"].ToString() + "','"                          + dt.Rows[k]["Ac"].ToString() + "','"                          + dt.Rows[k]["Re"].ToString() + "',"                          + CheckNum + ","                          + strHGNum + ","                          + HGL.ToString() + ","                          + ZSQQ + " ,'"                          + Remarks + "','"                          + Request.Form["TxtCGJYD"] + "','"                          + dr["TOPBOMSN"].ToString() + "')";

                    sqllist.Add(strsql);                }                #endregion

            }                    }        #region//退货                if (index != 0)        {             strsql = "insert into T_StockLog(LSN"                + ",EmployeeSN,Types,SourceSN,AddTime,HandleSN,InDateTime"                + ")values('"                + ReturnsNum + "','"                + UserCode + "','"                + "退货','"                + Request.Form["TxtCGJYD"] + "',"                + "getdate(),'"                + UserCode + "',"                + "getdate()"                + ")";            sqllist.Insert(index, strsql);        }                #endregion        int result = Hst.DBUtility.DbHelperSQL.ExecuteSqlTran(sqllist);       // throw new Exception(result.ToString());        if (result != 0)        {             string[] arrayBuyPlanSN = BuyPlanSN.Split(',');            for (int i = 0; i < arrayBuyPlanSN.Length; i++)            {                 //string Status;

                //'全部分配','全部收料','全部检验','全部完成入库','部分收料'                string str = "select 1 from T_buyPlanPro where BuyPlanSN='" + arrayBuyPlanSN[i] + "' and Status not in ('部分分配','部分收料', '部分检验')";                //Status = Convert.ToString(Hst.DBUtility.DbHelperSQL.GetSingle(str));

                if (Hst.DBUtility.DbHelperSQL.Exists(str) == false)                {                     strsql = "update T_buyPlan set Status='全部检验' where BuyPlanSN='" + arrayBuyPlanSN[i] + "'";                    Hst.DBUtility.DbHelperSQL.ExecuteSql(strsql);                }                //{                 //    Status = "部分检验";                //}                //else                //{                 //    Status = "全部检验";                //}                           }

            DataList1.DataSource = "";            DataList1.DataBind();            TxtJYD.Value = "";            this.Submit2.Visible = false;            this.TxtCGJYD.Value = Hst.Common.BillNumAuto.GenerateBillNum("T_ReceiveBuy", "Rid", "C");                        Hst.Common.MessageBox.Show(Page, "操作成功!");            return;        }                   }  }

 

类库

  public static DataSet Getlist(string MID, string Check_Buy_ClassSN, string num)       {            string allSql = "";           string strSql = "select * from ass_test_items where ClassSN='" + Check_Buy_ClassSN + "'";               DataTable dt = Hst.DBUtility.DbHelperSQL.Query(strSql).Tables[0];           if (dt.Rows.Count == 0) return null;

           for (int i = 0; i < dt.Rows.Count; i++)           {                string IL = dt.Rows[i]["IL"].ToString();//IL               string AQL = dt.Rows[i]["AQL"].ToString();//AQL 数字               //string ZjCode = dt.Rows[i]["CheckSN"].ToString();//质检项目编码               string ZjName = dt.Rows[i]["CheckName"].ToString();//质检项目名称               string ZjBM = dt.Rows[i]["CheckSN"].ToString();//质检项目名称

               if (IL != "") //IL 和 数量 得到强度级别               {

                   strSql = "select " + IL + " from ass_quality_psi where i_batch_min<=" + num                        + " and i_batch_max>=" + num;                   string Qdjb = Convert.ToString(Hst.DBUtility.DbHelperSQL.GetSingle(strSql));//强度级别

                   allSql += "select '" + ZjBM + "' as ZjBM, '" + MID + "' as MID, '"                            + ZjName + "' as ZjName, '" + IL + "' as IL, '" + AQL + "' as AQL, i_allow_bad_num as Ac, "                            + " i_allow_bad_num+1 as Re,i_spot_check_num from ass_quality_allow "                            + "where i_inspect_intensity_rank = '" + Qdjb                            + "' and f_allow_std=" + AQL;               }               else               {                    allSql += "select '" + ZjBM + "' as ZjBM, '" + MID + "' as MID, '"                           + ZjName + "' as ZjName, '" + IL + "' as IL, '" + AQL + "' as AQL, '' as Ac, "                           + " '' as Re,'' as i_spot_check_num ";                         

               }               if (i != dt.Rows.Count - 1)                   allSql += " union all ";           }

           return Hst.DBUtility.DbHelperSQL.Query(allSql);

       }

 

标签: 2237zjbm圆形连接器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

 锐单商城 - 一站式电子元器件采购平台  

 深圳锐单电子有限公司