Example #1
0
    protected void btnUnTask_Click(object sender, EventArgs e)
    {
        BLL.BLLBase bll   = new BLL.BLLBase();
        int         State = int.Parse(bll.GetFieldValue("WMS_BillMaster", "State", string.Format("BillID='{0}'", this.txtID.Text)));

        if (State < 2)
        {
            JScript.ShowMessage(this.updatePanel, this.txtID.Text + "单号还未作业,不能进行取消作业。");
            return;
        }
        if (State > 2)
        {
            JScript.ShowMessage(this.updatePanel, this.txtID.Text + "单号已经执行,不能再进行取消作业。");
            return;
        }
        try
        {
            bll.ExecNonQueryTran("WMS.SpCancelOutStockTask", new DataParameter[] { new DataParameter("@BillID", strID), new DataParameter("@UserName", Session["EmployeeCode"].ToString()) });
            AddOperateLog("入库单", "入库取消作业单号:" + this.txtID.Text);
            DataTable dt = bll.FillDataTable("WMS.SelectBillMaster", new DataParameter[] { new DataParameter("{0}", string.Format("BillID='{0}'", strID)) });
            BindData(dt);
        }
        catch (Exception ex)
        {
            JScript.ShowMessage(this.updatePanel, ex.Message);
        }
    }
Example #2
0
        //入库完成
        private void TMITaskInFinished_Click(object sender, EventArgs e)
        {
            if (this.dgvMain.CurrentCell != null) //判断该任务是否堆垛机已经执行?
            {
                try
                {
                    string TaskNo     = this.dgvMain.Rows[this.dgvMain.CurrentCell.RowIndex].Cells[2].Value.ToString();
                    string PalletCode = this.dgvMain.Rows[this.dgvMain.CurrentCell.RowIndex].Cells[4].Value.ToString();
                    bll.ExecNonQueryTran("WCS.SpTaskFinished", new DataParameter[] { new DataParameter("VTaskNo", TaskNo) });
                    Logger.Info("入库任务:" + TaskNo + "托盘编号:" + PalletCode + "手动更新完成!");

                    this.BindData();
                }
                catch (Exception ex)
                {
                    Logger.Error("Main中入库任务手动更新完成出现异常" + ex.Message);
                }
            }
        }
Example #3
0
    protected void btnAdd_Click(object sender, EventArgs e)
    {
        string strColorCode = "'-1',";
        BLL.BLLBase bll = new BLL.BLLBase();
        for (int i = 0; i < this.GridView1.Rows.Count; i++)
        {
            CheckBox cb = (CheckBox)(this.GridView1.Rows[i].FindControl("cbSelect"));
            if (cb != null && cb.Checked)
            {
                string hk = this.GridView1.Rows[i].Cells[1].Text;
                //判断能否删除
                int State = int.Parse(bll.GetFieldValue("WMS_BillMaster", "State", string.Format("BillID='{0}'", hk)));
                if (State == 0)
                {
                    JScript.Instance.ShowMessage(this.UpdatePanel1, GridView1.Rows[i].Cells[2].Text + "单号还未审核不能作业,请审核后,再进行盘库作业。");
                    BindDataSub(this.hdnRowValue.Value);
                    return;
                }
                if (State > 1)
                {
                    JScript.Instance.ShowMessage(this.UpdatePanel1, GridView1.Rows[i].Cells[2].Text + "单号已经作业,不能再进行盘库作业。");
                    BindDataSub(this.hdnRowValue.Value);
                    return;
                }

                strColorCode += "'" + hk + "',";
            }
        }

        strColorCode += "'-1'";
        if (strColorCode.Replace("'-1','-1'", "").Trim().Length == 0)
        {
            JScript.Instance.ShowMessage(this.UpdatePanel1, "请选择单据!");
            SetGridViewEmptyRow(GridView1, (DataTable)ViewState[FormID + "_MainFormData"]);
            BindDataSub(this.hdnRowValue.Value);
            return;
        }
        try
        {

            bll.ExecNonQueryTran("WMS.SpInventoryStockTask", new DataParameter[] { new DataParameter("@strWhere", strColorCode), new DataParameter("@UserName", Session["EmployeeCode"].ToString()) });

            AddOperateLog("盘库单", "盘库作业单号:" + strColorCode.Replace("'-1',", "").Replace(",'-1'", ""));
            DataTable dt = SetBtnEnabled(int.Parse(ViewState["CurrentPage"].ToString()), SqlCmd, ViewState["filter"].ToString(), pageSize, GridView1, btnFirst, btnPre, btnNext, btnLast, btnToPage, lblCurrentPage, this.UpdatePanel1);
            SetBindDataSub(dt);
        }
        catch (Exception ex)
        {
            BindDataSub(this.hdnRowValue.Value);
            JScript.Instance.ShowMessage(this.UpdatePanel1, ex.Message);

        }
    }
Example #4
0
    protected void btnAdd_Click(object sender, EventArgs e)
    {
        string strColorCode = "'-1',";

        BLL.BLLBase bll = new BLL.BLLBase();
        for (int i = 0; i < this.GridView1.Rows.Count; i++)
        {
            CheckBox cb = (CheckBox)(this.GridView1.Rows[i].FindControl("cbSelect"));
            if (cb != null && cb.Checked)
            {
                string hk = this.GridView1.Rows[i].Cells[1].Text;
                //判断能否删除
                int State = int.Parse(bll.GetFieldValue("WMS_BillMaster", "State", string.Format("BillID='{0}'", hk)));
                if (State == 0)
                {
                    JScript.Instance.ShowMessage(this.UpdatePanel1, GridView1.Rows[i].Cells[2].Text + "单号还未审核不能作业,请审核后,再进行入库作业。");
                    BindDataSub(this.hdnRowValue.Value);
                    return;
                }
                if (State > 1)
                {
                    JScript.Instance.ShowMessage(this.UpdatePanel1, GridView1.Rows[i].Cells[2].Text + "单号已经作业,不能再进行入库作业。");
                    BindDataSub(this.hdnRowValue.Value);
                    return;
                }

                strColorCode += "'" + hk + "',";
            }
        }

        strColorCode += "'-1'";
        if (strColorCode.Replace("'-1','-1'", "").Trim().Length == 0)
        {
            JScript.Instance.ShowMessage(this.UpdatePanel1, "请选择单据!");
            SetGridViewEmptyRow(GridView1, (DataTable)ViewState[FormID + "_MainFormData"]);
            BindDataSub(this.hdnRowValue.Value);
            return;
        }
        try
        {
            bll.ExecNonQueryTran("WMS.SpInstockTask", new DataParameter[] { new DataParameter("@strWhere", strColorCode), new DataParameter("@UserName", Session["EmployeeCode"].ToString()) });

            AddOperateLog("入库单", "入库作业单号:" + strColorCode.Replace("'-1',", "").Replace(",'-1'", ""));
            DataTable dt = SetBtnEnabled(int.Parse(ViewState["CurrentPage"].ToString()), SqlCmd, ViewState["filter"].ToString(), pageSize, GridView1, btnFirst, btnPre, btnNext, btnLast, btnToPage, lblCurrentPage, this.UpdatePanel1);
            SetBindDataSub(dt);
        }
        catch (Exception ex)
        {
            BindDataSub(this.hdnRowValue.Value);
            JScript.Instance.ShowMessage(this.UpdatePanel1, ex.Message);
        }
    }
Example #5
0
    protected void btnCreate_Click(object sender, EventArgs e)
    {
        try
        {
            DataParameter[] para = new DataParameter[] {
                new DataParameter("@ProductCode", strID),
                new DataParameter("@ProductNewCode", this.txtProductNewCode.Text),
                new DataParameter("@UserName", Session["EmployeeCode"].ToString()),
            };

            bll.ExecNonQueryTran("CMD.spBatchChangeProductNo", para);
            JScript.ShowMessage(this, "编号修改成功!");



            Response.Redirect(FormID + "View.aspx?SubModuleCode=" + SubModuleCode + "&FormID=" + Server.UrlEncode(FormID) + "&SqlCmd=" + SqlCmd + "&ID=" + Server.UrlEncode(this.txtProductNewCode.Text));
        }
        catch (Exception ex)
        {
            JScript.ShowMessage(this, ex.Message);
            return;
        }
    }
Example #6
0
        private void tmCraneWorker(object sender, System.Timers.ElapsedEventArgs e)
        {
            try
            {
                tmCraneErr.Stop();

                for (int i = 1; i <= dtCrane.Rows.Count; i++)
                {
                    if (dtCrane.Rows[i - 1]["ISENABLED"].ToString() == "0")
                    {
                        continue;
                    }

                    string serviceName = "CranePLC" + i;
                    int    ErrCode     = int.Parse(ObjectUtil.GetObject(context.ProcessDispatcher.WriteToService(serviceName, "nAlarmCode")).ToString());

                    if (ErrCode == 0)
                    {
                        continue;
                    }
                    if (ErrCode == 505)
                    {
                        string    plcTaskNo = ConvertStringChar.BytesToString(ObjectUtil.GetObjects(context.ProcessDispatcher.WriteToService(serviceName, "ReadTaskNo")));
                        DataTable dtTask    = bll.FillDataTable("WCS.SelectWmsTask", new DataParameter[] { new DataParameter("{0}", string.Format("TASKID='{0}' and ASRSID='{1}'", plcTaskNo, i)) });
                        if (dtTask.Rows.Count > 0)
                        {
                            string    TaskType      = dtTask.Rows[0]["TASKTYPE"].ToString();
                            string    plcPalletCode = dtTask.Rows[0]["PALLETID"].ToString();
                            DataTable dtErr         = bll.FillDataTable("WCS.SelectWmsSend", new DataParameter[] { new DataParameter("{0}", string.Format("TASKID='{0}'", plcTaskNo)) });
                            if (dtErr.Rows.Count > 0)
                            {
                                string Taskstatus = dtErr.Rows[0]["TASKSTATUS"].ToString();
                                if (Taskstatus == "4")
                                {
                                    //crane.ErrCode == 505,重入异常
                                    if (TaskType == "OB")
                                    {
                                        continue;
                                    }

                                    bll.ExecNonQueryTran("WCS.SPCancelTask", new DataParameter[] { new DataParameter("VTASKNO", plcTaskNo) });
                                    Logger.Info("入库任务:" + plcTaskNo + "托盘编号:" + plcPalletCode + "取消!");
                                    DataTable dtTaskNew = bll.FillDataTable("WCS.SelectWmsTask", new DataParameter[] { new DataParameter("{0}", string.Format("PALLETID='{0}' AND TASKSTATUS='0' AND ASRSID='{1}'", plcPalletCode, i)) });
                                    if (dtTaskNew.Rows.Count > 0)
                                    {
                                        string  TaskNo  = dtTaskNew.Rows[0]["TASKID"].ToString();
                                        sbyte[] staskNo = new sbyte[20];
                                        Util.ConvertStringChar.stringToBytes(TaskNo, 12).CopyTo(staskNo, 0);
                                        Util.ConvertStringChar.stringToBytes(plcPalletCode, 8).CopyTo(staskNo, 12);
                                        string strDLocation = dtTaskNew.Rows[0]["DLOCATION"].ToString();
                                        int[]  Location     = new int[6];
                                        Location[0] = 0;
                                        Location[1] = 0;
                                        Location[2] = 0;
                                        Location[3] = int.Parse(strDLocation.Split('-')[0]);
                                        Location[4] = int.Parse(strDLocation.Split('-')[1]);
                                        int ToRow = int.Parse(strDLocation.Split('-')[2]);
                                        if (ToRow > 1)
                                        {
                                            ToRow += 1;
                                        }
                                        Location[5] = ToRow;

                                        context.ProcessDispatcher.WriteToService(serviceName, "Address", Location);
                                        context.ProcessDispatcher.WriteToService(serviceName, "WriteTask", staskNo);
                                        if (context.ProcessDispatcher.WriteToService(serviceName, "WriteFinish", true))
                                        {
                                            bll.ExecNonQueryTran("WCS.SPReciveWmsTask", new DataParameter[] { new DataParameter("VTASKNO", TaskNo) });
                                            //更新WCSTask状态为3
                                            bll.ExecNonQuery("WCS.UpdateWCSTaskState", new DataParameter[] { new DataParameter("{0}", 3), new DataParameter("{1}", TaskNo) });
                                            Logger.Info("入库任务:" + TaskNo + " 托盘编号:" + plcPalletCode + " 位:" + strDLocation + " 已下发给" + i + "堆垛机");
                                        }
                                        else
                                        {
                                            Logger.Error("入库任务:" + TaskNo + " 托盘编号:" + plcPalletCode + " 无法写入堆垛机" + i);
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Error("MainServer中tmCraneWorker出现异常:" + ex.Message);
            }
            finally
            {
                tmCraneErr.Start();
            }
        }