忠帅 张 преди 2 години
родител
ревизия
476ddf178e
променени са 4 файла, в които са добавени 454 реда и са изтрити 121 реда
  1. 1 7
      wwwroot/mes/rpt/rpt106/rpt.ashx
  2. 111 114
      wwwroot/mes/rpt/rpt106/rpt_index.html
  3. 169 0
      wwwroot/mes/rpt/rpt109/rpt.ashx
  4. 173 0
      wwwroot/mes/rpt/rpt109/rpt_index.html

+ 1 - 7
wwwroot/mes/rpt/rpt106/rpt.ashx

@@ -46,8 +46,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //读取报表数据
                 string sqlStr = @"
-						SELECT
-					GROUTINGLINECODE AS 成型线编码,
+				SELECT
 					GOODSCODE AS 产品编码,
 					期初数量,
 					接收数量,
@@ -58,7 +57,6 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				FROM
 					(
 					SELECT
-					GDD.GROUTINGLINECODE,
 						GDD.GOODSCODE,-- 期初 开始日期前
 						SUM(
 						CASE
@@ -110,10 +108,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 													AND GDD.VALUEFLAG = '1' 
 													AND ( GDD.GOODSID IN ( {GOODSID} ) OR '{GOODSID}' = '0' ) 
 													AND ( GDD.GROUTINGDATE <= @DATEEND@ OR GDD.SCRAPTIME <= @DATEEND@ OR GDD.DELIVERTIME <= @DATEEND@ ) 
-													AND (GDD.GROUTINGLINECODE in (@GROUTINGLINECODE@) OR @GROUTINGLINECODE@ IS NULL)		
 													AND GDD.GROUTINGFLAG = '1' 									
 												GROUP BY
-												GDD.GROUTINGLINECODE,
 													GDD.GOODSCODE 
 												) 
 											WHERE
@@ -122,7 +118,6 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 												OR 干补回收 <> 0 
 												OR 损坯数量 <> 0 
 												OR 发出数量 <> 0
-											ORDER BY GROUTINGLINECODE
                 ".Replace("{GOODSID}", goodsId);
 
                 if (context.Request["sort"] is object)
@@ -134,7 +129,6 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("DATEBEGIN", dateBegin, DataType.DateTime));
                 sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
-				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["groutinglineMaster"].ToString()));
 
                 //获取数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());

+ 111 - 114
wwwroot/mes/rpt/rpt106/rpt_index.html

@@ -18,7 +18,7 @@
             <a href="javascript:void(0)" id="btnSearch" title="搜索" class="easyui-linkbutton" iconcls="icon-search" plain="true" toggle="true" onclick="tbSearch()">搜索</a>
             <a href="javascript:void(0)" id="btnExport" title="导出" class="easyui-linkbutton" iconcls="icon-excel" plain="true" onclick="tbExport()">导出</a>
             <!--<a href="javascript:void(0)" id="btnColumn" class="easyui-menubutton" data-options="menu:'#btnColumnMenu',iconCls:'icon-undo'">列显示</a>
-        <div id="btnColumnMenu" style="width:150px;" ></div>-->
+            <div id="btnColumnMenu" style="width:150px;" ></div>-->
             <a href="javascript:void(0)" id="btnReload" title="刷新" class="easyui-linkbutton" iconcls="icon-reload" plain="true" onclick="tbReload()">刷新</a>
             <a href="javascript:void(0)" id="btnHelp" title="帮助" class="easyui-linkbutton" iconcls="icon-help" plain="true" onclick="tbHelp()">帮助</a>
             <div id="tbSearchDiv" style="display:block;padding:10px;">
@@ -28,8 +28,6 @@
                         <input class="easyui-datetimebox" id="datebeginMaster" name="datebeginMaster" data-options="required:true,prompt:'',tipPosition:'top'" style="width: 165px; height: 32px;">
                         截止日期:
                         <input class="easyui-datetimebox" id="dateendMaster" name="dateendMaster" data-options="required:true,prompt:'',tipPosition:'top'" style="width: 165px; height: 32px;">
-                        成型线:
-                        <input class="easyui-combobox" id="groutinglineMaster" name="groutinglineMaster" data-options="required:false,prompt:'',tipPosition:'top',url:'../../rpt/rpt.ashx?m=getLine&select=1',method:'get',valueField:'GROUTINGLINECODE',textField:'GROUTINGLINECODE',panelHeight:'300px',editable:true ,multiple:false" style="width: 165px; height: 32px;">
                         产品编码:
                         <input class="easyui-combobox" id="goodsMaster" name="goodsMaster" data-options="required:false,prompt:'',tipPosition:'top',url:'../../rpt/rpt.ashx?m=getGoods&select=1',method:'get',valueField:'GOODSID',textField:'GOODSCODE',panelHeight:'300px',editable:true,multiple:true" style="width:165px;height:32px;">
 
@@ -40,134 +38,133 @@
             </div>
         </div>
         <!--表格-->
-            <table class="easyui-datagrid"
-                   id="DataGridMaster"
-                   data-options="method:'get',border:false,singleSelect:true,fit:true,fitColumns:false">
-                <thead>
-                    <tr>
-                        <th data-options="field:'成型线编码',title:'成型线编码',align:'left',sortable:true,width:80"></th>
-                        <th data-options="field:'产品编码',title:'产品编码',align:'left',sortable:true,width:80"></th>
-                        <th data-options="field:'期初数量',title:'期初数量',align:'left',sortable:true,width:80"></th>
-                        <th data-options="field:'接收数量',title:'接收数量',align:'left',sortable:true,width:80"></th>
-                        <th data-options="field:'干补回收',title:'干补回收',align:'left',sortable:true,width:80"></th>
-                        <th data-options="field:'损坯数量',title:'损坯数量',align:'left',sortable:true,width:80"></th>
-                        <th data-options="field:'发出数量',title:'发出数量',align:'left',sortable:true,width:80"></th>
-                        <th data-options="field:'期末数量',title:'期末数量',align:'left',sortable:true,width:80"></th>
-                    </tr>
-                </thead>
-            </table>
-        </div>
+        <table class="easyui-datagrid"
+               id="DataGridMaster"
+               data-options="method:'get',border:false,singleSelect:true,fit:true,fitColumns:false">
+            <thead>
+                <tr>
+                    <th data-options="field:'产品编码',title:'产品编码',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'期初数量',title:'期初数量',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'接收数量',title:'接收数量',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'干补回收',title:'干补回收',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'损坯数量',title:'损坯数量',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'发出数量',title:'发出数量',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'期末数量',title:'期末数量',align:'left',sortable:true,width:80"></th>
+                </tr>
+            </thead>
+        </table>
+    </div>
 
-        <!--中部右侧-->
-        <!--<div data-options="border:false,region:'east',split:true,title:'子报表',iconCls:'icon-grid'" title="East" style="width:700px;">
+    <!--中部右侧-->
+    <!--<div data-options="border:false,region:'east',split:true,title:'子报表',iconCls:'icon-grid'" title="East" style="width:700px;">
         <table class="easyui-datagrid"
                id="DataGridDetail"
                data-options="method:'get',border:false,singleSelect:true,fit:true,fitColumns:true">
         </table>
     </div>-->
 
-        <script type="text/javascript">
+    <script type="text/javascript">
 
-            function formatterUA(value, row, index) {
-                return Math.round(value * 10000) / 100 + '%';
-            }
+        function formatterUA(value, row, index) {
+            return Math.round(value * 10000) / 100 + '%';
+        }
 
-            $(document).ready(function () {
-                var ctime = new Date();
-                var beginDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 00:00:00";
-                var endDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 23:59:59";
-                $("#datebeginMaster").datetimebox("setValue", beginDate);
-                $("#dateendMaster").datetimebox("setValue", endDate);
-                //tbSearchSubmit();
-            });
-            // 清空恢复默认值
-            function toClear() {
-                $('#ffMaster').form('clear');
-                var ctime = new Date();
-                var beginDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 00:00:00";
-                var endDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 23:59:59";
-                $("#datebeginMaster").datetimebox("setValue", beginDate);
-                $("#dateendMaster").datetimebox("setValue", endDate);
-            }
-            //加载子表数据
-            function LoadDataGridDetail(index, row) {
-                //if ($('#ffDetail').form("validate")) {
-                //    $('#DataGridDetail').datagridLoadRpt({
-                //        title: '明细表',
-                //        idField: 'SID',
-                //        queryParams: $('#ffDetail').serializeJson(),
-                //        url: 'rpt.ashx?m=detail&id=' + $('#DataGridMaster').datagrid('getSelections')[0]['SID'],
-                //        fixWidth: 120,
-                //        mergeWidth: 100,
-                //        splitChar: '_',
-                //        columnMoving: true
-                //    });
-                //}
-            }
+        $(document).ready(function () {
+            var ctime = new Date();
+            var beginDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 00:00:00";
+            var endDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 23:59:59";
+            $("#datebeginMaster").datetimebox("setValue", beginDate);
+            $("#dateendMaster").datetimebox("setValue", endDate);
+            //tbSearchSubmit();
+        });
+        // 清空恢复默认值
+        function toClear() {
+            $('#ffMaster').form('clear');
+            var ctime = new Date();
+            var beginDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 00:00:00";
+            var endDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 23:59:59";
+            $("#datebeginMaster").datetimebox("setValue", beginDate);
+            $("#dateendMaster").datetimebox("setValue", endDate);
+        }
+        //加载子表数据
+        function LoadDataGridDetail(index, row) {
+            //if ($('#ffDetail').form("validate")) {
+            //    $('#DataGridDetail').datagridLoadRpt({
+            //        title: '明细表',
+            //        idField: 'SID',
+            //        queryParams: $('#ffDetail').serializeJson(),
+            //        url: 'rpt.ashx?m=detail&id=' + $('#DataGridMaster').datagrid('getSelections')[0]['SID'],
+            //        fixWidth: 120,
+            //        mergeWidth: 100,
+            //        splitChar: '_',
+            //        columnMoving: true
+            //    });
+            //}
+        }
 
-            //搜索提交
-            function tbSearchSubmit() {
-                if ($('#ffMaster').form("validate")) {
-                    $('#DataGridMaster').datagridLoad({
-                        title: '',
-                        idField: 'SID',
-                        queryParams: $('#ffMaster').serializeJson(),
-                        url: 'rpt.ashx?m=master&id=' + request('id'),
-                        fixWidth: 160,
-                        mergeWidth: 100,
-                        splitChar: '_',
-                        columnMenu: '#btnColumnMenu',
-                        columnMoving: true,
-                        onSelect: LoadDataGridDetail
-                    });
-                }
+        //搜索提交
+        function tbSearchSubmit() {
+            if ($('#ffMaster').form("validate")) {
+                $('#DataGridMaster').datagridLoad({
+                    title: '',
+                    idField: 'SID',
+                    queryParams: $('#ffMaster').serializeJson(),
+                    url: 'rpt.ashx?m=master&id=' + request('id'),
+                    fixWidth: 160,
+                    mergeWidth: 100,
+                    splitChar: '_',
+                    columnMenu: '#btnColumnMenu',
+                    columnMoving: true,
+                    onSelect: LoadDataGridDetail
+                });
             }
+        }
 
-            //导出
-            function tbExport() {
-                //加载表头
-                var fields = $('#DataGridMaster').datagrid('getColumnFields');
-                var headers = [];
-                for (var i = 0; i < fields.length; i++) {
-                    //headers.push($('#DataGridMaster').datagrid('getColumnOption', fields[i])['title']);
-                    headers.push(fields[i]);
-                }
+        //导出
+        function tbExport() {
+            //加载表头
+            var fields = $('#DataGridMaster').datagrid('getColumnFields');
+            var headers = [];
+            for (var i = 0; i < fields.length; i++) {
+                //headers.push($('#DataGridMaster').datagrid('getColumnOption', fields[i])['title']);
+                headers.push(fields[i]);
+            }
 
-                $('#DataGridMaster').datagridExport({
-                    headers: headers,
-                    fileName: '导出数据(成型收发存统计表).xls',
-                    workSheet: '导出数据(成型收发存统计表)'
-                });
+            $('#DataGridMaster').datagridExport({
+                headers: headers,
+                fileName: '导出数据(成型收发存统计表).xls',
+                workSheet: '导出数据(成型收发存统计表)'
+            });
 
-                //导出多sheet
-                //$.dataGridToExcel(
-                //    ['DataGridMaster', 'DataGridDetail'],
-                //    ['page1', 'page2'],
-                //    "导出数据(表名).xls"
-                //);
-            }
+            //导出多sheet
+            //$.dataGridToExcel(
+            //    ['DataGridMaster', 'DataGridDetail'],
+            //    ['page1', 'page2'],
+            //    "导出数据(表名).xls"
+            //);
+        }
 
-            //搜索按钮
-            function tbSearch() {
-                $('#tbSearchDiv').toggle();
-                $('#DataGridMaster').datagrid('resize');
-            }
+        //搜索按钮
+        function tbSearch() {
+            $('#tbSearchDiv').toggle();
+            $('#DataGridMaster').datagrid('resize');
+        }
 
-            //刷新
-            function tbReload() {
-                tbSearchSubmit();
-            }
+        //刷新
+        function tbReload() {
+            tbSearchSubmit();
+        }
 
-            //帮助事件
-            function tbHelp() {
-                $('#DataGridMaster').datagridDialog({
-                    title: '帮助',
-                    width: 640,
-                    height: 480,
-                    url: 'rpt_help.html'
-                });
-            }
+        //帮助事件
+        function tbHelp() {
+            $('#DataGridMaster').datagridDialog({
+                title: '帮助',
+                width: 640,
+                height: 480,
+                url: 'rpt_help.html'
+            });
+        }
 
-        </script>
+    </script>
 </body>
 </html>

+ 169 - 0
wwwroot/mes/rpt/rpt109/rpt.ashx

@@ -0,0 +1,169 @@
+<%@ WebHandler Language="C#" Class="rpt" %>
+
+using System;
+using System.Web;
+using System.Web.SessionState;
+using System.Data;
+using System.Text;
+using System.Collections;
+using System.Collections.Generic;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using Curtain.DataAccess;
+using DK.XuWei.WebMes;
+
+public class rpt : IHttpHandler, IReadOnlySessionState
+{
+    public void ProcessRequest(HttpContext context)
+    {
+        context.Response.ContentType = "text/plain";
+        using(IDataAccess conn = DataAccess.Create())
+        {
+            string goodsId = context.Request["goodsMaster[]"] is object ? context.Request["goodsMaster[]"].ToString() : "0";
+            if (goodsId == "0" && (context.Request["goodsMaster"] is object)) goodsId = context.Request["goodsMaster"].ToString();
+            if (goodsId == "") goodsId = "0";
+            if (!goodsId.Equals("0")) {
+                List<string> list= new List<string>(goodsId.Split(','));
+                List<string> newlist = new List<string>();
+                foreach (string item in list) {
+                    if (IsNumber(item)) {
+                        newlist.Add(item);
+                    }
+                }
+                if (newlist != null && newlist.Count < 1) {
+                    goodsId = "0";
+                }
+                else{
+                    goodsId = string.Join(",", newlist);
+                }
+            }
+
+            //主表
+            if(context.Request["m"].ToString()=="master")
+            {
+                DateTime dateBegin = Convert.ToDateTime(context.Request["datebeginMaster"]);
+                DateTime dateEnd = Convert.ToDateTime(context.Request["dateendMaster"]);
+
+                //读取报表数据
+                string sqlStr = @"
+						SELECT
+					GROUTINGLINECODE AS 成型线编码,
+					GOODSCODE AS 产品编码,
+					期初数量,
+					接收数量,
+					干补回收,
+					损坯数量,
+					发出数量,
+					期初数量 + 接收数量 + 干补回收 - 损坯数量 - 发出数量 AS 期末数量 
+				FROM
+					(
+					SELECT
+					GDD.GROUTINGLINECODE,
+						GDD.GOODSCODE,-- 期初 开始日期前
+						SUM(
+						CASE
+				
+								WHEN GDD.GROUTINGDATE < @DATEBEGIN@ THEN
+								1 ELSE 0 
+							END -
+						CASE
+				
+								WHEN GDD.SCRAPFLAG = '1' 
+								AND GDD.SCRAPTIME < @DATEBEGIN@ THEN
+									1 
+									WHEN GDD.DELIVERFLAG = '1' 
+									AND GDD.DELIVERTIME < @DATEBEGIN@ THEN
+										1 ELSE 0 
+									END 
+									) AS 期初数量,-- 收
+									SUM( CASE WHEN GDD.GROUTINGDATE >= @DATEBEGIN@ AND GDD.GROUTINGDATE <= @DATEEND@ THEN 1 ELSE 0 END ) AS 接收数量,
+									SUM(
+									CASE
+							
+											WHEN GDD.SCRAPFLAG = '1' 
+											AND GDD.SCRAPTIME >= @DATEBEGIN@ 
+											AND GDD.SCRAPTIME <= @DATEEND@ 
+											AND GDD.SCRAPUSER = 2 /* GDD.SCRAPREASONID = -1 */
+										THEN
+												- 1 ELSE 0 
+											END 
+											) AS 干补回收 -- 干补(自动报损)
+											,-- 损
+											SUM(
+											CASE
+									
+													WHEN GDD.SCRAPFLAG = '1' 
+													AND GDD.SCRAPTIME >= @DATEBEGIN@ 
+													AND GDD.SCRAPTIME <= @DATEEND@ 
+													AND GDD.SCRAPUSER <> 2 /* GDD.SCRAPREASONID <> -1 */
+												THEN
+														1 ELSE 0 
+													END 
+													) AS 损坯数量,-- 发
+													SUM( CASE WHEN GDD.DELIVERFLAG = '1' AND GDD.DELIVERTIME >= @DATEBEGIN@ AND GDD.DELIVERTIME <= @DATEEND@ THEN 1 ELSE 0 END ) AS 发出数量,
+													0 F -- 期末
+									
+												FROM
+													TP_PM_GROUTINGDAILYDETAIL GDD 
+												WHERE
+													GDD.ACCOUNTID = 1 
+													AND GDD.VALUEFLAG = '1' 
+													AND ( GDD.GOODSID IN ( {GOODSID} ) OR '{GOODSID}' = '0' ) 
+													AND ( GDD.GROUTINGDATE <= @DATEEND@ OR GDD.SCRAPTIME <= @DATEEND@ OR GDD.DELIVERTIME <= @DATEEND@ ) 
+													AND (GDD.GROUTINGLINECODE in (@GROUTINGLINECODE@) OR @GROUTINGLINECODE@ IS NULL)		
+													AND GDD.GROUTINGFLAG = '1' 									
+												GROUP BY
+												GDD.GROUTINGLINECODE,
+													GDD.GOODSCODE 
+												) 
+											WHERE
+												期初数量 <> 0 
+												OR 接收数量 <> 0 
+												OR 干补回收 <> 0 
+												OR 损坯数量 <> 0 
+												OR 发出数量 <> 0
+											ORDER BY GROUTINGLINECODE
+                ".Replace("{GOODSID}", goodsId);
+
+                if (context.Request["sort"] is object)
+                {
+                    sqlStr += " ORDER BY " + context.Request["sort"] + " " + context.Request["order"];
+                }
+
+                //获取查询条件
+                List<CDAParameter> sqlPara = new List<CDAParameter>();
+                sqlPara.Add(new CDAParameter("DATEBEGIN", dateBegin, DataType.DateTime));
+                sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
+				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["groutinglineMaster"].ToString()));
+
+                //获取数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
+                context.Response.Write(new JsonResult(dt).ToJson());
+            }
+
+            //子表
+            if(context.Request["m"].ToString()=="detail")
+            {
+
+            }
+        }
+    }
+    public static bool IsNumber(string s)
+    {
+        try {
+            int.Parse(s);
+            return true;
+        }
+        catch (Exception) {
+            return false;
+        }
+    }
+
+    public bool IsReusable
+    {
+        get
+        {
+            return false;
+        }
+    }
+}

+ 173 - 0
wwwroot/mes/rpt/rpt109/rpt_index.html

@@ -0,0 +1,173 @@
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8" />
+    <meta name="keywords" content="dongke,mes,ibossmes">
+    <meta name="description" content="制造企业生产过程执行管理系统">
+    <meta name="author" content="xuwei">
+    <title>东科软件</title>
+    <script src="/plugins/xeasyui/xeasyui.min.js"></script>
+    <link href="/plugins/xeasyui/toolbar.min.css" rel="stylesheet" />
+</head>
+<body class="easyui-layout">
+
+    <!--中部主体-->
+    <div data-options="border:false,region:'center',title:'',iconCls:'icon-grid'">
+        <!--工具条-->
+        <div id="tb" class="i-toolbar">
+            <a href="javascript:void(0)" id="btnSearch" title="搜索" class="easyui-linkbutton" iconcls="icon-search" plain="true" toggle="true" onclick="tbSearch()">搜索</a>
+            <a href="javascript:void(0)" id="btnExport" title="导出" class="easyui-linkbutton" iconcls="icon-excel" plain="true" onclick="tbExport()">导出</a>
+            <!--<a href="javascript:void(0)" id="btnColumn" class="easyui-menubutton" data-options="menu:'#btnColumnMenu',iconCls:'icon-undo'">列显示</a>
+            <div id="btnColumnMenu" style="width:150px;" ></div>-->
+            <a href="javascript:void(0)" id="btnReload" title="刷新" class="easyui-linkbutton" iconcls="icon-reload" plain="true" onclick="tbReload()">刷新</a>
+            <a href="javascript:void(0)" id="btnHelp" title="帮助" class="easyui-linkbutton" iconcls="icon-help" plain="true" onclick="tbHelp()">帮助</a>
+            <div id="tbSearchDiv" style="display:block;padding:10px;">
+                <form id="ffMaster">
+                    <div>
+                        开始日期:
+                        <input class="easyui-datetimebox" id="datebeginMaster" name="datebeginMaster" data-options="required:true,prompt:'',tipPosition:'top'" style="width: 165px; height: 32px;">
+                        截止日期:
+                        <input class="easyui-datetimebox" id="dateendMaster" name="dateendMaster" data-options="required:true,prompt:'',tipPosition:'top'" style="width: 165px; height: 32px;">
+                        成型线:
+                        <input class="easyui-combobox" id="groutinglineMaster" name="groutinglineMaster" data-options="required:false,prompt:'',tipPosition:'top',url:'../../rpt/rpt.ashx?m=getLine&select=1',method:'get',valueField:'GROUTINGLINECODE',textField:'GROUTINGLINECODE',panelHeight:'300px',editable:true ,multiple:false" style="width: 165px; height: 32px;">
+                        产品编码:
+                        <input class="easyui-combobox" id="goodsMaster" name="goodsMaster" data-options="required:false,prompt:'',tipPosition:'top',url:'../../rpt/rpt.ashx?m=getGoods&select=1',method:'get',valueField:'GOODSID',textField:'GOODSCODE',panelHeight:'300px',editable:true,multiple:true" style="width:165px;height:32px;">
+
+                        <a href="javascript:void(0)" id="btnSearchSubmit" title="清空" class="easyui-linkbutton" plain="false" onclick="toClear()">清空</a>
+                        <a href="javascript:void(0)" id="btnSearchSubmit" title="搜索" class="easyui-linkbutton" plain="false" onclick="tbSearchSubmit()">搜索</a>
+                    </div>
+                </form>
+            </div>
+        </div>
+        <!--表格-->
+        <table class="easyui-datagrid"
+               id="DataGridMaster"
+               data-options="method:'get',border:false,singleSelect:true,fit:true,fitColumns:false">
+            <thead>
+                <tr>
+                    <th data-options="field:'成型线编码',title:'成型线编码',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'产品编码',title:'产品编码',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'期初数量',title:'期初数量',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'接收数量',title:'接收数量',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'干补回收',title:'干补回收',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'损坯数量',title:'损坯数量',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'发出数量',title:'发出数量',align:'left',sortable:true,width:80"></th>
+                    <th data-options="field:'期末数量',title:'期末数量',align:'left',sortable:true,width:80"></th>
+                </tr>
+            </thead>
+        </table>
+    </div>
+
+    <!--中部右侧-->
+    <!--<div data-options="border:false,region:'east',split:true,title:'子报表',iconCls:'icon-grid'" title="East" style="width:700px;">
+        <table class="easyui-datagrid"
+               id="DataGridDetail"
+               data-options="method:'get',border:false,singleSelect:true,fit:true,fitColumns:true">
+        </table>
+    </div>-->
+
+    <script type="text/javascript">
+
+        function formatterUA(value, row, index) {
+            return Math.round(value * 10000) / 100 + '%';
+        }
+
+        $(document).ready(function () {
+            var ctime = new Date();
+            var beginDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 00:00:00";
+            var endDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 23:59:59";
+            $("#datebeginMaster").datetimebox("setValue", beginDate);
+            $("#dateendMaster").datetimebox("setValue", endDate);
+            //tbSearchSubmit();
+        });
+        // 清空恢复默认值
+        function toClear() {
+            $('#ffMaster').form('clear');
+            var ctime = new Date();
+            var beginDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 00:00:00";
+            var endDate = ctime.getFullYear() + "-" + (ctime.getMonth() + 1) + "-" + ctime.getDate() + " 23:59:59";
+            $("#datebeginMaster").datetimebox("setValue", beginDate);
+            $("#dateendMaster").datetimebox("setValue", endDate);
+        }
+        //加载子表数据
+        function LoadDataGridDetail(index, row) {
+            //if ($('#ffDetail').form("validate")) {
+            //    $('#DataGridDetail').datagridLoadRpt({
+            //        title: '明细表',
+            //        idField: 'SID',
+            //        queryParams: $('#ffDetail').serializeJson(),
+            //        url: 'rpt.ashx?m=detail&id=' + $('#DataGridMaster').datagrid('getSelections')[0]['SID'],
+            //        fixWidth: 120,
+            //        mergeWidth: 100,
+            //        splitChar: '_',
+            //        columnMoving: true
+            //    });
+            //}
+        }
+
+        //搜索提交
+        function tbSearchSubmit() {
+            if ($('#ffMaster').form("validate")) {
+                $('#DataGridMaster').datagridLoad({
+                    title: '',
+                    idField: 'SID',
+                    queryParams: $('#ffMaster').serializeJson(),
+                    url: 'rpt.ashx?m=master&id=' + request('id'),
+                    fixWidth: 160,
+                    mergeWidth: 100,
+                    splitChar: '_',
+                    columnMenu: '#btnColumnMenu',
+                    columnMoving: true,
+                    onSelect: LoadDataGridDetail
+                });
+            }
+        }
+
+        //导出
+        function tbExport() {
+            //加载表头
+            var fields = $('#DataGridMaster').datagrid('getColumnFields');
+            var headers = [];
+            for (var i = 0; i < fields.length; i++) {
+                //headers.push($('#DataGridMaster').datagrid('getColumnOption', fields[i])['title']);
+                headers.push(fields[i]);
+            }
+
+            $('#DataGridMaster').datagridExport({
+                headers: headers,
+                fileName: '导出数据(成型收发存统计表).xls',
+                workSheet: '导出数据(成型收发存统计表)'
+            });
+
+            //导出多sheet
+            //$.dataGridToExcel(
+            //    ['DataGridMaster', 'DataGridDetail'],
+            //    ['page1', 'page2'],
+            //    "导出数据(表名).xls"
+            //);
+        }
+
+        //搜索按钮
+        function tbSearch() {
+            $('#tbSearchDiv').toggle();
+            $('#DataGridMaster').datagrid('resize');
+        }
+
+        //刷新
+        function tbReload() {
+            tbSearchSubmit();
+        }
+
+        //帮助事件
+        function tbHelp() {
+            $('#DataGridMaster').datagridDialog({
+                title: '帮助',
+                width: 640,
+                height: 480,
+                url: 'rpt_help.html'
+            });
+        }
+
+    </script>
+</body>
+</html>