Ejemplo n.º 1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var pickType = 0;
            var ticketId = 0;
            var store    = 0;
            var area     = 0;

            try
            {
                if (Session["Account"] == null)
                {
                    Response.Write(" <script> parent.document.location= 'logout.aspx' </script> ");
                    Response.End();
                }
                else
                {
                    if (Request["pickType"] == null || Request["tick"] == null || Request["area"] == null || Request["store"] == null)
                    {
                        throw new Exception("資料錯誤,無法印單!");
                    }
                    ticketId = int.Parse(Request["tick"].ToString());
                    area     = int.Parse(Request["area"].ToString());
                    store    = int.Parse(Request["store"].ToString());
                    pickType = int.Parse(Request["pickType"].ToString());

                    var shipDa   = new ShipOutDA();
                    var pickList = shipDa.LeaveWith(ticketId, pickType, store, area);
                    if (pickList.Any())
                    {
                        var p = new OBShopWeb.Poslib.Print();
                        //p.PrintPickList(pickList, "", "調出明細");

                        List <TicketShelfTemp> One = new List <TicketShelfTemp>();
                        var listCount = pickList.Count;
                        var xxi       = 0;
                        //web.config設定每頁幾筆
                        var pernum = _PrintPageSize;
                        while (xxi * pernum < listCount)
                        {
                            One = pickList.Skip(xxi * pernum).Take(pernum).ToList();
                            xxi++;
                            var result = p.PrintPickList(One, "", ticketId + " 調出明細" + xxi.ToString("D2"));
                            Thread.Sleep(1000);
                        }
                        Page.RegisterClientScriptBlock("checkinput", @"<script>alert('成功!');window.close();</script>");
                    }
                    else
                    {
                        Page.RegisterClientScriptBlock("checkinput", @"<script>alert('無此調撥資料!!請重試!');window.close();</script>");
                    }
                }
            }
            catch (Exception ex)
            {
                Response.Write("系統發生錯誤 " + ex.Message);
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 列印儲位明細
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btn_Print_Click(object sender, EventArgs e)
        {
            try
            {
                lblMsg.Text = "";
                //列印儲位明細
                var p = new OBShopWeb.Poslib.Print();
                //抓取目前儲位清單
                List <TicketShelfTemp> pickList = new List <TicketShelfTemp>();
                List <TicketShelfTemp> One      = new List <TicketShelfTemp>();
                foreach (GridViewRow row in gv_FList.Rows)
                {
                    var one = new TicketShelfTemp();
                    one.ProductId = GetCellByName(row, "產品編號").Text;
                    TextBox 調出數 = GetCellByName(row, "調出數").FindControl("txt_num") as TextBox;
                    one.Quantity = (調出數 != null) ? int.Parse(調出數.Text) : 0;
                    one.Division = GetCellByName(row, "儲位編號").Text;

                    //數量防呆
                    if (one.Quantity < 0)
                    {
                        lblMsg.Text = one.ProductId + " 調出數量不正確!";
                        return;
                    }

                    if (one.Quantity > 0)
                    {
                        pickList.Add(one);
                    }
                }
                //測試500
                //pickList = pickList.Take(120).ToList();

                var listCount = pickList.Count;
                var xxi       = 0;
                //web.config設定每頁幾筆
                var pernum = _PrintPageSize;
                while (xxi * pernum < listCount)
                {
                    One = pickList.Skip(xxi * pernum).Take(pernum).ToList();
                    xxi++;
                    p.PrintPickDetail(One, "", "儲位明細" + xxi.ToString("D2"));
                    Thread.Sleep(1000);
                }

                lblMsg.Text = "列印成功!";
            }
            catch (Exception ex)
            {
                Response.Write("系統發生錯誤 " + ex.Message);
            }
        }