private void txtAdjustWeight_Validating(object sender, CancelEventArgs e) { try { if (string.Empty.Equals(txtAdjustWeight.Text.Trim())) { return; } ItemBIZ biz = new ItemBIZ(); ItemWeightDTO dto = biz.ConvertKGtoPCS(new NZString(txtMasterNo, txtMasterNo.Text.Trim()), new NZString(cboStoredLoc, cboStoredLoc.SelectedValue), new NZDecimal(txtAdjustWeight, txtAdjustWeight.Text.Trim()), new NZInt(null, 1)); txtAdjustQty.Text = dto.QtyPCS == null ? string.Empty : dto.QtyPCS.ToString(); } catch (BusinessException err) { MessageDialog.ShowBusiness(this, err.Error.Message); err.Error.FocusOnControl(); } catch (ValidateException err) { MessageDialog.ShowBusiness(this, err.ErrorResults[0].Message); err.ErrorResults[0].FocusOnControl(); } catch (Exception ex) { MessageDialog.ShowBusiness(this, ex.Message); } }
public ItemWeightDTO ConvertPCStoKG(NZString MasterNo, NZString ProcessNo, NZDecimal QtyPCS, NZInt processCount) { //ถ้า convert จาก PCS เป็น KG จะ default เป็น 0 ItemWeightDTO weightDTO = new ItemWeightDTO(); weightDTO.ItemCD = MasterNo; weightDTO.ProcessCD = ProcessNo; weightDTO.QtyPCS = QtyPCS; return(null); }
public ItemWeightDTO ConvertKGtoPCS(NZString MasterNo, NZString ProcessNo, NZDecimal QtyKG, NZInt processCount) { ItemWeightDTO weightDTO = new ItemWeightDTO(); NZDecimal decQtyPCS = null; //ถ้า convert จาก KG เป็น PCS จะ ใช้น้ำหนักตาม Process ItemProcessDAO dao = new ItemProcessDAO(); ItemProcessDTO itemProcess = new ItemProcessDTO(); itemProcess.ITEM_CD = MasterNo; itemProcess.PROCESS_CD = ProcessNo; itemProcess = dao.LoadWeightByItemProcessCount(CommonLib.Common.CurrentDatabase, itemProcess, new NZInt(null, (processCount.NVL(0) <= 1 ? 1 : processCount.Value))); if (itemProcess != null) { weightDTO.ItemCD = MasterNo; weightDTO.ProcessCD = ProcessNo; weightDTO.QtyKG = QtyKG; decimal decQtyKG = QtyKG.NVL(0); if (itemProcess.WEIGHT.NVL(0) == 0) { decQtyPCS = null; } else { decQtyPCS = new NZDecimal(null, Math.Round(QtyKG / itemProcess.WEIGHT * 1000, MidpointRounding.AwayFromZero)); } if (decQtyPCS != null && decQtyPCS.NVL(0) > 10000000) { EVOFramework.ErrorItem errorItem = null; errorItem = new EVOFramework.ErrorItem(QtyKG.Owner, Rubik.TKPMessages.eValidate.VLM0184.ToString()); EVOFramework.ValidateException.ThrowErrorItem(errorItem); } weightDTO.QtyPCS = decQtyPCS; } return(weightDTO); }